.sidebar{width:240px;background:linear-gradient(180deg,#1c212c,#131720);border-right:1px solid hsl(220 20% 18%);display:flex;flex-direction:column;position:fixed;left:0;top:72px;bottom:0;z-index:50;box-shadow:1px 0 8px #0000001f;transition:width .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.sidebar.collapsed{width:70px}.sidebar-nav{padding:8px;display:flex;flex-direction:column;gap:0;overflow-y:auto;overflow-x:hidden;flex:1;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.08) transparent}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:2px}.sidebar.collapsed .sidebar-nav{padding:8px 6px}.sidebar-section{display:flex;flex-direction:column;margin-bottom:4px}.sidebar-section:last-child{margin-bottom:4px}.sidebar-section-header{display:flex;align-items:center;gap:4px;padding:6px 12px 6px 14px;margin:12px 0 2px;border:none;background:transparent;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease;width:100%;text-align:left}.sidebar-section:first-child .sidebar-section-header{margin-top:4px}.sidebar-section-label{flex:1;font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#ffffff59;line-height:1}.sidebar-section-chevron{display:flex;align-items:center;justify-content:center;color:#fff3;transition:color .15s ease,transform .2s ease;flex-shrink:0}.sidebar-section-header:hover .sidebar-section-label{color:#ffffff80}.sidebar-section-header:hover .sidebar-section-chevron{color:#fff6}.sidebar-section-header:focus-visible{outline:1px solid rgba(255,255,255,.2);outline-offset:-1px;border-radius:4px}.sidebar-section-items{display:flex;flex-direction:column;gap:1px;overflow:hidden;transition:max-height .25s ease,opacity .2s ease;max-height:800px;opacity:1}.sidebar-section-items.collapsed{max-height:0;opacity:0;margin:0;padding:0}.sidebar-divider{height:1px;background:#ffffff0f;margin:6px 10px}.sidebar-item-group{display:flex;flex-direction:column}.sidebar-item{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 12px;border-radius:6px;border:none;background:transparent;color:#fff9;font-size:.8125rem;font-weight:450;cursor:pointer;transition:background .15s ease,color .15s ease;text-align:left;width:100%;position:relative;white-space:nowrap;line-height:1.25;letter-spacing:.005em}.sidebar.collapsed .sidebar-item{padding:0 8px;justify-content:center;min-height:40px;border-radius:8px}.sidebar-item:hover:not(.disabled){background:#ffffff0f;color:#ffffffeb}.sidebar-item.active{background:#ffffff14;color:#fff;font-weight:500}.sidebar-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:hsl(var(--primary, 210 100% 60%));border-radius:0 3px 3px 0}.sidebar.collapsed .sidebar-item.active:before{display:none}.sidebar.collapsed .sidebar-item.active{background:#ffffff1a}.sidebar-item:focus-visible{outline:2px solid hsl(var(--primary, 210 100% 60%) / .5);outline-offset:-2px;border-radius:6px}.sidebar-item.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.sidebar-icon{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex-shrink:0;opacity:.85}.sidebar-item.active .sidebar-icon{opacity:1}.sidebar-icon svg{width:100%;height:100%}.sidebar-label{flex:1;overflow:hidden;text-overflow:ellipsis;min-width:0}.sidebar-badge{font-size:.5625rem;padding:2px 6px;background:hsl(var(--primary, 210 100% 60%) / .15);color:hsl(var(--primary, 210 100% 60%));border:1px solid hsl(var(--primary, 210 100% 60%) / .25);border-radius:4px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;margin-left:auto;line-height:1.2}.sidebar-subitems{display:flex;flex-direction:column;gap:1px;padding-left:16px;margin-left:20px;margin-top:1px;margin-bottom:4px;border-left:1px solid rgba(255,255,255,.08)}.sidebar-subitem{min-height:34px!important;font-size:.78125rem!important;color:#ffffff80;padding:0 10px!important}.sidebar-subitem .sidebar-icon{width:15px;height:15px}.sidebar-subitem:hover:not(.disabled){color:#ffffffd9}.sidebar-subitem.active{background:#ffffff0f!important;color:#fff}.sidebar-subitem.active:before{display:none}.sidebar-user-section{padding:1rem 1.25rem;border-bottom:1px solid hsl(220 20% 18%);background:#ffffff08;display:flex;flex-direction:column;align-items:center;gap:.75rem}.sidebar-footer{padding:1rem .75rem;border-top:1px solid hsl(220 20% 18%);margin-top:auto}.sidebar-logout{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:6px;border:none;background:transparent;color:#fff9;font-size:.8125rem;font-weight:450;cursor:pointer;transition:all .15s ease;text-align:left;width:100%;white-space:nowrap}.sidebar.collapsed .sidebar-logout{padding:.75rem;justify-content:center}.sidebar-logout:hover{background:#ef44441f;color:#fca5a5}.user-role-badge,.sidebar-user-badge{font-size:.6875rem;padding:.25rem .5rem;background:hsl(var(--primary) / .15);color:#93c5fd;border:1px solid hsl(var(--primary) / .25);border-radius:4px;font-weight:600;text-transform:capitalize;white-space:nowrap}@media (max-width: 768px){.sidebar{width:100%;position:fixed;top:auto;left:0;right:0;bottom:auto;border-right:none;border-bottom:1px solid hsl(var(--border));box-shadow:var(--shadow-sm);flex-direction:column}.sidebar.collapsed{width:100%}.sidebar-nav{flex-direction:row;overflow-x:auto;padding:.5rem;gap:.5rem}.sidebar-section{display:flex;flex-direction:row;margin-bottom:0;gap:.5rem}.sidebar-section-header{display:none}.sidebar-section-items{flex-direction:row;gap:.5rem}.sidebar-divider{display:none}.sidebar-item{flex-direction:column;gap:.25rem;padding:.75rem 1rem;min-width:90px;min-height:auto}.sidebar.collapsed .sidebar-item{flex-direction:column;padding:.75rem 1rem}.sidebar-item.active:before{display:none}.sidebar-icon{width:22px;height:22px}.sidebar-label{font-size:.75rem;display:block!important}}.simple-dashboard{padding:0;min-height:calc(100vh - 60px);max-width:100%;width:100%;overflow-x:hidden;box-sizing:border-box}.dashboard-grid{display:grid!important;gap:.625rem;grid-template-columns:repeat(12,1fr)!important;grid-auto-rows:auto;max-width:100%!important;width:100%!important;overflow-x:hidden;box-sizing:border-box}.breakdown-section{grid-column:span 12!important;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box}.heatmap-section{grid-column:span 6;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.heatmap-section{grid-column:span 12;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box;background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.heatmap-section:hover{box-shadow:none!important}.dashboard-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:0;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease;overflow:hidden;width:100%!important;max-width:100%!important;box-sizing:border-box}.dashboard-section:hover{box-shadow:var(--shadow-md)}.summary-section{background:transparent;border:none;box-shadow:none;padding:0}.summary-section:hover{box-shadow:none}.section-title{flex-shrink:0}.section-content{flex:1;overflow:visible;min-height:0;display:flex;flex-direction:column;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box;padding:0 .75rem .75rem}.section-content>*{flex:1;min-height:0;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box}.chart-section,.services-section,.breakdown-section,.budget-section{display:flex!important;flex-direction:column;overflow:hidden;width:100%!important;max-width:100%!important}.budget-section,.summary-section{grid-column:span 12}.chart-section{grid-column:span 12!important;height:auto;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box;display:flex!important;flex-direction:column}.services-section{grid-column:span 12!important;height:380px;width:100%!important;min-width:0;max-width:100%!important;box-sizing:border-box;display:flex!important;flex-direction:column}.dashboard-section.services-section.half-width,.dashboard-section.half-width,.dashboard-section.half-width-section{grid-column:span 6!important}@media (max-width: 768px){.simple-dashboard{padding:0}.dashboard-grid{gap:.625rem}.dashboard-section.half-width,.dashboard-section.half-width-section{grid-column:span 12!important}}.dashboard-section>*:not(.section-title):not(.section-content){border:none!important;box-shadow:none!important;border-radius:0!important}.section-content .chart-container,.section-content .budget-card{margin:0!important;height:100%;border:none!important;box-shadow:none!important;padding:0!important;background:transparent!important;border-radius:0!important}.section-content .detailed-breakdown{margin:0!important;border:none!important;box-shadow:none!important;padding:0!important;border-radius:0!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important}.detailed-breakdown-section .section-content-scrollable{overflow-y:auto!important;overflow-x:hidden!important;flex:1!important;min-height:0!important}.detailed-breakdown-section{display:flex!important;flex-direction:column!important;overflow:hidden!important}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.625rem;margin-bottom:0}@keyframes cardFadeInUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.card{background:linear-gradient(135deg,#fff,#fafbfc);padding:.75rem 1rem;border-radius:12px;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000f;position:relative;overflow:hidden;animation:cardFadeInUp .6s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0}.card:nth-child(1){animation-delay:.1s}.card:nth-child(2){animation-delay:.2s}.card:nth-child(3){animation-delay:.3s}.card:nth-child(4){animation-delay:.4s}.card:nth-child(5){animation-delay:.5s}.card:nth-child(6){animation-delay:.6s}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#06b6d4,#0891b2);opacity:0;transition:opacity .3s ease}.card:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(20,184,166,.04) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.card:hover{border-color:#14b8a6;box-shadow:0 2px 4px #0000000f,0 8px 16px #14b8a61f,0 12px 24px #00000014;transform:translateY(-3px) scale(1.01)}.card:hover:before{opacity:1}.card:hover:after{opacity:1}.card-label{font-size:.6875rem;color:#64748b;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;display:flex;align-items:center;gap:.375rem;line-height:1.3}.card-value{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;letter-spacing:-.01em;position:relative;z-index:1}.card-sublabel{font-size:.6875rem;color:#94a3b8;margin-top:.25rem;font-weight:400;line-height:1.3}.provider-table tr:hover{background:#f8fafc;transform:scale(1.01)}.provider-table tr:hover td{background:#f8fafc;box-shadow:0 2px 8px #14b8a614}.summary-card{background:linear-gradient(135deg,#fff,#fafbfc);padding:.75rem 1rem;border-radius:12px;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000f;position:relative;overflow:hidden;animation:cardFadeInUp .6s cubic-bezier(.34,1.56,.64,1) forwards;opacity:0}.summary-card:nth-child(1){animation-delay:.1s}.summary-card:nth-child(2){animation-delay:.2s}.summary-card:nth-child(3){animation-delay:.3s}.summary-card:nth-child(4){animation-delay:.4s}.summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#06b6d4,#0891b2);opacity:0;transition:opacity .3s ease}.summary-card:hover{border-color:#14b8a6;box-shadow:0 2px 4px #0000000f,0 8px 16px #14b8a61f,0 12px 24px #00000014;transform:translateY(-3px) scale(1.01)}.summary-card:hover:before{opacity:1}.card-header{display:flex;align-items:center;gap:.375rem;margin-bottom:.25rem}.card-icon{font-size:1.25rem;line-height:1}.card-title{font-size:.6875rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600;line-height:1.3}.summary-card .card-value{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;letter-spacing:-.01em;margin-bottom:.25rem}.card-subtitle{font-size:.6875rem;color:#94a3b8;line-height:1.3}.provider-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.provider-card .card-header{margin-bottom:0}.single-provider-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:.75rem}.provider-header-full,.avg-daily-full{grid-column:1 / -1}.single-provider-summary-grid .summary-card{min-width:0;overflow:hidden}.single-provider-summary-grid .card-value,.single-provider-summary-grid .card-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.discount-badge-summary{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.discount-details-card{animation:slideDown .3s ease-out}@media (max-width: 768px){.summary-cards{grid-template-columns:1fr;gap:.5rem}.card{padding:.625rem .875rem}.card-label{font-size:.625rem;margin-bottom:.25rem}.card-value{font-size:1.375rem}.summary-card{padding:.625rem .875rem}.summary-card .card-value{font-size:1.375rem}.card-icon{font-size:1rem}.card-title{font-size:.625rem}.single-provider-summary-grid{grid-template-columns:1fr}.provider-header-full,.avg-daily-full{grid-column:1}}.chart-empty-state{padding:3rem 2rem;text-align:center;color:#6b7280;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px;border:1px dashed #e5e7eb;margin:1rem 0}.chart-empty-state p{margin:.5rem 0;font-size:.875rem}.chart-empty-state .empty-hint{font-size:.75rem;color:#9ca3af;font-style:italic}.chart-container{background:#fff;padding:.75rem 1rem;border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm);height:100%;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:box-shadow .2s ease}.chart-container:before{display:none}.chart-container:hover{box-shadow:var(--shadow-md)}.chart-container h2{margin-bottom:1rem;font-size:.9375rem;font-weight:600;color:var(--gray-900);letter-spacing:-.025em;flex-shrink:0}.service-table{margin-top:1rem;flex:1;min-height:0;overflow-y:auto;border-radius:6px;border:1px solid #e2e8f0}.service-table::-webkit-scrollbar{width:6px}.service-table::-webkit-scrollbar-track{background:#f8fafc}.service-table::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.service-table::-webkit-scrollbar-thumb:hover{background:#94a3b8}.service-table table{width:100%;border-collapse:collapse}.service-table th{background:#f8fafc;color:#475569;padding:.75rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0;z-index:10;border-bottom:1px solid #e2e8f0}.service-table td{padding:.875rem .75rem;border-bottom:1px solid #f1f5f9;color:#334155;font-weight:500;font-size:.875rem}.service-table tr:hover{background:#f8fafc}.service-table tr:last-child td{border-bottom:none}@media (max-width: 768px){.chart-container{padding:1.25rem}.chart-container h2{font-size:.9375rem}.service-table{max-height:350px}.service-table th,.service-table td{padding:.625rem .5rem;font-size:.8125rem}}.forecast-info{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid #e2e8f0;display:flex;gap:2rem}.forecast-stat{display:flex;flex-direction:column;gap:.25rem}.forecast-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.forecast-value{font-size:1.25rem;font-weight:600;color:#14b8a6}.forecast-chart-container{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:.75rem 1rem;margin-top:.75rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s ease;position:relative;overflow:hidden}.forecast-chart-container:before{display:none}.forecast-chart-container:hover{box-shadow:var(--shadow-md)}.modern-multi-chart-container{width:100%}.multi-chart-title{margin:0 0 .75rem;font-size:.9375rem;font-weight:600;color:var(--gray-900)}.multi-chart-controls{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.multi-chart-toggles{display:flex;gap:8px;align-items:center;flex-shrink:0}.multi-chart-legend{display:flex;gap:6px;justify-content:flex-start;flex-wrap:wrap;margin-bottom:0;padding:0;background:transparent;border-radius:0;border:none}.legend-button{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border:1px solid var(--gray-200);border-radius:6px;background:#fff;cursor:pointer;transition:all .15s ease;font-size:.75rem;font-weight:500;color:#334155;box-shadow:0 1px 2px #0000000a}.legend-button:hover{border-color:var(--gray-300);box-shadow:0 1px 4px #00000014}.legend-button.disabled{opacity:.4;background:#f8fafc}.legend-button.disabled:hover{border-color:var(--gray-200);box-shadow:0 1px 2px #0000000a}.legend-color-box{width:10px;height:10px;border-radius:3px;border:1.5px solid white;box-shadow:0 1px 3px #0000001f;flex-shrink:0}.provider-table{margin-top:1.5rem;border-radius:10px;overflow:hidden;box-shadow:inset 0 1px 3px #0000000d}.provider-table table{width:100%;border-collapse:separate;border-spacing:0}.provider-table th{background:linear-gradient(135deg,#f8fafc,#f1f5f9);color:#475569;padding:.875rem 1rem;text-align:left;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #cbd5e1}.provider-table td{padding:1rem;border-bottom:1px solid #f1f5f9;color:#334155;font-weight:600;font-size:.9375rem;background:#fff;transition:all .2s ease}.provider-table tr{transition:all .2s ease}.provider-table tr:hover,.provider-table tr:hover td{background:#f8fafc}.provider-table tr:last-child td{border-bottom:none}.line-chart-wrapper{width:100%;padding:0;background:transparent;margin-bottom:0}.line-chart{width:100%;height:auto!important;display:block;aspect-ratio:1000 / 330}.section-content>.modern-multi-chart-container,.section-content>.line-chart-wrapper{flex:none!important;width:100%!important}.chart-toolbar{display:flex;justify-content:flex-end;align-items:center;margin-bottom:6px}.chart-type-toggle{display:inline-flex;gap:2px;background:var(--gray-50);padding:3px;border-radius:8px;border:1px solid var(--gray-200)}.toggle-btn{background:transparent;border:none;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:.8125rem;color:#64748b;font-weight:600;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px}.toggle-btn:hover{color:#334155;background:#ffffffb3}.toggle-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a14}.toggle-btn.small{font-size:.6875rem;padding:3px 8px;font-weight:600}@keyframes dotPulse{0%,to{r:5;opacity:1}50%{r:6;opacity:.8}}@media (max-width: 768px){.multi-chart-controls{flex-direction:column;align-items:flex-start}.multi-chart-legend{gap:4px}.legend-button{font-size:.6875rem;padding:3px 8px}.line-chart-wrapper{min-height:0}}.budget-card{background:#fff;padding:10px 12px;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:0;box-shadow:var(--shadow-sm)}.budget-card-collapsible{display:grid;gap:.75rem}.budget-card-collapsed{padding:8px 12px}.budget-card-status-ok{border-color:#99f6e4;background:#14b8a60a}.budget-card-status-warning{border-color:#fde68a;background:#f59e0b0f}.budget-card-status-critical{border-color:#fecaca;background:#ef44440f}.budget-card.no-budget{border:1px dashed #e2e8f0;background:#fff}.budget-collapsed-label{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:0;border:none;background:transparent;cursor:pointer;text-align:left;font-size:12px;color:#0f172a}.budget-collapsed-label>div{flex:1}.budget-collapsed-label strong{display:block;font-size:12px;color:#0f172a}.budget-collapsed-label span{display:block;font-size:11px;color:#64748b;margin-top:2px}.budget-collapsed-chevron{color:#64748b;flex-shrink:0}.budget-status-pill{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;background:#e2e8f0;color:#475569;white-space:nowrap}.budget-status-pill-ok{background:#14b8a626;color:#0f766e}.budget-status-pill-warning{background:#f59e0b2e;color:#92400e}.budget-status-pill-critical{background:#ef444429;color:#b91c1c}.budget-status-pill-muted{background:#f1f5f9;color:#64748b}.budget-header-actions .btn-edit,.budget-header-actions .btn-history{border:1px solid #e2e8f0;background:#fff;border-radius:10px}.budget-header-actions .btn-edit:hover,.budget-header-actions .btn-history:hover{background:#f8fafc;border-color:#cbd5e1}.budget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.budget-header h3{font-size:.9375rem;font-weight:600;color:var(--gray-600);margin:0}.budget-header-actions{display:flex;align-items:center;gap:.75rem}.budget-status{font-size:.875rem;font-weight:600}.btn-edit,.btn-history{padding:.375rem .625rem;border:1px solid var(--gray-200);border-radius:var(--radius-sm);background:#fff;font-size:.875rem;cursor:pointer;transition:all .2s;color:#475569}.btn-edit:hover,.btn-history:hover{background:#f8fafc;border-color:#cbd5e1}.btn-set-budget{padding:.5rem 1rem;border-radius:6px;border:1px solid var(--primary-500);background:#fff;color:var(--primary-600);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-set-budget:hover{background:var(--primary-500);color:#fff}.budget-form{margin-top:1rem}.budget-input{width:100%;padding:.625rem;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:.75rem}.budget-input:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #06b6d426}.budget-textarea{width:100%;padding:.625rem;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:.875rem;margin-bottom:.75rem;font-family:inherit;resize:vertical}.budget-textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #06b6d426}.budget-actions{display:flex;gap:.5rem}.btn-save,.btn-cancel{flex:1;padding:.5rem;border-radius:6px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-save{background:var(--primary-500);color:#fff}.btn-save:hover{background:var(--primary-600)}.btn-cancel{background:#f1f5f9;color:#64748b}.budget-progress{margin-bottom:.75rem;padding:.5rem 0}.budget-bar{height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.budget-bar-fill{height:100%;transition:width .3s,background-color .3s;border-radius:4px}.budget-labels{display:flex;justify-content:space-between;font-size:.8125rem;color:#64748b;margin-top:.25rem}.budget-projection{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;padding-top:.75rem;border-top:1px solid #f1f5f9}.projection-item{display:flex;flex-direction:column;gap:.25rem}.projection-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.projection-value{font-size:1.125rem;font-weight:600;color:var(--gray-700)}.budget-history{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid var(--gray-200)}.budget-history h4{font-size:.875rem;font-weight:600;color:var(--gray-700);margin:0 0 .75rem}.history-list{display:flex;flex-direction:column;gap:.75rem;max-height:300px;overflow-y:auto}.history-entry{padding:.875rem;background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--gray-200)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.history-date{font-size:.75rem;color:var(--gray-600);font-weight:500}.history-user{font-size:.75rem;color:var(--gray-500);background:#fff;padding:.125rem .5rem;border-radius:var(--radius-sm);border:1px solid var(--gray-200)}.history-changes{display:flex;flex-direction:column;gap:.375rem;margin-bottom:.5rem}.history-change{display:flex;gap:.5rem;font-size:.8125rem}.change-label{font-weight:600;color:var(--gray-600);min-width:60px}.change-value{color:var(--gray-700);font-weight:500}.history-reason{display:flex;gap:.5rem;align-items:flex-start;padding:.5rem;background:#fff;border-radius:var(--radius-sm);font-size:.8125rem;color:var(--gray-700);font-style:italic;border:1px solid var(--gray-200)}.reason-icon{font-size:.875rem;line-height:1}.detailed-breakdown{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;min-height:auto;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.breakdown-header{margin-bottom:.5rem;flex-shrink:0}.breakdown-title{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.breakdown-title h2{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0}.total-cost-badge{font-size:.875rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);padding:.375rem .75rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.breakdown-filters{display:flex;gap:.75rem}.breakdown-search{flex:1;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;transition:all .2s}.breakdown-search:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.provider-filter{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;min-width:150px}.provider-filter:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.breakdown-content{display:flex;flex-direction:column;gap:.625rem}.provider-section{border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;transition:all .2s}.provider-section:hover{border-color:#cbd5e0;box-shadow:0 2px 8px #0000000d}.provider-header{padding:.625rem .75rem;cursor:pointer;background:#f8fafc;transition:background .2s}.provider-header:hover{background:#f1f5f9}.provider-info{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.toggle-icon{font-size:.75rem;color:#64748b;width:16px;display:inline-block}.provider-name{font-size:.875rem;font-weight:600;color:#0f172a;text-transform:uppercase;letter-spacing:.05em}.provider-cost{font-size:1rem;font-weight:600;color:#0f172a;margin-left:auto}.cost-bar-container{width:100%;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.cost-bar{height:100%;border-radius:3px;transition:width .3s ease}.categories-container{padding:.375rem .75rem .625rem;display:flex;flex-direction:column;gap:.5rem}.category-section{border-left:3px solid #e2e8f0;padding-left:1rem}.category-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem;cursor:pointer;border-radius:6px;transition:background .2s}.category-info{display:flex;align-items:center;gap:.5rem}.toggle-icon-small{font-size:.625rem;color:#94a3b8;width:12px;display:inline-block}.category-icon{font-size:1rem}.category-name{font-size:.875rem;font-weight:600;color:#334155}.service-count{font-size:.75rem;color:#94a3b8}.category-cost{font-size:.875rem;font-weight:600;color:#64748b}.services-list{margin-top:.5rem;display:flex;flex-direction:column;gap:.25rem}.service-item{display:flex;justify-content:space-between;align-items:center;padding:.375rem .625rem;background:#f8fafc;border-radius:4px;transition:all .2s}.service-item:hover{background:#f1f5f9;transform:translate(4px)}.service-name{font-size:.8125rem;color:#475569}.service-cost{font-size:.8125rem;font-weight:600;color:#0f172a}.no-results{padding:3rem;text-align:center;color:#64748b;font-size:.875rem;background:#f8fafc;border-radius:8px}@media (max-width: 768px){.breakdown-filters{flex-direction:column}.provider-filter{min-width:100%}.provider-info{flex-wrap:wrap}.provider-cost{flex-basis:100%;margin-left:0;margin-top:.5rem}.category-header{flex-direction:column;align-items:flex-start;gap:.5rem}.service-item{flex-direction:column;align-items:flex-start;gap:.25rem}}.enhanced-forecast-chart{background:#fff;border-radius:16px;padding:.75rem;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a;display:flex;flex-direction:column;height:100%;min-height:550px;width:100%;box-sizing:border-box}.forecast-header{margin-bottom:.75rem;flex-shrink:0}.forecast-title-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.forecast-stats-inline{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.forecast-stat-compact{display:flex;flex-direction:column;align-items:flex-end}.stat-label-compact{font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem}.stat-value-compact{font-size:1.125rem;font-weight:700;color:#1f2937}.forecast-title{display:flex;align-items:center;gap:.5rem}.forecast-title h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937}.confidence-badge-large{display:inline-flex;align-items:center;padding:.375rem .75rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600}.forecast-stats{display:none}.forecast-stat{display:flex;flex-direction:column}.stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:#1f2937}.chart-wrapper{width:100%;flex:1;min-height:0;display:block;overflow:visible;padding:0;margin:0;position:relative;box-sizing:border-box}.forecast-svg{width:100%!important;height:100%!important;min-height:450px;display:block;max-width:100%!important;box-sizing:border-box;overflow:visible;object-fit:fill}.forecast-legend{display:flex;justify-content:center;gap:2rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.legend-color{width:16px;height:4px;border-radius:2px}.legend-color.forecast{background:#8b5cf6;background-image:repeating-linear-gradient(90deg,#8b5cf6,#8b5cf6 4px,transparent 4px,transparent 8px)}.chart-empty-state p{margin:.5rem 0}@media (max-width: 768px){.forecast-stats{flex-direction:column;gap:1rem}.forecast-legend{flex-direction:column;gap:.5rem;align-items:flex-start}}.utilization-heatmap{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm);padding:.75rem 1rem;width:100%;min-width:0;max-width:100%;box-sizing:border-box;transition:box-shadow .2s ease}.utilization-heatmap:hover{box-shadow:var(--shadow-md)}.heatmap-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.625rem}.heatmap-title{display:flex;align-items:center;gap:.5rem}.heatmap-title h3{margin:0;font-size:.875rem;font-weight:600;color:var(--gray-600, #475569);line-height:1.3}.heatmap-subtitle{font-size:.75rem;color:#94a3b8;font-weight:400;margin-left:.25rem}.heatmap-tooltip{width:16px;height:16px;border-radius:999px;border:1px solid #cbd5e1;color:#64748b;font-size:.625rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#f8fafc;flex-shrink:0}.ai-icon{color:#8b5cf6;flex-shrink:0}.heatmap-legend{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.legend-item{display:inline-flex;align-items:center;gap:4px;font-size:.625rem;color:#64748b;font-weight:500;white-space:nowrap}.legend-color{width:10px;height:10px;border-radius:2px;border:1px solid rgba(0,0,0,.08);flex-shrink:0}.gradient-legend{display:flex;align-items:center;gap:6px;font-size:.625rem;color:#64748b;font-weight:500;flex-shrink:0}.gradient-legend-bar{width:80px;height:8px;border-radius:4px;background:linear-gradient(90deg,#f1f5f9,#bfdbfe 25%,#fbbf24 55%,#f97316 80%,#ef4444);border:1px solid rgba(0,0,0,.06)}.gradient-legend-label{font-size:.5625rem;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.heatmap-container{overflow-x:auto;overflow-y:visible;margin-bottom:.5rem;-webkit-overflow-scrolling:touch}.heatmap-container::-webkit-scrollbar{height:4px}.heatmap-container::-webkit-scrollbar-track{background:#f8fafc}.heatmap-container::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:2px}.heatmap-grid{display:flex;flex-direction:column;gap:0;min-width:600px}.hour-labels{display:flex;padding-left:44px;gap:0;margin-bottom:2px}.hour-label{flex:1;text-align:center;font-size:.5625rem;color:#94a3b8;font-weight:500;padding:0 0 2px;line-height:1;font-variant-numeric:tabular-nums}.day-row{display:flex;align-items:stretch;gap:0;margin-bottom:1px}.day-label{width:40px;flex-shrink:0;font-size:.625rem;font-weight:600;color:#64748b;display:flex;align-items:center;justify-content:flex-end;padding-right:4px;text-transform:uppercase;letter-spacing:.03em}.hour-cells{display:flex;flex:1;gap:1px;min-width:0}.heatmap-cell{flex:1;height:22px;min-width:0;border-radius:2px;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease;position:relative;border:none!important}.heatmap-cell:hover,.heatmap-cell.hovered{transform:scaleY(1.35) scaleX(1.15);z-index:10;box-shadow:0 2px 8px #0f172a2e;border-radius:3px}.heatmap-cell.cell-idle{background:#f1f5f9!important}.heatmap-cell.cell-idle:hover{background:#e2e8f0!important}.utilization-heatmap .cell-tooltip{position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);z-index:100;pointer-events:none}.utilization-heatmap .day-row:first-of-type .cell-tooltip,.utilization-heatmap .day-row:nth-of-type(2) .cell-tooltip{bottom:auto;top:calc(100% + 4px)}.utilization-heatmap .tooltip-content{background:#fff;border:1px solid var(--gray-200, #e2e8f0);border-radius:6px;padding:.25rem .5rem;box-shadow:0 4px 12px #0f172a1f;min-width:140px;text-align:left;font-size:.625rem;line-height:1.3}.utilization-heatmap .tooltip-header{display:flex;align-items:center;justify-content:space-between;gap:.25rem;margin-bottom:.125rem}.utilization-heatmap .tooltip-time{font-size:.625rem;font-weight:600;color:#0f172a}.utilization-heatmap .tooltip-badge{display:inline-block;padding:0 4px;border-radius:3px;font-size:.5rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.utilization-heatmap .tooltip-badge.peak{background:#fde8e8;color:#b42318}.utilization-heatmap .tooltip-badge.off{background:#e6f6ef;color:#067647}.utilization-heatmap .tooltip-badge.typical{background:#f1f5f9;color:#475569}.utilization-heatmap .tooltip-utilization{display:flex;align-items:baseline;justify-content:space-between;gap:.125rem;margin-bottom:.0625rem}.utilization-heatmap .tooltip-label{font-size:.5rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.utilization-heatmap .tooltip-value{font-size:.6875rem;font-weight:700;color:#0f172a}.utilization-heatmap .tooltip-meta{display:flex;justify-content:space-between;gap:.25rem;font-size:.5rem;color:#94a3b8}.heatmap-empty{padding:2rem 1.5rem;text-align:center;color:#64748b}.heatmap-empty p{margin:0;font-size:.875rem;font-weight:500;color:#475569}.heatmap-empty .empty-hint{font-size:.75rem;color:#94a3b8;font-weight:400;margin-top:.375rem;max-width:420px;margin-left:auto;margin-right:auto;line-height:1.5}.heatmap-action-button{margin-top:.75rem;padding:.5rem 1rem;background:var(--gradient-hero, linear-gradient(135deg, #1e3a5f 0%, #14b8a6 100%));color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:.8125rem;font-weight:600;display:inline-flex;align-items:center;gap:.375rem;transition:opacity .2s ease,transform .15s ease;box-shadow:0 1px 3px #0000001f}.heatmap-action-button:hover{opacity:.92;transform:translateY(-1px)}.heatmap-summary{display:flex;gap:1.25rem;padding-top:.5rem;border-top:1px solid var(--gray-200, #e2e8f0);flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:#64748b;font-weight:500}.summary-item svg{color:#8b5cf6;flex-shrink:0}.heatmap-skeleton{display:flex;flex-direction:column;gap:3px;padding-top:.5rem}.heatmap-skeleton-row{display:flex;gap:2px;height:20px}.heatmap-skeleton-label{width:40px;border-radius:2px;background:#f1f5f9;flex-shrink:0}.heatmap-skeleton-cells{display:flex;flex:1;gap:1px}.heatmap-skeleton-cell{flex:1;border-radius:2px;background:#f1f5f9;animation:skeletonShimmer 1.5s ease-in-out infinite}.heatmap-skeleton-row:nth-child(2) .heatmap-skeleton-cell{animation-delay:.1s}.heatmap-skeleton-row:nth-child(3) .heatmap-skeleton-cell{animation-delay:.2s}.heatmap-skeleton-row:nth-child(4) .heatmap-skeleton-cell{animation-delay:.3s}.heatmap-skeleton-row:nth-child(5) .heatmap-skeleton-cell{animation-delay:.4s}.heatmap-skeleton-row:nth-child(6) .heatmap-skeleton-cell{animation-delay:.5s}.heatmap-skeleton-row:nth-child(7) .heatmap-skeleton-cell{animation-delay:.6s}@keyframes skeletonShimmer{0%,to{opacity:.5}50%{opacity:1}}@media (max-width: 768px){.utilization-heatmap{padding:.625rem .5rem}.heatmap-header{flex-direction:column;align-items:flex-start;gap:.375rem}.heatmap-legend{width:100%;flex-wrap:wrap}.heatmap-summary{flex-direction:column;gap:.375rem}.heatmap-cell{height:18px}.day-label{width:32px;font-size:.5625rem}.hour-labels{padding-left:36px}}.account-attribution{background:#fff;border-radius:12px;padding:1.25rem;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000f;margin-bottom:1.5rem}.attribution-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.attribution-header h4{margin:0;font-size:.9375rem;font-weight:600;color:#1f2937;display:flex;align-items:center}.attribution-total{font-size:.875rem;font-weight:600;color:#3b82f6}.attribution-list{display:flex;flex-direction:column;gap:.75rem}.attribution-item{padding:.75rem;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.attribution-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.attribution-account-name{font-size:.875rem;font-weight:600;color:#1f2937}.attribution-account-cost{font-size:.875rem;font-weight:700;color:#059669}.attribution-bar-container{display:flex;align-items:center;gap:.75rem;margin-bottom:.25rem}.attribution-bar{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;position:relative}.attribution-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .5s ease;animation:shimmer 2s infinite}.attribution-percentage{font-size:.75rem;font-weight:600;color:#6b7280;min-width:45px;text-align:right}.attribution-identifier{font-size:.75rem;color:#9ca3af;margin-top:.25rem}@media (max-width: 768px){.attribution-header{flex-direction:column;align-items:flex-start;gap:.5rem}.attribution-item-header{flex-direction:column;align-items:flex-start;gap:.25rem}}.widget-skeleton{background:var(--card-bg, #ffffff);border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014;border:1px solid var(--border-color, #e5e7eb);animation:pulse 1.5s ease-in-out infinite}.widget-skeleton-card{display:flex;flex-direction:column;gap:16px}.widget-skeleton-chart{display:flex;flex-direction:column;gap:20px}.widget-skeleton-table{display:flex;flex-direction:column;gap:16px}.skeleton-header{display:flex;flex-direction:column;gap:8px}.skeleton-content{display:flex;flex-direction:column;gap:12px;margin-top:8px}.skeleton-line{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;height:12px}.skeleton-title{height:20px;width:60%;max-width:200px}.skeleton-subtitle{height:14px;width:40%;max-width:150px}.skeleton-large{height:32px;width:80%}.skeleton-medium{height:16px;width:70%}.skeleton-small{height:12px;width:50%}.skeleton-chart-area{flex:1;display:flex;align-items:flex-end;justify-content:space-between;padding:20px 0;min-height:200px}.skeleton-bars{display:flex;align-items:flex-end;justify-content:space-between;width:100%;gap:8px;height:100%}.skeleton-bar{flex:1;background:linear-gradient(180deg,#e0e0e0,#f0f0f0);border-radius:4px 4px 0 0;animation:shimmer 1.5s infinite;min-height:20px}.skeleton-table{display:flex;flex-direction:column;gap:12px}.skeleton-table-row{display:flex;gap:16px;align-items:center}.skeleton-table-cell{flex:1;height:16px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@media (prefers-color-scheme: dark){.widget-skeleton{background:var(--card-bg, #1f2937);border-color:var(--border-color, #374151)}.skeleton-line{background:linear-gradient(90deg,#374151 25%,#4b5563,#374151 75%);background-size:200% 100%}.skeleton-bar{background:linear-gradient(180deg,#4b5563,#374151)}}.service-cost-table-container{background:#fff;border-radius:12px;padding:1.75rem;margin-top:2rem;box-shadow:0 4px 16px #00000014,0 1px 3px #0000000f;max-width:100%;width:100%;overflow:hidden;box-sizing:border-box;border:1px solid rgba(226,232,240,.8)}.table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.table-header h3{margin:0;font-size:1.375rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.625rem}.export-btn{padding:.5rem .875rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #14b8a640;display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;flex-shrink:0;width:auto;max-width:120px}.export-btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #14b8a659}.export-btn:active{transform:translateY(0)}.service-cost-table-request{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem .25rem}.service-cost-table-request h3{margin:0 0 .25rem;font-size:1.25rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.625rem}.service-cost-table-request p{margin:0;color:#64748b;font-size:.875rem}.request-btn{padding:.55rem 1rem;background:#0f766e;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.request-btn:hover{background:#0d9488;box-shadow:0 2px 8px #0d948833}.table-wrapper{overflow-x:auto;overflow-y:auto;max-height:600px;max-width:100%;width:100%;border:1px solid #e2e8f0;border-radius:10px;box-sizing:border-box;background:#fafbfc;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#14b8a6 #f1f5f9}.table-wrapper::-webkit-scrollbar{height:10px;width:10px}.table-wrapper::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.table-wrapper::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#14b8a6,#06b6d4);border-radius:5px;border:2px solid #f1f5f9}.table-wrapper::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#0d9488,#0891b2)}.service-cost-table{width:max-content;min-width:100%;max-width:none;border-collapse:separate;border-spacing:0;font-size:.875rem;table-layout:auto;background:#fff}.service-cost-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9);position:sticky;top:0;z-index:10;box-shadow:0 2px 4px #0000000d}.service-cost-table th{padding:1rem .875rem;text-align:left;font-weight:700;color:#475569;font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #cbd5e1;white-space:nowrap;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.service-cost-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.service-cost-table th.sortable:hover{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);color:#1e293b}.service-cost-table td{padding:.875rem;border-bottom:1px solid #f1f5f9;color:#334155;background:#fff;transition:all .2s ease}.service-cost-table tbody tr{transition:all .2s ease}.service-cost-table tbody tr:nth-child(2n) td{background:#fafbfc}.service-cost-table tbody tr:nth-child(2n) .sticky-col{background:#fafbfc}.service-cost-table tbody tr:nth-child(2n) .total-cell{background:linear-gradient(135deg,#ecfdf5,#d1fae5 50%)}.service-cost-table tbody tr:nth-child(2n) .avg-cell{background:#f0f9ff}.service-cost-table tbody tr:hover{background:#f1f5f9;box-shadow:0 2px 12px #14b8a614;transform:scale(1.002)}.service-cost-table tbody tr:hover td{background:#f1f5f9}.service-cost-table tbody tr:hover .total-cell{background:linear-gradient(135deg,#ccfbf1,#99f6e4 50%);color:#0f766e}.service-cost-table tbody tr:hover .avg-cell{background:#e0f2fe;color:#075985}.sticky-col{position:sticky;left:0;background:#fff;z-index:5;box-shadow:4px 0 8px #0000000f}.service-cost-table thead .sticky-col{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.service-cost-table tbody tr:hover .sticky-col{background:#f8fafc}.service-name{font-weight:700;color:#1e293b;min-width:180px;max-width:220px;font-size:.9375rem}.provider-cell{min-width:100px}.provider-with-icon{display:flex;align-items:center;gap:.5rem}.provider-name{color:var(--text-secondary);font-weight:500;text-transform:uppercase;font-size:.75rem}.month-col{min-width:85px;max-width:95px;text-align:right;font-weight:600;color:#475569}.cost-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;color:#475569;font-size:.875rem;font-weight:500}.total-col,.avg-col,.list-price-col,.discount-col,.savings-col{min-width:100px;max-width:120px;text-align:right;font-weight:700}.total-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:700;color:#14b8a6;background:linear-gradient(135deg,#f0fdfa,#ccfbf1 50%);font-size:.9375rem;border-left:3px solid #14b8a6}.avg-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:600;color:#0891b2;background:#f0f9ff;font-size:.875rem}.list-price-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:500;color:#64748b;font-size:.8125rem}.discount-cell{text-align:center;font-weight:600}.savings-cell{text-align:right;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:700;color:#10b981;font-size:.875rem}.service-cost-table tbody tr:nth-child(2n) .savings-cell{background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.service-cost-table tbody tr:hover .savings-cell{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.sort-icon{display:inline-block;margin-left:.5rem;font-size:.875rem;color:#94a3b8;opacity:.6;transition:all .2s ease}.sort-icon.active{opacity:1;color:#14b8a6;font-weight:700;transform:scale(1.1)}.service-cost-table th.sortable:hover .sort-icon{opacity:1;color:#64748b}.table-scroll-hint{text-align:center;padding:.5rem;font-size:.75rem;color:var(--text-secondary);background:var(--bg-primary);border-radius:var(--radius-sm);margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.table-scroll-hint.hidden{display:none}.table-footer{margin-top:1.25rem;padding-top:1.25rem;border-top:2px solid #f1f5f9;text-align:center;background:linear-gradient(135deg,#fafbfc,#f8fafc);padding:1rem;border-radius:8px}.table-footer p{margin:0;font-size:.875rem;color:#64748b;font-weight:600}.loading-spinner{width:48px;height:48px;margin:3rem auto;border:4px solid #e2e8f0;border-top-color:#14b8a6;border-right-color:#06b6d4;border-radius:50%;animation:spin .8s linear infinite}.empty-state{text-align:center;padding:4rem 1rem;color:#64748b;background:linear-gradient(135deg,#fafbfc,#f8fafc);border-radius:10px;border:2px dashed #cbd5e1}.empty-state p{margin:0;font-size:1.0625rem;font-weight:500}@media (max-width: 768px){.table-header{flex-direction:column;gap:1rem;align-items:flex-start}.export-btn{width:100%}.service-cost-table{font-size:.75rem}.service-cost-table th,.service-cost-table td{padding:.625rem .75rem}}.date-range-picker{position:relative;display:inline-block}.date-range-picker-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:160px;justify-content:space-between}.date-range-picker-button:hover{background:#f9fafb;border-color:#9ca3af}.date-range-picker-button:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-range-label{flex:1;text-align:left}.date-range-picker-button svg:last-child{transition:transform .2s ease;color:#6b7280;flex-shrink:0}.date-range-picker-button svg:last-child.open{transform:rotate(180deg)}.date-range-picker-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:1000;min-width:240px;max-height:400px;overflow-y:auto;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.date-range-presets{display:flex;flex-direction:column;padding:.5rem}.date-range-preset{display:flex;align-items:center;padding:.625rem .75rem;border:none;background:transparent;text-align:left;font-size:.875rem;color:#374151;cursor:pointer;border-radius:4px;transition:all .15s ease;width:100%}.date-range-preset:hover{background:#f3f4f6;color:#111827}.date-range-preset.active{background:#eff6ff;color:#1e40af;font-weight:500}.date-range-preset.active:before{content:"✓";margin-right:.5rem;color:#3b82f6;font-weight:600}.date-range-custom{padding:1rem;border-top:1px solid #e5e7eb}.date-range-custom-header{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:1rem}.date-range-custom-inputs{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.date-range-input-group{display:flex;flex-direction:column;gap:.375rem}.date-range-input-group label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.date-range-input-group input{padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;color:#374151;transition:all .2s ease}.date-range-input-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.date-range-custom-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.75rem;border-top:1px solid #e5e7eb}.date-range-cancel,.date-range-apply{padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.date-range-cancel{background:#f3f4f6;color:#374151}.date-range-cancel:hover{background:#e5e7eb}.date-range-apply{background:#3b82f6;color:#fff}.date-range-apply:hover:not(:disabled){background:#2563eb}.date-range-apply:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.date-range-picker-dropdown{right:auto;left:0;min-width:280px}.date-range-picker-button{min-width:140px;font-size:.8125rem;padding:.5rem .625rem}}.dashboard{padding:1.5rem;max-width:100%;width:100%;margin:0;animation:fadeIn .3s ease-out;overflow-x:hidden;box-sizing:border-box}.dashboard-controls{margin-bottom:.5rem;display:flex;gap:.5rem;align-items:center;padding:.4rem .75rem;background:var(--bg-secondary);border-radius:var(--radius-md)}.dashboard-controls label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#475569;font-size:.875rem}.dashboard-controls select{padding:.5rem .75rem;border-radius:6px;border:1px solid #e2e8f0;font-size:.875rem;font-weight:500;cursor:pointer;background:#fff;color:#334155;transition:all .2s}.dashboard-controls select:hover{border-color:#cbd5e1}.dashboard-controls select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .15)}.price-switch-button{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .9rem;background:linear-gradient(135deg,#fff,#f8fafc);color:#334155;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:600;box-shadow:0 1px 2px #0000000a;transition:all .2s ease;white-space:nowrap}.price-switch-button:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a14;transform:translateY(-1px)}.price-switch-button.active{background:linear-gradient(135deg,#fff,#f1f5f9);border-color:#cbd5e1;color:#0f172a;box-shadow:0 2px 8px #0f172a14}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:.625rem;margin-top:.5rem}.dashboard-full-width{margin-top:1rem}@media (max-width: 1024px){.dashboard{padding:1.25rem}.dashboard-grid{grid-template-columns:1fr}}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;gap:1rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.loading-spinner{width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:hsl(var(--primary));border-radius:50%;animation:spin .8s linear infinite}.loading-container p{font-size:.875rem;font-weight:500;color:#64748b}.forecast-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.forecast-header h2{font-size:1.5rem;font-weight:600;color:#0f172a;margin:0 0 .25rem}.forecast-subtitle{font-size:.875rem;color:#64748b;margin:0}.forecast-insights{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem;margin-bottom:1.5rem}.insight-card{background:#fff;padding:1.25rem;border-radius:var(--radius-lg);border:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.5rem;transition:all .2s;box-shadow:var(--shadow-sm)}.insight-card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.insight-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.insight-value{font-size:1.5rem;font-weight:600;color:#0f172a}.trend-increasing{color:#ef4444}.trend-decreasing{color:#10b981}.trend-stable{color:#64748b}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.empty-state h3{font-size:1.25rem;font-weight:600;color:#0f172a;margin:0 0 .5rem}.empty-state p{font-size:.9375rem;color:#64748b;max-width:400px;margin:0}.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;background:#fff;border-radius:8px;border:1px solid #fee2e2;background:linear-gradient(to bottom,#fef2f2,#fff);max-width:600px;margin:2rem auto}.error-icon{font-size:4rem;margin-bottom:1rem;animation:pulse 2s ease-in-out infinite}.error-container h2{font-size:1.5rem;font-weight:600;color:#991b1b;margin:0 0 .75rem}.error-message{font-size:1rem;color:#64748b;margin:0 0 1.5rem;line-height:1.6}.error-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:1rem;width:100%}.error-hint{font-size:.875rem;color:#475569;margin:0;padding:.75rem 1rem;background:#f8fafc;border-radius:6px;border-left:3px solid hsl(var(--primary))}.btn-primary{padding:.75rem 1.5rem;background:hsl(var(--primary));color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a}.btn-primary:hover{background:hsl(var(--primary-700));transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:#475569;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.optimization-header{margin-bottom:.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.optimization-header h1{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem}@media (max-width: 768px){.dashboard{padding:1rem}.optimization-header{flex-direction:column;align-items:stretch}.time-range-selector{width:100%;justify-content:stretch}.time-range-selector button{flex:1;padding:.5rem;font-size:.75rem}}.chart-type-toggle{display:flex;gap:.25rem;background:transparent;padding:.25rem;border-radius:var(--radius-md)}.chart-type-toggle .toggle-btn{padding:.375rem .75rem;background:transparent;border:none;border-radius:var(--radius-sm);font-size:1.125rem;cursor:pointer;transition:all .2s ease;opacity:.5}.chart-type-toggle .toggle-btn:hover{opacity:.8;background:var(--bg-primary)}.chart-type-toggle .toggle-btn.active{opacity:1;background:hsl(var(--primary));box-shadow:0 2px 4px hsl(var(--primary) / .3)}.ai-chart-container{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.ai-chart-embedded{background:transparent;border-radius:0;padding:0;box-shadow:none}.ai-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.ai-chart-header h3{font-size:18px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.chart-type-toggle{display:flex;gap:4px;background:#f8fafc;padding:4px;border-radius:8px}.toggle-btn{padding:6px 12px;border:none;background:transparent;border-radius:6px;font-size:16px;cursor:pointer;transition:all .2s ease}.toggle-btn:hover{background:#e2e8f0}.toggle-btn.active{background:#fff;box-shadow:0 1px 3px #0000001a}.ai-chart{width:100%;height:auto;display:block}.ai-chart-empty{padding:60px 20px;text-align:center;color:var(--text-secondary, #666);font-size:14px}.grid-lines line{opacity:.5}.tooltip{pointer-events:none}@media (max-width: 768px){.ai-chart-container{padding:16px}.ai-chart-header h3{font-size:16px}.toggle-btn{padding:4px 8px;font-size:14px}}.global-summary{padding:1.5rem 2rem 2.5rem;background:#f8fafc;min-height:100vh;display:flex;flex-direction:column;gap:2rem}.global-summary-header{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.summary-header-actions{display:flex;align-items:center;gap:1rem}.summary-loading{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border-radius:999px;border:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:.8rem;font-weight:600}.summary-loading-spinner{width:14px;height:14px;border-radius:999px;border:2px solid #e2e8f0;border-top-color:#3b82f6;animation:summary-spin .8s linear infinite}@keyframes summary-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.summary-card{background:#fff;border-radius:16px;padding:1.25rem;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0f;display:flex;flex-direction:column;gap:.5rem}.summary-card.emphasis{border:1px solid rgba(59,130,246,.35);background:linear-gradient(135deg,#3b82f614,#14b8a614)}.summary-card.summary-card-savings{border:1px solid rgba(16,185,129,.25);background:linear-gradient(135deg,#10b98114,#10b98105)}.summary-card.summary-card-savings .summary-card-value{color:#0f766e}.summary-card.summary-card-potential{border:1px solid rgba(59,130,246,.25);background:linear-gradient(135deg,#3b82f60f,#3b82f603)}.summary-card.summary-card-potential .summary-card-value{color:#1d4ed8}.summary-card.compact{padding:1rem 1.25rem}.summary-card-label{font-size:.85rem;color:#64748b;font-weight:600;display:inline-flex;align-items:center;gap:.5rem}.global-summary .summary-card-icon{width:20px;height:20px;border-radius:8px;background:transparent!important;color:#64748b;display:inline-flex;align-items:center;justify-content:center}.summary-card-value{font-size:1.5rem;font-weight:700;color:#0f172a}.summary-card-change{font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;gap:.35rem}.summary-card-change.up{color:#10b981}.summary-card-change.down{color:#ef4444}.summary-card-change.neutral{color:#94a3b8}.summary-tooltip{width:18px;height:18px;border-radius:999px;border:1px solid #cbd5f5;color:#4338ca;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#eef2ff}.summary-section{margin-bottom:0}.summary-section-large .summary-section-grid{grid-template-columns:repeat(2,minmax(320px,1fr))}.summary-section-large .summary-panel{min-height:256px}.summary-section-large .summary-panel-horizontal{grid-column:1 / -1;min-height:100px}.summary-section-large .summary-panel-horizontal .summary-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}@media (max-width: 980px){.summary-section-large .summary-section-grid{grid-template-columns:1fr}}.summary-section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.25rem;gap:1rem}.summary-section-header h2{font-size:1.2rem;font-weight:700;color:#0f172a}.summary-section-meta{font-size:.75rem;color:#64748b;font-weight:500}.summary-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.summary-panel{background:#fff;border-radius:16px;padding:1.5rem;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;overflow:hidden}.summary-panel-title{display:flex;align-items:center;gap:.5rem;font-weight:600;color:#1e293b;margin-bottom:1.25rem}.summary-panel-title-text{display:inline-flex;align-items:center;gap:.5rem}.summary-logo{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:6px}.summary-logo img{width:18px;height:18px;object-fit:contain}.summary-logo.fallback{background:transparent;color:#0f172a;font-size:10px;font-weight:700}.summary-panel .chart-container{background:transparent;border:none;box-shadow:none;padding:0;overflow:visible}.summary-panel .chart-container:before{display:none}.summary-panel .chart-container:hover{transform:none;box-shadow:none}.summary-breakdown{display:grid;gap:1rem}.summary-breakdown-row{display:grid;grid-template-columns:140px 1fr 160px;align-items:center;gap:.75rem}.summary-breakdown-label{display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#334155;font-weight:600}.summary-dot{width:10px;height:10px;border-radius:999px}.summary-breakdown-bar{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.summary-breakdown-fill{height:100%;border-radius:999px}.summary-breakdown-value{font-size:.8rem;color:#475569;font-weight:600;text-align:right}.summary-list{display:grid;gap:1rem}.summary-list-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .75rem;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0}.summary-list-title{font-weight:600;color:#0f172a;display:inline-flex;align-items:center;gap:.5rem}.summary-list-subtitle{font-size:.75rem;color:#64748b;display:inline-flex;align-items:center;gap:.4rem}.summary-list-value{font-weight:700;color:#0f172a}.summary-metrics{display:grid;gap:1rem}.summary-metric{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#475569;padding:.5rem 0;border-bottom:1px solid #e2e8f0}.summary-metric strong{color:#0f172a;font-size:1rem}.summary-empty{padding:1rem;background:#f8fafc;border-radius:12px;color:#94a3b8;font-size:.85rem;text-align:center}.summary-link{display:inline-flex;align-items:center;gap:.35rem;background:none;border:none;color:#2563eb;font-size:.85rem;font-weight:600;cursor:pointer;padding:0}.summary-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem}.summary-action-card{background:#fff;border-radius:16px;padding:1.25rem;border:1px solid #e2e8f0;box-shadow:0 8px 20px #0f172a0a;display:flex;flex-direction:column;gap:1rem}.summary-action-card.highlight{border:1px solid rgba(20,184,166,.35);background:linear-gradient(135deg,#14b8a614,#3b82f614)}.summary-action-title{display:flex;align-items:center;gap:.5rem;font-weight:700;color:#0f172a}.summary-action-subtitle{font-size:.9rem;color:#475569;margin:0}.summary-action-buttons{display:flex;flex-wrap:wrap;gap:.75rem}.summary-action-buttons button{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .85rem;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#0f172a;font-weight:600;cursor:pointer}@media (max-width: 960px){.global-summary{padding:1.5rem;gap:1.5rem}.global-summary-header{flex-direction:column;align-items:flex-start;gap:1rem}.summary-breakdown-row{grid-template-columns:1fr;align-items:flex-start}.summary-breakdown-value{text-align:left}}.simple-forecast-chart{width:100%;height:100%;min-height:500px;display:flex;flex-direction:column;box-sizing:border-box}.forecast-canvas{width:100%!important;height:100%!important;display:block;flex:1}.chart-empty-state{padding:3rem;text-align:center;color:#6b7280;background:#f9fafb;border-radius:12px;border:1px dashed #e5e7eb}.enterprise-forecast-chart-simple{width:100%;height:100%;min-height:400px;display:flex;flex-direction:column}.enterprise-forecast-chart{width:100%;height:100%;min-height:600px;display:flex;flex-direction:column;background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #00000014;position:relative;overflow:hidden}.enterprise-forecast-chart:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6,#ec4899);border-radius:16px 16px 0 0}.forecast-stats-header{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem;z-index:1}.stat-card{background:#fff;border-radius:12px;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;border:1px solid #e5e7eb;box-shadow:0 2px 8px #0000000a;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:#cbd5e1}.stat-card.primary{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6;color:#fff}.stat-card.primary .stat-label,.stat-card.primary .stat-value{color:#fff}.stat-icon{flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#3b82f61a;border-radius:10px}.stat-card.primary .stat-icon{background:#fff3}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.stat-content{flex:1;min-width:0}.stat-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:.25rem}.stat-value{font-size:1.5rem;font-weight:700;color:#1f2937;line-height:1.2}.stat-value.trend-up{color:#ef4444}.stat-value.trend-down{color:#10b981}.stat-value.trend-stable{color:#6b7280}.chart-canvas-wrapper{flex:1;position:relative;min-height:450px;background:#fff;border-radius:12px;padding:1rem;border:1px solid #e5e7eb;box-shadow:inset 0 2px 4px #00000005}.forecast-canvas{width:100%;height:100%;display:block;cursor:crosshair}.chart-tooltip{position:absolute;background:linear-gradient(135deg,#1f2937,#111827);color:#fff;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;pointer-events:none;z-index:100;box-shadow:0 8px 24px #0000004d;transform:translate(-50%) translateY(-100%);margin-top:-10px;min-width:150px}.chart-tooltip:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1f2937}.tooltip-header{font-weight:600;margin-bottom:.5rem;color:#f3f4f6}.tooltip-value{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:.25rem}.tooltip-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;background:#8b5cf633;border:1px solid rgba(139,92,246,.3);border-radius:6px;font-size:.75rem;font-weight:600;color:#c4b5fd;margin-top:.5rem}.forecast-legend{display:flex;justify-content:center;gap:2rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280;font-weight:500}.legend-color{width:20px;height:4px;border-radius:2px}.legend-color.historical{background:#3b82f6}.legend-color.forecast{background:#8b5cf6;background-image:repeating-linear-gradient(90deg,#8b5cf6,#8b5cf6 6px,transparent 6px,transparent 12px)}.legend-color.confidence{background:#8b5cf6;opacity:.3}.chart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#6b7280;min-height:400px}.empty-icon{color:#8b5cf6;margin-bottom:1rem;opacity:.6;animation:pulse-glow 2s ease-in-out infinite}.chart-empty-state p{margin:.5rem 0;font-size:1rem;font-weight:500}@media (max-width: 768px){.forecast-stats-header{grid-template-columns:1fr}.forecast-legend{flex-direction:column;gap:.75rem;align-items:flex-start}}.ai-overview-insights{background:linear-gradient(135deg,#8b5cf60d,#3b82f60d);border:none;border-radius:16px;padding:1.5rem;margin-bottom:2rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ai-insights-header{margin-bottom:1.25rem;border:none;padding:0}.ai-badge-header{display:flex;align-items:center;gap:.75rem;border:none;padding:0}.ai-badge-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1f2937;flex:1;border:none;padding:0;box-shadow:none}.ai-icon{color:#8b5cf6;animation:pulse-glow 2s ease-in-out infinite}.ml-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;border-radius:12px;font-size:.75rem;font-weight:600;animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-bottom:.75rem}.insight-card{background:linear-gradient(135deg,#fff,#fafbfc);border-radius:12px;padding:1rem 1.25rem;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px #0000000a,0 2px 8px #0000000f;position:relative;overflow:hidden}.insight-card:hover{border-color:#14b8a6;box-shadow:0 2px 4px #0000000f,0 8px 16px #14b8a61f,0 12px 24px #00000014;transform:translateY(-3px) scale(1.01)}.insight-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#06b6d4,#0891b2);opacity:0;transition:opacity .3s ease}.insight-card:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(20,184,166,.04) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.insight-card:hover:before{opacity:1}.insight-card:hover:after{opacity:1}.insight-icon{flex-shrink:0;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:transparent}.insight-content{flex:1;min-width:0}.insight-label{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-weight:600}.insight-value{font-size:1.75rem;font-weight:700;background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1;margin-bottom:.375rem}.insight-value.success{color:#10b981}.insight-value.warning{color:#f59e0b}.insight-sublabel{font-size:.75rem;color:#64748b;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.model-badge{display:inline-block;padding:.125rem .5rem;background:#e0e7ff;color:#4f46e5;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase}.confidence-badge{display:inline-block;padding:.125rem .5rem;background:#f3f4f6;color:#6b7280;border-radius:6px;font-size:.7rem;font-weight:500}.text-warning{color:#f59e0b}.text-success{color:#10b981}.ai-recommendations{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.recommendation-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:8px;font-size:.875rem;color:#92400e}.recommendation-item svg{flex-shrink:0;color:#f59e0b}.loading-spinner-small{width:24px;height:24px;border:3px solid #e5e7eb;border-top-color:#8b5cf6;border-radius:50%;animation:spin .8s linear infinite;margin:2rem auto}.insights-empty{padding:2rem;text-align:center;color:#6b7280}.insights-empty p{margin:.5rem 0}.empty-hint{font-size:.875rem;color:#9ca3af}@media (max-width: 768px){.insights-grid{grid-template-columns:1fr}.ai-overview-insights{padding:1rem}}.budget-forecast-comparison{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;box-shadow:0 1px 2px #0f172a0d;display:flex;flex-direction:column;gap:1.15rem}.comparison-header{margin:0}.comparison-header h3{margin:0;font-size:.9rem;font-weight:700;color:var(--gray-800);display:inline-flex;align-items:center;gap:.4rem}.comparison-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.budget-forecast-comparison .metric-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:.85rem 1rem;display:flex;align-items:center;gap:.75rem;transition:box-shadow .2s}.budget-forecast-comparison .metric-card:hover{box-shadow:0 2px 8px #0f172a0f;transform:none}.budget-forecast-comparison .metric-card.budget{border-left:3px solid #3b82f6;background:#fff;border-color:var(--gray-200);border-left-color:#3b82f6}.budget-forecast-comparison .metric-card.forecast{border-left:3px solid hsl(174 64% 47%);background:#fff;border-color:var(--gray-200);border-left-color:#2bc5b5}.budget-forecast-comparison .metric-card.variance.over{border-left:3px solid #ef4444;background:#fff;border-color:var(--gray-200);border-left-color:#ef4444}.budget-forecast-comparison .metric-card.variance.under{border-left:3px solid #10b981;background:#fff;border-color:var(--gray-200);border-left-color:#10b981}.budget-forecast-comparison .metric-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--gray-50);border-radius:10px;box-shadow:none}.budget-forecast-comparison .metric-content{flex:1;min-width:0}.budget-forecast-comparison .metric-label{font-size:.7rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-bottom:.2rem}.budget-forecast-comparison .metric-value{font-size:1.25rem;font-weight:800;color:var(--gray-900);line-height:1.2}.budget-forecast-comparison .metric-value.negative{color:#dc2626}.budget-forecast-comparison .metric-value.positive{color:#059669}.budget-forecast-comparison .metric-sublabel{font-size:.72rem;color:var(--gray-500);margin-top:.15rem;font-weight:600}.utilization-section{padding:.85rem 1rem;background:var(--gray-50);border-radius:10px;border:1px solid var(--gray-100)}.utilization-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.78rem;font-weight:700;color:var(--gray-700)}.utilization-percent{font-size:.95rem;font-weight:800}.utilization-bar-container{position:relative;height:10px;background:var(--gray-200);border-radius:999px;overflow:hidden;margin-bottom:.35rem}.utilization-bar{height:100%;border-radius:999px;transition:width .6s ease;position:relative;overflow:hidden}.utilization-bar-fill{display:none}.utilization-markers{display:flex;justify-content:space-between;font-size:.65rem;font-weight:600;color:var(--gray-400)}.comparison-insights{display:flex;flex-direction:column;gap:.65rem}.budget-forecast-comparison .insight-card{display:flex;align-items:flex-start;gap:.65rem;padding:.75rem .9rem;border-radius:10px;border-left:3px solid;background:var(--gray-50)}.budget-forecast-comparison .insight-card.critical{background:#fef7f7;border-left-color:#ef4444}.budget-forecast-comparison .insight-card.warning{background:#fffcf0;border-left-color:#f59e0b}.budget-forecast-comparison .insight-card.success{background:#f0fdf8;border-left-color:#10b981}.budget-forecast-comparison .insight-card strong{display:block;font-size:.8rem;font-weight:700;color:var(--gray-900);margin-bottom:.15rem}.budget-forecast-comparison .insight-card p{margin:0;font-size:.78rem;color:var(--gray-500);line-height:1.5}.comparison-empty{padding:2.5rem;text-align:center;color:var(--gray-500);font-size:.835rem}@media (max-width: 768px){.comparison-metrics{grid-template-columns:1fr}}.predictive-analytics-dashboard{background:#fff;border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;border:1px solid var(--gray-200);box-shadow:0 1px 2px #0f172a0a;margin-bottom:1.5rem}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.analytics-header h3{margin:0 0 .15rem;font-size:.9rem;font-weight:700;color:var(--gray-800);display:flex;align-items:center;gap:.35rem}.analytics-subtitle{margin:0;font-size:.78rem;color:var(--gray-500)}.analytics-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1rem}.analytics-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:.85rem 1rem;display:flex;align-items:center;gap:.75rem;transition:box-shadow .2s}.analytics-card:hover{box-shadow:0 2px 8px #0f172a0f;transform:none}.analytics-card.primary{background:var(--gray-50);border-color:var(--gray-200)}.analytics-card.primary .card-label,.analytics-card.primary .card-sublabel{color:var(--gray-500)}.analytics-card.primary .card-value{color:var(--gray-900)}.predictive-analytics-dashboard .card-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--gray-50);border-radius:10px;box-shadow:none}.analytics-card.primary .card-icon{background:var(--gray-100)}.predictive-analytics-dashboard .card-content{flex:1;min-width:0}.predictive-analytics-dashboard .card-label{font-size:.7rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-bottom:.2rem}.predictive-analytics-dashboard .card-value{font-size:1.25rem;font-weight:800;color:var(--gray-900);line-height:1.2;margin-bottom:.15rem}.predictive-analytics-dashboard .card-sublabel{font-size:.72rem;color:var(--gray-400)}.risk-factors-section,.projections-section{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-100)}.risk-factors-section h4,.projections-section h4{margin:0 0 .75rem;font-size:.835rem;font-weight:700;color:var(--gray-800);display:flex;align-items:center;gap:.35rem}.risk-factors-list{display:flex;flex-direction:column;gap:.5rem}.risk-factor-item{padding:.65rem .85rem;background:var(--gray-50);border-left:3px solid;border-radius:8px;display:flex;align-items:center;gap:.75rem}.risk-severity{font-size:.65rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;min-width:52px}.risk-message{flex:1;font-size:.8rem;color:var(--gray-700);font-weight:600}.projections-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.projection-card{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:10px;padding:.85rem 1rem;text-align:center}.projection-label{font-size:.7rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-bottom:.3rem}.projection-value{font-size:1.25rem;font-weight:800;color:var(--gray-900);margin-bottom:.15rem}.projection-note{font-size:.72rem;color:var(--gray-400)}.analytics-empty{padding:3rem 2rem;text-align:center;color:var(--gray-500)}.empty-icon{color:var(--gray-300);margin-bottom:.75rem;opacity:.7}@media (max-width: 1024px){.analytics-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.analytics-metrics-grid,.projections-grid{grid-template-columns:1fr}}.fcst-page{display:flex;flex-direction:column;gap:1.5rem}.fcst-page>.optimization-header{margin-bottom:0}.fcst-page .forecast-metrics-grid,.fcst-page .forecast-chart-container,.fcst-page .budget-forecast-comparison,.fcst-page .forecast-scenarios,.fcst-page .predictive-analytics-dashboard,.fcst-page .forecast-heatmap-section,.fcst-page .forecast-insights-section,.fcst-page .forecast-actions,.fcst-page .fcst-discountWarning{margin-bottom:0;margin-top:0}.forecast-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;margin-bottom:1.5rem}.opt-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:.9rem 1rem;display:flex;gap:.75rem;align-items:flex-start;box-shadow:0 1px 2px #0f172a0a;transition:box-shadow .2s}.opt-card:hover{box-shadow:0 2px 8px #0f172a0f}.opt-card.primary{background:var(--gray-50);border-color:var(--gray-200)}.opt-card.primary .opt-card-label,.opt-card.primary .opt-card-sublabel{color:var(--gray-600)}.opt-card.primary .opt-card-value{color:var(--gray-900)}.opt-card-icon{font-size:1rem;line-height:1;flex-shrink:0;color:var(--gray-500);margin-top:.1rem}.opt-card-label{font-size:.7rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;font-weight:700;margin-bottom:.25rem}.opt-card-value{font-size:1.35rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.15rem}.opt-card-sublabel{font-size:.75rem;color:var(--gray-500);line-height:1.35}.opt-card-value.trend-increasing{color:#dc2626}.opt-card-value.trend-decreasing{color:#059669}.opt-card-value.trend-stable{color:#3b82f6}.forecast-chart-container{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;margin-bottom:1.5rem;min-height:420px;width:100%;box-shadow:0 1px 2px #0f172a0a}.forecast-chart-container>*{width:100%;max-width:100%;box-sizing:border-box}.forecast-chart-container>div:last-child{flex:1;min-height:0;display:flex;flex-direction:column}.fcst-chartHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.fcst-chartTitle{margin:0;font-size:.9rem;font-weight:700;color:var(--gray-800)}.fcst-exportBtn{display:inline-flex;align-items:center;gap:.35rem;padding:.4rem .85rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px;cursor:pointer;font-size:.78rem;font-weight:600;color:var(--gray-600);transition:all .15s}.fcst-exportBtn:hover{background:var(--gray-100);color:var(--gray-800)}.fcst-discountWarning{display:flex;align-items:flex-start;gap:.65rem;background:#fffdf5;border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:var(--radius-lg, 14px);padding:.85rem 1.1rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #0f172a0a}.fcst-discountWarningIcon{color:#f59e0b;flex-shrink:0;margin-top:.1rem}.fcst-discountWarningBody{flex:1}.fcst-discountWarningTitle{margin:0 0 .45rem;color:#92400e;font-size:.835rem;font-weight:700}.fcst-discountList{display:flex;flex-direction:column;gap:.45rem}.fcst-discountItem{background:#fff;padding:.6rem .75rem;border-radius:8px;border:1px solid #fde68a}.fcst-discountItemHeader{display:flex;justify-content:space-between;align-items:center;margin-bottom:.2rem}.fcst-discountVendor{font-weight:700;font-size:.8rem;color:#92400e}.fcst-discountDays{font-weight:700;color:#f59e0b;font-size:.78rem}.fcst-discountDays.critical{color:#dc2626}.fcst-discountDetail{font-size:.78rem;color:#78350f;line-height:1.45}.forecast-scenarios{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #0f172a0a}.forecast-scenarios h3{margin:0 0 1rem;font-size:.9rem;font-weight:700;color:var(--gray-800);display:flex;align-items:center;gap:.4rem}.scenarios-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.85rem}.scenario-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:.9rem 1rem;text-align:left;transition:box-shadow .2s;position:relative}.scenario-card:hover{box-shadow:0 2px 8px #0f172a0f;transform:none}.scenario-card.optimistic{border-left:3px solid #10b981}.scenario-card.realistic{border-left:3px solid hsl(174 64% 47%)}.scenario-card.pessimistic{border-left:3px solid #ef4444}.scenario-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem}.scenario-icon{font-size:1.15rem;line-height:1}.scenario-title{font-size:.72rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.04em}.scenario-value{font-size:1.3rem;font-weight:800;color:var(--gray-900);margin-bottom:.35rem}.scenario-meta{display:flex;align-items:center;gap:.4rem;margin-bottom:.35rem;flex-wrap:wrap}.scenario-cadence,.scenario-horizon{font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);background:var(--gray-50);padding:.15rem .4rem;border-radius:999px;border:1px solid var(--gray-100)}.scenario-description{font-size:.72rem;color:var(--gray-500);line-height:1.45}.forecast-tooltip{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;margin-left:.3rem;border-radius:999px;border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-400);font-size:.6rem;font-weight:700;cursor:help}.forecast-insights-section{display:grid;grid-template-columns:repeat(2,1fr);gap:.85rem;margin-bottom:1.5rem}.insights-column{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;box-shadow:0 1px 2px #0f172a0a}.insights-column h3{margin:0 0 .85rem;font-size:.9rem;font-weight:700;color:var(--gray-800);display:flex;align-items:center;gap:.4rem}.insight-list,.recommendation-list{display:flex;flex-direction:column;gap:.6rem}.insight-item,.recommendation-item{display:flex;align-items:flex-start;gap:.6rem;padding:.7rem .85rem;background:var(--gray-50);border-radius:10px;border-left:3px solid var(--gray-200)}.insight-item.warning{background:#fffdf5;border-left-color:#f59e0b}.insight-item.success{background:#f0fdf8;border-left-color:#10b981}.insight-item.info{background:#f0f7ff;border-left-color:#3b82f6}.insight-bullet,.rec-icon{font-size:1.1rem;flex-shrink:0;line-height:1}.insight-item strong,.recommendation-item strong{display:block;font-size:.8rem;font-weight:700;color:var(--gray-900);margin-bottom:.15rem}.insight-item p,.recommendation-item p{font-size:.75rem;color:var(--gray-500);margin:0;line-height:1.5}.recommendation-item{cursor:pointer;transition:background .15s}.recommendation-item:hover{background:var(--gray-100)}.forecast-actions{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;box-shadow:0 1px 2px #0f172a0a}.forecast-actions h3{margin:0 0 .85rem;font-size:.9rem;font-weight:700;color:var(--gray-800);display:flex;align-items:center;gap:.4rem}.action-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.action-btn{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.7rem 1rem;background:#fff;border:1px solid var(--gray-200);border-radius:10px;font-size:.8rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:all .15s}.action-btn:hover{background:var(--gray-50);border-color:var(--gray-300);box-shadow:0 2px 6px #0f172a0f}.action-btn.primary{background:linear-gradient(135deg,#14b8a6,#06b6d4);border-color:transparent;color:#fff}.action-btn.primary:hover{background:linear-gradient(135deg,#0d9488,#0891b2);box-shadow:0 4px 12px #14b8a64d}.action-btn span:first-child{font-size:1rem;line-height:1;display:flex}.forecast-heatmap-section{margin-top:0;background:#fff;border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;border:1px solid var(--gray-200);box-shadow:0 1px 2px #0f172a0a}.forecast-budget-manager{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1rem 1.25rem;box-shadow:0 1px 2px #0f172a0a}.forecast-budget-manager-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem}.forecast-budget-manager-tabs{display:flex;gap:.4rem;flex-wrap:wrap}.forecast-budget-provider-btn{border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);padding:.35rem .7rem;border-radius:999px;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s}.forecast-budget-provider-btn.active{background:#2bc5b514;border-color:#2bc5b54d;color:#229b8f}.forecast-budget-provider-btn:hover{border-color:#2bc5b54d;color:#229b8f}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:var(--radius-lg, 14px);box-shadow:0 20px 60px #0f172a33;max-width:480px;width:100%;max-height:90vh;overflow-y:auto}.budget-alert-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.15rem 1.25rem;border-bottom:1px solid var(--gray-100)}.budget-alert-modal .modal-header h2{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0;display:flex;align-items:center;gap:.35rem}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--gray-400);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .15s}.modal-close:hover{background:var(--gray-100);color:var(--gray-700)}.budget-alert-modal .modal-body{padding:1.25rem}.modal-description{color:var(--gray-500);margin:0 0 1.25rem;font-size:.835rem;line-height:1.6}.alert-info{background:var(--gray-50);border:1px solid var(--gray-100);border-radius:10px;padding:.85rem 1rem;margin-bottom:1.25rem}.alert-info-item{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0;border-bottom:1px solid var(--gray-100)}.alert-info-item:last-child{border-bottom:none}.alert-label{font-size:.8rem;font-weight:600;color:var(--gray-500)}.alert-value{font-size:1.1rem;font-weight:800;color:var(--gray-900)}.alert-sublabel{font-size:.72rem;color:var(--gray-400);margin-left:.4rem}.alert-actions{display:flex;gap:.65rem;justify-content:flex-end}.btn-secondary,.btn-primary{padding:.6rem 1.25rem;border:none;border-radius:10px;font-size:.8rem;font-weight:700;cursor:pointer;transition:all .15s}.btn-secondary{background:#fff;color:var(--gray-700);border:1px solid var(--gray-200)}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-300)}.btn-primary{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#0d9488,#0891b2);box-shadow:0 4px 12px #14b8a64d}.data-freshness-indicator{display:flex;align-items:center;justify-content:center;gap:.25rem;margin-top:1.5rem;padding:.5rem 0;color:var(--gray-400);font-size:.72rem;font-weight:600}.freshness-icon{line-height:1}.cost-breakdown-summary{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.25rem 1.35rem;margin-bottom:1.5rem;box-shadow:0 1px 2px #0f172a0a}.cost-breakdown-summary h3{margin:0 0 1rem;font-size:.9rem;font-weight:700;color:var(--gray-800)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.85rem}.summary-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:.85rem;background:var(--gray-50);border-radius:10px;border:1px solid var(--gray-100)}.summary-label{font-size:.7rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.35rem}.summary-value{font-size:1.3rem;font-weight:800;color:var(--gray-900)}.forecast-chart-container .enterprise-forecast-chart{background:transparent;box-shadow:none;padding:0;border-radius:0;min-height:auto}.forecast-chart-container .enterprise-forecast-chart:before{display:none}.forecast-chart-container .forecast-stats-header{gap:.75rem;margin-bottom:1rem}.forecast-chart-container .stat-card{padding:.75rem .9rem;border-radius:10px;box-shadow:none}.forecast-chart-container .stat-card:hover{transform:none;box-shadow:0 2px 6px #0f172a0f}.forecast-chart-container .stat-card.primary{background:var(--gray-50);border-color:var(--gray-200);color:inherit}.forecast-chart-container .stat-card.primary .stat-label,.forecast-chart-container .stat-card.primary .stat-value{color:var(--gray-900)}.forecast-chart-container .stat-card.primary .stat-icon{background:var(--gray-100)}.forecast-chart-container .stat-icon{width:34px;height:34px;border-radius:8px;background:var(--gray-50)}.forecast-chart-container .stat-label{font-size:.7rem;font-weight:700;color:var(--gray-500)}.forecast-chart-container .stat-value{font-size:1.15rem;font-weight:800;color:var(--gray-900)}.forecast-chart-container .chart-canvas-wrapper{min-height:340px;border:1px solid var(--gray-100);border-radius:10px;box-shadow:none;padding:.75rem}.forecast-chart-container .forecast-legend{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--gray-100);gap:1.25rem}.forecast-chart-container .legend-item{font-size:.78rem;font-weight:600;color:var(--gray-500)}.ai-icon{animation:fcstPulseGlow 2s ease-in-out infinite}@keyframes fcstPulseGlow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@media (max-width: 1024px){.forecast-metrics-grid{grid-template-columns:repeat(2,1fr)}.scenarios-grid{grid-template-columns:repeat(3,1fr)}.action-buttons{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.forecast-metrics-grid,.scenarios-grid,.forecast-insights-section,.action-buttons{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}.opt-card-value{font-size:1.2rem}.scenario-value{font-size:1.1rem}}@media (max-width: 480px){.summary-grid{grid-template-columns:1fr}}.calculator-header{margin-bottom:1.5rem}.calculator-header h2{font-size:1.5rem;font-weight:600;color:#0f172a;margin:0 0 .25rem}.calculator-subtitle{font-size:.875rem;color:#64748b;margin:0}.calculator-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:1rem}.service-catalog{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;max-height:calc(100vh - 250px);overflow-y:auto;box-shadow:var(--shadow-sm)}.catalog-header{margin-bottom:1rem}.catalog-title{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.service-catalog h3{font-size:1rem;font-weight:600;color:#0f172a;margin:0}.service-count-badge{font-size:.75rem;font-weight:600;color:#fff;background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%);padding:.25rem .5rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.catalog-filters{display:flex;gap:.5rem;margin-bottom:.75rem}.search-input{flex:1;padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;transition:all .2s}.search-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input::placeholder{color:#94a3b8}.category-filter{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;min-width:150px;transition:all .2s}.category-filter:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.category-filter:hover{border-color:#94a3b8}.clear-filters-btn{padding:.5rem .75rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#64748b;font-size:.875rem;cursor:pointer;transition:all .2s;min-width:40px}.clear-filters-btn:hover{background:#fee2e2;border-color:#fecaca;color:#ef4444}.no-results{padding:2rem;text-align:center;color:#64748b;font-size:.875rem;background:#f8fafc;border-radius:6px;margin-top:1rem}.service-category{margin-bottom:1.5rem}.service-category:last-child{margin-bottom:0}.category-header{cursor:pointer;-webkit-user-select:none;user-select:none;padding:.5rem;margin:-.5rem -.5rem .75rem;border-radius:6px;transition:background .2s}.category-header:hover{background:#f8fafc}.service-category h4{font-size:.875rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin:0;display:flex;align-items:center;gap:.5rem}.category-toggle{font-size:.75rem;color:#94a3b8;display:inline-block;width:16px}.category-count{font-size:.75rem;font-weight:500;color:#94a3b8;text-transform:none;margin-left:auto}.service-list{display:flex;flex-direction:column;gap:.5rem}.service-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;border:1px solid #e2e8f0;border-radius:6px;background:#fff;cursor:pointer;transition:all .2s;text-align:left}.service-item:hover:not(:disabled){border-color:#3b82f6;background:#f8fafc}.service-item:disabled{opacity:.5;cursor:not-allowed}.service-name{font-size:.875rem;font-weight:500;color:#334155;display:flex;align-items:center;gap:.5rem}.provider-badge{font-size:.75rem;font-weight:600;color:#334155;background:transparent!important;padding:.125rem 0;border-radius:0;display:inline-flex;align-items:center;gap:.375rem}.service-price{font-size:.8125rem;color:#64748b;font-weight:500}.calculator-panel{display:flex;flex-direction:column;gap:1rem}.selected-services{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;flex:1;box-shadow:var(--shadow-sm)}.selected-services h3{font-size:1rem;font-weight:600;color:#0f172a;margin:0 0 1rem}.empty-selection{padding:2rem;text-align:center;color:#64748b;font-size:.875rem}.service-inputs{display:flex;flex-direction:column;gap:.75rem}.service-input-row{display:grid;grid-template-columns:1fr auto auto;gap:1rem;align-items:center;padding:1rem;border:1px solid #e2e8f0;border-radius:6px;background:#f8fafc}.service-input-info{display:flex;flex-direction:column;gap:.25rem}.service-input-name{font-size:.875rem;font-weight:500;color:#334155}.service-input-price{font-size:.75rem;color:#64748b}.service-input-controls{display:flex;align-items:center;gap:.5rem}.region-select{padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500;background:#fff;cursor:pointer;min-width:180px;color:#334155}.region-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.region-select:hover{border-color:#94a3b8}.quantity-input{width:100px;padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;font-weight:500}.quantity-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.unit-label{font-size:.75rem;color:#64748b;min-width:80px}.remove-btn{width:28px;height:28px;border:none;border-radius:4px;background:#fee2e2;color:#ef4444;font-size:1.25rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.remove-btn:hover{background:#ef4444;color:#fff}.service-cost{font-size:1rem;font-weight:600;color:#0f172a;text-align:right;min-width:100px}.cost-summary{background:linear-gradient(135deg,var(--primary-50) 0%,white 100%);border-radius:var(--radius-lg);border:2px solid var(--primary-400);padding:1.25rem;box-shadow:var(--shadow-md)}.summary-row{display:flex;justify-content:space-between;align-items:center;font-size:1.125rem;font-weight:600;color:#0f172a;margin-bottom:.5rem}.summary-value{font-size:1.5rem;color:#3b82f6}.summary-note{font-size:.75rem;color:#64748b;font-style:italic}@media (max-width: 1024px){.calculator-layout{grid-template-columns:1fr}.service-catalog{max-height:400px}.catalog-filters{flex-direction:column}.category-filter{min-width:100%}.service-input-row{grid-template-columns:1fr;gap:.75rem}.service-input-controls{flex-wrap:wrap;justify-content:space-between}.region-select{flex:1 1 100%;min-width:100%}.service-cost{text-align:left}}.roi-calculator-section{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;box-shadow:var(--shadow-sm)}.roi-toggle-btn{width:100%;padding:.875rem 1rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 2px 8px #14b8a64d}.roi-toggle-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #14b8a666}.roi-icon{font-size:1.25rem}.roi-calculator-content{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.roi-intro{text-align:center;margin-bottom:1rem}.roi-intro p{font-size:.875rem;color:#64748b;margin:0}.roi-inputs{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.roi-input-group{display:flex;flex-direction:column;gap:.5rem}.roi-input-group label{font-size:.875rem;font-weight:500;color:#334155}.roi-input-group select{padding:.625rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;background:#fff;cursor:pointer;transition:all .2s}.roi-input-group select:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.roi-results{margin-top:1.5rem}.roi-results h4{font-size:1rem;font-weight:600;color:#0f172a;margin:0 0 1rem}.roi-provider-result{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;margin-bottom:1rem}.roi-provider-result:last-of-type{margin-bottom:0}.roi-provider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.roi-discount-badge{padding:.375rem .75rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:12px;font-size:.8125rem;font-weight:600}.roi-breakdown{display:flex;flex-direction:column;gap:.5rem}.roi-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem;color:#334155}.roi-row.highlight{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);padding:.625rem .75rem;border-radius:6px;margin:.25rem 0}.roi-row.total{font-weight:600;padding-top:.75rem;border-top:1px solid #e2e8f0}.roi-row.highlight-green{background:linear-gradient(135deg,#d1fae5,#a7f3d0);padding:.75rem;border-radius:8px;margin-top:.5rem;border:2px solid #10b981}.savings-value{font-weight:600;color:#10b981}.savings-value-large{font-size:1.25rem;font-weight:700;color:#059669}.roi-note{display:flex;align-items:flex-start;gap:.625rem;padding:.875rem 1rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;margin-top:1rem}.roi-note .note-icon{font-size:1.125rem;flex-shrink:0}.roi-note span:last-child{font-size:.8125rem;color:#92400e;line-height:1.5}@media (max-width: 768px){.roi-inputs{grid-template-columns:1fr}.roi-provider-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.pattern-insights-card{background:#f5f3ff;border-radius:10px;padding:.5rem .75rem;margin:.5rem 0;color:#312e81;border:1px solid #ddd6fe;box-shadow:none}.pattern-insights-card:before{content:none}.pattern-insights-header,.ai-badge,.confidence-badge,.pattern-insights-content{display:none}.pattern-insights-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pattern-insights-title{display:inline-flex;align-items:center;gap:.35rem;font-size:.85rem;font-weight:700;color:#4c1d95;white-space:nowrap}.pattern-insights-confidence{font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:999px}.pattern-insights-chips{display:inline-flex;flex-wrap:wrap;gap:.35rem;flex:1;min-width:220px}.pattern-chip{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;padding:.2rem .5rem;border-radius:999px;background:#ede9fe;color:#5b21b6}.pattern-chip.idle{background:#fce7f3;color:#be185d}.pattern-chip.under{background:#fae8ff;color:#7e22ce}.pattern-chip.over{background:#e0e7ff;color:#4338ca}.pattern-chip.peak{background:#f3e8ff;color:#6b21a8}.pattern-chip.off,.pattern-chip.weekday,.pattern-chip.weekend{background:#ede9fe;color:#5b21b6}.pattern-chip.neutral{background:#ede9fe;color:#6b21a8}.pattern-insights-source{font-size:.75rem;color:#6d28d9;white-space:nowrap}.insight-section{margin-bottom:1.5rem;background:#ffffff1a;padding:1rem;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.insight-section:last-child{margin-bottom:0}.insight-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.5px;opacity:.9}.insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.insight-item{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ffffff26;border-radius:8px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.insight-item.idle{border-left:3px solid #ef4444}.insight-item.underutilized{border-left:3px solid #f59e0b}.insight-item.overutilized{border-left:3px solid #3b82f6}.insight-label{font-size:.75rem;opacity:.9;flex:1}.insight-value{font-weight:700;font-size:1.125rem}.peak-hours-container{margin-top:.75rem}.peak-hours-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:.25rem;margin-bottom:.75rem}.hour-cell{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:4px;font-size:.625rem;font-weight:600;transition:all .2s;cursor:pointer}.hour-cell:hover{background:#fff3;transform:scale(1.1)}.hour-cell.peak{background:#ef444499;border:2px solid rgba(239,68,68,.9)}.hour-cell.off-peak{background:#10b98166;border:2px solid rgba(16,185,129,.7)}.peak-hours-legend{display:flex;flex-direction:column;gap:.5rem;font-size:.75rem}.legend-color{width:16px;height:16px;border-radius:4px;display:inline-block}.legend-color.peak{background:#ef4444e6}.legend-color.off-peak{background:#10b981b3}.weekday-pattern{display:flex;flex-direction:column;gap:.75rem}.pattern-info{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.utilization-comparison{display:flex;gap:1rem;flex-wrap:wrap}.comparison-item{display:flex;flex-direction:column;gap:.25rem}.comparison-label{font-size:.75rem;opacity:.8}.comparison-value{font-size:1.125rem;font-weight:700}.data-source-badge{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.2);display:flex;align-items:center;gap:.5rem;font-size:.75rem}.data-source-label{opacity:.8}.data-source-value{font-weight:600;background:#fff3;padding:.25rem .5rem;border-radius:6px}.forecast-trend-chart{background:#fff;border-radius:12px;padding:1.25rem;margin:1rem 0;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;border:1px solid #e5e7eb}.forecast-loading{display:flex;align-items:center;gap:.75rem;padding:2rem;justify-content:center;color:#6b7280;font-size:.875rem}.loading-spinner-small{width:16px;height:16px;border:2px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.forecast-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.forecast-title{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.875rem;color:#1f2937}.forecast-model-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.forecast-trend-indicator{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:.75rem;background:#f9fafb;border-radius:8px}.trend-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem}.trend-badge.up{background:#fee2e2;color:#dc2626}.trend-badge.down{background:#d1fae5;color:#059669}.forecast-summary{display:flex;gap:1.5rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-label{font-size:.75rem;color:#6b7280}.summary-value{font-size:1.125rem;font-weight:700;color:#1f2937}.summary-value.forecast{color:#f59e0b}.forecast-chart-container{margin:1rem 0}.forecast-svg{width:100%;height:150px;display:block}.forecast-legend{display:flex;gap:1.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb;font-size:.75rem;color:#6b7280}.legend-item{display:flex;align-items:center;gap:.5rem}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-dot.historical{background:#3b82f6}.legend-dot.forecast{background:#f59e0b}.legend-dot.confidence{background:#f59e0b;opacity:.3}.forecast-details{display:flex;gap:1.5rem;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb;font-size:.75rem}.forecast-detail-item{display:flex;gap:.5rem}.detail-label{color:#6b7280}.detail-value{font-weight:600;color:#1f2937}.playbook-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto}.playbook-modal{background:#fff;border-radius:.75rem;box-shadow:0 20px 25px -5px #0000001a;max-width:900px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column}.playbook-inline .playbook-modal{max-width:none;max-height:none;border-radius:.75rem;box-shadow:none;border:1px solid var(--gray-200, #e5e7eb)}.playbook-inline .playbook-header{position:static}.playbook-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:flex-start;position:sticky;top:0;background:#fff;z-index:10}.playbook-header-content{display:flex;gap:1rem;flex:1}.playbook-header-content h2{margin:0;font-size:1.5rem;font-weight:600;color:#111827}.playbook-description{margin:.5rem 0 0;color:#6b7280;font-size:.875rem}.btn-close-icon{background:none;border:none;cursor:pointer;padding:.5rem;color:#6b7280;border-radius:.375rem;transition:background .2s}.btn-close-icon:hover{background:#f3f4f6}.playbook-meta{padding:1rem 1.5rem;display:flex;gap:2rem;border-bottom:1px solid #e5e7eb;background:#f9fafb}.meta-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.meta-item svg{color:#9ca3af}.risk-badge{font-weight:600;padding:.25rem .5rem;border-radius:.25rem;background:#3b82f61a}.playbook-section{padding:1.5rem;border-bottom:1px solid #e5e7eb}.playbook-section:last-child{border-bottom:none}.playbook-section h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#111827;display:flex;align-items:center;gap:.5rem}.prerequisites-list,.notes-list{list-style:none;padding:0;margin:0}.prerequisites-list li,.notes-list li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:#374151}.prerequisites-list li:before,.notes-list li:before{content:"✓";position:absolute;left:0;color:#10b981;font-weight:700}.steps-container{display:flex;flex-direction:column;gap:1.5rem}.step-card{border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem;background:#f9fafb}.step-header{display:flex;gap:1rem;margin-bottom:1rem}.step-number{width:2rem;height:2rem;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.step-content{flex:1}.step-content h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#111827}.step-content p{margin:0;color:#6b7280;font-size:.875rem}.step-commands{margin-top:1rem;display:flex;flex-direction:column;gap:.75rem}.command-block{background:#1f2937;border-radius:.375rem;overflow:hidden}.command-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#111827;border-bottom:1px solid #374151}.command-label{font-size:.75rem;color:#9ca3af;text-transform:uppercase;font-weight:500}.btn-copy{display:flex;align-items:center;gap:.25rem;background:#374151;border:none;color:#e5e7eb;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;cursor:pointer;transition:background .2s}.btn-copy:hover{background:#4b5563}.command-code{margin:0;padding:.75rem;color:#e5e7eb;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.step-verification{margin-top:1rem;padding:.75rem;background:#ecfdf5;border-left:3px solid #10b981;border-radius:.25rem;font-size:.875rem;color:#065f46}.step-verification strong{display:block;margin-bottom:.5rem}.step-verification ul{margin:.5rem 0 0;padding-left:1.25rem}.step-verification li{margin:.25rem 0}.rollback-section{background:#fef2f2;border-left:4px solid #ef4444}.rollback-section h3{color:#991b1b}.rollback-description{color:#7f1d1d;margin-bottom:1rem}.rollback-warning{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fee2e2;border-radius:.375rem;color:#991b1b;font-size:.875rem;margin-bottom:1rem}.rollback-steps{display:flex;flex-direction:column;gap:.75rem}.rollback-step{display:flex;gap:.75rem;padding:.75rem;background:#fff;border-radius:.375rem;border:1px solid #fecaca}.rollback-step-number{width:1.5rem;height:1.5rem;border-radius:50%;background:#ef4444;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.rollback-command{margin-top:.5rem;position:relative}.rollback-command pre{background:#1f2937;color:#e5e7eb;padding:.5rem;border-radius:.25rem;font-size:.75rem;margin:0;overflow-x:auto}.btn-copy-small{position:absolute;top:.25rem;right:.25rem;background:#374151;border:none;color:#e5e7eb;padding:.25rem;border-radius:.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center}.terraform-block{margin-top:1rem}.terraform-code{background:#1f2937;color:#e5e7eb;padding:1rem;border-radius:.375rem;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.5;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.notes-section{background:#fffbeb;border-left:4px solid #f59e0b}.notes-section h3{color:#92400e}.notes-list li{color:#78350f}.playbook-footer{padding:1.5rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;position:sticky;bottom:0;background:#fff}.btn-primary{background:#3b82f6;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#2563eb}.playbook-loading,.playbook-error{padding:3rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.spinner{width:3rem;height:3rem;border:3px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.btn-close{background:#6b7280;color:#fff;border:none;padding:.5rem 1.5rem;border-radius:.375rem;cursor:pointer}.btn-close:hover{background:#4b5563}.simulator-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;overflow-y:auto;animation:fadeIn .2s ease-out}.simulator-modal{background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.simulator-inline .simulator-modal{max-width:none;max-height:none;box-shadow:none;border:1px solid var(--gray-200, #e5e7eb);animation:none}.simulator-inline .simulator-header{position:static}.simulator-inline .simulator-panel{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;padding:12px;display:grid;gap:12px}.simulator-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.simulator-panel-source{display:inline-flex;align-items:center;border:1px solid var(--gray-200);border-radius:999px;padding:4px 10px;font-size:11px;font-weight:700;color:var(--gray-700);background:var(--gray-50);white-space:nowrap}.simulator-panel-header h4{margin:0;font-size:13px;font-weight:800;color:var(--gray-900)}.simulator-panel-header p{margin:4px 0 0;font-size:12px;color:var(--gray-600)}.simulator-panel-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.simulator-panel-label{display:grid;gap:6px;font-size:11px;color:var(--gray-600);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.time-horizon-select.compact{padding:6px 10px;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:12px;font-weight:600;background:#fff;color:var(--gray-800)}.time-horizon-select.compact:hover,.time-horizon-select.compact:focus{border-color:var(--gray-400);box-shadow:none}.simulator-apply-btn{border:1px solid var(--gray-300);border-radius:var(--radius-md);background:var(--gray-50);color:var(--gray-800);padding:7px 10px;font-size:12px;font-weight:700;cursor:pointer}.simulator-apply-btn:hover{background:var(--gray-100)}.simulator-panel-section{display:grid;gap:8px}.simulator-panel-row{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:8px 10px;background:#fff;font-size:12px;color:var(--gray-700)}.simulator-panel-row strong{font-size:12px;color:var(--gray-900)}.simulator-panel-meaning{font-size:12px;color:var(--gray-600)}.simulator-panel-links{display:flex;flex-wrap:wrap;gap:8px}.simulator-panel-linkBtn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);border-radius:var(--radius-md);padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.simulator-panel-linkBtn:hover{background:var(--gray-50)}.simulator-panel-sectionTitle{font-size:12px;font-weight:800;color:var(--gray-800)}.simulator-panel-outcomes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.simulator-panel-outcome{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);padding:8px;display:grid;gap:4px}.simulator-panel-outcome span{font-size:11px;color:var(--gray-600);font-weight:700}.simulator-panel-outcome strong{font-size:13px;color:var(--gray-900);font-weight:800}.simulator-panel-tableWrap{border:1px solid var(--gray-200);border-radius:var(--radius-md);overflow:hidden}.simulator-panel-table{width:100%;border-collapse:collapse;table-layout:fixed}.simulator-panel-table th,.simulator-panel-table td{font-size:12px;color:var(--gray-700);text-align:left;padding:8px 10px;border-bottom:1px solid var(--gray-200);vertical-align:top;word-break:break-word}.simulator-panel-table th{font-size:11px;font-weight:800;color:var(--gray-600);background:var(--gray-50);text-transform:uppercase;letter-spacing:.04em}.simulator-panel-table tbody tr:last-child td{border-bottom:0}.simulator-panel-emptyCell{text-align:center;color:var(--gray-500)}.simulator-panel-assumptions{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff}.simulator-panel-assumptions summary{padding:8px 10px;cursor:pointer;font-size:12px;font-weight:800;color:var(--gray-800)}.simulator-panel-assumptionsBody{border-top:1px solid var(--gray-200);padding:8px 10px;display:grid;gap:6px}.simulator-panel-assumptionRow{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--gray-700)}.simulator-panel-assumptionRow strong{color:var(--gray-900)}.simulator-header{padding:1.75rem 2rem;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:flex-start;position:sticky;top:0;background:linear-gradient(135deg,#f9fafb,#fff);z-index:10;border-radius:1rem 1rem 0 0}.simulator-header-content{display:flex;gap:1.25rem;flex:1;align-items:center}.simulator-icon-wrapper{width:3rem;height:3rem;border-radius:.75rem;background:linear-gradient(135deg,#3b82f6,#2563eb);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #3b82f64d;flex-shrink:0}.simulator-header-content h2{margin:0;font-size:1.75rem;font-weight:700;color:#111827;letter-spacing:-.025em}.simulator-subtitle{margin:.375rem 0 0;color:#6b7280;font-size:.9375rem;font-weight:400}.simulator-header-actions{display:flex;align-items:center;gap:1rem}.time-horizon-select{padding:.625rem 1rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:.875rem;font-weight:500;background:#fff;cursor:pointer;transition:all .2s;color:#374151}.time-horizon-select:hover{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.time-horizon-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.btn-close-icon{background:#f3f4f6;border:none;cursor:pointer;padding:.625rem;color:#6b7280;border-radius:.5rem;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-close-icon:hover{background:#e5e7eb;color:#111827}.simulator-content{padding:2rem;display:flex;flex-direction:column;gap:2.5rem}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;display:flex;gap:1.25rem;align-items:flex-start;transition:all .2s;box-shadow:0 1px 3px #0000000d}.summary-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.summary-card.primary{background:#f8fafc;color:#111827;border:1px solid #e2e8f0;box-shadow:0 4px 14px #0f172a14}.summary-card-icon{width:3.5rem;height:3.5rem;border-radius:.75rem;background:linear-gradient(135deg,#3b82f61a,#2563eb1a);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#3b82f6}.summary-card.primary .summary-card-icon{background:#e0e7ff;color:#1e40af;-webkit-backdrop-filter:none;backdrop-filter:none}.summary-card-content{flex:1;min-width:0}.summary-card-label{font-size:.8125rem;color:#6b7280;text-transform:uppercase;font-weight:600;letter-spacing:.05em;margin-bottom:.5rem}.summary-card.primary .summary-card-label{color:#475569}.summary-card-value{font-size:1.875rem;font-weight:700;color:#111827;margin-bottom:.375rem;line-height:1.2;letter-spacing:-.02em}.summary-card.primary .summary-card-value{color:#111827}.summary-card-change{font-size:.875rem;font-weight:600}.summary-card-change.positive{color:#10b981}.summary-card.primary .summary-card-change{color:#2563eb}.summary-card-subtext{font-size:.8125rem;color:#6b7280;margin-top:.375rem;font-weight:500}.summary-card.primary .summary-card-subtext{color:#64748b}.risk-value{font-size:1.5rem;font-weight:700}.scenarios-section,.timeline-section,.breakdown-section{border-top:1px solid #e5e7eb;padding-top:2rem;margin-bottom:0}.section-header h3{margin:0 0 .5rem;font-size:1.375rem;font-weight:700;color:#111827;letter-spacing:-.025em}.section-description{margin:0;font-size:.9375rem;color:#6b7280;font-weight:400}.timeline-section{margin-bottom:3rem}.timeline-chart-container{background:linear-gradient(135deg,#f9fafb,#fff);border:1px solid #e5e7eb;border-radius:.75rem;padding:2rem;box-shadow:0 1px 3px #0000000d}.timeline-svg{width:100%;height:auto;max-height:400px;display:block}.timeline-values{display:flex;justify-content:space-between;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.timeline-value-item{display:flex;flex-direction:column;gap:.25rem}.timeline-value-label{font-size:.8125rem;color:#6b7280;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.timeline-value-amount{font-size:1.25rem;font-weight:700;color:#111827}.scenarios-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem}.scenario-card{border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;background:#fff;transition:all .2s;box-shadow:0 1px 3px #0000000d}.scenario-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.scenario-card.optimistic{border-left:4px solid #10b981}.scenario-card.realistic{border-left:4px solid #3b82f6}.scenario-card.pessimistic{border-left:4px solid #f59e0b}.scenario-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.875rem}.scenario-header h4{margin:0;font-size:1.125rem;font-weight:700;color:#111827}.scenario-savings{font-size:1.25rem;font-weight:700;color:#10b981}.scenario-description{margin:0 0 1rem;font-size:.9375rem;color:#6b7280;line-height:1.6}.scenario-monthly{font-size:.9375rem;color:#374151;font-weight:600}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem}.breakdown-card{border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem;background:#fff;transition:all .2s;box-shadow:0 1px 3px #0000000d}.breakdown-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.breakdown-card.priority-high{border-left:4px solid #ef4444}.breakdown-card.priority-medium{border-left:4px solid #f59e0b}.breakdown-card.priority-low{border-left:4px solid #3b82f6}.breakdown-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.breakdown-label{font-size:.875rem;font-weight:700;color:#111827;text-transform:uppercase;letter-spacing:.05em}.breakdown-count{font-size:.8125rem;color:#6b7280;font-weight:500;background:#f3f4f6;padding:.25rem .625rem;border-radius:.375rem}.breakdown-savings{font-size:1.5rem;font-weight:700;color:#10b981;margin-bottom:.5rem;line-height:1.2}.breakdown-percentage{font-size:.9375rem;color:#6b7280;font-weight:500}.breakdown-list{display:flex;flex-direction:column;gap:1rem}.breakdown-item{border:1px solid #e5e7eb;border-radius:.75rem;padding:1.25rem;background:#fff;transition:all .2s;box-shadow:0 1px 3px #0000000d}.breakdown-item:hover{border-color:#d1d5db;box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.breakdown-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.breakdown-item-label{font-size:.9375rem;font-weight:700;color:#111827}.breakdown-item-count{font-size:.8125rem;color:#6b7280;font-weight:500;background:#f3f4f6;padding:.25rem .625rem;border-radius:.375rem}.breakdown-item-details{display:flex;gap:1.25rem;font-size:.9375rem;color:#6b7280;flex-wrap:wrap;align-items:center}.breakdown-item-savings{color:#10b981;font-weight:600}.breakdown-item-percentage{color:#6b7280;font-weight:500}.simulator-footer{padding:1.5rem 2rem;border-top:1px solid #e5e7eb;display:flex;justify-content:flex-end;position:sticky;bottom:0;background:linear-gradient(135deg,#fff,#f9fafb);border-radius:0 0 1rem 1rem}.btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;padding:.75rem 2rem;border-radius:.5rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #3b82f666;transform:translateY(-1px)}.simulator-loading,.simulator-error{padding:4rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem;min-height:300px;justify-content:center}.spinner{width:3.5rem;height:3.5rem;border:4px solid #e5e7eb;border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.btn-close{background:#6b7280;color:#fff;border:none;padding:.75rem 2rem;border-radius:.5rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-close:hover{background:#4b5563;transform:translateY(-1px);box-shadow:0 2px 8px #0003}@media (max-width: 768px){.simulator-modal{max-width:100%;max-height:100vh;border-radius:0}.simulator-header{padding:1.25rem 1.5rem}.simulator-header-content h2{font-size:1.5rem}.simulator-content{padding:1.5rem;gap:2rem}.summary-cards,.scenarios-grid,.breakdown-grid{grid-template-columns:1fr;gap:1rem}.timeline-chart-container{padding:1.5rem}.simulator-panel-outcomes{grid-template-columns:1fr}.simulator-panel-table th,.simulator-panel-table td{padding:7px 8px;font-size:11px}}.optimization-header{margin-bottom:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap}.optimization-header h1{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.ai-powered-badge{display:flex;align-items:center;gap:.375rem;background:#f8fafc;color:#0f172a;border:1px solid #e2e8f0;padding:.375rem .875rem;border-radius:20px;font-size:.75rem;font-weight:600;box-shadow:none}.optimization-subtitle{font-size:.9375rem;color:var(--gray-500);margin:0}@media (max-width: 768px){.optimization-header{flex-direction:column;align-items:stretch}.time-range-selector{width:100%;justify-content:stretch}.time-range-selector button{flex:1;padding:.5rem;font-size:.75rem}}.optimization-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1rem}.opt-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;display:flex;gap:1rem;align-items:flex-start;box-shadow:var(--shadow-sm);transition:all .2s}.opt-card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.opt-card-icon{font-size:2rem;line-height:1}.opt-card-content{flex:1}.opt-card-label{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:.5rem}.opt-card-value{font-size:1.75rem;font-weight:700;color:var(--gray-900);line-height:1.2;margin-bottom:.25rem}.opt-card-value.savings{color:var(--success);font-weight:800}.opt-card-value.warning{color:var(--warning);font-weight:800}.opt-card-value.success{color:var(--success);font-weight:800}.opt-card-sublabel{font-size:.8125rem;color:var(--gray-500)}.select-all-container{display:flex;align-items:center;gap:.75rem;padding:.625rem .875rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;min-width:fit-content}.select-all-label{display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;font-weight:500;color:var(--gray-700)}.selected-count{color:var(--primary-600);font-weight:600;font-size:.8125rem}.filter-search{flex:1;min-width:200px;padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;transition:all .2s}.filter-search:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a}.filter-select{padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;background:#fff;cursor:pointer;min-width:150px;transition:all .2s}.filter-select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a}.bulk-actions-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem;margin-bottom:1rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid var(--primary-400);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0ea5e926;animation:slideDown .3s ease-out}.bulk-actions-info{display:flex;align-items:center;gap:1rem}.bulk-actions-count{font-weight:600;color:var(--primary-700);font-size:.9375rem}.bulk-actions-clear{padding:.375rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:#fff;color:var(--gray-600);font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s}.bulk-actions-clear:hover{background:var(--gray-50);border-color:var(--gray-400);color:var(--gray-700)}.bulk-actions-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.bulk-action-btn{display:flex;align-items:center;padding:.5rem 1rem;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a}.bulk-action-btn:disabled{opacity:.6;cursor:not-allowed}.bulk-action-btn.accept{background:#10b981;color:#fff}.bulk-action-btn.accept:hover:not(:disabled){background:#059669;box-shadow:0 2px 6px #10b9814d;transform:translateY(-1px)}.bulk-action-btn.implement{background:#3b82f6;color:#fff}.bulk-action-btn.implement:hover:not(:disabled){background:#2563eb;box-shadow:0 2px 6px #3b82f64d;transform:translateY(-1px)}.bulk-action-btn.reject{background:#ef4444;color:#fff}.bulk-action-btn.reject:hover:not(:disabled){background:#dc2626;box-shadow:0 2px 6px #ef44444d;transform:translateY(-1px)}.filter-clear{padding:.625rem 1rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;color:var(--gray-600);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.filter-clear:hover{background:var(--error);color:#fff;border-color:var(--error)}.resources-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1rem}.resource-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;box-shadow:var(--shadow-sm);transition:all .2s}.resource-card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md)}.resource-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-100)}.resource-header-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.resource-select{display:inline-flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--gray-600);font-weight:600}.resource-select input{width:16px;height:16px;cursor:pointer}.resource-jira-link{font-size:.75rem;color:#2563eb;font-weight:600;text-decoration:none}.resource-jira-link:hover{text-decoration:underline}.resource-title{display:flex;gap:.75rem;align-items:flex-start}.resource-icon{font-size:1.5rem;line-height:1}.resource-title h3{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin:0 0 .25rem}.resource-type{font-size:.8125rem;color:var(--gray-500);margin:0}.resource-cost{text-align:right}.cost-current{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin-bottom:.25rem}.cost-savings{font-size:.8125rem;font-weight:600;color:var(--success);background:#d1fae5;padding:.125rem .5rem;border-radius:var(--radius-sm)}.resource-utilization{margin-bottom:1rem}.utilization-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.8125rem;font-weight:600;color:var(--gray-700)}.utilization-badge{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:var(--radius-sm)}.utilization-bar{height:8px;background:var(--gray-100);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:.25rem}.utilization-fill{height:100%;border-radius:var(--radius-sm);transition:width .3s ease}.utilization-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--gray-400)}.utilization-status{font-weight:600;color:var(--gray-600)}.resource-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(80px,1fr));gap:.75rem;margin-bottom:1rem;padding:.75rem;background:var(--gray-50);border-radius:var(--radius-md)}.metric.data-source{min-width:auto;flex:1;grid-column:1 / -1}.metric-label{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.metric-value{font-size:.9375rem;font-weight:600;color:var(--gray-900)}.source-badge{font-size:.75rem!important;padding:.25rem .5rem;border-radius:6px;font-weight:600;display:inline-block;color:#1f2937!important;background:#f1f5f9!important;-webkit-text-fill-color:currentColor!important;-webkit-background-clip:border-box!important;background-clip:border-box!important;background-image:none!important;opacity:1!important;mix-blend-mode:normal!important;filter:none!important;text-shadow:none!important}.resource-recommendation{display:flex;flex-direction:column;gap:.75rem;padding:.875rem;background:linear-gradient(135deg,var(--primary-50) 0%,var(--accent-50) 100%);border-radius:var(--radius-md);border:1px solid var(--primary-200)}.recommendation-header{display:flex;align-items:center;gap:.75rem;justify-content:space-between}.recommendation-icon-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.recommendation-icon{font-size:1.25rem;line-height:1}.ai-recommendation-badge{position:absolute;top:-4px;right:-4px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:50%;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:2px solid white;box-shadow:0 2px 4px #0003;animation:pulse-glow 2s ease-in-out infinite}.priority-badge{padding:.25rem .75rem;border-radius:.375rem;font-size:.6875rem;font-weight:700;letter-spacing:.025em;white-space:nowrap;text-transform:uppercase}.recommendation-text{font-size:.8125rem;color:var(--gray-700);line-height:1.5}.recommendation-text strong{color:var(--gray-900);font-weight:600}.action-items{margin-top:.5rem;padding-top:.75rem;border-top:1px solid var(--primary-200)}.action-items strong{display:block;margin-bottom:.5rem;color:var(--gray-900);font-size:.8125rem;font-weight:600}.action-items ul{margin:0;padding-left:1.25rem;list-style-type:disc}.action-items li{font-size:.8125rem;color:var(--gray-700);line-height:1.6;margin-bottom:.375rem}.action-items li:last-child{margin-bottom:0}.no-results{grid-column:1 / -1;padding:3rem;text-align:center;color:var(--gray-500);background:var(--gray-50);border-radius:var(--radius-lg)}@media (max-width: 768px){.resources-container{grid-template-columns:1fr}.optimization-filters{flex-direction:column}.select-all-container{width:100%}.bulk-actions-toolbar{flex-direction:column;align-items:stretch}.bulk-actions-info{justify-content:space-between}.bulk-actions-buttons{width:100%}.bulk-action-btn{flex:1;justify-content:center}.filter-search,.filter-select{width:100%}.resource-header{flex-direction:column;gap:.75rem}.resource-header-actions{align-items:flex-start}.resource-cost{text-align:left}.resource-metrics{grid-template-columns:repeat(2,1fr)}}.cross-cloud-comparison{margin-top:1rem;padding:1rem;background:#f8fafc;border-radius:var(--radius-md);border:1px solid #e2e8f0}.comparison-title{margin:0 0 .875rem;color:var(--text-primary);font-size:.9375rem;font-weight:600}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.625rem;margin-bottom:.875rem}.comparison-card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-sm);padding:.75rem;position:relative;transition:all .2s ease}.comparison-card:hover{border-color:var(--primary-color);box-shadow:0 2px 8px #0000001a;transform:translateY(-2px)}.comparison-card.cheapest{border-color:#10b981;background:#f0fdf4;border-width:2px}.provider-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem;gap:.25rem}.provider-name{font-weight:600;color:var(--text-primary);font-size:.8125rem}.best-price-badge{background:#10b981;color:#fff;padding:.125rem .375rem;border-radius:var(--radius-sm);font-size:.625rem;font-weight:600;white-space:nowrap}.comparison-card .resource-name{font-size:.8125rem;color:var(--text-secondary);margin-bottom:.375rem;font-weight:500}.comparison-card .resource-cost{font-size:1rem;font-weight:700;color:var(--primary-color);margin-bottom:.375rem}.comparison-card .resource-specs{font-size:.6875rem;color:var(--text-secondary);margin-bottom:.25rem;line-height:1.4}.comparison-card .savings-info{font-size:.6875rem;color:#dc2626;font-weight:600;margin-top:.25rem}.comparison-note{background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-sm);padding:.625rem .75rem;font-size:.8125rem;color:#1e40af;text-align:center;line-height:1.4}@media (max-width: 768px){.comparison-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.comparison-grid{grid-template-columns:1fr}}.usage-comparison-section{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.5rem;margin-bottom:1.5rem;box-shadow:var(--shadow-sm);width:100%;max-width:100%;overflow:hidden;min-width:0}.usage-chart-container .line-chart-wrapper{width:100%;height:320px;padding:1rem;background:linear-gradient(to bottom,hsl(var(--muted) / .1) 0%,transparent 100%);border-radius:var(--radius-md);margin-bottom:1rem}.usage-chart-container .line-chart{width:100%;height:100%;display:block}.usage-comparison-section .section-header{margin-bottom:1.5rem}.usage-comparison-section .section-header h2{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0 0 .25rem}.usage-comparison-section .section-header p{font-size:.875rem;color:var(--gray-500);margin:0}.usage-chart-container{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:100%;min-width:0}.chart-legend{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:var(--gray-700)}.legend-color{width:16px;height:16px;border-radius:3px}.legend-color.current{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.legend-color.optimized{background:linear-gradient(135deg,#10b981,#059669)}.legend-color.savings{background:linear-gradient(135deg,#f59e0b,#d97706)}.chart-scroll-wrapper{background:linear-gradient(to top,hsl(var(--muted) / .3) 0%,transparent 100%);border-radius:var(--radius-md)}.usage-chart{display:flex;gap:.5rem;height:250px;align-items:flex-end;padding:1rem;justify-content:space-between}.chart-bar-group{display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;transition:all .2s;flex-shrink:0}.chart-bar-group:hover{transform:translateY(-2px)}.chart-bars{display:flex;gap:3px;align-items:flex-end;height:200px;width:100%;justify-content:center}.chart-bar{flex:1;max-width:12px;border-radius:4px 4px 0 0;transition:all .3s ease;position:relative}.chart-bar.current{background:linear-gradient(to top,#3b82f6,#60a5fa);box-shadow:0 -2px 8px #3b82f64d}.chart-bar.optimized{background:linear-gradient(to top,#10b981,#34d399);box-shadow:0 -2px 8px #10b9814d}.chart-bar.savings{background:linear-gradient(to top,#f59e0b,#fbbf24);box-shadow:0 -2px 8px #f59e0b4d}.chart-bar-group:hover .chart-bar{filter:brightness(1.1)}.chart-label{font-size:.6875rem;color:var(--gray-500);text-align:center;white-space:nowrap}.chart-summary{display:flex;justify-content:space-around;gap:1rem;padding:1rem;background:hsl(var(--muted) / .3);border-radius:var(--radius-md);flex-wrap:wrap}.stat-label{font-size:.75rem;color:var(--gray-500);font-weight:500}.stat-value{font-size:1.125rem;font-weight:700;color:var(--gray-900)}.stat-value.optimized{color:#10b981}.stat-value.savings{color:#f59e0b}@media (max-width: 768px){.usage-chart{height:200px;padding:.75rem}.chart-bar-group{width:24px}.chart-bars{height:150px}.chart-bar{max-width:8px}.chart-summary{flex-direction:column;align-items:stretch}.summary-stat{flex-direction:row;justify-content:space-between}}.resource-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200);display:flex;flex-direction:column;gap:.75rem}.current-status{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.status-label{color:var(--gray-600);font-weight:600}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-md);font-size:.8125rem;font-weight:600}.action-buttons-secondary{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:.5rem}.action-btn{padding:.5rem 1rem;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.375rem}.action-note{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-md);font-size:.8125rem;color:#1e40af}.note-icon{font-size:1rem;flex-shrink:0}.note-text{line-height:1.4}.modal-content{background:#fff;border-radius:var(--radius-lg);padding:1.5rem;max-width:500px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content h3{margin:0 0 .5rem;color:var(--gray-900);font-size:1.125rem}.modal-content p{margin:0 0 1rem;color:var(--gray-600);font-size:.875rem}.modal-content textarea{width:100%;padding:.75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;font-family:inherit;resize:vertical;margin-bottom:1rem}.modal-content textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a}.modal-form label{font-size:.8125rem;font-weight:600;color:var(--gray-700)}.modal-form select,.modal-form input,.modal-form textarea{width:100%;padding:.65rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;font-family:inherit;background:#fff}.modal-form select:focus,.modal-form input:focus,.modal-form textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61f}.modal-help{margin:.25rem 0 0;font-size:.75rem;color:var(--gray-500)}.modal-btn{padding:.625rem 1.25rem;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.modal-btn.cancel{background:var(--gray-100);color:var(--gray-700)}.modal-btn.cancel:hover{background:var(--gray-200)}.btn-cancel{padding:.625rem 1.25rem;border-radius:var(--radius-md);border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:var(--gray-100)}.btn-primary{padding:.625rem 1.25rem;border-radius:var(--radius-md);border:1px solid #ef4444;background:#ef4444;color:#fff;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 6px 14px #ef444440}.btn-primary:hover{background:#dc2626;border-color:#dc2626}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}@media (max-width: 768px){.action-buttons{flex-direction:column}.action-btn{width:100%;justify-content:center}}.provider-breakdown-section{margin:2rem 0;padding:1.5rem;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm)}.provider-breakdown-section h2{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0 0 1rem}.provider-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.provider-breakdown-card{background:linear-gradient(135deg,hsl(var(--muted) / .3),hsl(var(--muted) / .1));border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:1rem;transition:all .2s}.provider-breakdown-card:hover{border-color:var(--primary-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.provider-breakdown-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--gray-200)}.provider-breakdown-header .provider-name{font-size:1rem;font-weight:600;color:var(--gray-900)}.provider-breakdown-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.provider-breakdown-stats .stat{display:flex;flex-direction:column;gap:.25rem}.provider-breakdown-stats .stat-label{font-size:.75rem;color:var(--gray-500);font-weight:500;text-transform:uppercase;letter-spacing:.025em}.provider-breakdown-stats .stat-value{font-size:1.125rem;font-weight:700;color:var(--gray-900)}.provider-breakdown-stats .stat-value.savings{color:var(--success-600)}@media (max-width: 768px){.provider-breakdown-grid{grid-template-columns:1fr}}.sp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:999;animation:sp-fade-in .2s ease}.sp-drawer{position:fixed;top:0;right:0;width:440px;max-width:90vw;height:100vh;background:#fff;box-shadow:-8px 0 24px #0000001f;z-index:1000;display:flex;flex-direction:column;animation:sp-slide-in .25s ease}@keyframes sp-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes sp-fade-in{0%{opacity:0}to{opacity:1}}.sp-drawer-header{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid #e5e7eb;flex-shrink:0}.sp-drawer-title{font-size:16px;font-weight:600;color:#111827;margin:0}.sp-drawer-scenario{font-size:13px;color:#6b7280;margin:2px 0 0}.sp-close-btn{background:none;border:none;cursor:pointer;color:#6b7280;padding:4px;border-radius:6px;transition:background .15s}.sp-close-btn:hover{background:#f3f4f6;color:#111827}.sp-summary-bar{display:flex;gap:16px;padding:12px 24px;background:#f9fafb;border-bottom:1px solid #e5e7eb;flex-shrink:0}.sp-summary-item{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.sp-summary-included{color:#059669}.sp-summary-excluded{color:#6b7280}.sp-summary-truncated{color:#d97706;font-weight:400;font-size:12px}.sp-drawer-body{flex:1;overflow-y:auto;padding:16px 24px}.sp-section{margin-bottom:24px}.sp-section-title{font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;margin:0 0 12px;display:flex;align-items:center;gap:6px}.sp-icon-included{color:#059669}.sp-icon-excluded{color:#6b7280}.sp-section-toggle{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.04em;padding:0;margin-bottom:12px}.sp-section-toggle:hover{color:#111827}.sp-section-chevron{display:flex}.sp-reason-summary{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.sp-reason-chip{font-size:11px;padding:2px 8px;border-radius:10px;background:#f3f4f6;color:#6b7280}.sp-module-group{margin-bottom:8px}.sp-module-header{display:flex;align-items:center;gap:6px;width:100%;background:none;border:1px solid #e5e7eb;border-radius:8px;padding:8px 12px;cursor:pointer;font-size:13px;font-weight:500;color:#374151;transition:background .15s}.sp-module-header:hover{background:#f9fafb}.sp-module-chevron{display:flex;color:#9ca3af}.sp-module-label{flex:1;text-align:left}.sp-module-count{font-size:11px;font-weight:600;background:#e5e7eb;color:#374151;border-radius:10px;padding:1px 7px;min-width:22px;text-align:center}.sp-module-savings{font-size:12px;color:#059669;font-weight:500}.sp-items{padding:4px 0 4px 20px}.sp-item{padding:8px 10px;border-radius:6px;margin-bottom:4px;border-left:3px solid transparent;transition:background .15s}.sp-item:hover{background:#f9fafb}.sp-item--included{border-left-color:#059669}.sp-item--excluded{border-left-color:#d1d5db}.sp-item-main{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.sp-item-title{font-size:13px;color:#374151;line-height:1.4;flex:1;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.sp-item-savings{font-size:12px;font-weight:500;color:#059669;white-space:nowrap}.sp-item-meta{display:flex;align-items:center;gap:6px;margin-top:4px}.sp-reason-badge{font-size:11px;padding:1px 6px;border-radius:4px;background:#fef3c7;color:#92400e}.sp-winner-ref{font-size:11px;color:#9ca3af}.sp-open-btn{display:inline-flex;align-items:center;gap:3px;background:none;border:1px solid #d1d5db;border-radius:4px;padding:2px 8px;font-size:11px;color:#6b7280;cursor:pointer;margin-left:auto;transition:all .15s}.sp-open-btn:hover{background:#f3f4f6;color:#374151;border-color:#9ca3af}.sp-empty{font-size:13px;color:#9ca3af;font-style:italic;padding:8px 0}@keyframes sp-highlight-pulse{0%{box-shadow:0 0 #3b82f680}50%{box-shadow:0 0 0 6px #3b82f600}to{box-shadow:0 0 #3b82f600}}.sp-highlight-active{animation:sp-highlight-pulse 1s ease 2;outline:2px solid #3b82f6;outline-offset:2px;border-radius:8px}.sp-filter-bar{display:inline-flex;align-items:center;gap:4px;background:#f3f4f6;border-radius:8px;padding:3px}.sp-filter-btn{font-size:12px;padding:4px 10px;border:none;border-radius:6px;background:transparent;color:#6b7280;cursor:pointer;font-weight:500;transition:all .15s;white-space:nowrap}.sp-filter-btn:hover{color:#374151}.sp-filter-btn.active{background:#fff;color:#111827;box-shadow:0 1px 3px #0000001a}.sp-filter-label{font-size:12px;color:#9ca3af;margin-right:4px;white-space:nowrap}.coverage-page{padding:0;max-width:1200px;margin:0 auto}.coverage-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem}.coverage-header-left h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--gray-900)}.coverage-header-left p{margin:.35rem 0 0;font-size:.9rem;color:var(--gray-500)}.coverage-meta-panel{display:flex;gap:1.25rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:.65rem 1rem;flex-wrap:wrap}.coverage-meta-item{display:flex;flex-direction:column;gap:.1rem}.coverage-meta-label{font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500)}.coverage-meta-value{font-size:.82rem;font-weight:600;color:var(--gray-800)}.coverage-stale-banner{display:flex;align-items:center;gap:.6rem;background:#fffbeb;border:1px solid #fde68a;border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1rem;font-size:.85rem;color:#92400e}.coverage-stale-banner svg{flex-shrink:0}.coverage-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem}.coverage-kpi-card{background:#fff;border:1px solid var(--gray-200);border-radius:1rem;padding:1.1rem 1rem;box-shadow:0 1px 4px #1d25300f;display:flex;flex-direction:column;gap:.25rem;position:relative}.coverage-kpi-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.coverage-kpi-label{font-size:.72rem;font-weight:700;letter-spacing:.025em;text-transform:uppercase;color:var(--gray-500)}.coverage-kpi-icon{color:var(--gray-400)}.coverage-kpi-tooltip-trigger{display:inline-flex;align-items:center;justify-content:center;color:var(--gray-400);cursor:help;border-radius:50%;padding:2px;transition:color .15s,background .15s;outline:none}.coverage-kpi-tooltip-trigger:hover,.coverage-kpi-tooltip-trigger:focus-visible{color:var(--gray-600);background:var(--gray-100)}.coverage-kpi-value{font-size:1.45rem;font-weight:800;color:var(--gray-900);line-height:1.2}.coverage-kpi-sub{font-size:.78rem;color:var(--gray-500);line-height:1.35}.coverage-kpi-card.indicator-green .coverage-kpi-value{color:#1fad53}.coverage-kpi-card.indicator-amber .coverage-kpi-value{color:#ce8509}.coverage-kpi-card.indicator-red .coverage-kpi-value{color:#eb1e1e}.coverage-kpi-card.indicator-green{border-color:#a8f0c2}.coverage-kpi-card.indicator-amber{border-color:#fbd99d}.coverage-kpi-card.indicator-red{border-color:#f7a1a1}.coverage-section-title{font-size:1rem;font-weight:700;color:var(--gray-800);margin:0 0 .85rem}.coverage-funnel-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem;margin-bottom:1.25rem}.coverage-funnel-row{display:flex;align-items:stretch;gap:0;overflow-x:auto}.coverage-funnel-stage{flex:1;min-width:140px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;padding:.75rem .5rem}.coverage-funnel-stage-box{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:.85rem .75rem;width:100%;transition:box-shadow .2s}.coverage-funnel-stage-box:hover{box-shadow:var(--shadow-md)}.coverage-funnel-stage-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--gray-500);margin-bottom:.3rem}.coverage-funnel-stage-value{font-size:1.15rem;font-weight:800;color:var(--gray-900);line-height:1.2}.coverage-funnel-stage-pct{font-size:.72rem;font-weight:600;color:var(--gray-500);margin-top:.2rem}.coverage-funnel-connector{display:flex;align-items:center;padding:0 .15rem;color:var(--gray-300);flex-shrink:0}.coverage-table-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem;margin-bottom:1.25rem;overflow:hidden}.coverage-table-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem;flex-wrap:wrap}.coverage-table-filter{padding:.45rem .65rem;border:1px solid var(--gray-200);border-radius:var(--radius-sm);font-size:.8rem;background:#fff;min-width:140px}.coverage-table-filter:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 2px #13316c14}.coverage-table{width:100%;border-collapse:separate;border-spacing:0}.coverage-table th{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500);background:var(--gray-50);padding:.6rem .75rem;text-align:left;border-bottom:1px solid var(--gray-200)}.coverage-table th:first-child{border-radius:var(--radius-sm) 0 0 0}.coverage-table th:last-child{border-radius:0 var(--radius-sm) 0 0}.coverage-table td{font-size:.84rem;color:var(--gray-700);padding:.6rem .75rem;border-bottom:1px solid var(--gray-100)}.coverage-table tbody tr:hover{background:var(--gray-50)}.coverage-table .coverage-spend-cell{font-weight:700;font-variant-numeric:tabular-nums}.coverage-badge{display:inline-flex;align-items:center;font-size:.68rem;font-weight:700;padding:.2rem .5rem;border-radius:999px;white-space:nowrap}.coverage-badge.badge-covered{color:#17823e;background:#dcf9e7}.coverage-badge.badge-partial{color:#ab6f07;background:#fdf0d8}.coverage-badge.badge-none{color:#bd2828;background:#fae6e6}.coverage-provider-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem;margin-bottom:1.25rem}.coverage-provider-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:.75rem}.coverage-provider-item{border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:.85rem;background:var(--gray-50)}.coverage-provider-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.coverage-provider-name{font-size:.82rem;font-weight:700;color:var(--gray-800);text-transform:uppercase;letter-spacing:.02em}.coverage-provider-spend{font-size:.82rem;font-weight:700;color:var(--gray-700);font-variant-numeric:tabular-nums}.coverage-provider-bar-track{width:100%;height:8px;background:var(--gray-200);border-radius:999px;overflow:hidden;margin-bottom:.35rem}.coverage-provider-bar-fill{height:100%;border-radius:999px;transition:width .5s ease}.coverage-provider-pct{font-size:.72rem;font-weight:600;color:var(--gray-500)}.coverage-provider-item[data-provider=aws] .coverage-provider-bar-fill{background:#ff8c00}.coverage-provider-item[data-provider=azure] .coverage-provider-bar-fill{background:#0080ff}.coverage-provider-item[data-provider=gcp] .coverage-provider-bar-fill{background:#22c35d}.coverage-provider-item[data-provider=alibaba] .coverage-provider-bar-fill{background:#ee5b2b}.coverage-provider-item .coverage-provider-bar-fill{background:var(--primary-400)}.coverage-empty-state,.coverage-permission-state,.coverage-error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3.5rem 2rem;border:1px dashed var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);margin-top:1rem}.coverage-state-icon{color:var(--gray-400);margin-bottom:1rem}.coverage-empty-state h3,.coverage-permission-state h3,.coverage-error-state h3{margin:0 0 .4rem;font-size:1.05rem;font-weight:700;color:var(--gray-700)}.coverage-empty-state p,.coverage-permission-state p,.coverage-error-state p{margin:0;font-size:.88rem;color:var(--gray-500);max-width:440px}.coverage-retry-btn{margin-top:1rem;padding:.5rem 1.25rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:#fff;font-size:.84rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:border-color .15s}.coverage-retry-btn:hover{border-color:var(--gray-500)}.coverage-skeleton-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin-bottom:1.25rem}.coverage-skeleton-card{background:#fff;border:1px solid var(--gray-200);border-radius:1rem;padding:1.1rem 1rem;height:120px}.coverage-skeleton-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1.25rem}.coverage-inline-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:600;color:var(--gray-600);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:999px;padding:.25rem .7rem;cursor:pointer;transition:border-color .15s,color .15s;text-decoration:none}.coverage-inline-badge:hover{border-color:var(--gray-400);color:var(--gray-800)}.coverage-inline-badge .badge-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.coverage-inline-badge .badge-dot.dot-green{background:#22c35d}.coverage-inline-badge .badge-dot.dot-amber{background:#f59f0a}.coverage-inline-badge .badge-dot.dot-red{background:#ed2c2c}@media (max-width: 1100px){.coverage-kpi-grid,.coverage-skeleton-kpi{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.coverage-kpi-grid,.coverage-skeleton-kpi{grid-template-columns:1fr}.coverage-header,.coverage-funnel-row{flex-direction:column}.coverage-funnel-connector{transform:rotate(90deg);padding:.25rem 0;justify-content:center}.coverage-provider-grid{grid-template-columns:1fr}}.pricing-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap;line-height:1;cursor:help}.pricing-badge-icon{flex-shrink:0}.pricing-badge-label{letter-spacing:.01em}.pricing-badge--verified{color:#1f7a50;background:#e8f7f0;border:1px solid hsl(152 40% 82%)}.pricing-badge--estimated{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.pricing-badge--unavailable{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.pricing-confidence{font-size:10px;font-weight:600;padding:1px 6px;border-radius:999px;margin-left:2px}.pricing-confidence--high{color:#065f46;background:#d1fae5}.pricing-confidence--medium{color:#92400e;background:#fef9c3}.pricing-confidence--low{color:#6b7280;background:#f3f4f6}.savings-range{display:grid;gap:.15rem}.savings-range--card{justify-items:end}.savings-range--panel{justify-items:start}.savings-range-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0f766e}.savings-range--estimated .savings-range-label{color:#92400e}.savings-range--unavailable .savings-range-label{color:#64748b}.savings-range-expected{font-size:1.15rem;font-weight:800;color:#0f172a}.savings-range--panel .savings-range-expected{font-size:1.3rem}.savings-range-dash{font-size:1.15rem;font-weight:800;color:#94a3b8}.savings-range-subtext{font-size:12px;font-weight:700;color:#0f766e}.savings-range--estimated .savings-range-subtext{color:#92400e}.savings-range--unavailable .savings-range-subtext{color:#94a3b8;font-weight:600;font-style:italic;font-size:11px;max-width:220px}.savings-range-bounds{font-weight:600;font-size:11.5px}.savings-range-bar{width:100%;max-width:180px;padding-top:2px}.savings-range--panel .savings-range-bar{max-width:240px}.savings-range-bar-track{position:relative;height:4px;background:linear-gradient(90deg,#fde68a,#fbbf24,#f59e0b);border-radius:999px;overflow:visible}.savings-range-bar-low,.savings-range-bar-high{position:absolute;top:-2px;width:8px;height:8px;border-radius:50%;background:#d97706;border:1.5px solid white;box-shadow:0 1px 2px #00000026}.savings-range-bar-low{left:0}.savings-range-bar-high{right:0}.savings-range-bar-mid{position:absolute;top:-3px;width:10px;height:10px;border-radius:50%;background:#92400e;border:2px solid white;box-shadow:0 1px 3px #0003;transform:translate(-50%)}.dq-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;line-height:1;white-space:nowrap;cursor:help}.dq-badge-icon{flex-shrink:0}.dq-badge--high{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.dq-badge--medium{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.dq-badge--low{background:#fef3c7;border:1px solid #fde68a;color:#92400e}.dq-badge--estimated{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.dq-cta-card{border:1px dashed var(--border-200, #e5e7eb);border-radius:12px;padding:0;background:var(--surface-50, #fafafa)}.dq-cta-card-body{display:flex;align-items:center;gap:16px;padding:20px 24px}.dq-cta-icon-wrap{flex-shrink:0;width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--primary-50, #eff6ff);color:var(--primary-600, #2563eb)}.dq-cta-text{flex:1;min-width:0}.dq-cta-title{font-size:14px;font-weight:600;color:var(--text-900, #111827);margin-bottom:2px}.dq-cta-desc{font-size:13px;color:var(--text-500, #6b7280);line-height:1.4}.dq-cta-btn{flex-shrink:0;padding:8px 18px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;background:var(--primary-600, #2563eb);color:#fff;transition:background .15s ease}.dq-cta-btn:hover{background:var(--primary-700, #1d4ed8)}.dq-cta-inline{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;border:1px solid var(--primary-200, #bfdbfe);background:var(--primary-50, #eff6ff);color:var(--primary-700, #1d4ed8);font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease}.dq-cta-inline:hover{background:var(--primary-100, #dbeafe)}.dq-coverage-banner{display:flex;align-items:center;gap:10px;padding:12px 20px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:13px;line-height:1.5;margin-bottom:16px}.dq-coverage-banner svg{flex-shrink:0;color:#f59e0b}.dq-coverage-banner span{flex:1}.dq-coverage-banner-btn{flex-shrink:0;padding:6px 14px;border-radius:6px;border:1px solid #f59e0b;background:#fff;color:#92400e;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease}.dq-coverage-banner-btn:hover{background:#fef3c7}.rec-thin-card{padding:1rem 1.1rem;border:1px solid var(--gray-200);border-left:3px solid hsl(174 64% 47%);background:#fff;box-shadow:0 1px 2px #0f172a0f;border-radius:var(--radius-lg);display:grid;gap:.85rem}.rec-thin-card:has(.rec-status-accepted){border-left-color:#10b981}.rec-thin-card:has(.rec-status-implemented){border-left-color:#6366f1}.rec-thin-card:has(.rec-status-dismissed){border-left-color:#94a3b8}.rec-thin-card:has(.rec-status-suppressed){border-left-color:#f59e0b}.rec-thin-card-selected{border-color:#2bc5b5;box-shadow:0 0 0 1px #2bc5b540,0 1px 2px #0f172a0f}.rec-thin-card:hover{transform:none;cursor:default}.rec-thin-selectRow{margin-bottom:-.35rem}.rec-thin-selectLabel{display:inline-flex;align-items:center;gap:.4rem;cursor:pointer;-webkit-user-select:none;user-select:none}.rec-thin-selectCheckbox{width:16px;height:16px;cursor:pointer;accent-color:hsl(174 64% 47%)}.rec-thin-selectText{font-size:11px;font-weight:600;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em}.rec-thin-topRow{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:-.25rem}.rec-thin-providerRow{display:inline-flex;align-items:center;gap:.4rem;font-size:12px;color:var(--gray-600);font-weight:700}.rec-thin-typeIcon{display:inline-flex;align-items:center;justify-content:center;color:var(--gray-600)}.rec-thin-statusBadge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--gray-200);white-space:nowrap;letter-spacing:.01em;line-height:1;flex-shrink:0}.rec-status-ready{background:linear-gradient(135deg,#eff6ff,#f0f9ff);border-color:#3b82f633;color:#2563eb}.rec-status-accepted{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border-color:#10b98140;color:#047857}.rec-status-implemented{background:linear-gradient(135deg,#eef2ff,#eff6ff);border-color:#6366f140;color:#4338ca}.rec-status-dismissed{background:#f8fafc;border-color:#94a3b84d;color:#64748b}.rec-status-suppressed{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#f59e0b40;color:#b45309}.rec-thin-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.rec-thin-headerLeft{display:grid;gap:.45rem;min-width:0}.rec-thin-displayId{font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:.68rem;font-weight:600;color:var(--gray-400, #9ca3af);letter-spacing:.04em}.rec-thin-title{font-size:.9375rem;font-weight:700;color:var(--gray-900);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rec-thin-titleDetail{font-size:.8125rem;font-weight:400;color:var(--gray-500, #64748b);line-height:1.4;margin-top:.15rem;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.rec-thin-resourceStrip{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;font-size:12px;color:var(--gray-700);line-height:1.4}.rec-thin-resourceStrip--muted{color:var(--gray-400);font-style:italic}.rec-thin-resourceIcon{flex-shrink:0;color:var(--gray-400)}.rec-thin-resourceText{display:inline-flex;align-items:center;gap:.3rem;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.rec-thin-resourceText strong{font-weight:700;font-size:12px;color:var(--gray-800)}.rec-thin-resourceSep{color:var(--gray-400)}.rec-thin-resourceId{font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:10.5px;font-weight:600;color:var(--gray-500);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:4px;padding:1px 5px}.rec-thin-chip{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--gray-600);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:999px;padding:2px 7px;white-space:nowrap}.rec-thin-chipEnv{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.rec-thin-unavailable{font-size:12px;font-weight:600;color:var(--gray-400);font-style:italic;cursor:help}.rec-thin-metaRow{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.rec-thin-metaPill{font-size:11px;font-weight:600;color:var(--gray-600);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:999px;padding:3px 8px;cursor:default}.rec-thin-confidencePill{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap;line-height:1;cursor:help}.rec-thin-confidence-high{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.rec-thin-confidence-medium{color:#92400e;background:#fef9c3;border:1px solid #fde68a}.rec-thin-confidence-low{color:#6b7280;background:#f3f4f6;border:1px solid #e5e7eb}.rec-thin-metaRisk{background:#f8fafc;color:#64748b}.rec-thin-risk-low{background:#f0fdf4;color:#15803d}.rec-thin-risk-medium{background:#fffbeb;color:#b45309}.rec-thin-risk-high{background:#fef2f2;color:#dc2626}.rec-thin-freshnessText{font-size:11px;font-weight:600;color:var(--gray-500);margin-left:.15rem}.rec-thin-priorityBadge{font-size:11px;font-weight:800;border-radius:999px;padding:4px 9px;border:1px solid var(--gray-200);cursor:help}.rec-thin-priority-high{color:#0f766e;background:#ecfeff;border-color:#99f6e4}.rec-thin-priority-medium{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.rec-thin-priority-low{color:#6b7280;background:#f9fafb;border-color:#e5e7eb}.rec-thin-savingsBlock{border:1px solid hsl(174 45% 84%);background:linear-gradient(135deg,#f0fdfa,#ecfeff);border-radius:12px;padding:.55rem .75rem;display:grid;gap:.12rem;justify-items:end;min-width:220px}.rec-thin-savingsBlock--estimated{border-color:#fcd34d;background:linear-gradient(135deg,#fffbeb,#fef3c7)}.rec-thin-savingsBlock--unavailable{border-color:var(--gray-200);background:var(--gray-50)}.rec-thin-savingsLabel{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#0f766e}.rec-thin-savingsValue{font-size:1.15rem;font-weight:800;color:#0f172a}.rec-thin-savingsSubtext{font-size:12px;font-weight:700;color:#0f766e}.rec-thin-section{display:grid;gap:.35rem}.rec-thin-sectionTitle{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500)}.rec-thin-whyDisclosure{margin:0}.rec-thin-whySummary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.rec-thin-whySummary::-webkit-details-marker{display:none}.rec-thin-whySummary:before{content:"▸";font-size:11px;color:var(--gray-500);transform:translateY(-1px)}.rec-thin-whyDisclosure[open] .rec-thin-whySummary:before{content:"▾"}.rec-thin-whyContent{margin-top:8px;padding:10px 11px;border-radius:10px;background:linear-gradient(135deg,#0ea5e90a,#14b8a60a);border:1px solid rgba(148,163,184,.18)}.rec-thin-explanation{font-size:12px;color:var(--gray-700);line-height:1.5;margin:0;max-width:80ch}.rec-thin-impactGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.rec-thin-impactItem{border:1px solid var(--gray-200);border-radius:10px;background:#fff;padding:.5rem .65rem;display:grid;gap:2px}.rec-thin-impactItem span{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500)}.rec-thin-impactItem strong{font-size:13px;font-weight:700;color:var(--gray-900)}.rec-thin-actions{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.rec-thin-jiraLink{margin-right:.2rem;display:inline-flex;align-items:center;border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);border-radius:999px;padding:.28rem .6rem;font-size:.72rem;font-weight:700;text-decoration:none;white-space:nowrap}.rec-thin-jiraLink:hover{background:var(--gray-100)}.rec-thin-btn{border-radius:8px;padding:.5rem .9rem;font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap}.rec-thin-btn-primary{border:1px solid var(--gray-300);background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff}.rec-thin-btn-primary:hover{background:linear-gradient(135deg,#0f2757,#27b0a2)}.rec-thin-metaPricing{display:inline-flex;align-items:center;gap:3px;color:#1f7a50;background:#e8f7f0;border-color:#bfe3d2}.rec-thin-metaPricing svg{flex-shrink:0}.rec-thin-metaUrgency{font-weight:600}.rec-thin-urgency-high{background:#fef2f2;color:#dc2626;border-color:#fecaca}.rec-thin-urgency-medium{background:#fffbeb;color:#d97706;border-color:#fde68a}.rec-thin-urgency-low{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.rec-thin-metaForecast{background:#eff6ff;color:#2563eb;border-color:#bfdbfe;font-weight:600}@media (max-width: 700px){.rec-thin-header{flex-direction:column}.rec-thin-savingsBlock{width:100%;justify-items:start;min-width:0}.rec-thin-impactGrid{grid-template-columns:1fr}}.provenance-panel{border:1px solid var(--gray-200, #e5e7eb);border-radius:10px;background:#fafbfc;overflow:hidden}.provenance-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:.55rem .75rem;font-size:12px;font-weight:700;color:var(--gray-600, #4b5563);background:transparent;border:none;cursor:pointer;text-align:left}.provenance-toggle:hover{background:var(--gray-50, #f9fafb)}.provenance-toggle-label{flex:1}.provenance-body{padding:0 .75rem .65rem;display:grid;gap:.55rem}.provenance-row{display:flex;align-items:center;gap:.5rem;font-size:12px}.provenance-key{font-weight:700;color:var(--gray-500, #6b7280);min-width:80px;text-transform:uppercase;letter-spacing:.04em;font-size:10.5px}.provenance-value{color:var(--gray-800, #1f2937);font-weight:600}.provenance-mono{font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:11px;display:inline-flex;align-items:center;gap:4px}.provenance-methodology{text-transform:capitalize}.provenance-copy{display:inline-flex;align-items:center;padding:2px;border:none;background:none;cursor:pointer;color:var(--gray-400, #9ca3af);border-radius:3px}.provenance-copy:hover{color:var(--gray-600, #4b5563);background:var(--gray-100, #f3f4f6)}.provenance-section{display:grid;gap:.3rem}.provenance-section-title{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500, #6b7280)}.provenance-statsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:.4rem}.provenance-stat{border:1px solid var(--gray-200, #e5e7eb);border-radius:8px;padding:.35rem .5rem;background:#fff;display:grid;gap:1px}.provenance-stat span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--gray-500, #6b7280)}.provenance-stat strong{font-size:12px;font-weight:700;color:var(--gray-900, #111827)}.provenance-chipList{display:flex;flex-wrap:wrap;gap:.3rem}.provenance-chip{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--gray-600, #4b5563);background:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:999px;padding:2px 7px;white-space:nowrap}.provenance-ratesList{display:grid;gap:.25rem}.provenance-rateRow{display:flex;align-items:center;gap:.5rem;font-size:12px;padding:.3rem .5rem;border:1px solid var(--gray-200, #e5e7eb);border-radius:6px;background:#fff}.provenance-rateOption{display:inline-flex;align-items:center;gap:3px;font-weight:700;color:var(--gray-700, #374151);text-transform:capitalize;min-width:90px}.provenance-ratePrice{font-weight:700;color:var(--gray-900, #111827);font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:11.5px}.provenance-rateConf{font-size:10.5px;font-weight:600;color:var(--gray-500, #6b7280);margin-left:auto}@keyframes ckToastSlideUp{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.ck-action-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);z-index:10000;display:flex;align-items:center;gap:.75rem;background:#fff;border:1px solid;border-left-width:4px;border-radius:12px;padding:.875rem 1.25rem;min-width:360px;max-width:540px;box-shadow:0 12px 40px #0000001f,0 4px 12px #0000000f;animation:ckToastSlideUp .35s cubic-bezier(.22,1,.36,1);font-family:inherit}.ck-action-toast-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ck-action-toast-body{flex:1;min-width:0}.ck-action-toast-headline{font-weight:700;font-size:.875rem;color:#1e293b;line-height:1.3}.ck-action-toast-detail{font-size:.78rem;color:#64748b;margin-top:.15rem;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ck-action-toast-close{background:none;border:none;cursor:pointer;padding:4px;color:#94a3b8;flex-shrink:0;line-height:0}.ck-action-toast-close:hover{color:#475569}.rec-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a52;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:980}.advisor-panel.rec-side-panel{width:clamp(420px,44vw,560px);min-width:420px;max-width:92vw;background:#fff;border-left:1px solid var(--gray-200);box-shadow:-8px 0 20px #0f172a14;padding:0;gap:0;overflow:hidden;z-index:990;transition:transform .2s ease;display:flex;flex-direction:column}.rec-panel-top{position:sticky;top:0;z-index:4;background:#fff;border-bottom:1px solid var(--gray-200)}.rec-panel-header{display:flex;gap:12px;padding:16px 16px 12px;background:#fff}.rec-panel-header-main{min-width:0;flex:1}.rec-panel-header-titleRow{display:flex;align-items:center;justify-content:space-between;gap:10px}.rec-panel-provider{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--gray-600, #4b5563);font-weight:600}.rec-panel-provider-sep{color:var(--gray-400)}.rec-panel-service-label{font-size:12px;color:var(--gray-600);font-weight:600}.rec-panel-header-actions{display:inline-flex;align-items:center;gap:8px}.rec-panel-title{margin-top:10px;font-size:16px;font-weight:700;color:var(--gray-900, #111827);line-height:1.35;outline:none}.rec-panel-titleDetail{margin-top:4px;font-size:13px;font-weight:400;color:var(--gray-500, #64748b);line-height:1.45}.rec-panel-emptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:60px 32px;text-align:center;color:var(--gray-400, #9ca3af)}.rec-panel-emptyState-title{font-size:.95rem;font-weight:700;color:var(--gray-700, #374151);margin:0}.rec-panel-emptyState-desc{font-size:.8rem;color:var(--gray-500, #6b7280);max-width:300px;line-height:1.5;margin:0}.rec-panel-idChip{display:inline-flex;align-items:center;gap:5px;margin-top:5px;padding:2px 8px;font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:10.5px;font-weight:600;color:var(--gray-600, #4b5563);background:var(--gray-50, #f9fafb);border:1px solid var(--gray-200, #e5e7eb);border-radius:5px;cursor:copy;transition:background-color .15s,border-color .15s,color .15s}.rec-panel-idChip:hover{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.rec-panel-idChip-text{letter-spacing:.04em}.rec-panel-subtitle{margin-top:4px;font-size:12px;color:var(--gray-500, #6b7280);font-weight:600}.rec-panel-metricsRow{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:end}.rec-panel-summaryBand{margin-top:12px;border:1px solid hsl(174 30% 88%);border-radius:12px;background:linear-gradient(135deg,#f8fafc,#f0fdfa);padding:9px 11px;display:grid;gap:2px}.rec-panel-summaryKpiLabel{display:inline-flex;align-items:center;gap:6px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:#334155}.rec-panel-summaryKpiValue{font-size:1.3rem;font-weight:800;color:#0f172a;line-height:1.25}.rec-panel-summaryKpiSub{font-size:11px;font-weight:600;color:#64748b}.rec-panel-summaryContext{margin-top:4px;display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#334155;font-weight:600}.rec-panel-summaryTimestamp{margin-top:4px}.rec-panel-savings,.rec-panel-current{display:flex;flex-direction:column;gap:2px;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:var(--gray-50);padding:8px 10px}.rec-panel-savings-label,.rec-panel-current-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--gray-500, #6b7280);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.rec-panel-savings-value{font-size:16px;font-weight:800;color:var(--gray-900)}.rec-panel-current-value{font-size:13px;font-weight:700;color:var(--gray-900, #111827)}.rec-panel-timestamps{grid-column:1 / -1;font-size:12px;color:var(--gray-500, #6b7280)}.rec-panel-jiraChip{grid-column:1 / -1;justify-self:start;display:inline-flex;align-items:center;border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:none}.rec-panel-jiraChip:hover{background:var(--gray-100)}.rec-panel-close{flex-shrink:0;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);border-radius:var(--radius-md);height:38px;width:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:0}.rec-panel-close:hover{background:var(--gray-50)}.rec-panel-closeIcon{display:block;stroke-width:2.2;color:currentColor}.rec-panel-statusBadge{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;border:1px solid var(--gray-200);background:var(--gray-50);color:var(--gray-700);white-space:nowrap}.rec-panel-statusBadge.status-accepted{background:#ecfdf3;border-color:#10b98140;color:#047857}.rec-panel-statusBadge.status-implemented{background:#eff6ff;border-color:#3b82f640;color:#1d4ed8}.rec-panel-statusBadge.status-dismissed{background:#f8fafc;border-color:#94a3b84d;color:#475569}.rec-panel-statusBadge.status-suppressed{background:#fffbeb;border-color:#f59e0b40;color:#b45309}.rec-panel-tabs{display:flex;gap:2px;padding:0 16px;background:#fff}.rec-panel-tab{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--gray-700);border-radius:0;padding:10px 12px;font-size:12px;font-weight:700;cursor:pointer}.rec-panel-tab:disabled{opacity:.55;cursor:not-allowed}.rec-panel-tab.active{color:#239f93;border-bottom-color:#2bc5b5}.rec-panel-body{flex:1;overflow:auto;padding:20px 16px}.rec-panel-tools{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.rec-panel-jiraRow{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;padding:10px 12px}.rec-panel-jiraKey{font-size:12px;font-weight:800;color:var(--gray-800)}.rec-panel-linkBtn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);border-radius:var(--radius-md);padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.rec-panel-linkBtn:hover{background:var(--gray-50)}.rec-panel-section h4{margin:0 0 8px;font-size:13px;font-weight:700;color:var(--gray-900, #111827)}.rec-panel-sectionHead{display:inline-flex;align-items:center;gap:6px;margin-bottom:8px;color:var(--gray-800)}.rec-panel-paragraph{margin:0;font-size:15px;color:var(--gray-700, #374151);line-height:1.6}.rec-panel-subsection{margin-top:24px;padding-top:16px;border-top:1px solid var(--gray-100)}.rec-panel-insightCallout{margin-top:8px;padding:14px 15px;border-radius:10px;background:#f8fafc;border-left:3px solid #cbd5e1}.rec-panel-insightText{max-width:62ch;color:#475569}.rec-panel-inlineHeaderRow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.rec-panel-kvGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rec-panel-impactOverviewGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rec-panel-impactColumn{display:grid;gap:10px}.rec-panel-impactMetric{border:1px solid var(--gray-200);border-radius:10px;background:#fff;padding:11px 12px;display:grid;gap:6px;min-height:72px;align-content:start}.rec-panel-impactMetric span{font-size:11px;color:var(--gray-500, #6b7280);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.rec-panel-impactMetric strong{font-size:16px;color:var(--gray-900, #111827);font-weight:800;line-height:1.2;display:inline-flex;align-items:baseline;gap:5px}.rec-panel-impactMetric strong em{font-style:normal;font-size:11px;font-weight:600;color:var(--gray-500, #6b7280)}.rec-panel-kv{border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:10px 11px;background:#fff;display:grid;gap:6px}.rec-panel-kv span{font-size:11px;color:var(--gray-500, #6b7280);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.rec-panel-kv strong{font-size:13px;color:var(--gray-900, #111827)}.rec-panel-accordion{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;overflow:hidden}.rec-panel-accordion summary{list-style:none;cursor:pointer;padding:10px 12px;border-bottom:1px solid var(--gray-200)}.rec-panel-accordion summary::-webkit-details-marker{display:none}.rec-panel-accordion .rec-panel-kvGrid{padding:10px}.rec-panel-reasoningSection{margin:22px 0 10px!important;padding:4px 0!important}.rec-panel-reasoningWidget{margin:0!important;border:1px solid var(--gray-100);border-radius:var(--radius-md);background:#fff;overflow:hidden}.rec-panel-reasoningHeader{padding:10px 12px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:800;color:var(--gray-800);border-bottom:1px solid var(--gray-200);background:var(--gray-50)}.rec-panel-reasoningBody{padding:14px 12px}.rec-panel-learnMore{border:0;background:transparent;color:#239f93;font-size:12px;font-weight:700;padding:0;margin-top:8px;cursor:pointer}.rec-panel-loading{padding:14px 0;color:var(--gray-600, #4b5563);font-size:13px}.rec-panel-footer{border-top:1px solid var(--gray-100);padding:12px 16px 14px;background:#fff;position:sticky;bottom:0;z-index:3}.rec-panel-footerMeta{font-size:12px;color:var(--gray-600, #4b5563);margin-bottom:10px}.rec-panel-footerActions{display:flex;flex-wrap:wrap;gap:8px}.rec-panel-btn{display:inline-flex;align-items:center;gap:8px;border-radius:var(--radius-md);padding:8px 10px;font-size:12px;font-weight:800;border:1px solid var(--gray-200);background:#fff;color:var(--gray-800);cursor:pointer}.rec-side-panel button:focus-visible,.rec-side-panel a:focus-visible,.rec-side-panel input:focus-visible,.rec-side-panel select:focus-visible{outline:2px solid hsl(174 64% 47%);outline-offset:2px}.rec-panel-btn.primary{border-color:var(--primary-300)}.rec-panel-btn.secondary{background:var(--gray-50)}.advisor-panel.rec-side-panel .rec-panel-btn.dismiss{border-color:#ef4444!important;color:#991b1b!important;background:#fee2e2!important}.advisor-panel.rec-side-panel .rec-panel-btn.dismiss:hover,.advisor-panel.rec-side-panel .rec-panel-btn.dismiss:focus-visible{border-color:#ef4444!important;color:#fff!important;background:#ef4444!important}.advisor-panel.rec-side-panel .rec-panel-btn.dismiss:disabled{border-color:#fca5a5!important;color:#b91c1c!important;background:#fee2e2!important;opacity:.7}.rec-panel-inlineForm{margin-top:12px;border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:10px;background:var(--gray-50);display:grid;gap:10px}.rec-panel-inlineRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rec-panel-inlineRow label{display:grid;gap:6px;font-size:12px;font-weight:700;color:var(--gray-700, #374151)}.rec-panel-inlineRow select,.rec-panel-inlineRow input{border:1px solid var(--gray-200);border-radius:10px;padding:8px 10px;font-size:12px;background:#fff}.rec-panel-inlineActions{display:flex;justify-content:flex-end;gap:8px}.rec-panel-inlineCheckbox{display:inline-flex!important;align-items:center;gap:8px!important;font-weight:700}.rec-panel-inlineHint{font-size:12px;color:var(--gray-600, #4b5563);display:inline-flex;align-items:center}.rec-panel-resourceScope{margin-bottom:4px}.rec-panel-scopeSummaryRow{display:flex;align-items:center;gap:8px;margin-bottom:10px}.rec-panel-scopeCount{font-size:13px;font-weight:700;color:var(--gray-800, #1e293b)}.rec-panel-scopeConfidence{font-size:10.5px;font-weight:700;border-radius:999px;padding:2px 8px;border:1px solid var(--gray-200);text-transform:uppercase;letter-spacing:.03em}.rec-panel-scopeConfidence--high{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.rec-panel-scopeConfidence--medium{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.rec-panel-scopeConfidence--low{background:#f8fafc;border-color:#e2e8f0;color:#64748b}.rec-panel-scopeTable{border:1px solid var(--gray-200);border-radius:10px;overflow:hidden;font-size:12px}.rec-panel-scopeTableHead{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:0;padding:7px 10px;background:var(--gray-50);border-bottom:1px solid var(--gray-200)}.rec-panel-scopeTableHead--5col{grid-template-columns:1.6fr 1.4fr 1fr .9fr .9fr}.rec-panel-scopeTableHead span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500)}.rec-panel-scopeTableRow{display:grid;grid-template-columns:2fr 1.2fr 1fr 1fr;gap:0;padding:8px 10px;border-bottom:1px solid var(--gray-100);align-items:start}.rec-panel-scopeTableRow--5col{grid-template-columns:1.6fr 1.4fr 1fr .9fr .9fr}.rec-panel-scopeTableRow:last-child{border-bottom:none}.rec-panel-scopeCell{font-size:12px;color:var(--gray-700);min-width:0;overflow:hidden;text-overflow:ellipsis}.rec-panel-scopeCellSavings{font-weight:700;color:var(--gray-900)}.rec-panel-scopePrimary{display:block;font-weight:600;color:var(--gray-800);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rec-panel-scopeId{display:block;font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:10px;font-weight:500;color:var(--gray-500);margin-top:1px}.rec-panel-scopeType{display:block;font-size:10px;font-weight:600;color:var(--gray-400);margin-top:1px;text-transform:capitalize}.rec-panel-scopeIdCopyable{display:inline-block;font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:10.5px;font-weight:600;color:var(--gray-700);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:4px;padding:2px 6px;cursor:copy;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-break:break-all;transition:background-color .15s,border-color .15s}.rec-panel-scopeIdCopyable:hover{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.rec-panel-scopeChip{display:inline-flex;align-items:center;gap:3px;font-size:10.5px;font-weight:600;color:var(--gray-600)}.rec-panel-scopeToggle{display:inline-flex;align-items:center;gap:4px;border:none;background:transparent;color:#239f93;font-size:12px;font-weight:700;padding:6px 0 0;cursor:pointer}.rec-panel-scopeToggle:hover{text-decoration:underline}.rec-panel-scopeEmpty{padding:12px 14px;border:1px solid var(--gray-200);border-radius:10px;background:var(--gray-50);display:grid;gap:6px}.rec-panel-scopeEmptyText{font-size:13px;font-weight:600;color:var(--gray-400);font-style:italic}.rec-panel-scopeWarning{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:#92400e;cursor:help}.rec-panel-impactUnavailable{font-size:13px;font-weight:600;color:var(--gray-400);font-style:italic;cursor:help}.rec-panel-reasoningList{margin:0;padding:0 0 0 18px;list-style-type:disc}.rec-panel-reasoningBullet{font-size:13px;color:var(--gray-700, #374151);line-height:1.55;margin-bottom:4px}.rec-panel-reasoningBullet:last-child{margin-bottom:0}.rec-panel-scoringReasons{margin:4px 0 0;padding:0 0 0 16px;list-style-type:disc}.rec-panel-scoringReasons li{font-size:12px;color:var(--gray-600, #4b5563);line-height:1.5;margin-bottom:2px}.rec-panel-scoringReasons li:last-child{margin-bottom:0}.rec-panel-implementConfirm{margin-top:12px;border:1px solid hsl(174 40% 80%);border-radius:var(--radius-md);padding:12px;background:linear-gradient(135deg,#f0fdfa,#f8fafc);display:flex;flex-direction:column;gap:10px}.rec-panel-implementConfirm-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:#2bc5b51a;color:#229b8f;flex-shrink:0}.rec-panel-implementConfirm-body{display:flex;flex-direction:column;gap:4px}.rec-panel-implementConfirm-title{font-size:13px;font-weight:800;color:var(--gray-900)}.rec-panel-implementConfirm-text{margin:0;font-size:12px;color:var(--gray-600);line-height:1.55}.rec-panel-implementConfirm-text strong{color:var(--gray-800);font-weight:700}.advisor-panel.rec-side-panel .rec-panel-btn.implement-confirm{border-color:#2bc5b5;color:#fff;background:linear-gradient(135deg,#2bc5b5,#239f93)}.advisor-panel.rec-side-panel .rec-panel-btn.implement-confirm:hover,.advisor-panel.rec-side-panel .rec-panel-btn.implement-confirm:focus-visible{background:linear-gradient(135deg,#25a79a,#1d867b);box-shadow:0 2px 8px #2bc5b54d}.advisor-panel.rec-side-panel .rec-panel-btn.implement-confirm:disabled{opacity:.6}.rec-panel-pricingBadge{display:inline-flex;align-items:center;gap:6px;margin:2px 0 12px;padding:5px 12px;border-radius:6px;font-size:.78rem;font-weight:500;color:#1f7a50;background:#e8f7f0;border:1px solid hsl(152 40% 82%)}.rec-panel-pricingBadge svg{flex-shrink:0;color:#279b65}.rec-panel-pricingDate{color:#509575;font-weight:400;margin-left:2px}.rec-panel-pricingSection{margin-top:.25rem}.rec-panel-pricingContent{display:grid;gap:.65rem;margin-top:.45rem}.rec-panel-pricingDisclaimer{display:flex;align-items:flex-start;gap:6px;font-size:11.5px;font-weight:600;color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:.5rem .65rem;line-height:1.4}.rec-panel-pricingDisclaimer svg{flex-shrink:0;margin-top:1px}.rec-panel-pricingUnavailable{font-size:12px;color:var(--gray-600);line-height:1.5;padding:.5rem .65rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:8px}.rec-panel-pricingUnavailable p{margin:0 0 .25rem}.rec-panel-pricingUnavailable p:last-child{margin-bottom:0}.rec-panel-pricingRefRegions{font-size:11px;color:var(--gray-500);font-style:italic}@media (max-width: 900px){.rec-side-panel{width:100vw;min-width:0;max-width:100vw}.rec-panel-impactOverviewGrid{grid-template-columns:1fr}.rec-panel-scopeTableHead,.rec-panel-scopeTableRow{grid-template-columns:1.5fr 1fr 1fr .8fr}.rec-panel-scopeTableHead--5col,.rec-panel-scopeTableRow--5col{grid-template-columns:1.3fr 1.2fr .9fr .8fr .8fr}}.rec-page{padding:0}.rec-admin-org-selector{display:inline-flex;align-items:center;gap:.4rem;margin-top:.375rem;padding:.25rem .625rem;background:var(--amber-50, #fffbeb);border:1px solid var(--amber-200, #fde68a);border-radius:var(--radius-md, 6px);font-size:.8125rem;color:var(--amber-800, #92400e)}.rec-admin-org-selector label{font-weight:500;white-space:nowrap}.rec-admin-org-selector select{padding:.15rem .4rem;border:1px solid var(--amber-300, #fcd34d);border-radius:4px;background:#fff;font-size:.8125rem;color:var(--gray-800, #1e293b);cursor:pointer;max-width:280px}.rec-page.rec-page-panel-open>*:not(.rec-panel-backdrop):not(.rec-side-panel){pointer-events:none}.rec-executive-summary{display:grid;gap:.875rem;margin-bottom:1rem}.rec-exec-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.rec-exec-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm)}.rec-exec-card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;color:var(--gray-600)}.rec-exec-label{font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.rec-exec-value{font-size:1.4rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.2rem}.rec-exec-subtext{font-size:.8rem;color:var(--gray-600);line-height:1.35}.rec-exec-subtext--muted{margin-top:4px;font-size:.75rem;color:var(--gray-500, #6b7280);font-style:italic}.rec-signal-ribbon{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:var(--radius-md, 8px);padding:.5rem 1rem;margin-bottom:.75rem;max-height:56px;overflow:hidden}.rec-signal-ribbon-left{display:flex;align-items:center;gap:.625rem;flex-wrap:wrap;min-width:0}.rec-signal-ribbon-right{display:flex;align-items:center;gap:.375rem;flex-shrink:0}.rec-signal-ribbon-label{display:inline-flex;align-items:center;gap:.3rem;font-size:.6875rem;font-weight:700;color:#0f172a;background:#e0f2fe;border:1px solid #bae6fd;border-radius:999px;padding:.2rem .6rem;white-space:nowrap}.rec-signal-ribbon-divider{width:1px;height:14px;background:#cbd5e1;flex-shrink:0}.rec-signal-ribbon-meta{font-size:.6875rem;font-weight:500;color:#64748b;white-space:nowrap}.rec-signal-ribbon-chip{font-size:.625rem;font-weight:600;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:.15rem .5rem;white-space:nowrap}@media (max-width: 768px){.rec-signal-ribbon{max-height:none;flex-direction:column;align-items:flex-start;gap:.5rem;padding:.5rem .75rem}.rec-signal-ribbon-divider{display:none}.rec-signal-ribbon-left,.rec-signal-ribbon-right{gap:.375rem}}.rec-insights-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:.9rem;margin-bottom:1rem}.rec-premium-card{margin:0;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff}.rec-provider-segmented{display:flex;width:100%;height:10px;border-radius:999px;overflow:hidden;background:var(--gray-100);margin-bottom:.85rem}.rec-provider-segment{display:block;min-width:2%;background:var(--primary-400)}.rec-provider-segment:nth-child(2n){background:var(--success)}.rec-provider-segment:nth-child(3n){background:var(--warning)}.rec-provider-segment:nth-child(4n){background:var(--accent)}.rec-page-header{margin-bottom:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap}.rec-list-header{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:1rem}.rec-list-titleBlock{min-width:260px;margin-right:auto}.rec-list-title{margin:0;font-size:1.05rem;font-weight:700;color:var(--gray-900)}.rec-list-subtitle{margin:.2rem 0 0;font-size:.84rem;color:var(--gray-600)}.rec-list-search{flex:1;min-width:220px;padding:.625rem .875rem;border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 10px);font-size:.875rem}.rec-list-search:focus{outline:none;border-color:var(--primary-500, #3b82f6);box-shadow:0 0 0 3px #3b82f61f}.rec-list-select{padding:.625rem .875rem;border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 10px);font-size:.875rem;background:#fff;min-width:150px}.rec-list-filters{display:flex;align-items:flex-end;gap:.55rem;flex-wrap:wrap}.rec-list-controlLabel{display:flex;flex-direction:column;gap:.28rem;font-size:.74rem;font-weight:700;color:var(--gray-600);letter-spacing:.01em;text-transform:uppercase}.rec-list-toggle{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--gray-700);font-weight:600;padding:.45rem .25rem;-webkit-user-select:none;user-select:none}.rec-list-toggle input{accent-color:var(--primary-500, #3b82f6)}.rec-impact-info{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;color:var(--gray-600);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:999px;padding:.3rem .55rem;cursor:help}.rec-list{display:grid;gap:10px}.rec-list-row{cursor:default;border-radius:var(--radius-lg, 14px);transition:box-shadow .3s,outline-color .3s}.rec-list-row--active>.ai-recommendation-card{outline:2px solid hsl(174 64% 47% / .45);outline-offset:1px}.rec-list-row--highlight{animation:recHighlightPulse 2.2s ease-out}@keyframes recHighlightPulse{0%{box-shadow:0 0 #2bc5b573}15%{box-shadow:0 0 0 5px #2bc5b54d}50%{box-shadow:0 0 0 3px #2bc5b526}to{box-shadow:0 0 #2bc5b500}}.rec-empty,.rec-page-error{padding:18px;border:1px dashed var(--gray-200, #e5e7eb);border-radius:var(--radius-lg, 14px);background:var(--gray-50, #f9fafb);color:var(--gray-600, #4b5563)}.rec-page-actions{display:flex;align-items:center}.rec-export-wrapper{position:relative}.rec-export-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;font-size:.8rem;font-weight:650;border:1px solid hsl(174 64% 42%);border-radius:9px;background:#2bc5b5;color:#fff;cursor:pointer;transition:all .15s;white-space:nowrap;box-shadow:0 1px 3px #2bc5b540}.rec-export-btn:hover:not(:disabled){background:#25a79a;border-color:#21978b;box-shadow:0 2px 6px #2bc5b559}.rec-export-btn:disabled{opacity:.45;cursor:not-allowed}.rec-export-spinner{display:inline-block;width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:recExportSpin .7s linear infinite}@keyframes recExportSpin{to{transform:rotate(360deg)}}.rec-export-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10}.rec-export-dropdown{position:absolute;top:calc(100% + 6px);right:0;z-index:11;min-width:160px;background:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:10px;box-shadow:0 6px 20px #0000001a;padding:4px;display:flex;flex-direction:column}.rec-export-dropdown button{display:flex;align-items:center;gap:8px;padding:8px 12px;font-size:.8rem;font-weight:600;color:var(--gray-700, #374151);background:transparent;border:none;border-radius:7px;cursor:pointer;transition:background .12s}.rec-export-dropdown button:hover{background:var(--gray-50, #f9fafb);color:#239f93}@media (max-width: 700px){.rec-list-header{align-items:stretch}.rec-list-titleBlock{width:100%;margin-right:0}.rec-list-select{min-width:0;flex:1}.rec-list-controlLabel{flex:1;min-width:140px}.rec-list-filters{width:100%}.rec-list-toggle{width:100%;padding-left:0}}@media (max-width: 1200px){.rec-exec-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rec-insights-grid{grid-template-columns:1fr}}@media (max-width: 700px){.rec-exec-grid{grid-template-columns:1fr}}.sw-root{position:relative;background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:0;margin-bottom:1.25rem;overflow:hidden;box-shadow:0 1px 3px #0000000a,0 4px 12px #00000005;transition:box-shadow .3s}.sw-root:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#3b82f6,#8b5cf6 40%,#06b6d4,#10b981);opacity:.85}.sw-root:hover{box-shadow:0 2px 8px #0000000f,0 8px 24px #0000000a}.sw-header{display:flex;align-items:flex-start;justify-content:space-between;padding:18px 22px 0}.sw-title-row{display:flex;align-items:center;gap:10px}.sw-icon{font-size:22px;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.sw-root:hover .sw-icon{transform:scale(1.12)}.sw-title-text{display:flex;flex-direction:column}.sw-title{font-size:14px;font-weight:650;color:#111827;margin:0;letter-spacing:-.01em}.sw-subtitle{font-size:12px;color:#6b7280;margin:1px 0 0;line-height:1.4;transition:color .2s}.sw-actions{display:flex;align-items:center;gap:8px}.sw-plan-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 12px 5px 10px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#4b5563;font-size:12px;font-weight:550;cursor:pointer;transition:all .2s;white-space:nowrap}.sw-plan-btn:hover{background:#f3f4f6;border-color:#d1d5db;color:#111827}.sw-plan-btn:hover svg:last-child{transform:translate(2px)}.sw-plan-btn svg:last-child{transition:transform .2s;opacity:.5}.sw-info{color:#9ca3af;cursor:help;display:inline-flex;transition:color .15s}.sw-info:hover{color:#6b7280}.sw-pill-track{position:relative;display:inline-flex;margin:14px 22px 0;background:#f3f4f6;border-radius:10px;padding:3px;gap:2px}.sw-pill-indicator{position:absolute;top:3px;left:3px;height:calc(100% - 6px);border-radius:8px;background:#fff;box-shadow:0 1px 3px #0000001a,0 1px 2px #0000000f;transition:transform .32s cubic-bezier(.34,1.56,.64,1),width .25s ease;z-index:0}.sw-pill-btn{position:relative;z-index:1;display:flex;align-items:center;gap:5px;padding:7px 16px;border:none;background:transparent;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;border-radius:8px;transition:color .2s;white-space:nowrap;-webkit-user-select:none;user-select:none}.sw-pill-btn:hover{color:#374151}.sw-pill-btn--active{color:#111827;font-weight:600}.sw-pill-emoji{font-size:14px;line-height:1}.sw-pill-label{line-height:1}.sw-metrics{display:flex;align-items:stretch;padding:18px 22px 16px;gap:0}.sw-metric{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.sw-metric--primary{flex:1.2}.sw-metric-divider{width:1px;align-self:stretch;background:#e5e7eb;margin:0 18px;flex-shrink:0}.sw-metric-label{font-size:11px;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.04em;line-height:1}.sw-metric-value{font-size:22px;font-weight:700;color:#111827;line-height:1.2;letter-spacing:-.02em;white-space:nowrap}.sw-metric-value--green{color:#059669}.sw-delta{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;padding:1px 6px;border-radius:6px;line-height:1.4;margin-top:1px;animation:sw-delta-in .35s ease}@keyframes sw-delta-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sw-delta--up{color:#059669;background:#ecfdf5}.sw-delta--down{color:#dc2626;background:#fef2f2}.sw-composition{padding:0 22px 16px;animation:sw-comp-in .3s ease}@keyframes sw-comp-in{0%{opacity:0}to{opacity:1}}.sw-comp-header{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500;color:#6b7280;margin-bottom:6px}.sw-comp-excluded{color:#9ca3af;margin-left:4px}.sw-comp-excluded:before{content:"·";margin-right:4px}.sw-minibar{display:flex;height:6px;border-radius:3px;overflow:hidden;background:#f3f4f6;gap:1px}.sw-minibar-seg{height:100%;border-radius:2px;transition:width .4s cubic-bezier(.34,1.56,.64,1);min-width:3px}.sw-comp-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.sw-legend-item{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280}.sw-legend-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.sw-legend-count{font-weight:600;color:#374151}@media (max-width: 640px){.sw-header{flex-direction:column;gap:10px}.sw-metrics{flex-direction:column;gap:12px}.sw-metric-divider{width:100%;height:1px;margin:0}.sw-pill-track{width:calc(100% - 44px)}.sw-pill-btn{flex:1;justify-content:center}}.savings-header{margin-bottom:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;flex-wrap:wrap}.savings-header h1{font-size:1.5rem;font-weight:700;color:#1f2937;margin:0 0 .25rem}.savings-subtitle{color:#6b7280;font-size:.9375rem;margin:0}.time-range-selector{display:flex;gap:.25rem;background:hsl(var(--muted));padding:.25rem;border-radius:var(--radius-md);box-shadow:inset 0 1px 2px hsl(var(--foreground) / .05)}.time-range-selector button{padding:.5rem 1rem;border:none;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;background:transparent;color:hsl(var(--muted-foreground));transition:all .2s;white-space:nowrap}.time-range-selector button:hover{background:hsl(var(--background));color:hsl(var(--foreground))}.time-range-selector button.active{background:var(--gradient-hero);color:#fff;box-shadow:0 2px 4px hsl(var(--primary) / .3)}@media (max-width: 768px){.savings-header{flex-direction:column;align-items:stretch}.time-range-selector{width:100%;justify-content:stretch}.time-range-selector button{flex:1;padding:.5rem;font-size:.75rem}}.savings-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1rem}.savings-breakdown-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%;max-width:100%;align-items:stretch}.opt-card{background:#fff;border-radius:var(--radius-lg, 12px);border:1px solid var(--gray-200, #e5e7eb);padding:1.25rem;display:flex;gap:1rem;align-items:flex-start;box-shadow:var(--shadow-sm, 0 1px 2px 0 rgba(0, 0, 0, .05));transition:all .2s}.opt-card:hover{border-color:var(--primary-200, #bfdbfe);box-shadow:var(--shadow-md, 0 4px 6px -1px rgba(0, 0, 0, .1));transform:translateY(-2px)}.opt-card.highlight{background:#ecfdf5;border-color:#a7f3d0;color:inherit}.opt-card.highlight .opt-card-label,.opt-card.highlight .opt-card-sublabel{color:var(--gray-600, #4b5563)}.opt-card.highlight .opt-card-value{color:var(--gray-900, #111827)}.opt-card-icon{font-size:2rem;line-height:1;flex-shrink:0;color:var(--gray-700, #374151)}.opt-card-label{font-size:.75rem;font-weight:600;color:var(--gray-500, #6b7280);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.05em}.opt-card-value{font-size:1.75rem;font-weight:700;color:var(--gray-900, #111827);line-height:1.2;margin-bottom:.25rem}.opt-card-value.success{color:var(--success-600, #059669)}.opt-card-sublabel{font-size:.8125rem;color:var(--gray-500, #6b7280);line-height:1.4}.savings-timeline-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.section-header{margin-bottom:1.5rem}.section-header h2{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.timeline-chart-container{margin-top:1.5rem}.chart-legend{display:flex;gap:2rem;margin-bottom:1rem;justify-content:center}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#6b7280}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.projected{background:var(--chart-projected, #93c5fd)}.legend-color.actual{background:var(--chart-actual, #10b981)}.timeline-chart{display:flex;align-items:flex-end;gap:1rem;height:250px;padding:1rem;border-bottom:2px solid #e5e7eb}.timeline-bar-group{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;position:relative}.timeline-bars{display:flex;gap:4px;align-items:flex-end;height:200px;width:100%;justify-content:center}.timeline-bar{width:20px;border-radius:4px 4px 0 0;transition:all .3s;cursor:pointer}.timeline-bar:hover{opacity:.8}.timeline-bar.projected{background:var(--chart-projected, #93c5fd)}.timeline-bar.actual{background:var(--chart-actual, #10b981)}.timeline-label{font-size:.75rem;color:#6b7280;text-align:center}.timeline-badge{position:absolute;top:-20px;background:#3b82f6;color:#fff;font-size:.75rem;padding:2px 6px;border-radius:10px;font-weight:600}.timeline-summary{display:flex;justify-content:space-around;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.summary-stat{display:flex;flex-direction:column;align-items:center;gap:.25rem}.stat-label{font-size:.875rem;color:#6b7280}.stat-value{font-size:1.25rem;font-weight:700;color:#1f2937}.stat-value.success{color:#10b981}.stat-value.warning{color:#f59e0b}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.75rem;margin-bottom:2.5rem;width:100%;max-width:100%;box-sizing:border-box}.breakdown-grid-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin:.5rem 0 1rem}.breakdown-grid-header h2{font-size:1.25rem;font-weight:700;color:#0f172a;margin:0;display:inline-flex;align-items:center;gap:.5rem}.breakdown-grid-header p{margin:.25rem 0 0;font-size:.875rem;color:#64748b}.breakdown-tooltip{width:18px;height:18px;border-radius:999px;border:1px solid #cbd5f5;color:#4338ca;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#eef2ff}.savings-breakdown-widgets{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;margin-bottom:2rem}.breakdown-widget{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:1rem;box-shadow:0 1px 3px #0f172a14}.breakdown-widget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.breakdown-widget-title{display:inline-flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:#0f172a}.breakdown-widget-list{display:flex;flex-direction:column;gap:.75rem}.breakdown-widget-row{padding:.75rem;border-radius:10px;background:#f8fafc;border:1px solid #e2e8f0}.breakdown-widget-main{display:flex;justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.5rem}.breakdown-widget-name{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;color:#1f2937}.breakdown-widget-meta{font-size:.8125rem;color:#64748b}.breakdown-widget-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;margin-bottom:.5rem}.breakdown-widget-stats .label{display:block;font-size:.75rem;color:#94a3b8}.breakdown-widget-stats .value{font-size:.875rem;font-weight:600;color:#0f172a}.breakdown-widget-bar{height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.breakdown-widget-bar>div{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px}.breakdown-widget-icon{display:inline-flex;align-items:center;justify-content:center}.breakdown-priority{padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:capitalize;background:#e2e8f0;color:#1f2937}.breakdown-priority.high{background:#fee2e2;color:#b91c1c}.breakdown-priority.medium{background:#fef3c7;color:#b45309}.breakdown-priority.low{background:#dbeafe;color:#1d4ed8}.breakdown-card{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 1px 3px #0000001a;overflow:visible;width:100%;max-width:100%;box-sizing:border-box;position:relative;contain:layout style}.breakdown-card h3{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.breakdown-list{display:flex;flex-direction:column;gap:.75rem;width:100%;box-sizing:border-box}.breakdown-item{background:linear-gradient(135deg,#fff,#f9fafb);border:1px solid #e5e7eb;border-radius:10px;padding:.85rem;transition:all .2s ease;width:100%;max-width:100%;box-sizing:border-box;box-shadow:0 1px 2px #0000000d;position:relative;overflow:visible;display:flex;flex-direction:column;margin-bottom:0;isolation:isolate}.breakdown-item:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126;transform:translateY(-2px)}.breakdown-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #f3f4f6;width:100%;box-sizing:border-box;flex-shrink:0}.breakdown-item-title{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.breakdown-item-name{font-size:1rem;font-weight:700;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-item-badge{font-size:.8125rem;font-weight:600;color:#6b7280;background:#f3f4f6;padding:.375rem .75rem;border-radius:12px;white-space:nowrap;flex-shrink:0}.priority-dot-large{width:12px;height:12px;border-radius:50%;flex-shrink:0;display:inline-block}.breakdown-item-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1rem;width:100%;box-sizing:border-box}.breakdown-metric-item{display:flex;flex-direction:column;gap:.375rem;min-width:0}.breakdown-metric-item .metric-label{font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.breakdown-metric-item .metric-value{font-size:1rem;font-weight:700;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breakdown-metric-item .metric-value.success{color:#10b981}.breakdown-item-progress{width:100%;margin-top:.5rem;box-sizing:border-box;flex-shrink:0}.progress-bar-wrapper{display:flex;align-items:center;gap:1rem;width:100%;box-sizing:border-box}.progress-bar{flex:1;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;min-width:100px;max-width:100%;position:relative;width:100%;box-sizing:border-box}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:6px;transition:width .4s ease;box-sizing:border-box;display:block}.progress-percentage{font-size:.8125rem;font-weight:700;color:#6b7280;min-width:45px;text-align:right;white-space:nowrap;flex-shrink:0}.top-performers-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.top-performers-section h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem}.performers-list{display:flex;flex-direction:column;gap:1rem}.performer-card{display:flex;gap:1rem;padding:1.5rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s}.performer-card:hover{border-color:#10b981;box-shadow:0 2px 4px #10b9811a}.performer-rank{font-size:1.5rem;font-weight:700;color:#10b981;min-width:40px;text-align:center}.performer-content{flex:1}.performer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.performer-header h4{font-size:1.125rem;font-weight:600;color:#1f2937;margin:0}.performer-category{padding:.25rem .75rem;background:#dbeafe;color:#1e40af;border-radius:12px;font-size:.75rem;font-weight:600}.performer-type{font-size:.875rem;color:#6b7280;margin-bottom:1rem}.performer-metrics{display:flex;gap:2rem;margin-bottom:.75rem}.performer-metric{display:flex;flex-direction:column;gap:.25rem}.performer-dates{font-size:.75rem;color:#9ca3af}.recent-implementations-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a}.recent-implementations-section h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin-bottom:1.5rem}.implementations-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.implementation-card{display:flex;gap:1rem;padding:1.5rem;background:#fff;border-radius:8px;border:1px solid #e5e7eb;position:relative}.implementation-icon{font-size:1.5rem;color:var(--gray-700, #374151)}.implementation-content{flex:1}.implementation-content h4{font-size:1rem;font-weight:600;color:#1f2937;margin:0 0 .5rem}.implementation-category{font-size:.75rem;color:#6b7280;margin-bottom:.75rem}.implementation-savings{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.5rem}.savings-label{font-size:.75rem;color:#9ca3af}.savings-value{font-size:1.125rem;font-weight:700;color:#10b981}.implementation-date{font-size:.75rem;color:#9ca3af}.implementation-status{position:absolute;top:.5rem;right:.5rem;padding:.25rem .5rem;background:#fef3c7;color:#92400e;border-radius:4px;font-size:.625rem;font-weight:600}@media (max-width: 768px){.savings-metrics,.savings-breakdown-grid,.implementations-list{grid-template-columns:1fr}.performer-metrics{flex-direction:column;gap:.5rem}}@media (max-width: 1024px){.breakdown-card{padding:1.25rem}.breakdown-item-metrics{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.875rem}.breakdown-metric-item .metric-value{font-size:.9375rem}}@media (max-width: 768px){.breakdown-card{padding:1rem}.breakdown-card h3{font-size:1.125rem}.breakdown-item{padding:1rem}.breakdown-item-header{flex-direction:column;align-items:flex-start;gap:.5rem}.breakdown-item-metrics{grid-template-columns:1fr;gap:1rem}.progress-bar-wrapper{flex-direction:column;align-items:stretch;gap:.5rem}.progress-percentage{text-align:left}}.roi-v2-multi-currency{display:inline-flex;flex-wrap:wrap;gap:.5rem}.roi-v2-currency-chip{display:inline-flex;align-items:baseline;gap:.25rem;font-weight:600}.roi-v2-currency-chip small{font-size:.75rem;font-weight:500;color:#6b7280}.roi-v2-status-pill{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:600;text-transform:capitalize;letter-spacing:.02em;line-height:1.4}.roi-v2-composition-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem}.roi-v2-composition-table-wrapper{overflow-x:auto}.roi-v2-composition-table{width:100%;border-collapse:collapse;font-size:.875rem}.roi-v2-composition-table thead th{text-align:left;padding:.625rem .75rem;font-size:.75rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;white-space:nowrap}.roi-v2-composition-table tbody td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#1f2937;vertical-align:middle}.roi-v2-composition-row:hover{background:#f9fafb}.roi-v2-module-cell{display:flex;align-items:center;gap:.5rem;font-weight:600}.roi-v2-included-pill{display:inline-block;padding:.125rem .5rem;border-radius:999px;font-size:.6875rem;font-weight:700}.roi-v2-included-pill.yes{background:#d1fae5;color:#065f46}.roi-v2-included-pill.no{background:#fef3c7;color:#92400e}.roi-v2-notes-cell{display:flex;align-items:center;gap:.5rem}.roi-v2-note-tag{display:inline-block;padding:.125rem .5rem;background:#f3f4f6;color:#6b7280;border-radius:4px;font-size:.75rem;font-weight:500;font-style:italic}.roi-v2-note-tag.small{font-size:.6875rem;padding:.1rem .375rem}.roi-v2-tooltip-trigger{color:#9ca3af;cursor:help;display:inline-flex}.roi-v2-tooltip-trigger:hover{color:#6b7280}.roi-v2-overlap-note{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem 1rem;margin-top:1rem;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;font-size:.8125rem;color:#92400e;line-height:1.5}.mod-icon-mono{color:#374151}.roi-v2-drilldown-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem;overflow:hidden}.roi-v2-drilldown-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem 0}.roi-v2-drilldown-title{display:flex;align-items:center;gap:.5rem;color:#374151}.roi-v2-drilldown-title h2{font-size:1.0625rem;font-weight:700;color:#111827;margin:0}.roi-v2-tab-bar{display:flex;border-bottom:2px solid #e5e7eb;padding:0 1rem;overflow-x:auto}.roi-v2-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.75rem 1.25rem;border:none;border-bottom:3px solid transparent;background:none;font-size:.875rem;font-weight:600;color:#6b7280;cursor:pointer;white-space:nowrap;transition:all .15s;margin-bottom:-2px}.roi-v2-tab:hover{color:#1f2937;background:#f9fafb}.roi-v2-tab.active{color:#111827;border-bottom-color:#111827}.roi-v2-tab-content{padding:1.5rem}.roi-v2-module-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.roi-v2-module-card{border:1px solid #e5e7eb;border-radius:10px;padding:1.25rem;background:#fafbfc;transition:all .2s}.roi-v2-module-card:hover{border-color:#d1d5db;box-shadow:0 2px 8px #0000000f;transform:translateY(-1px)}.roi-v2-module-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.roi-v2-module-card-title{font-weight:700;color:#1f2937;font-size:.9375rem}.roi-v2-module-card-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}.roi-v2-metric{display:flex;flex-direction:column;gap:.25rem}.roi-v2-metric-label{font-size:.6875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.roi-v2-metric-value{font-size:1rem;font-weight:700;color:#1f2937}.roi-v2-metric-value.success{color:#059669}.roi-v2-module-card-counts{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.8125rem;color:#374151;font-weight:600}.roi-v2-module-card-counts span{display:inline-flex;align-items:center;gap:.25rem}.roi-v2-module-detail{padding:0}.roi-v2-module-detail-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1.5rem}.roi-v2-module-detail-header h3{font-size:1.125rem;font-weight:700;color:#1f2937;margin:0}.roi-v2-module-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1rem}.roi-v2-detail-metric-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;display:flex;flex-direction:column;gap:.375rem}.roi-v2-detail-metric-card .label{font-size:.6875rem;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.roi-v2-detail-metric-card .value{font-size:1.25rem;font-weight:700;color:#1f2937}.roi-v2-detail-metric-card .value.success{color:#059669}.roi-v2-module-footer-note{font-size:.8125rem;color:#6b7280;font-style:italic;margin-top:1rem;padding-top:.75rem;border-top:1px solid #f3f4f6}.roi-v2-efficiency-section{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem}.roi-v2-efficiency-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.roi-v2-efficiency-card{background:linear-gradient(135deg,#ecfdf5,#f0fdfa);border:1px solid #a7f3d0;border-radius:10px;padding:1.25rem}.roi-v2-efficiency-label{font-size:.75rem;font-weight:600;color:#065f46;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.roi-v2-efficiency-value{font-size:1.5rem;font-weight:700;color:#047857;margin-bottom:.25rem}.roi-v2-efficiency-sublabel{font-size:.8125rem;color:#6b7280}.roi-v2-empty-state{text-align:center;padding:3rem 1.5rem;color:#6b7280}.roi-v2-empty-state p{margin:.5rem 0}.roi-v2-empty-hint{font-size:.8125rem;color:#9ca3af}.roi-v2-error{text-align:center;padding:3rem 1.5rem;color:#dc2626;display:flex;flex-direction:column;align-items:center;gap:1rem}.roi-v2-error button{padding:.5rem 1.5rem;border:1px solid #dc2626;border-radius:6px;background:#fff;color:#dc2626;font-weight:600;cursor:pointer;transition:all .15s}.roi-v2-error button:hover{background:#fef2f2}.roi-v2-charts-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.roi-v2-chart-half{min-width:0;margin-bottom:0;padding:1.25rem}.roi-v2-chart-half.sbs-panel{padding:0}.roi-v2-chart-half.sbs-panel .module-timeline-chart-wrapper{padding:0 1.25rem}.roi-v2-chart-half .section-header{margin-bottom:.75rem}.roi-v2-chart-half .section-header h2{font-size:.95rem}.roi-v2-chart-half .line-chart-wrapper,.module-timeline-chart-wrapper{padding:.25rem 0}.module-timeline-chart-wrapper .chart-legend{display:flex;flex-wrap:wrap;gap:.75rem;padding:0 .25rem}.module-timeline-chart-wrapper .legend-item{display:flex;align-items:center;gap:.3rem;font-size:.75rem;color:#4b5563}.module-timeline-chart-wrapper .legend-color{width:10px;height:10px;border-radius:3px;display:inline-block}.sbs-panel{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;display:flex;flex-direction:column}.sbs-header{display:flex;flex-direction:column;gap:.25rem;padding:1.25rem 1.5rem .75rem}.sbs-title{display:flex;align-items:center;gap:.5rem;color:#374151}.sbs-title h2{font-size:1.0625rem;font-weight:700;color:#111827;margin:0}.sbs-subtitle{font-size:.75rem;color:#9ca3af;font-weight:500;padding-left:1.75rem}.sbs-summary{padding:1rem 1.5rem 1.25rem;border-top:1px solid #f3f4f6}.sbs-summary-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.75rem}.sbs-summary-label{font-size:.6875rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.sbs-summary-total{font-size:.875rem;font-weight:700;color:#111827}.sbs-summary-bars{display:flex;flex-direction:column;gap:.5rem}.sbs-module-row{display:grid;grid-template-columns:56px 1fr auto auto;gap:.625rem;align-items:center}.sbs-module-name{font-size:.75rem;font-weight:600;color:#6b7280;white-space:nowrap}.sbs-module-bar-track{height:6px;background:#f3f4f6;border-radius:999px;overflow:hidden}.sbs-module-bar-fill{height:100%;background:#374151;border-radius:999px;transition:width .3s ease}.sbs-module-value{font-size:.75rem;font-weight:700;color:#1f2937;min-width:64px;text-align:right}.sbs-module-pct{font-size:.6875rem;font-weight:600;color:#9ca3af;min-width:38px;text-align:right}.roi-v2-chart-half .savings-timeline-chart-wrapper .chart-legend{gap:.75rem}.roi-v2-chart-half .savings-timeline-chart-wrapper .legend-item{font-size:.75rem}.roi-v2-chart-half .savings-timeline-chart-wrapper .timeline-summary{gap:.75rem}.roi-v2-chart-half .savings-timeline-chart-wrapper .timeline-summary .stat-label,.roi-v2-chart-half .savings-timeline-chart-wrapper .timeline-summary .stat-value{font-size:.8rem}.opt-card-tip{display:inline-flex;align-items:center;margin-left:.375rem;color:#9ca3af;cursor:help;vertical-align:middle;transition:color .15s}.opt-card-tip:hover{color:#6b7280}.scenario-selector-row{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem}.scenario-selector{display:inline-flex;border:1px solid #d1d5db;border-radius:8px;overflow:hidden;background:#f9fafb}.scenario-btn{padding:.375rem .875rem;border:none;background:transparent;font-size:.8125rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap;position:relative}.scenario-btn:not(:last-child):after{content:"";position:absolute;right:0;top:20%;height:60%;width:1px;background:#d1d5db}.scenario-btn:hover{color:#374151;background:#f3f4f6}.scenario-btn.active{background:#1f2937;color:#fff}.scenario-btn.active:after{display:none}.scenario-info-trigger{color:#9ca3af;cursor:help;display:inline-flex;transition:color .15s}.scenario-info-trigger:hover{color:#6b7280}.delta-indicator{font-size:.75rem;font-weight:600;margin-top:.125rem;margin-bottom:.125rem;line-height:1.4}.delta-indicator.positive{color:#059669}.delta-indicator.negative{color:#dc2626}.sb-panel{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem;overflow:hidden}.sb-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #f3f4f6;gap:1rem;flex-wrap:wrap}.sb-header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.sb-title{display:flex;align-items:center;gap:.5rem;color:#374151}.sb-title h2{font-size:1.0625rem;font-weight:700;color:#111827;margin:0}.sb-facet-tabs{display:inline-flex;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#f9fafb}.sb-facet-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem .875rem;border:none;background:transparent;font-size:.8125rem;font-weight:600;color:#6b7280;cursor:pointer;transition:all .15s ease;white-space:nowrap;position:relative}.sb-facet-btn:not(:last-child):after{content:"";position:absolute;right:0;top:20%;height:60%;width:1px;background:#e5e7eb}.sb-facet-btn:hover{color:#374151;background:#f3f4f6}.sb-facet-btn.active{background:#1f2937;color:#fff}.sb-facet-btn.active:after{display:none}.sb-empty{padding:3rem 1.5rem;text-align:center;color:#9ca3af;font-size:.875rem}.sb-table-head{display:grid;grid-template-columns:minmax(140px,1.5fr) minmax(160px,2fr) minmax(90px,1fr) minmax(90px,1fr) minmax(110px,1fr);gap:.75rem;padding:.75rem 1.5rem;background:#f9fafb;border-bottom:1px solid #f3f4f6}.sb-table-head span{font-size:.6875rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.sb-table-head .sb-col-potential,.sb-table-head .sb-col-actual{text-align:right}.sb-table-head .sb-col-impl{text-align:center}.sb-rows{padding:0}.sb-row{display:grid;grid-template-columns:minmax(140px,1.5fr) minmax(160px,2fr) minmax(90px,1fr) minmax(90px,1fr) minmax(110px,1fr);gap:.75rem;padding:.875rem 1.5rem;align-items:center;border-bottom:1px solid #f8f9fa;transition:background .12s ease}.sb-row:last-child{border-bottom:none}.sb-row:hover{background:#f9fafb}.sb-col-name{display:flex;align-items:center;gap:.625rem;min-width:0}.sb-row-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px}.sb-row-label{font-size:.875rem;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sb-priority-badge{display:inline-block;padding:.1875rem .625rem;border-radius:999px;font-size:.75rem;font-weight:700;text-transform:capitalize;letter-spacing:.02em}.sb-priority-badge.high{background:#fef2f2;color:#b91c1c}.sb-priority-badge.medium{background:#fffbeb;color:#b45309}.sb-priority-badge.low{background:#eff6ff;color:#1d4ed8}.sb-col-bar{display:flex;align-items:center;gap:.625rem}.sb-bar-container{flex:1;height:8px;background:#f3f4f6;border-radius:999px;overflow:hidden}.sb-bar-track{height:100%;background:#e5e7eb;border-radius:999px;overflow:hidden;transition:width .3s ease}.sb-bar-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;transition:width .3s ease}.sb-bar-pct{font-size:.75rem;font-weight:700;color:#374151;min-width:36px;text-align:right}.sb-col-potential{font-size:.8125rem;font-weight:600;color:#6b7280;text-align:right}.sb-col-actual{font-size:.8125rem;font-weight:700;color:#059669;text-align:right}.sb-col-impl{display:flex;align-items:center;justify-content:center;gap:.5rem}.sb-impl-count{font-size:.8125rem;font-weight:600;color:#374151}.sb-impl-ring{position:relative;display:inline-flex;align-items:center;justify-content:center}.sb-impl-ring svg{display:block}.sb-impl-ring-label{position:absolute;font-size:.5rem;font-weight:800;color:#374151}.sb-footer{display:flex;align-items:center;gap:1.5rem;padding:.875rem 1.5rem;background:#f9fafb;border-top:2px solid #e5e7eb}.sb-footer-label{font-size:.8125rem;font-weight:800;color:#111827;text-transform:uppercase;letter-spacing:.05em;min-width:48px}.sb-footer-stat{display:flex;flex-direction:column;gap:.125rem}.sb-footer-meta{font-size:.625rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.sb-footer-value{font-size:.875rem;font-weight:700;color:#1f2937}.sb-footer-value.success{color:#059669}.tp-panel{background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem;overflow:hidden}.tp-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid #f3f4f6}.tp-title{display:flex;align-items:center;gap:.5rem;color:#d97706}.tp-title h2{font-size:1.0625rem;font-weight:700;color:#111827;margin:0}.tp-count{font-size:.75rem;font-weight:600;color:#6b7280;padding:.25rem .625rem;background:#f3f4f6;border-radius:999px}.tp-table-head{display:grid;grid-template-columns:40px minmax(180px,2.5fr) minmax(80px,1fr) minmax(80px,1fr) minmax(80px,1fr) minmax(80px,.8fr);gap:.5rem;padding:.75rem 1.5rem;background:#f9fafb;border-bottom:1px solid #f3f4f6}.tp-table-head span{font-size:.6875rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em}.tp-table-head .tp-col-num,.tp-table-head .tp-col-date{text-align:right}.tp-table-head .tp-col-rank{text-align:center}.tp-rows{padding:0}.tp-row{display:grid;grid-template-columns:40px minmax(180px,2.5fr) minmax(80px,1fr) minmax(80px,1fr) minmax(80px,1fr) minmax(80px,.8fr);gap:.5rem;padding:.875rem 1.5rem;align-items:center;border-bottom:1px solid #f8f9fa;transition:background .12s ease}.tp-row:last-child{border-bottom:none}.tp-row:hover{background:#fafbfc}.tp-col-rank{text-align:center}.tp-rank-badge{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:8px;font-size:.75rem;font-weight:800;background:#f3f4f6;color:#6b7280}.tp-rank-badge.top{background:#fef3c7;color:#b45309}.tp-col-name{min-width:0}.tp-rec-main{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tp-rec-title{font-size:.875rem;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}.tp-rec-category{display:inline-block;padding:.125rem .5rem;background:#eff6ff;color:#1d4ed8;border-radius:999px;font-size:.6875rem;font-weight:600;white-space:nowrap}.tp-rec-sub{font-size:.75rem;color:#9ca3af;margin-top:.125rem}.tp-col-num{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.tp-val-primary{font-size:.875rem;font-weight:700;color:#059669}.tp-val-secondary{font-size:.875rem;font-weight:600;color:#374151}.tp-val-unit{font-size:.625rem;color:#9ca3af;font-weight:600}.tp-variance{font-size:.8125rem;font-weight:700}.tp-variance.positive{color:#059669}.tp-variance.negative{color:#dc2626}.tp-accuracy-bar{width:48px;height:4px;background:#f3f4f6;border-radius:999px;overflow:hidden;margin-top:.25rem}.tp-accuracy-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;transition:width .3s ease}.tp-col-date{text-align:right;font-size:.75rem;font-weight:500;color:#6b7280}@media (max-width: 1024px){.roi-v2-charts-row{grid-template-columns:1fr}.sb-table-head,.sb-row{grid-template-columns:minmax(110px,1.4fr) minmax(120px,1.8fr) minmax(80px,1fr) minmax(80px,1fr) minmax(90px,1fr);gap:.5rem;padding-left:1rem;padding-right:1rem}}@media (max-width: 768px){.roi-v2-composition-table{font-size:.8125rem}.roi-v2-tab{padding:.625rem .75rem;font-size:.8125rem}.roi-v2-module-detail-grid{grid-template-columns:repeat(2,1fr)}.roi-v2-module-cards{grid-template-columns:1fr}.sb-header{flex-direction:column;align-items:flex-start}.sb-table-head{display:none}.sb-row{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem}.sb-col-name{flex:1 1 100%}.sb-col-bar{flex:1 1 100%;order:5}.sb-col-potential,.sb-col-actual{flex:1;text-align:left}.sb-col-impl{justify-content:flex-start}.sb-footer{flex-wrap:wrap;gap:1rem}.tp-table-head{display:none}.tp-row{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem 1.25rem}.tp-col-rank{flex:0 0 30px}.tp-col-name{flex:1 1 calc(100% - 40px)}.tp-col-num{flex:1;text-align:left;align-items:flex-start}.tp-col-date{flex:1;text-align:left}}.sp-view-plan-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#374151;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s;white-space:nowrap}.sp-view-plan-btn:hover{background:#f3f4f6;border-color:#9ca3af;color:#111827}.commitment-advisor{padding:.75rem}.commitment-advisor .advisor-header{display:block;margin-bottom:12px;background:transparent;border:none;border-radius:0;padding:0}.header-title-row{display:flex;align-items:center;gap:1rem;margin-bottom:.25rem}.commitment-advisor .advisor-header h1{font-size:1.5rem;margin:0;color:var(--gray-900);font-weight:700}.header-subtitle{color:var(--gray-500);font-size:.9375rem;margin:0;line-height:1.5}.commitment-tooltip{margin-left:8px;width:18px;height:18px;border-radius:999px;border:1px solid #cbd5f5;color:#4338ca;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#eef2ff;vertical-align:middle}.gradient-text{color:var(--text-primary);font-weight:500}.upgrade-prompt{text-align:center;padding:60px 20px;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--accent-teal) 100%);border-radius:12px;color:#fff}.upgrade-icon{font-size:64px;margin-bottom:20px}.upgrade-prompt h2{font-size:32px;margin-bottom:16px;color:#fff}.upgrade-prompt p{font-size:18px;margin-bottom:12px;opacity:.95;color:#fff}.upgrade-button{margin-top:24px;padding:14px 32px;font-size:16px;font-weight:600;background:#fff;color:var(--primary-blue);border:none;border-radius:8px;cursor:pointer;transition:all .2s}.upgrade-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003;background:#fffffff2}.commitment-advisor .savings-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem;margin-top:0;margin-bottom:1rem;clear:both}.commitment-advisor .summary-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:.65rem .85rem;display:flex;flex-direction:row;align-items:center;gap:.6rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.commitment-advisor .summary-card:hover{box-shadow:var(--shadow-md)}.commitment-advisor .summary-card .card-icon{display:inline-flex;align-items:center;justify-content:center;font-size:1rem;color:var(--gray-500);line-height:1;background:transparent;width:auto;height:auto;border-radius:0;padding:0;margin-bottom:0;flex-shrink:0}.commitment-advisor .summary-card .card-content{flex:1;min-width:0}.commitment-advisor .summary-card .card-label{font-size:.7rem;font-weight:700;color:var(--gray-500);margin-bottom:.1rem;text-transform:uppercase;letter-spacing:.02em}.commitment-advisor .summary-card .card-value{font-size:1.1rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.05rem}.commitment-advisor .summary-card .card-sublabel{font-size:.7rem;color:var(--gray-600);line-height:1.3}.commitment-advisor .summary-card.potential,.commitment-advisor .summary-card.realized,.commitment-advisor .summary-card.recommendations{border-left:none}.advisor-tabs{display:flex;gap:.5rem;margin-bottom:1.25rem;border-bottom:2px solid var(--gray-200);padding-bottom:0;clear:both}.advisor-tabs .tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:.9375rem;font-weight:500;color:var(--gray-500);transition:all .2s ease;position:relative;bottom:-2px}.advisor-tabs .tab:hover{color:var(--gray-800);background:var(--gray-50)}.advisor-tabs .tab.active{color:var(--primary-400);border-bottom-color:var(--primary-400);background:transparent}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.provider-filter{padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;background:#fff;cursor:pointer}.generate-button{padding:.625rem 1.25rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.generate-button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.recommendations-list{display:grid;gap:.75rem}.recommendation-card{background:#fff;border-radius:var(--radius-lg);padding:1.25rem;border:1px solid var(--gray-200);border-left:4px solid var(--gray-200);box-shadow:var(--shadow-sm);transition:all .2s ease}.recommendation-card:hover{border-color:var(--gray-200);box-shadow:var(--shadow-sm)}.recommendation-card.confidence-high,.recommendation-card.confidence-medium,.recommendation-card.confidence-low{border-left-color:var(--gray-200)}.assistant-tab{display:grid;gap:1.5rem;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;margin-top:.75rem}.assistant-panel{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;width:100%;max-width:560px;justify-self:center}.rec-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.75rem}.rec-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.provider-logo-container{display:flex;align-items:center;gap:8px;padding:0;background:transparent;border:0;border-radius:0}.provider-name{font-size:12px;font-weight:600;color:#374151}.provider-badge{padding:4px 12px;background:#14b8a6;color:#fff;border-radius:6px;font-size:12px;font-weight:600}.service-name{font-size:18px;font-weight:600;color:#1a1a1a}.instance-type{font-size:14px;color:#666;background:#f3f4f6;padding:4px 10px;border-radius:6px}.confidence-badge{padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500;text-transform:capitalize;background:#f8fafc;border:1px solid #e2e8f0}.confidence-badge.high{background:#f8fafc;color:#15803d}.confidence-badge.medium{background:#f8fafc;color:#b45309}.confidence-badge.low{background:#f8fafc;color:#b91c1c}.rec-body{margin-bottom:20px;padding-top:4px}.rec-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem}.metric{text-align:center;padding:.75rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md)}.metric-label{font-size:.75rem;font-weight:700;color:var(--gray-600);margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.02em}.metric-value{font-size:1.25rem;font-weight:800;color:var(--gray-900)}.metric-value.savings,.metric-value.roi{color:var(--gray-900)}.rec-details{background:#f9fafb;padding:16px;border-radius:8px;margin-bottom:16px}.detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e5e7eb}.detail-row:last-child{border-bottom:none}.detail-row span:first-child{color:#666;font-size:14px}.detail-row span:last-child{font-weight:600;color:#1a1a1a;font-size:14px}.risk-factors{background:#f8fafc;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0}.risk-label{font-weight:600;color:#64748b;margin-bottom:8px;font-size:14px}.risk-factors ul{margin:0;padding-left:20px}.risk-factors li{color:#94a3b8;font-size:13px;margin-bottom:4px}.rec-actions{display:flex;gap:12px;justify-content:flex-end}.accept-button,.reject-button{padding:10px 24px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.accept-button{background:#10b981;color:#fff}.accept-button:hover{background:#059669}.reject-button{background:#f3f4f6;color:#666}.reject-button:hover{background:#e5e7eb;color:#1a1a1a}.commitments-list{display:grid;gap:.75rem}.commitment-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm)}.commitment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;flex-wrap:wrap;gap:.75rem}.commitment-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.utilization-badge{padding:6px 14px;border-radius:20px;font-size:13px;font-weight:500}.utilization-badge.good{background:#d1fae5;color:#065f46}.utilization-badge.warning{background:#fef3c7;color:#92400e}.commitment-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:16px}.renewal-alert{display:inline-flex;align-items:center;gap:.35rem;background:#fef3c7;padding:12px 16px;border-radius:8px;border-left:3px solid #f59e0b;color:#92400e;font-size:14px;font-weight:500}.empty-state{text-align:center;padding:18px;border:1px dashed var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);color:var(--gray-600)}.empty-state p{color:var(--gray-600);font-size:.875rem;margin-bottom:.75rem}.empty-state button{padding:.5rem 1rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;box-shadow:var(--shadow-sm);transition:all .2s}.empty-state button:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.loading{text-align:center;padding:18px;color:var(--gray-600);font-size:.875rem}.action-bar{display:flex;gap:.75rem;margin-top:0;margin-bottom:1rem;padding-bottom:0;flex-wrap:wrap;align-items:center}.commitment-advisor .action-btn{padding:.5rem 1rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.375rem;box-shadow:var(--shadow-sm);white-space:nowrap}.commitment-advisor .action-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.commitment-advisor .action-btn:active{transform:translateY(0)}.commitment-advisor .action-btn svg{width:18px;height:18px;flex-shrink:0}.commitment-advisor .action-btn.ai-chat-btn{background:linear-gradient(135deg,#1e3a5f,#14b8a6)}.commitment-advisor .action-btn.ai-chat-btn:hover{box-shadow:var(--shadow-md)}.commitment-advisor .action-btn.ai-chat-btn .ai-sparkle-icon{width:18px;height:18px;opacity:.95}.compare-button{padding:10px 20px;background:#f3f4f6;color:#1a1a1a;border:1px solid #d1d5db;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.compare-button:hover{background:#e5e7eb;border-color:#9ca3af}.insights-section{padding:0}.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.insight-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);border-left:none}.insight-card h3{font-size:1.05rem;font-weight:700;margin-bottom:.5rem;color:var(--gray-900)}.insight-card p{font-size:.875rem;color:var(--gray-600);line-height:1.6;margin-bottom:.5rem}.trend-indicator{display:inline-block;padding:6px 12px;background:#f3f4f6;border-radius:6px;font-size:13px;font-weight:600;color:#1a1a1a}.trend-indicator.positive{background:#d1fae5;color:#065f46}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.ai-chat-modal,.comparison-modal,.calculator-modal{background:#fff;border-radius:12px;max-width:700px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;border:1px solid #e5e7eb;overflow:hidden}.comparison-modal{max-width:1000px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb;background:#fff;flex-shrink:0}.modal-title{display:flex;align-items:center;gap:.75rem}.modal-title .ai-sparkle-icon{width:20px;height:20px;opacity:.7}.modal-header h2{font-size:1.25rem;margin:0;color:#1f2937;font-weight:600}.close-btn{background:transparent;border:none;color:#6b7280;cursor:pointer;padding:.5rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.close-btn:hover{background:#f3f4f6;color:#374151}.chat-messages{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;background:#fff;min-height:0}.chat-welcome{text-align:center;padding:2rem 1.25rem}.chat-welcome h3{font-size:1.125rem;color:#1f2937;margin:1rem 0 1.5rem;font-weight:600}.chat-welcome .ai-sparkle-icon{width:32px;height:32px;opacity:.7;margin-bottom:.5rem}.suggested-questions{display:flex;flex-direction:column;gap:.5rem;max-width:420px;margin:0 auto}.suggested-questions button{padding:.625rem .875rem;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;text-align:left;color:var(--gray-700)}.suggested-questions button:hover{background:var(--gray-50);border-color:var(--primary-300);color:var(--gray-900);box-shadow:var(--shadow-sm)}.chat-message{display:flex;gap:12px;align-items:flex-start}.chat-message.user{flex-direction:row-reverse}.chat-message.user .message-content{background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;margin-left:auto}.chat-message.assistant .message-content{background:var(--gray-50);color:var(--gray-900);border:1px solid var(--gray-200)}.message-content{padding:.75rem 1rem;border-radius:8px;max-width:75%;font-size:.875rem;line-height:1.6;word-wrap:break-word}.message-content.typing{animation:pulse 1.5s ease-in-out infinite}.chat-input-container{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--gray-200);background:var(--gray-50);flex-shrink:0}.chat-input-container input{flex:1;padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;background:#fff;color:var(--gray-900);transition:all .2s ease}.chat-input-container input:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #3b82f61a}.chat-input-container button{padding:.5rem 1rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;box-shadow:var(--shadow-sm)}.chat-input-container button:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-md)}.chat-input-container button:disabled{opacity:.5;cursor:not-allowed;transform:none}.comparison-modal{max-width:1200px}.comparison-info{padding:16px 24px;background:var(--bg-secondary, #f9fafb);border-bottom:1px solid var(--border-color, #e5e7eb);display:flex;gap:12px;align-items:center}.comparison-grid{padding:24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;overflow-y:auto;max-height:calc(90vh - 200px);background:var(--bg-primary, white)}.scenario-card{background:var(--bg-secondary, #f9fafb);border-radius:12px;padding:20px;border:2px solid var(--border-color, #e5e7eb);transition:all .2s}.scenario-card:hover{border-color:var(--accent-teal, #14b8a6);box-shadow:0 4px 12px #14b8a633;transform:translateY(-2px)}.scenario-header{margin-bottom:16px}.scenario-header h3{font-size:16px;margin-bottom:8px;color:var(--text-primary, #1a1a1a);font-weight:600}.payment-badge{display:inline-block;padding:4px 10px;background:var(--accent-teal, #14b8a6);color:#fff;border-radius:6px;font-size:12px;font-weight:500;text-transform:capitalize}.scenario-metrics{display:flex;flex-direction:column;gap:10px}.metric-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-color, #e5e7eb);font-size:14px;color:var(--text-secondary, #666)}.metric-row:last-child{border-bottom:none}.metric-row.highlight{background:#d1fae5;padding:10px 12px;border-radius:6px;margin-top:8px;font-weight:600;color:#065f46}.metric-row .value{font-weight:600;color:var(--text-primary, #1a1a1a)}.calculator-content{padding:1.25rem;overflow-y:auto;background:#fff;display:flex;flex-direction:column;gap:1rem;flex:1;min-height:0}.calculator-intro-box{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:.75rem 1rem;margin-bottom:0}.calculator-intro{text-align:center;color:var(--gray-700);margin:0 0 .5rem;font-size:.875rem;font-weight:500}.provider-terminology{display:flex;align-items:center;justify-content:center;gap:.4rem;padding:.4rem .75rem;background:#fff;border-radius:var(--radius-md);border:1px solid var(--gray-200)}.terminology-icon{font-size:.875rem;color:var(--gray-500)}.terminology-text{font-size:.8rem;color:var(--gray-600);font-weight:500}.provider-context{margin-top:4px}.provider-badge-small{display:inline-block;padding:3px 10px;background:#ffffff40;color:#fff;border-radius:12px;font-size:11px;font-weight:600;letter-spacing:.5px;border:1px solid rgba(255,255,255,.3)}.provider-badge-small.multi{background:#fff3}.calculator-form{background:var(--gray-50);padding:1rem;border-radius:var(--radius-lg);margin-bottom:0;border:1px solid var(--gray-200)}.form-group label{display:block;font-size:.75rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.02em;margin-bottom:.35rem}.form-group input,.form-group select{width:100%;padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;background:#fff;color:var(--gray-900)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-400);box-shadow:0 0 0 3px #3b82f61a}.field-hint{margin-top:.35rem;font-size:.75rem;color:var(--gray-500);font-style:italic}.provider-note{display:flex;align-items:flex-start;gap:.5rem;padding:.625rem .875rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);margin-bottom:.75rem}.note-icon{font-size:1rem;flex-shrink:0;color:var(--gray-500)}.note-text{font-size:.8rem;color:var(--gray-600);line-height:1.5;font-weight:500}.calculate-btn{width:100%;padding:.5rem 1rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-sm)}.calculate-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.calculator-results{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm)}.calculator-results h3{font-size:1.05rem;font-weight:700;margin-bottom:.75rem;color:var(--gray-900);text-align:center}.result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.result-item{text-align:center;padding:.65rem;background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--gray-200)}.result-label{font-size:.7rem;font-weight:700;color:var(--gray-500);margin-bottom:.2rem;text-transform:uppercase;letter-spacing:.02em}.result-value{font-size:1.1rem;font-weight:800;color:var(--gray-900)}.provider-specific-note{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);margin-top:.75rem}.provider-specific-note .note-icon{font-size:1rem;flex-shrink:0}.provider-specific-note .note-text{font-size:.8rem;color:var(--gray-600);line-height:1.5;font-weight:500}@media (max-width: 768px){.commitment-advisor .advisor-header h1{font-size:24px}.savings-summary{grid-template-columns:1fr}.rec-metrics,.commitment-metrics{grid-template-columns:repeat(2,1fr)}.section-header{flex-direction:column;align-items:stretch}.rec-actions{flex-direction:column}.accept-button,.reject-button,.compare-button{width:100%}.comparison-grid,.result-grid{grid-template-columns:1fr}.action-bar{flex-direction:column}.action-btn{width:100%;justify-content:center}.ai-chat-modal,.comparison-modal,.calculator-modal{max-width:calc(100vw - 2rem);max-height:90vh}.modal-header{padding:1.25rem}.modal-header h2{font-size:1.125rem}.chat-messages{padding:1.25rem}.chat-input-container{padding:1rem 1.25rem;flex-direction:column}.chat-input-container button{width:100%}}.commitment-card{position:relative;border-left:4px solid transparent;transition:all .2s}.commitment-card.data-source-api{border-left-color:#10b981}.commitment-card.data-source-manual{border-left-color:#f59e0b}.data-source-legend{display:flex;gap:24px;padding:12px 16px;background:#f9fafb;border-radius:8px;margin-bottom:20px;font-size:14px;border:1px solid #e5e7eb}.legend-item{display:flex;align-items:center;gap:8px;color:#6b7280}.legend-icon{font-size:16px}.legend-icon.api{color:#10b981}.legend-icon.manual{color:#f59e0b}.commitment-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.data-source-badge{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.data-source-badge.api{background:#d1fae5;color:#065f46;border:1px solid #10b981}.data-source-badge.manual{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.data-source-badge .badge-icon{font-size:14px}.commitment-footer{margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb}.sync-info{display:flex;align-items:center;gap:8px;font-size:12px;flex-wrap:wrap}.sync-info.api{color:#065f46}.sync-info.manual{color:#92400e}.sync-info .sync-icon{font-size:14px}.commitment-id{padding:2px 8px;background:#f3f4f6;border-radius:4px;font-family:Courier New,monospace;font-size:11px;color:#6b7280;cursor:help}.empty-hint{font-size:14px;color:#6b7280;margin-top:8px}.card-breakdown{margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.1);display:flex;flex-direction:column;gap:6px}.breakdown-item{display:flex;align-items:center;gap:6px;font-size:12px}.breakdown-item.api{color:#065f46}.breakdown-item.manual{color:#92400e}.breakdown-icon{font-size:14px}.breakdown-text{font-weight:500}.provider-api-status{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:.75rem;box-shadow:var(--shadow-sm)}.status-header{margin-bottom:1rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.status-title{font-size:1.05rem;font-weight:700;color:var(--gray-900)}.status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem}.provider-status{padding:16px;border-radius:8px;border:2px solid #e5e7eb;transition:all .2s}.provider-status:hover{box-shadow:0 2px 8px #0000001a}.provider-status.integrated{border-color:#10b981;background:#f0fdf4}.provider-status.pending{border-color:#f59e0b;background:#fffbeb}.provider-status.manual{border-color:#6b7280;background:#f9fafb}.provider-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.provider-name{font-weight:600;font-size:14px;color:#111827}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.integrated{background:#d1fae5;color:#065f46;border:1px solid #10b981}.status-badge.pending{background:#fef3c7;color:#92400e;border:1px solid #f59e0b}.status-badge.manual{background:#f3f4f6;color:#374151;border:1px solid #9ca3af}.provider-details{font-size:13px;color:#6b7280;line-height:1.5}.recommendation-filters{display:flex;gap:16px;margin-bottom:16px}.recommendation-filters .filter-group{display:flex;flex-direction:column;gap:6px}.recommendation-filters label{font-size:12px;font-weight:600;color:#374151}.recommendation-filters select{padding:8px 10px;border-radius:8px;border:1px solid #d1d5db;font-size:13px}.rec-badges{display:flex;align-items:center;gap:8px}.rec-badges .status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.ready-to-implement-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;margin-bottom:16px;border-radius:10px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;font-size:14px}.action-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.action-btn{padding:.5rem 1rem;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.375rem}.action-btn.secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.action-btn.secondary:hover:not(:disabled){background:#e5e7eb;color:#111827;border-color:#9ca3af}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-btn.accept:hover:not(:disabled){background:#10b981;color:#fff}.action-btn.implement:hover:not(:disabled){background:#3b82f6;color:#fff}.action-btn.reject:hover:not(:disabled){background:#ef4444;color:#fff}.dismiss-modal{background:#fff;border-radius:12px;width:420px;padding:20px;box-shadow:0 20px 40px #00000026}.dismiss-modal .modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dismiss-modal .modal-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.dismiss-modal .modal-field label{font-size:12px;font-weight:600;color:#374151}.dismiss-modal select,.dismiss-modal input{padding:8px 10px;border-radius:8px;border:1px solid #d1d5db;font-size:13px}.dismiss-modal .modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.dismiss-modal .cancel-btn{background:#f3f4f6;color:#374151}.dismiss-modal .confirm-btn{background:#ef4444;color:#fff}.commitment-advisor .recommendation-card{background:#fff;border-color:var(--gray-200);border-left-color:var(--gray-200);box-shadow:var(--shadow-sm)}.commitment-advisor .recommendation-card:hover{border-color:var(--gray-200);box-shadow:var(--shadow-sm)}.commitment-advisor .recommendation-card.confidence-high,.commitment-advisor .recommendation-card.confidence-medium,.commitment-advisor .recommendation-card.confidence-low{border-left-color:var(--gray-200)}.commitment-advisor .recommendation-card .metric{background:#f8fafc;border:1px solid #e2e8f0}.commitment-advisor .recommendation-card .status-badge{background:#f1f5f9!important;color:#64748b!important;border:1px solid #e2e8f0!important}.status-toggle{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--gray-200);background:#fff;color:var(--gray-600);padding:.25rem .5rem;border-radius:var(--radius-sm, 6px);font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.status-toggle:hover{background:var(--gray-50);border-color:var(--gray-300, #cbd5e1)}.assistant-panel .modal-header{padding:.75rem 1rem;border-bottom:1px solid var(--gray-200)}.assistant-panel .modal-title h2{margin:0;font-size:1.05rem;font-weight:700;color:var(--gray-900)}@media (max-width: 768px){.status-grid,.assistant-tab{grid-template-columns:1fr}.card-breakdown{font-size:11px}}.provider-filter-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .55rem;background:var(--gray-50);color:var(--gray-700);border:1px solid var(--gray-200);border-radius:999px;font-size:.72rem;font-weight:700;margin-left:.5rem}.filter-note{color:var(--gray-600);font-weight:500}.topology-container{padding:1rem;background:var(--bg-primary)}.topology-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.topology-title-section{flex:1}.topology-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.topology-info{font-size:.875rem;color:var(--text-secondary);margin:0}.topology-controls{display:flex;gap:1rem;align-items:center}.topology-controls select{padding:.5rem 1rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-size:.875rem;cursor:pointer}.topology-view{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;min-height:600px;overflow-x:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;align-items:start}@media (max-width: 1400px){.topology-view{grid-template-columns:1fr}}.region-container{border:2px solid var(--primary-color);border-radius:var(--radius-lg);padding:1rem;margin-bottom:1.5rem;background:linear-gradient(135deg,#3b82f60d,#10b9810d)}.vpcs-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (max-width: 1400px){.vpcs-grid{grid-template-columns:1fr}}.region-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-color)}.region-title{font-size:1.25rem;font-weight:600;color:var(--primary-color);display:flex;align-items:center;gap:.5rem}.region-cost{font-size:1rem;font-weight:600;color:var(--accent-color)}.vpc-container{border:2px dashed var(--accent-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem;background:#ffffff80}.vpc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.vpc-title{font-size:1.1rem;font-weight:600;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.vpc-info{font-size:.875rem;color:var(--text-secondary)}.subnets-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}@media (max-width: 1200px){.subnets-grid{grid-template-columns:1fr}}.subnet-container{border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem;background:var(--bg-primary)}.subnet-container.public{border-left:4px solid #10b981}.subnet-container.private{border-left:4px solid #f59e0b}.subnet-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid var(--border-color)}.subnet-title{font-size:.85rem;font-weight:600;color:var(--text-primary)}.subnet-badge{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.subnet-badge.public{background:#d1fae5;color:#065f46}.subnet-badge.private{background:#fef3c7;color:#92400e}.resources-list{display:flex;flex-direction:column;gap:.5rem}.resource-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.5rem;cursor:pointer;transition:all .2s ease;position:relative}.resource-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--primary-color)}.resource-card.selected{border-color:var(--primary-color);background:#3b82f61a}.resource-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.35rem}.resource-name{display:flex;align-items:center;gap:.4rem;font-weight:600;color:var(--text-primary);font-size:.8rem}.resource-icon{font-size:1rem}.resource-status{padding:.1rem .4rem;border-radius:var(--radius-sm);font-size:.65rem;font-weight:500}.resource-status.running,.resource-status.active,.resource-status.available,.resource-status.deployed,.resource-status.online{background:#d1fae5;color:#065f46}.resource-details{display:flex;flex-direction:column;gap:.15rem;font-size:.7rem;color:var(--text-secondary);margin-bottom:.25rem}.resource-cost{font-weight:600;color:var(--accent-color);font-size:.75rem;margin-top:0}.standalone-resources{margin-top:1rem;border:2px dashed var(--accent-color);border-radius:var(--radius-md);padding:1rem;background:#ffffff80;max-width:fit-content}.standalone-header{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem;padding-bottom:.4rem;border-bottom:1px solid var(--border-color)}.standalone-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.connection-indicator{position:absolute;top:.5rem;right:.5rem;width:8px;height:8px;border-radius:50%;background:var(--primary-color);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.connections-panel{position:fixed;right:0;top:0;bottom:0;width:350px;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-left:1px solid var(--border-color);padding:1.5rem;overflow-y:auto;box-shadow:-4px 0 16px #00000014;z-index:100;animation:slideInRight .3s ease}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.connections-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.connections-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.close-btn{background:#ef4444;border:2px solid #dc2626;font-size:1.75rem;cursor:pointer;color:#fff;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all .2s ease;font-weight:700;box-shadow:0 2px 8px #ef44444d;line-height:1}.close-btn:hover{background:#dc2626;border-color:#b91c1c;transform:scale(1.1);box-shadow:0 4px 12px #ef444466}.close-btn:active{transform:scale(.95)}.selected-resource-info{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1rem;margin-bottom:1.5rem}.connections-list{display:flex;flex-direction:column;gap:.75rem}.connection-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:.75rem;display:flex;align-items:center;gap:.75rem}.connection-arrow{color:var(--primary-color);font-size:1.25rem}.empty-state-icon{font-size:3rem;margin-bottom:1rem}.loading-topology{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.topology-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1rem;text-align:center}.stat-value{font-size:1.75rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.stat-label{font-size:.875rem;color:var(--text-secondary)}.topology-view.compact .region-container,.topology-view.compact .vpc-container{padding:1rem;margin-bottom:1rem}.topology-view.compact .subnets-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem}.topology-view.compact .subnet-container{padding:.75rem}.topology-view.compact .resources-list{gap:.5rem}.topology-view.compact .resource-card{padding:.5rem}.topology-view.compact .resource-details{display:none}.topology-view.compact .resource-name{font-size:.85rem}.topology-view.compact .resource-icon{font-size:1rem}.topology-view.compact .resource-cost{font-size:.8rem}.topology-view.compact .standalone-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.75rem}.topology-view.compact .region-title{font-size:1.1rem}.topology-view.compact .vpc-title{font-size:1rem}.topology-view.compact .subnet-title{font-size:.875rem}.topology-3d-container{position:relative;width:100%;height:700px;background:linear-gradient(135deg,#fcfcfd,#f5f7fa);border-radius:var(--radius-lg);overflow:hidden;box-shadow:inset 0 2px 8px #00000008}.topology-3d-canvas{width:100%;height:100%;display:block;cursor:grab}.topology-3d-canvas:active{cursor:grabbing}.topology-3d-controls{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem 1.5rem;border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;border:1px solid rgba(20,184,166,.2)}.control-hint{display:flex;gap:2rem;font-size:.875rem;color:var(--text-secondary);align-items:center}.control-hint span{display:flex;align-items:center;gap:.5rem;white-space:nowrap}.topology-3d-legend{position:absolute;top:1.5rem;right:1.5rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem;border-radius:var(--radius-lg);box-shadow:0 4px 12px #0000001a;border:1px solid rgba(20,184,166,.2);display:flex;flex-direction:column;gap:.75rem}.legend-3d-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:var(--text-primary)}.legend-3d-box,.legend-3d-cylinder,.legend-3d-octahedron,.legend-3d-tetrahedron{width:24px;height:24px;border-radius:4px;box-shadow:0 2px 4px #0003}.legend-3d-cylinder{border-radius:50%}.legend-3d-octahedron{transform:rotate(45deg);border-radius:4px}.legend-3d-tetrahedron{clip-path:polygon(50% 0%,0% 100%,100% 100%);border-radius:0}@media (max-width: 768px){.topology-3d-container{height:500px}.control-hint{flex-direction:column;gap:.5rem;align-items:flex-start}.topology-3d-legend{top:1rem;right:1rem;padding:.75rem}.topology-3d-controls{bottom:1rem;padding:.75rem 1rem}}.topology-controls-panel{position:absolute;top:1rem;right:1rem;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem;border-radius:var(--radius-lg);box-shadow:0 4px 16px #00000026;display:flex;flex-direction:column;gap:.75rem;min-width:260px;max-width:300px;z-index:10;border:1px solid rgba(20,184,166,.2)}.topology-controls-panel .search-input{padding:.6rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.875rem;width:100%;transition:all .2s ease}.topology-controls-panel .search-input:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px #14b8a61a}.control-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer;padding:.4rem;border-radius:var(--radius-sm);transition:background .2s ease}.control-checkbox:hover{background:#14b8a60d}.control-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.filter-btn,.export-btn{padding:.6rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:.875rem;cursor:pointer;transition:all .2s ease;text-align:left;width:100%}.filter-btn:hover,.export-btn:hover{background:var(--bg-secondary);border-color:var(--primary-color)}.filter-panel{position:absolute;top:1rem;right:320px;background:#fffffffa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:1rem;border-radius:var(--radius-lg);box-shadow:0 4px 16px #00000026;min-width:280px;max-width:320px;max-height:600px;overflow-y:auto;z-index:10;border:1px solid rgba(20,184,166,.2)}.filter-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:2px solid var(--border-color)}.filter-header h3{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.close-filter-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s ease}.close-filter-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.filter-section{margin-bottom:1.25rem}.filter-section h4{font-size:.875rem;font-weight:600;margin-bottom:.6rem;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.filter-checkbox{display:flex;align-items:center;gap:.5rem;font-size:.875rem;cursor:pointer;padding:.4rem;border-radius:var(--radius-sm);transition:background .2s ease;margin-bottom:.25rem}.filter-checkbox:hover{background:#14b8a60d}.filter-checkbox input[type=checkbox]{cursor:pointer;width:16px;height:16px}.cost-range-slider{width:100%;cursor:pointer;margin-bottom:.5rem}.cost-range-label{font-size:.875rem;color:var(--text-secondary);text-align:center;font-weight:500}.filter-actions{display:flex;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.apply-filters-btn,.reset-filters-btn{flex:1;padding:.6rem;border:none;border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.apply-filters-btn{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff}.apply-filters-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #14b8a64d}.reset-filters-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.reset-filters-btn:hover{background:var(--bg-primary)}.export-dropdown{position:relative}.export-dropdown .dropdown-menu{position:absolute;top:calc(100% + .25rem);right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;min-width:200px;z-index:20;overflow:hidden}.export-dropdown .dropdown-menu button{display:block;width:100%;padding:.6rem 1rem;text-align:left;border:none;background:none;cursor:pointer;font-size:.875rem;color:var(--text-primary);transition:background .2s ease}.export-dropdown .dropdown-menu button:hover{background:#14b8a61a}.resource-tooltip{position:absolute;bottom:6rem;left:50%;transform:translate(-50%);background:#1e293bf2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-md);box-shadow:0 4px 12px #0000004d;z-index:5;min-width:200px;pointer-events:none}.tooltip-name{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.9rem;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.2)}.tooltip-details{display:flex;flex-direction:column;gap:.25rem;font-size:.8rem;opacity:.9}@media (max-width: 1200px){.filter-panel{right:auto;left:1rem;top:auto;bottom:1rem;max-height:400px}.topology-controls-panel{max-width:240px}}@media (max-width: 768px){.topology-controls-panel{top:.5rem;right:.5rem;min-width:200px;padding:.75rem}.filter-panel{left:.5rem;bottom:.5rem;min-width:240px}.resource-tooltip{bottom:5rem;max-width:80%}}.anomaly-container{padding:1rem}.anomaly-header{margin-bottom:1.5rem}.anomaly-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.time-range-info{font-size:.875rem;color:var(--text-secondary);margin:0}.btn-config{padding:.5rem 1rem;background:#f8fafc;color:#334155;border:1px solid #e2e8f0;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-weight:500;transition:all .2s;box-shadow:0 1px 2px #0f172a0f}.btn-config:hover{background:#f1f5f9;border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a14}.anomaly-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem}.opt-card{background:linear-gradient(135deg,#fffffff2,#f9fafbe6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;border:1px solid rgba(226,232,240,.6);padding:1.5rem;display:flex;gap:1.125rem;align-items:flex-start;box-shadow:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a,inset 0 1px #fff9;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.opt-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent)}.opt-card:hover{border-color:#e2e8f0;box-shadow:0 6px 12px -6px #0f172a1f,0 4px 8px -6px #0f172a14;transform:translateY(-1px)}.opt-card-icon{font-size:2rem;line-height:1;flex-shrink:0}.opt-card-content{flex:1;min-width:0}.opt-card-label{font-size:.75rem;color:var(--gray-500, #6b7280);text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:.5rem}.opt-card-value{font-size:1.75rem;font-weight:700;color:var(--gray-900, #1f2937);line-height:1.2;margin-bottom:.25rem}.opt-card-value.warning{color:#b45309}.opt-card-value.critical{color:#b91c1c}.opt-card-value.high{color:#c2410c}.opt-card-sublabel{font-size:.8125rem;color:var(--gray-500, #6b7280)}.anomaly-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--border-color)}.anomaly-tabs button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:1rem;color:var(--text-secondary);margin-bottom:-2px}.anomaly-tabs button.active{color:var(--primary-color);border-bottom-color:var(--primary-color);font-weight:600}.anomaly-filters{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1.5rem;padding:1rem;background:var(--bg-secondary);border-radius:var(--radius-md);flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.25rem;min-width:150px}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.filter-group select{padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;cursor:pointer}.filter-group select:focus{outline:none;border-color:var(--primary-color)}.btn-clear-filters{padding:.5rem 1rem;background:var(--text-secondary);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;height:fit-content;align-self:flex-end}.btn-clear-filters:hover{background:var(--text-primary)}.anomalies-list{display:flex;flex-direction:column;gap:1rem}.anomaly-card{background:linear-gradient(135deg,#fffffff2,#f8fafce6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:16px;border-left:4px solid;padding:1.75rem;box-shadow:0 4px 6px -1px #00000014,0 2px 4px -1px #0000000a,inset 0 1px #fff9;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.anomaly-card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent)}.anomaly-card:hover{transform:translateY(-1px);box-shadow:0 6px 12px -6px #0f172a1f,0 4px 8px -6px #0f172a14}.anomaly-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.anomaly-title{display:flex;align-items:center;gap:.5rem}.severity-icon{font-size:1.25rem}.severity-badge{padding:.375rem .875rem;border-radius:20px;font-size:.6875rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.05em;box-shadow:none;transition:all .2s ease}.severity-badge:hover{transform:none}.provider-badge{padding:.375rem .875rem;border-radius:20px;font-size:.6875rem;font-weight:700;background:#e2e8f0;color:#475569;text-transform:uppercase;letter-spacing:.05em;box-shadow:none;transition:all .2s ease}.provider-badge:hover{transform:none;box-shadow:none}.status-badge{padding:.375rem .875rem;border-radius:20px;font-size:.6875rem;font-weight:700;background:#f1f5f9;color:#4b5563;text-transform:uppercase;letter-spacing:.05em;box-shadow:none;transition:all .2s ease}.status-badge.status-open{background:#fef3c7;color:#92400e;box-shadow:none}.status-badge.status-resolved{background:#dcfce7;color:#065f46;box-shadow:none}.status-badge:hover{transform:none}.anomaly-date{font-size:.875rem;color:var(--text-secondary)}.anomaly-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.metric{background:linear-gradient(135deg,#ffffffe6,#f9fafbcc);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1rem;border-radius:12px;border:1px solid rgba(226,232,240,.6);box-shadow:0 2px 4px #0000000a,inset 0 1px #ffffff80;transition:all .2s ease}.metric:hover{transform:translateY(-1px);box-shadow:0 3px 6px #0f172a14,inset 0 1px #ffffffb3;border-color:#e2e8f0}.metric-label{font-size:.6875rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;font-weight:600;margin-bottom:.5rem}.metric-value{font-size:1.25rem;font-weight:700;color:#1e293b;line-height:1.2}.metric-value.deviation{color:#b91c1c}.anomaly-description{background:linear-gradient(135deg,#f8fafccc,#f1f5f999);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1.125rem;border-radius:12px;margin-bottom:1rem;font-size:.9375rem;line-height:1.6;color:#475569;border:1px solid rgba(226,232,240,.5);box-shadow:inset 0 1px #ffffff80}.anomaly-recommendation{background:#f8fafc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:1.125rem;border-radius:12px;border-left:4px solid #94a3b8;margin-bottom:1rem;font-size:.9375rem;line-height:1.6;color:#475569;box-shadow:0 1px 3px #0f172a0f,inset 0 1px #fff9;transition:all .2s ease}.anomaly-recommendation:hover{transform:translate(2px);box-shadow:0 2px 6px #0f172a1a,inset 0 1px #fffc}.anomaly-actions{display:flex;gap:.5rem}.btn-resolve,.btn-ignore{padding:.625rem 1.25rem;border:1px solid transparent;border-radius:10px;cursor:pointer;font-size:.875rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0f172a14;position:relative;overflow:hidden}.btn-resolve:before,.btn-ignore:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-resolve:hover:before,.btn-ignore:hover:before{left:100%}.btn-resolve{background:#ecfdf3;color:#047857;border-color:#a7f3d0}.btn-resolve:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0f172a1f}.btn-resolve:active{transform:translateY(0)}.btn-ignore{background:#f1f5f9;color:#475569;border-color:#e2e8f0}.btn-ignore:hover{transform:translateY(-1px);box-shadow:0 3px 8px #0f172a1f}.btn-ignore:active{transform:translateY(0)}.empty-state{text-align:center;padding:3rem 1rem;color:var(--text-secondary)}.empty-icon{font-size:3rem;margin-bottom:1rem}.settings-panel{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1.5rem}.alert-config-form{max-width:800px}.form-section{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border-color)}.form-section:last-of-type{border-bottom:none}.form-section h4{margin-bottom:1rem;color:var(--text-primary)}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--text-primary)}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.9rem}.form-group input[type=checkbox]{margin-right:.5rem}.btn-test{padding:.5rem 1rem;background:var(--accent-color);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.875rem;margin-top:.5rem}.btn-test:hover{opacity:.9}.btn-test:disabled{opacity:.5;cursor:not-allowed}.form-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:2rem}.btn-primary{padding:.75rem 1.5rem;background:var(--primary-color);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:500}.btn-primary:hover{background:var(--primary-dark)}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);max-width:800px;max-height:90vh;overflow-y:auto;padding:2rem}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.modal-header h3{margin:0;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:0;width:30px;height:30px}.modal-close:hover{color:var(--text-primary)}.loading{text-align:center;padding:3rem;color:var(--text-secondary)}.cost-allocation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.cost-allocation-header h1{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.cost-allocation-header .subtitle{font-size:.9375rem;color:var(--gray-500);margin:0}.header-actions{display:flex;gap:.75rem;align-items:center}.period-select{padding:.625rem .875rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;background:#fff;cursor:pointer}.allocation-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.summary-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1rem;display:flex;gap:.75rem;align-items:flex-start;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.summary-card:hover{box-shadow:var(--shadow-md)}.summary-card .card-icon{font-size:1rem;line-height:1;color:#64748b;background:transparent;width:auto;height:auto;border-radius:0;margin-top:.1rem}.summary-card .card-content{flex:1}.summary-card .card-label{font-size:.75rem;color:var(--gray-600);text-transform:uppercase;letter-spacing:.02em;font-weight:700;margin-bottom:.3rem}.summary-card .card-value{font-size:1.4rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.2rem}.summary-card .card-value.warning{color:var(--warning)}.summary-card .card-value.success{color:var(--success)}.summary-card .card-sublabel{font-size:.8rem;color:var(--gray-600);line-height:1.35}.allocation-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--gray-200)}.tab-button{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:.9375rem;font-weight:600;color:var(--gray-600);cursor:pointer;transition:all .2s;margin-bottom:-2px}.tab-button.active{color:var(--primary-600);border-bottom-color:var(--primary-600)}.tab-content{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:2rem;box-shadow:var(--shadow-sm)}.cost-center-help{border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#f8fafc;padding:.75rem 1rem;margin:0 0 1.5rem}.cost-center-help-summary{font-weight:600;color:var(--gray-800);cursor:pointer;list-style:none}.cost-center-help-summary::-webkit-details-marker{display:none}.cost-center-help-summary:before{content:"+";display:inline-block;margin-right:.5rem;color:var(--gray-500);font-weight:700}.cost-center-help[open] .cost-center-help-summary:before{content:"–"}.cost-center-help-body{margin-top:.75rem;color:var(--gray-700);font-size:.9rem;line-height:1.6}.cost-center-help-body code{background:#e2e8f0;border-radius:4px;padding:.1rem .35rem}.cost-center-help-list{margin:.75rem 0;padding-left:1.25rem}.cost-center-help-list li{margin-bottom:.5rem}.cost-center-help-note{margin:0;color:var(--gray-600);font-size:.85rem}.overview-content .section{margin-bottom:2.5rem}.overview-content .section:last-child{margin-bottom:0}.overview-content h3{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0 0 1.5rem}.allocations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.allocation-card{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:1.25rem;transition:all .2s}.allocation-card:hover{border-color:var(--primary-300);box-shadow:var(--shadow-md)}.allocation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.allocation-header h4{font-size:1rem;font-weight:600;color:var(--gray-900);margin:0 0 .25rem}.cost-center-code{font-size:.75rem;color:var(--gray-500);font-family:monospace;background:var(--gray-200);padding:.125rem .375rem;border-radius:var(--radius-sm)}.mode-badge{font-size:.75rem;font-weight:600;padding:.25rem .625rem;border-radius:var(--radius-sm)}.mode-badge.chargeback{background:#dbeafe;color:#1e40af}.mode-badge.showback{background:#fef3c7;color:#92400e}.allocation-cost{text-align:center;padding:1rem 0;margin-bottom:1rem;border-bottom:1px solid var(--gray-200)}.cost-amount{font-size:1.75rem;font-weight:700;color:var(--primary-600);margin-bottom:.25rem}.cost-label{font-size:.8125rem;color:var(--gray-500)}.budget-progress{margin-bottom:1.5rem}.progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.8125rem;color:var(--gray-600)}.utilization-value{font-weight:600;color:var(--success)}.utilization-value.warning{color:var(--error)}.progress-bar{height:8px;background:var(--gray-200);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:var(--success);border-radius:var(--radius-sm);transition:width .3s ease}.progress-fill.warning{background:var(--error)}.budget-info{font-size:.75rem;color:var(--gray-500);text-align:center}.allocation-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--gray-200)}.owner-info{font-size:.8125rem;color:var(--gray-600)}.btn-link{background:none;border:none;color:var(--primary-600);font-size:.875rem;font-weight:600;cursor:pointer;padding:0}.btn-link:hover{color:var(--primary-700);text-decoration:underline}.trends-chart{display:flex;flex-direction:column;gap:.75rem}.trend-bar{display:grid;grid-template-columns:80px 1fr 60px;gap:1rem;align-items:center}.trend-label{font-size:.8125rem;color:var(--gray-600);font-weight:500}.trend-bar-container{height:24px;background:var(--gray-100);border-radius:var(--radius-sm);overflow:hidden}.trend-bar-fill{height:100%;background:linear-gradient(90deg,var(--primary-500),var(--primary-600));border-radius:var(--radius-sm);transition:width .3s ease}.trend-value{font-size:.875rem;font-weight:600;color:var(--gray-700);text-align:right}.cost-centers-content .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cost-centers-content h3{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0}.cost-centers-table table{width:100%;border-collapse:collapse}.cost-centers-table th{text-align:left;padding:.75rem 1rem;background:var(--gray-50);border-bottom:2px solid var(--gray-200);font-size:.8125rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em}.cost-centers-table td{padding:1rem;border-bottom:1px solid var(--gray-200);font-size:.9375rem;color:var(--gray-900)}.cost-centers-table tr:hover{background:var(--gray-50)}.description-text{font-size:.8125rem;color:var(--gray-500);margin-top:.25rem}.btn-small{padding:.375rem .75rem;background:#fff;color:var(--primary-600);border:1px solid var(--primary-600);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-small:hover{background:var(--primary-600);color:#fff}.unallocated-content .section{margin-bottom:2rem}.unallocated-content h3{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0 0 .5rem}.section-description{font-size:.9375rem;color:var(--gray-600);margin:0 0 1.5rem}.unallocated-table table{width:100%;border-collapse:collapse}.unallocated-table th{text-align:left;padding:.75rem 1rem;background:var(--gray-50);border-bottom:2px solid var(--gray-200);font-size:.8125rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em}.unallocated-table td{padding:1rem;border-bottom:1px solid var(--gray-200);font-size:.9375rem;color:var(--gray-900)}.unallocated-table code{background:var(--gray-100);padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.8125rem}.reason-text{color:var(--gray-600);font-size:.875rem}.details-content{padding:0}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--gray-200)}.details-header h3{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin:0}.details-header .total-cost{font-size:2rem;font-weight:700;color:var(--primary-600)}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:2rem}.detail-section{background:var(--gray-50);border-radius:var(--radius-md);padding:1.5rem}.detail-section.full-width{grid-column:1 / -1}.detail-section h4{font-size:1rem;font-weight:600;color:var(--gray-900);margin:0 0 1rem}.service-list,.resource-list{display:flex;flex-direction:column;gap:.75rem}.service-item,.resource-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--gray-200)}.service-info,.resource-info{display:flex;flex-direction:column;gap:.25rem}.service-name{font-weight:600;color:var(--gray-900)}.service-percentage{font-size:.8125rem;color:var(--gray-500)}.service-cost,.resource-cost{font-weight:700;color:var(--primary-600)}.resource-type{font-size:.8125rem;color:var(--gray-500)}.daily-chart{display:flex;gap:.5rem;align-items:flex-end;height:200px;padding:1rem;background:#fff;border-radius:var(--radius-sm);border:1px solid var(--gray-200)}.day-bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem}.day-bar-fill{width:100%;background:linear-gradient(180deg,var(--primary-400),var(--primary-600));border-radius:var(--radius-sm) var(--radius-sm) 0 0;min-height:4px;transition:height .3s ease}.day-label{font-size:.75rem;color:var(--gray-500);font-weight:500}.modal-content form{padding:1.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #0ea5e91a}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.btn-primary{padding:.75rem 1.5rem;background:var(--primary-600);color:#fff;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:var(--primary-700);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}@media (max-width: 768px){.cost-allocation-header{flex-direction:column;gap:1rem}.header-actions{width:100%;flex-direction:column}.period-select,.btn-primary{width:100%}.allocations-grid,.details-grid,.form-row{grid-template-columns:1fr}.trend-bar{grid-template-columns:60px 1fr 50px;gap:.5rem}}.rpt-pageHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.rpt-pageHeaderLeft{display:flex;flex-direction:column;gap:.2rem}.rpt-periodPicker{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--gray-200);border-radius:10px;padding:.45rem .75rem;color:var(--gray-500);flex-shrink:0}.rpt-periodSelect{border:none;background:transparent;font-size:.825rem;font-weight:600;color:var(--gray-800);cursor:pointer;outline:none;padding-right:.5rem}.rpt-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--gray-200);padding-bottom:0}.rpt-tabs .tab-btn{display:flex;align-items:center;gap:.5rem;padding:.7rem 1.15rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.825rem;font-weight:600;color:var(--gray-500);cursor:pointer;transition:all .2s ease;position:relative;bottom:-2px;white-space:nowrap}.rpt-tabs .tab-btn:hover{color:var(--gray-800);background:var(--gray-50)}.rpt-tabs .tab-btn.active{color:var(--primary-400, hsl(174 64% 47%));border-bottom-color:var(--primary-400, hsl(174 64% 47%));background:transparent}.rpt-tabs .tab-badge{font-size:.7rem;font-weight:700;background:var(--gray-200);color:var(--gray-600);padding:2px 7px;border-radius:10px}.rpt-tabs .tab-btn.active .tab-badge{background:var(--primary-500, hsl(174 64% 47%));color:#fff}.rpt-tabContent{display:flex;flex-direction:column;gap:1.5rem}.rpt-generateGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.rpt-templateCard{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.35rem 1.35rem 1.15rem;display:flex;flex-direction:column;gap:1rem;transition:border-color .2s,box-shadow .2s,transform .2s;min-height:230px}.rpt-templateCard:hover{border-color:#9fdbd5;box-shadow:0 4px 16px #0f172a12;transform:translateY(-2px)}.rpt-templateCard-loading{border-color:#2bc5b5;box-shadow:0 0 0 2px #2bc5b51f,0 4px 16px #0f172a12}.rpt-templateTop{display:flex;gap:.9rem;align-items:flex-start}.rpt-templateIcon{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#14b8a614,#1e3a8a0f);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#27b0a2}.rpt-templateMeta{flex:1;min-width:0}.rpt-templateName{font-size:.975rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem;line-height:1.3}.rpt-templateDesc{font-size:.8rem;color:var(--gray-500);line-height:1.45;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.rpt-templateTags{display:flex;flex-wrap:wrap;gap:.35rem;flex:1}.rpt-tag{font-size:.68rem;font-weight:600;padding:3px 8px;background:var(--gray-50);color:var(--gray-600);border:1px solid var(--gray-200);border-radius:999px;letter-spacing:.01em}.rpt-generateBtn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.65rem 1rem;font-size:.8rem;font-weight:700;border-radius:10px;cursor:pointer;margin-top:auto;flex-shrink:0}.rpt-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:rptSpin .7s linear infinite}@keyframes rptSpin{to{transform:rotate(360deg)}}.rpt-sectionWrap{display:flex;flex-direction:column;gap:1.25rem}.rpt-sectionHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.rpt-sectionTitle{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0}.rpt-sectionSubtitle{font-size:.8rem;color:var(--gray-500);margin:.15rem 0 0}.rpt-tableCard{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);overflow:hidden}.rpt-table{width:100%;border-collapse:collapse}.rpt-table thead{background:var(--gray-50)}.rpt-table th{text-align:left;padding:.7rem 1rem;font-size:.7rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--gray-200)}.rpt-table td{padding:.75rem 1rem;font-size:.835rem;color:var(--gray-800);border-bottom:1px solid var(--gray-100)}.rpt-table tbody tr:last-child td{border-bottom:none}.rpt-table tbody tr:hover{background:var(--gray-50)}.rpt-cellBold{font-weight:700;color:var(--gray-900)}.rpt-cellCapitalize{text-transform:capitalize}.rpt-cellMuted{color:var(--gray-500)}.rpt-pillBadge{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:999px;white-space:nowrap}.rpt-pillFreq{background:linear-gradient(135deg,#14b8a614,#1e3a8a0f);color:#209287;border:1px solid hsl(174 45% 84%);text-transform:capitalize}.rpt-pillMeta{background:var(--gray-50);color:var(--gray-600);border:1px solid var(--gray-200)}.rpt-statusDot{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:700}.rpt-statusDot:before{content:"";width:7px;height:7px;border-radius:50%;flex-shrink:0}.rpt-statusActive{color:#047857}.rpt-statusActive:before{background:#10b981;box-shadow:0 0 0 2px #10b98133}.rpt-statusInactive{color:#64748b}.rpt-statusInactive:before{background:#94a3b8}.rpt-btnSmall{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:8px;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);cursor:pointer;transition:all .15s}.rpt-btnSmall:hover{background:var(--gray-50);border-color:var(--gray-300)}.rpt-emptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px)}.rpt-emptyIcon{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#14b8a614,#1e3a8a0f);display:flex;align-items:center;justify-content:center;color:#27b0a2;margin-bottom:1rem}.rpt-emptyState h3{font-size:1rem;font-weight:700;color:var(--gray-900);margin:0 0 .35rem}.rpt-emptyState p{font-size:.825rem;color:var(--gray-500);margin:0;max-width:38ch;line-height:1.5}.rpt-modalOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.rpt-modal{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0f172a2e}.rpt-modalHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem 1.5rem .75rem;border-bottom:1px solid var(--gray-100)}.rpt-modalHeader h3{font-size:1.05rem;font-weight:700;color:var(--gray-900);margin:0}.rpt-modalHeader p{font-size:.8rem;color:var(--gray-500);margin:.15rem 0 0}.rpt-modalClose{background:none;border:none;cursor:pointer;color:var(--gray-400);padding:4px;border-radius:8px;line-height:0;flex-shrink:0}.rpt-modalClose:hover{background:var(--gray-100);color:var(--gray-700)}.rpt-modalBody{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.rpt-modalFooter{display:flex;justify-content:flex-end;gap:.5rem;padding-top:.75rem;border-top:1px solid var(--gray-100);margin-top:.5rem}.rpt-formGroup{display:flex;flex-direction:column;gap:.3rem;flex:1;min-width:0}.rpt-formRow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.rpt-formLabel{font-size:.78rem;font-weight:700;color:var(--gray-700);letter-spacing:.01em}.rpt-required{color:#ef4444}.rpt-formInput,.rpt-formSelect{width:100%;padding:.55rem .75rem;border:1px solid var(--gray-200);border-radius:10px;font-size:.835rem;color:var(--gray-900);background:#fff;font-family:inherit;outline:none;transition:border-color .15s}.rpt-formInput:focus,.rpt-formSelect:focus{border-color:#2bc5b5;box-shadow:0 0 0 3px #2bc5b51a}.rpt-formHint{font-size:.7rem;color:var(--gray-400)}.rpt-btnOutline{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border:1px solid var(--gray-200);border-radius:10px;background:#fff;font-size:.8rem;font-weight:700;color:var(--gray-700);cursor:pointer}.rpt-btnOutline:hover{background:var(--gray-50);border-color:var(--gray-300)}.rpt-btnSubmit{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem 1.1rem;border-radius:10px;font-size:.8rem;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0}.report-preview{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg, 14px);padding:1.75rem}.preview-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:1px solid var(--gray-200)}.preview-header h2{font-size:1.25rem;font-weight:700;color:var(--gray-900);margin:0 0 .35rem}.period-label{font-size:.8rem;color:var(--gray-500);margin:0}.preview-actions{display:flex;gap:.5rem;flex-shrink:0}.preview-actions .btn-secondary,.preview-actions .btn-primary{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .9rem;font-size:.78rem;font-weight:700;border-radius:10px;cursor:pointer}.preview-content{display:flex;flex-direction:column;gap:1.5rem}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem}.metric-card{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:1rem 1.15rem}.metric-label{font-size:.7rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.metric-value{font-size:1.4rem;font-weight:800;color:var(--gray-900);margin-bottom:.15rem}.metric-change{font-size:.78rem;font-weight:700}.metric-change.up{color:#dc2626}.metric-change.down{color:#059669}.report-section{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:1.25rem}.report-section h3{font-size:.85rem;font-weight:700;color:var(--gray-800);text-transform:uppercase;letter-spacing:.04em;margin:0 0 1rem}.advisor-summary{background:linear-gradient(135deg,#14b8a608,#1e3a8a05);border:1px solid var(--gray-200);border-radius:12px;padding:1.25rem}.advisor-summary-text{color:var(--gray-700);margin:0 0 1rem;font-size:.875rem;line-height:1.55}.advisor-section{margin-bottom:.85rem}.advisor-section-title{font-weight:700;font-size:.835rem;color:var(--gray-900);margin-bottom:.35rem}.advisor-section-paragraph{margin:0 0 .5rem;color:var(--gray-600);font-size:.835rem;line-height:1.5}.advisor-bullets{margin:0;padding-left:1.15rem;color:var(--gray-600);font-size:.835rem;line-height:1.6}.advisor-bullets li{margin-bottom:.25rem}.breakdown-list{display:flex;flex-direction:column;gap:.75rem}.breakdown-item{display:grid;grid-template-columns:1fr auto;gap:.75rem;align-items:center}.breakdown-info{display:flex;justify-content:space-between;align-items:center;grid-column:1 / -1;margin-bottom:.25rem}.breakdown-name{font-weight:700;font-size:.835rem;color:var(--gray-900)}.breakdown-percentage{font-size:.78rem;font-weight:600;color:var(--gray-500)}.breakdown-bar{height:6px;background:var(--gray-100);border-radius:999px;overflow:hidden;grid-column:1}.breakdown-fill{height:100%;background:linear-gradient(90deg,#13316c,#2bc5b5);border-radius:999px}.breakdown-cost{font-weight:700;font-size:.835rem;color:var(--gray-900);text-align:right}.trend-chart{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:10px;padding:.75rem 1rem;margin-bottom:.75rem}.trend-table th,.trend-table td{padding:.45rem .75rem;font-size:.8rem}.services-list{display:flex;flex-direction:column;gap:.5rem}.service-item{display:grid;grid-template-columns:auto 1fr auto auto;gap:.75rem;align-items:center;padding:.6rem .85rem;background:var(--gray-50);border-radius:10px;border:1px solid var(--gray-100)}.service-icon{color:var(--gray-500)}.service-name{font-weight:700;font-size:.835rem;color:var(--gray-900)}.service-cost{font-weight:700;font-size:.835rem;color:#209287}.service-percentage{font-size:.78rem;font-weight:600;color:var(--gray-500)}.recommendations-list{display:flex;flex-direction:column;gap:.6rem}.recommendation-item{padding:.85rem 1rem;background:var(--gray-50);border-radius:10px;border:1px solid var(--gray-100)}.rec-title{font-weight:700;font-size:.835rem;color:var(--gray-900);margin-bottom:.35rem}.rec-details{display:flex;gap:.85rem;font-size:.78rem}.rec-savings{color:#059669;font-weight:700}.rec-effort,.rec-impact{color:var(--gray-500);font-weight:600}.budget-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;margin-bottom:1.5rem}.summary-item{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:1rem 1.15rem}.summary-label{font-size:.7rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}.summary-value{font-size:1.4rem;font-weight:800;color:var(--gray-900)}.total-cost-banner{background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;padding:1.75rem 2rem;border-radius:14px;text-align:center}.total-cost-banner .total-label{font-size:.85rem;font-weight:600;opacity:.85;margin-bottom:.35rem}.total-cost-banner .total-value{font-size:2.25rem;font-weight:800}.budgets-table table,.recommendations-table table,.chargeback-table table,.unallocated-table table,.data-table.trend-table{width:100%;border-collapse:collapse}.budgets-table th,.recommendations-table th,.chargeback-table th,.unallocated-table th{text-align:left;padding:.6rem .85rem;background:var(--gray-50);border-bottom:1px solid var(--gray-200);font-size:.7rem;font-weight:700;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em}.budgets-table td,.recommendations-table td,.chargeback-table td,.unallocated-table td{padding:.7rem .85rem;border-bottom:1px solid var(--gray-100);font-size:.835rem}.budgets-table tbody tr:hover,.recommendations-table tbody tr:hover,.chargeback-table tbody tr:hover,.unallocated-table tbody tr:hover{background:var(--gray-50)}.utilization-badge,.effort-badge,.impact-badge,.mode-badge,.frequency-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:capitalize}.utilization-badge.good{background:#ecfdf5;color:#047857}.utilization-badge.warning{background:#fef2f2;color:#b91c1c}.effort-badge.low{background:#ecfdf5;color:#047857}.effort-badge.medium{background:#fffbeb;color:#b45309}.effort-badge.high{background:#fef2f2;color:#b91c1c}.impact-badge.low{background:var(--gray-50);color:var(--gray-600)}.impact-badge.medium{background:#eff6ff;color:#1e40af}.impact-badge.high{background:#ecfdf5;color:#047857}.mode-badge,.frequency-badge{background:linear-gradient(135deg,#14b8a614,#1e3a8a0f);color:#209287;border:1px solid hsl(174 45% 84%)}.savings{color:#059669;font-weight:700}.over-budget{color:#dc2626;font-weight:700}.under-budget{color:#059669;font-weight:700}.unallocated-table code{background:var(--gray-100);padding:2px 6px;border-radius:6px;font-size:.78rem;font-family:Monaco,Courier New,monospace}.modal-content.large{max-width:600px}@media print{.preview-actions{display:none}.report-preview{border:none;padding:0}}@media (max-width: 768px){.rpt-pageHeader{flex-direction:column;gap:.75rem}.rpt-periodPicker,.rpt-periodSelect{width:100%}.rpt-generateGrid,.rpt-formRow{grid-template-columns:1fr}.rpt-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.rpt-tabs .tab-btn{flex-shrink:0}.metrics-grid,.budget-summary{grid-template-columns:1fr 1fr}.preview-header{flex-direction:column;gap:1rem}.preview-actions{width:100%}.service-item{grid-template-columns:auto 1fr}}@media (max-width: 480px){.metrics-grid,.budget-summary{grid-template-columns:1fr}}.settings-header{margin-bottom:1.5rem}.settings-header h1{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.settings-subtitle{font-size:.9375rem;color:var(--gray-500);margin:0}.message-banner{padding:1rem;border-radius:var(--radius-md);margin-bottom:1.5rem;font-size:.9375rem;font-weight:500}.settings-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--gray-200);flex-wrap:wrap;overflow-x:auto}.tab-button{display:inline-flex;align-items:center;gap:6px;padding:.625rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:.8125rem;font-weight:600;color:var(--gray-600);cursor:pointer;transition:all .2s;margin-bottom:-2px;white-space:nowrap}.tab-button:hover{color:var(--primary-600);background:var(--gray-50)}.tab-button.active{color:hsl(var(--primary));border-bottom-color:hsl(var(--primary))}.tab-button.disabled{color:var(--gray-400);cursor:not-allowed;background:transparent}.tab-button.disabled:hover{color:var(--gray-400);background:transparent}.settings-content{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1.25rem;box-shadow:var(--shadow-sm);max-width:900px;width:100%}.ai-infra-worksheet .worksheet-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:1rem}.ai-infra-worksheet .worksheet-header h3{display:inline-flex;align-items:center;gap:6px;margin:0 0 .25rem;font-size:.9rem;text-transform:uppercase;letter-spacing:.04em}.ai-infra-worksheet .worksheet-subtitle{margin:0;color:var(--gray-500);font-size:.8rem}.ai-infra-worksheet .worksheet-download{border:1px solid var(--gray-300);background:#fff;color:var(--gray-700);border-radius:var(--radius-sm);padding:.4rem .65rem;font-size:.8rem;display:inline-flex;gap:6px;align-items:center;cursor:pointer}.ai-infra-worksheet .worksheet-note{display:flex;gap:8px;align-items:center;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);padding:.6rem .75rem;font-size:.8rem;color:var(--gray-600);margin-bottom:1rem}.ai-infra-worksheet .worksheet-table{width:100%;border-collapse:collapse;font-size:.8rem}.ai-infra-worksheet .worksheet-table th,.ai-infra-worksheet .worksheet-table td{text-align:left;padding:.55rem .5rem;border-bottom:1px solid var(--gray-100);vertical-align:top}.ai-infra-worksheet .worksheet-table th{color:var(--gray-600);font-weight:600;text-transform:uppercase;font-size:.7rem;letter-spacing:.04em}.settings-form{max-width:700px;width:100%}.form-section{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-100)}.form-section:last-of-type{border-bottom:none;margin-bottom:.5rem;padding-bottom:0}.form-section h3{font-size:.8125rem;font-weight:600;color:var(--gray-700);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.trial-expiry-label{display:inline-flex;align-items:center;gap:6px;font-size:.8125rem;color:var(--gray-500);background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-sm);padding:.4rem .6rem;margin:0 0 .9rem}.form-group{margin-bottom:.75rem}.form-group:last-child{margin-bottom:0}.form-group label{display:block;font-size:.8125rem;font-weight:600;color:var(--gray-600);margin-bottom:.25rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem;transition:all .2s;background:#fff}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 2px #06b6d41a}.form-group small{display:block;margin-top:.25rem;font-size:.75rem;color:var(--gray-500);font-style:italic}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:.75rem}.form-row:last-child{margin-bottom:0}.form-row .form-group{margin-bottom:0}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;margin-top:1rem;border-top:1px solid var(--gray-200)}.btn-primary{padding:.625rem 1.25rem;background:var(--primary-600);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:var(--primary-700);transform:translateY(-1px);box-shadow:0 2px 8px #06b6d440}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--gray-50);border-color:var(--gray-400)}.users-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.users-header h3{font-size:1.125rem;font-weight:600;color:var(--gray-900);margin:0 0 .25rem}.users-header p{font-size:.875rem;color:var(--gray-500);margin:0}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse}.users-table th{text-align:left;padding:.75rem 1rem;background:var(--gray-50);border-bottom:2px solid var(--gray-200);font-size:.8125rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em}.users-table td{padding:1rem;border-bottom:1px solid var(--gray-200);font-size:.9375rem;color:var(--gray-900)}.users-table tr:hover{background:var(--gray-50)}.role-select{padding:.375rem .625rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.875rem;cursor:pointer}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600}.btn-danger-small{padding:.375rem .75rem;background:#fff;color:var(--error);border:1px solid var(--error);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-danger-small:hover{background:var(--error);color:#fff}.modal-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal-header h3{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin:0}.modal-close{background:none;border:none;font-size:1.5rem;color:var(--gray-400);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.modal-content form,.modal-body{padding:1.5rem}.modal-description{font-size:.9375rem;color:var(--gray-600);margin-bottom:1.5rem;line-height:1.6}.provider-checkboxes{display:flex;flex-direction:column;gap:1rem}.provider-checkbox{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.provider-checkbox:hover:not(.disabled){background:var(--gray-100);border-color:var(--primary-300)}.provider-checkbox.disabled{opacity:.5;cursor:not-allowed;background:var(--gray-100)}.provider-checkbox.disabled input[type=checkbox]{cursor:not-allowed}.restricted-badge{font-size:.75rem;color:var(--error, #dc2626);font-weight:600}.provider-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer}.provider-label{display:inline-flex;align-items:center;gap:6px;font-size:.875rem;font-weight:500;color:var(--gray-900)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--gray-200)}.btn-small{padding:.375rem .75rem;background:var(--primary-50);color:var(--primary-700);border:1px solid var(--primary-200);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-small:hover{background:var(--primary-100);border-color:var(--primary-300)}.provider-display,.role-display{font-size:.875rem;color:var(--gray-700);font-weight:500}.text-muted{color:var(--gray-400);font-size:.875rem}@media (max-width: 768px){.settings-content{padding:1.5rem}.form-row{grid-template-columns:1fr}.users-header{flex-direction:column;gap:1rem}.users-header button{width:100%}.users-table{font-size:.875rem}.users-table th,.users-table td{padding:.625rem .75rem}}.disabled-input{background-color:var(--gray-100)!important;color:var(--gray-500)!important;cursor:not-allowed!important;opacity:.7}.form-hint{display:block;margin-top:.375rem;font-size:.8125rem;color:var(--gray-500);font-style:italic}.section-description{font-size:.9375rem;color:var(--gray-600);margin:-.5rem 0 1.5rem}.editable-field{cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background-color .2s}.editable-field:hover{background-color:var(--gray-100)}.inline-edit{display:flex;align-items:center}.inline-edit-input{width:100%;padding:.375rem .5rem;border:2px solid var(--primary-color);border-radius:4px;font-size:.9375rem;outline:none}.inline-edit-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #3b82f61a}.subscription-management{padding:0;max-width:1000px;width:100%}.subscription-header{margin-bottom:2rem}.subscription-header h2{font-size:1.75rem;color:#1a1a1a;margin-bottom:.5rem}.subscription-header p{color:#666}.current-plan-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;margin-bottom:2rem}.plan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.plan-header h3{font-size:1.25rem;color:#666;margin-bottom:.5rem;font-weight:500}.plan-name{font-size:2rem;font-weight:700;color:var(--primary-color);display:flex;align-items:center;gap:1rem}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-active{background:#d4edda;color:#155724}.status-trial{background:#d1ecf1;color:#0c5460}.status-warning{background:#fff3cd;color:#856404}.status-canceled{background:#f8d7da;color:#721c24}.trial-notice{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#e7f3ff;border-left:4px solid var(--primary-color);border-radius:8px;margin-bottom:1.5rem;color:#004085}.trial-notice svg{width:24px;height:24px;flex-shrink:0}.usage-stats{display:grid;gap:1.5rem}.usage-item{display:grid;gap:.5rem}.usage-label{font-weight:600;color:#333;font-size:.875rem}.usage-bar{height:8px;background:#e9ecef;border-radius:50px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color));border-radius:50px;transition:width .3s ease}.usage-text{font-size:.875rem;color:#666}.plans-section{margin-bottom:2rem}.plans-section h3{font-size:1.5rem;margin-bottom:1.5rem;color:#1a1a1a}.plans-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.plan-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a;border:2px solid transparent;transition:all .3s;display:flex;flex-direction:column}.plan-card:hover{border-color:var(--primary-color);box-shadow:0 4px 16px #00000026;transform:translateY(-4px)}.plan-card.current{border-color:var(--primary-color);background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.plan-card-header{margin-bottom:1.5rem}.plan-card-header h4{font-size:1.25rem;color:#1a1a1a;margin-bottom:.5rem}.plan-price{display:flex;align-items:baseline;gap:.25rem}.price-amount{font-size:2.5rem;font-weight:700;color:var(--primary-color)}.price-interval{font-size:1rem;color:#666}.price-custom{font-size:1.5rem;font-weight:600;color:var(--primary-color)}.plan-features{list-style:none;padding:0;margin:0 0 2rem;flex-grow:1}.plan-features li{display:flex;align-items:center;gap:.75rem;padding:.75rem 0;color:#333;font-size:.875rem}.plan-features svg{width:20px;height:20px;color:var(--success-color);flex-shrink:0}.plan-card button{width:100%;margin-top:auto}.btn-current{background:#6c757d;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:not-allowed;opacity:.6}.invoices-section{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #0000001a}.invoices-section h3{font-size:1.5rem;margin-bottom:1.5rem;color:#1a1a1a}.invoices-table{overflow-x:auto}.invoices-table table{width:100%;border-collapse:collapse}.invoices-table th{text-align:left;padding:1rem;background:#f8f9fa;color:#666;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.invoices-table td{padding:1rem;border-bottom:1px solid #e9ecef;color:#333}.invoices-table tr:last-child td{border-bottom:none}.invoice-link{color:var(--primary-color);text-decoration:none;font-weight:600;transition:color .2s}.invoice-link:hover{color:var(--secondary-color);text-decoration:underline}.subscription-loading{display:flex;align-items:center;justify-content:center;padding:4rem;color:#666}.plan-features li.ai-feature{background:linear-gradient(135deg,#8b5cf61a,#ec48991a);border-left:3px solid #8B5CF6;padding:.75rem;margin:.5rem 0;border-radius:6px;animation:aiFeatureGlow 3s ease-in-out infinite}@keyframes aiFeatureGlow{0%,to{box-shadow:0 0 10px #8b5cf633}50%{box-shadow:0 0 20px #ec489966}}.ai-feature-text{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:linear-gradient(135deg,#8b5cf6,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:600}.ai-badge-inline{font-size:.625rem;padding:2px 6px;background:linear-gradient(135deg,#8b5cf64d,#ec48994d);color:#8b5cf6;border:1px solid rgba(139,92,246,.5);border-radius:4px;font-weight:800;letter-spacing:.05em;animation:aiGlowInline 2s ease-in-out infinite;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial}@keyframes aiGlowInline{0%,to{box-shadow:0 0 4px #8b5cf64d}50%{box-shadow:0 0 8px #ec489980}}.new-badge-inline{font-size:.6rem;padding:2px 6px;background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;border-radius:4px;font-weight:800;letter-spacing:.05em;box-shadow:0 2px 4px #f59e0b66;animation:newBadgePulseInline 2s ease-in-out infinite;-webkit-background-clip:initial;-webkit-text-fill-color:initial;background-clip:initial}@keyframes newBadgePulseInline{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media (max-width: 768px){.subscription-management{padding:1rem}.plan-header{flex-direction:column;gap:1rem}.plan-header button{width:100%}.plans-grid{grid-template-columns:1fr}.invoices-table{font-size:.875rem}.invoices-table th,.invoices-table td{padding:.75rem .5rem}}.exchange-rate-manager{padding:20px;max-width:1200px;margin:0 auto}.exchange-rate-manager .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e5e7eb}.exchange-rate-manager h2{margin:0;color:#111827}.exchange-rate-manager .header-actions{display:flex;gap:10px}.exchange-rate-manager button{padding:10px 20px;border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.exchange-rate-manager .btn-primary{background:#0891b2;color:#fff}.exchange-rate-manager .btn-primary:hover{background:#0e7490}.exchange-rate-manager .btn-secondary{background:#6b7280;color:#fff}.exchange-rate-manager .btn-secondary:hover{background:#4b5563}.exchange-rate-manager .btn-success{background:#10b981;color:#fff}.exchange-rate-manager .btn-success:hover{background:#059669}.exchange-rate-manager .btn-danger{background:#ef4444;color:#fff}.exchange-rate-manager .btn-danger:hover{background:#dc2626}.exchange-rate-manager button:disabled{opacity:.5;cursor:not-allowed}.exchange-rate-manager .alert{padding:15px;border-radius:6px;margin-bottom:20px}.exchange-rate-manager .alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.exchange-rate-manager .alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.exchange-rate-manager .info-box{background:#dbeafe;padding:12px 16px;border-radius:6px;margin-bottom:20px;color:#1e40af;border-left:4px solid #3b82f6}.exchange-rate-manager .upload-section{background:#f9fafb;padding:20px;border-radius:8px;margin-bottom:30px;border:2px dashed #d1d5db}.exchange-rate-manager .upload-section h3{margin-top:0;color:#374151}.exchange-rate-manager .upload-section form{display:flex;gap:10px;align-items:center;margin:15px 0}.exchange-rate-manager .upload-section input[type=file]{flex:1;padding:8px;border:1px solid #d1d5db;border-radius:6px;background:#fff}.exchange-rate-manager .help-text{font-size:.875rem;color:#6b7280;margin:10px 0 0}.exchange-rate-manager .rates-section{margin-bottom:40px}.exchange-rate-manager .rates-section h3{color:#374151;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.exchange-rate-manager .rates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.exchange-rate-manager .rate-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:15px;text-align:center;transition:all .2s}.exchange-rate-manager .rate-card:hover{box-shadow:0 4px 6px #0000001a;border-color:#0891b2}.exchange-rate-manager .currency-code{font-size:1.25rem;font-weight:700;color:#0891b2;margin-bottom:10px}.exchange-rate-manager .rate-value{font-size:1.5rem;font-weight:600;color:#111827;margin:10px 0}.exchange-rate-manager .rate-value input{width:100%;padding:8px;border:2px solid #0891b2;border-radius:6px;font-size:1.25rem;text-align:center;font-weight:600}.exchange-rate-manager .rate-label{font-size:.875rem;color:#6b7280;margin-bottom:5px}.exchange-rate-manager .rate-inverse{font-size:.75rem;color:#9ca3af;margin-top:8px;padding-top:8px;border-top:1px solid #e5e7eb}.exchange-rate-manager .rates-table{background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.exchange-rate-manager table{width:100%;border-collapse:collapse}.exchange-rate-manager th{background:#f9fafb;padding:12px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.exchange-rate-manager td{padding:12px;border-bottom:1px solid #e5e7eb}.exchange-rate-manager tbody tr:hover{background:#f9fafb}.exchange-rate-manager td input{width:120px;padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.exchange-rate-manager td input:focus{outline:none;border-color:#0891b2;box-shadow:0 0 0 3px #0891b21a}.exchange-rate-manager .loading{text-align:center;padding:40px;color:#6b7280;font-size:1.1rem}.jira-settings{max-width:900px;width:100%;padding:0}.jira-settings-header{margin-bottom:1rem}.jira-settings-header h2{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin:0 0 4px;display:flex;align-items:center;gap:8px}.jira-settings-subtitle{color:var(--gray-500);font-size:.8125rem;margin:0;line-height:1.4}.jira-message-banner{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.8125rem;font-weight:500}.jira-message-banner.success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.jira-message-banner.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.jira-settings-form{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem}.jira-form-section{margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-100)}.jira-form-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.jira-form-section h3{font-size:.8125rem;font-weight:600;color:var(--gray-700);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.04em}.jira-form-group{margin-bottom:.75rem}.jira-form-group:last-child{margin-bottom:0}.jira-form-group label{display:block;font-weight:600;color:var(--gray-600);margin-bottom:.25rem;font-size:.8125rem}.jira-form-group input[type=text],.jira-form-group input[type=url],.jira-form-group input[type=email],.jira-form-group input[type=password],.jira-form-group select{width:100%;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);background:#fff;color:var(--gray-900);font-size:.8125rem;transition:border-color .2s,box-shadow .2s}.jira-form-group input:focus,.jira-form-group select:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 2px #2bc5b526}.jira-form-group input:disabled{opacity:.5;cursor:not-allowed;background:var(--gray-50)}.jira-form-group input[type=checkbox]{width:auto;margin-right:.5rem;accent-color:hsl(174 64% 47%)}.jira-form-group label:has(input[type=checkbox]){display:flex;align-items:center;cursor:pointer}.form-help-text{font-size:.75rem;color:var(--gray-500);margin-top:.25rem;line-height:1.4}.jira-settings .help-link{color:#2bc5b5;text-decoration:none;display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:500}.jira-settings .help-link:hover{text-decoration:underline}.token-input-wrapper{position:relative;display:flex;gap:.5rem;align-items:center}.token-input-wrapper input{flex:1}.toggle-token-visibility,.change-token-btn{padding:.5rem .75rem;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s ease;flex-shrink:0}.toggle-token-visibility:hover,.change-token-btn:hover{background:var(--gray-50);border-color:var(--gray-400)}.test-connection-btn{padding:.5rem 1rem;background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.test-connection-btn:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.test-connection-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b533}.test-connection-btn:disabled{opacity:.5;cursor:not-allowed}.test-result{margin-top:.5rem;padding:.625rem .75rem;border-radius:var(--radius-md);font-size:.8125rem;display:flex;align-items:center;gap:.5rem}.test-result.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.test-result.error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.label-input-row{display:flex;gap:.5rem;margin-bottom:.5rem;align-items:center}.label-input-row input{flex:1}.remove-label-btn,.add-label-btn{padding:.375rem .75rem;background:#fff;border:1px solid var(--gray-300);border-radius:var(--radius-sm);color:var(--gray-700);cursor:pointer;font-size:.8125rem;font-weight:500;transition:all .15s ease}.remove-label-btn:hover,.add-label-btn:hover{background:var(--gray-50);border-color:var(--gray-400)}.add-label-btn{background:#fff;color:var(--gray-700);border:1px solid var(--gray-300)}.add-label-btn:hover{background:var(--gray-50);border-color:var(--gray-400)}.jira-form-actions{margin-top:1rem;padding-top:1rem;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end}.save-jira-config-btn{padding:.5rem 1.25rem;background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.save-jira-config-btn:hover:not(:disabled){background:linear-gradient(135deg,#0f2757,#27b0a2);transform:translateY(-1px);box-shadow:0 4px 12px #14b8a640}.save-jira-config-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b54d}.save-jira-config-btn:disabled{opacity:.5;cursor:not-allowed}.jira-settings-loading{text-align:center;padding:3rem 1.5rem;color:var(--gray-500);font-size:.875rem}.vendor-discounts{padding:2rem;max-width:1400px;margin:0 auto}.vendor-discounts-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.vendor-discounts-header h2{margin:0 0 .5rem;font-size:1.75rem;font-weight:600;color:#1f2937}.section-description{color:#6b7280;margin:0;font-size:.95rem}.discount-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:1.5rem;color:#fff;box-shadow:0 4px 6px #0000001a}.summary-value{font-size:2rem;font-weight:700;margin-bottom:.5rem}.summary-label{font-size:.875rem;opacity:.9;text-transform:uppercase;letter-spacing:.5px}.discounts-list{display:grid;gap:1.5rem}.discount-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000001a;transition:all .2s}.discount-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.discount-card.inactive{opacity:.6;background:#f9fafb}.discount-card.expired{border-color:#fca5a5;background:#fef2f2}.discount-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.discount-title{display:flex;align-items:center;gap:.75rem}.discount-title h3{margin:0;font-size:1.25rem;font-weight:600;color:#1f2937}.discount-account{margin:.25rem 0 0;font-size:.875rem;color:#6b7280}.discount-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.5rem 1rem;border-radius:8px;font-weight:600;font-size:.875rem}.discount-card-body{margin-bottom:1rem}.discount-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.info-item label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;font-weight:600}.info-item span{font-size:.95rem;color:#1f2937;font-weight:500}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;width:fit-content}.status-badge.unverified{background:#fee2e2;color:#991b1b}.expired-text{color:#dc2626;font-weight:600}.discount-notes{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.discount-notes label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;font-weight:600;display:block;margin-bottom:.5rem}.discount-notes p{margin:0;color:#4b5563;font-size:.9rem;line-height:1.5}.expired-warning{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#fef2f2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:.875rem;margin-top:1rem}.discount-card-actions{display:flex;gap:.75rem;padding-top:1rem;border-top:1px solid #e5e7eb}.empty-state{text-align:center;padding:4rem 2rem;background:#fff;border:2px dashed #e5e7eb;border-radius:12px}.empty-state h3{margin:1rem 0 .5rem;color:#1f2937;font-size:1.25rem}.empty-state p{color:#6b7280;margin-bottom:1.5rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-header h3{margin:0;font-size:1.5rem;font-weight:600;color:#1f2937}.modal-close:hover{background:#f3f4f6;color:#1f2937}.discount-form{padding:1.5rem}.form-section{margin-bottom:2rem}.form-section h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#1f2937;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-hint{display:block;margin-top:.25rem;font-size:.75rem;color:#6b7280}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding-top:1.5rem;border-top:1px solid #e5e7eb;margin-top:2rem}.btn-primary,.btn-secondary,.btn-danger{padding:.75rem 1.5rem;border-radius:8px;font-weight:500;font-size:.95rem;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;border:none}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.btn-danger{background:#fee2e2;color:#991b1b}.message{padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500}.message.success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;color:#6b7280}.loading-spinner{width:40px;height:40px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.avatar-picker{margin:1.5rem 0}.avatar-picker-current{margin-bottom:2rem}.avatar-picker-current label,.avatar-picker-options label,.avatar-picker-custom label{display:block;font-weight:600;color:#1f2937;margin-bottom:.75rem;font-size:.875rem}.current-avatar-display{display:flex;align-items:center;gap:1rem}.avatar-preview-large{width:80px;height:80px;border-radius:50%;object-fit:cover;border:3px solid #e5e7eb;box-shadow:0 2px 8px #0000001a}.avatar-preview-large.avatar-initials{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:2rem;font-weight:600;border:3px solid #e5e7eb}.avatar-picker-options{margin-bottom:2rem}.avatar-picker-description{font-size:.875rem;color:#6b7280;margin-bottom:1rem;line-height:1.5}.avatar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:1rem;margin-top:.75rem}.avatar-option{position:relative;width:70px;height:70px;padding:0;border:3px solid #e5e7eb;border-radius:50%;background:#fff;cursor:pointer;transition:all .2s;overflow:hidden}.avatar-option:hover{border-color:#3b82f6;transform:scale(1.05);box-shadow:0 4px 12px #3b82f64d}.avatar-option.selected{border-color:#3b82f6;border-width:4px;box-shadow:0 4px 16px #3b82f666}.avatar-thumbnail{width:100%;height:100%;object-fit:cover;display:block}.avatar-selected-indicator{position:absolute;top:-4px;right:-4px;width:24px;height:24px;background:#3b82f6;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;border:2px solid white;box-shadow:0 2px 4px #0003}.avatar-selected-indicator svg{width:14px;height:14px}.avatar-picker-actions{margin-top:1.5rem;display:flex;justify-content:center}.btn-clear-avatar{padding:.625rem 1.25rem;font-size:.875rem;border:1px solid #d1d5db;background:#fff;color:#6b7280;border-radius:6px;cursor:pointer;transition:all .2s}.btn-clear-avatar:hover{background:#f9fafb;border-color:#9ca3af;color:#374151}.preferences-alerts{display:grid;gap:1rem}.preferences-header{display:grid;gap:4px}.preferences-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);display:grid;gap:.75rem}.preferences-section-header{display:flex;gap:.75rem;align-items:flex-start;color:#0f172a}.preferences-section-header h3{margin:0;font-size:.9375rem;font-weight:600}.preferences-section-header p{margin:4px 0 0;font-size:.8125rem;color:var(--gray-500)}.tab-brand-icons{display:inline-flex;align-items:center;gap:6px;margin-left:8px}.tab-brand-icon{width:16px;height:16px;opacity:.85}.notification-settings{max-width:900px;width:100%;padding:0}.notification-settings-loading{text-align:center;padding:3rem 1.5rem;color:var(--gray-500);font-size:.875rem}.notification-message{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.8125rem;font-weight:500}.notification-message.success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.notification-message.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.settings-sections{display:flex;flex-direction:column;gap:1rem}.settings-section{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);box-shadow:var(--shadow-sm);overflow:hidden}.settings-section>.section-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--gray-100);background:var(--gray-50)}.section-title{display:inline-flex;align-items:center;gap:.5rem;color:var(--gray-900)}.settings-section>.section-header h2{font-size:.9375rem;font-weight:600;color:var(--gray-900);margin:0}.settings-section>.section-content{padding:1rem 1.25rem}.setting-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid var(--gray-100)}.setting-item:first-child{padding-top:0}.setting-item:last-child{border-bottom:none;padding-bottom:0}.setting-info{flex:1;padding-right:1.5rem;min-width:0}.setting-info h3{font-size:.8125rem;font-weight:600;color:var(--gray-800);margin:0 0 2px}.setting-title{display:inline-flex;align-items:center;gap:6px}.setting-title svg{color:var(--gray-400);flex-shrink:0}.setting-info p{font-size:.75rem;color:var(--gray-500);margin:0;line-height:1.4}.brand-icon{width:18px;height:18px;display:inline-block;flex-shrink:0}.help-link{display:inline-block;margin-top:6px;font-size:.75rem;color:#2bc5b5;text-decoration:none;font-weight:500}.help-link:hover{text-decoration:underline}.toggle-switch input{opacity:0;width:0;height:0;position:absolute}.toggle-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:var(--gray-300);transition:background-color .2s ease,box-shadow .2s ease;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:transform .2s ease;border-radius:50%;box-shadow:0 1px 3px #0000001f}input:checked+.toggle-slider{background-color:#2bc5b5}input:checked+.toggle-slider:before{transform:translate(20px)}input:focus-visible+.toggle-slider{box-shadow:0 0 0 3px #2bc5b540}input:disabled+.toggle-slider{opacity:.45;cursor:not-allowed}.threshold-input{display:flex;align-items:center;gap:6px;background:#fff;padding:6px 10px;border-radius:var(--radius-sm);border:1px solid var(--gray-200)}.threshold-input input{width:80px;padding:.375rem .5rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;text-align:right;background:#fff}.threshold-input input:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 2px #2bc5b526}.threshold-input span{color:var(--gray-500);font-weight:500;font-size:.8125rem}.webhook-field{display:flex;flex-direction:column;gap:.375rem}.webhook-label{display:flex;flex-direction:column;gap:2px;font-size:.8125rem;font-weight:600;color:var(--gray-800)}.webhook-description{font-weight:400;font-size:.75rem;color:var(--gray-500);line-height:1.4}.webhook-input{width:100%;padding:.5rem .75rem;border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.8125rem;font-family:SF Mono,Monaco,Cascadia Code,Courier New,monospace;background:#fff;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.webhook-input:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 2px #2bc5b526}.webhook-input::placeholder{color:var(--gray-400)}.notification-settings .test-button{margin-top:.75rem;padding:.5rem 1rem;background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.notification-settings .test-button:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.notification-settings .test-button:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b533}.notification-settings .test-button:disabled{opacity:.5;cursor:not-allowed}.settings-actions{margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--gray-200);display:flex;justify-content:flex-end}.save-button{padding:.5rem 1.25rem;background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;border:none;border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.save-button:hover:not(:disabled){background:linear-gradient(135deg,#0f2757,#27b0a2);transform:translateY(-1px);box-shadow:0 4px 12px #14b8a640}.save-button:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b54d}.save-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.setting-item{flex-direction:column;align-items:flex-start;gap:.75rem}.setting-info{padding-right:0}.threshold-input{width:100%}.threshold-input input{flex:1}}.anomaly-settings{display:grid;gap:1rem}.anomaly-settings-panel{background:var(--gray-50);box-shadow:none;border-color:var(--gray-200)}.anomaly-settings-loading{font-size:.875rem;color:var(--gray-500);padding:2rem 0;text-align:center}.anomaly-settings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.anomaly-settings-title{display:flex;gap:.75rem;align-items:flex-start}.anomaly-settings-title h3{margin:0;font-size:.9375rem;font-weight:600;color:var(--gray-900)}.anomaly-settings-title p{margin:4px 0 0;color:var(--gray-500);font-size:.8125rem;line-height:1.4}.anomaly-settings-icon{width:32px;height:32px;border-radius:var(--radius-sm);background:#fef2f2;color:#ef4444;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.anomaly-settings-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-size:.6875rem;font-weight:600;flex-shrink:0;white-space:nowrap}.anomaly-settings-status{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;border-radius:var(--radius-md);font-size:.8125rem}.anomaly-settings-status.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.anomaly-settings-status.error{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.anomaly-settings-channels{display:inline-flex;align-items:center;gap:8px;font-size:.75rem;color:var(--gray-500);font-weight:500}.anomaly-settings-channels img{width:16px;height:16px}.anomaly-settings-form{display:grid;gap:1rem}.anomaly-settings-section{border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1rem 1.25rem;background:var(--gray-50);display:grid;gap:.75rem}.anomaly-settings-panel .anomaly-settings-section{background:#fff}.anomaly-settings-section .section-header{padding:0;border-bottom:none;background:transparent}.anomaly-settings-section .section-header h4{margin:0;font-size:.8125rem;font-weight:600;color:var(--gray-800);text-transform:uppercase;letter-spacing:.04em}.anomaly-settings-section .section-header p{margin:4px 0 0;font-size:.75rem;color:var(--gray-500);line-height:1.4}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.settings-field{display:grid;gap:4px;font-size:.8125rem;color:var(--gray-900)}.settings-field span{font-weight:600;color:var(--gray-700);font-size:.8125rem}.settings-field input[type=text],.settings-field input[type=number],.settings-field select{padding:.5rem .75rem;border-radius:var(--radius-sm);border:1px solid var(--gray-300);font-size:.8125rem;background:#fff;color:var(--gray-900);transition:border-color .2s,box-shadow .2s}.settings-field input[type=text]:focus,.settings-field input[type=number]:focus,.settings-field select:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 2px #2bc5b526}.settings-field input[type=text]::placeholder,.settings-field input[type=number]::placeholder{color:var(--gray-400)}.settings-field input[type=checkbox]{width:16px;height:16px;accent-color:hsl(174 64% 47%);cursor:pointer}.settings-field-wide{grid-column:span 2}.settings-action{justify-self:flex-start;padding:.5rem 1rem;border-radius:var(--radius-sm);border:1px solid var(--gray-300);background:#fff;color:var(--gray-700);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.settings-action:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.settings-action:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b533}.settings-action:disabled{opacity:.5;cursor:not-allowed}.anomaly-settings-footer{display:flex;justify-content:flex-end;padding-top:.75rem;border-top:1px solid var(--gray-200)}.settings-save{padding:.5rem 1.25rem;border-radius:var(--radius-sm);border:none;background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s ease}.settings-save:hover:not(:disabled){background:linear-gradient(135deg,#0f2757,#27b0a2);transform:translateY(-1px);box-shadow:0 4px 12px #14b8a640}.settings-save:focus-visible{outline:none;box-shadow:0 0 0 3px #2bc5b54d}.settings-save:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 720px){.anomaly-settings-header{flex-direction:column;align-items:flex-start}.settings-field-wide{grid-column:span 1}.settings-grid{grid-template-columns:1fr}}.cloud-help-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease-out}.cloud-help-modal{background:#fff;border-radius:12px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.cloud-help-header{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;border-bottom:1px solid #e5e7eb}.cloud-help-header h2{margin:0;font-size:24px;color:#1f2937;font-weight:600}.close-button{background:none;border:none;font-size:32px;color:#6b7280;cursor:pointer;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.close-button:hover{background:#f3f4f6;color:#1f2937}.cloud-help-content{flex:1;overflow-y:auto;padding:0}.provider-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;padding:20px 30px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.provider-tab{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:500}.provider-tab:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.provider-tab.active{background:#eff6ff;border-width:2px;box-shadow:0 4px 12px #3b82f633}.provider-icon{width:24px;height:24px;object-fit:contain}.provider-name{color:#374151}.content-tabs{display:flex;gap:8px;padding:20px 30px 0;border-bottom:2px solid #e5e7eb}.content-tab{padding:12px 24px;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:15px;font-weight:500;color:#6b7280;transition:all .2s;position:relative;bottom:-2px}.content-tab:hover{color:#3b82f6}.content-tab.active{color:#3b82f6;border-bottom-color:#3b82f6}.tab-content{padding:30px;min-height:400px}.setup-steps{display:flex;flex-direction:column;gap:24px}.setup-step{padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6}.setup-step h3{margin:0 0 8px;font-size:16px;color:#1f2937;font-weight:600}.setup-step p{margin:0 0 12px;color:#4b5563;line-height:1.6}.external-link{display:inline-flex;align-items:center;gap:4px;color:#3b82f6;text-decoration:none;font-weight:500;font-size:14px;margin-bottom:12px}.external-link:hover{text-decoration:underline}.step-details{margin:12px 0;padding-left:20px}.step-details li{color:#374151;line-height:1.8;margin-bottom:6px}.code-block{background:#1f2937;color:#e5e7eb;padding:16px;border-radius:6px;overflow-x:auto;font-size:13px;line-height:1.6;margin:12px 0;font-family:Monaco,Menlo,Courier New,monospace}.warning-box{background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;padding:12px 16px;margin:12px 0;color:#92400e;font-size:14px;font-weight:500}.telemetry-info{background:#eef2ff;border:1px solid #c7d2fe;border-radius:8px;padding:16px;margin-bottom:20px}.telemetry-info h3{margin:0 0 8px;font-size:15px;color:#4338ca;font-weight:600}.telemetry-info p{margin:0;color:#4338ca;font-size:14px;line-height:1.6}.troubleshooting-section{display:flex;flex-direction:column;gap:24px}.issue-block{padding:20px;background:#fef2f2;border-radius:8px;border-left:4px solid #ef4444}.issue-block h3{margin:0 0 12px;font-size:16px;color:#991b1b;font-weight:600}.issue-block h4{margin:12px 0 8px;font-size:14px;color:#7f1d1d;font-weight:600}.solutions-list{margin:0;padding-left:20px}.solutions-list li{color:#7f1d1d;line-height:1.8;margin-bottom:8px}.security-section{display:flex;flex-direction:column;gap:20px}.security-tip{display:flex;gap:16px;padding:20px;background:#f0fdf4;border-radius:8px;border-left:4px solid #10b981}.tip-icon{font-size:32px;flex-shrink:0}.tip-content h3{margin:0 0 8px;font-size:16px;color:#065f46;font-weight:600}.tip-content p{margin:0;color:#047857;line-height:1.6}.cloud-help-footer{padding:20px 30px;border-top:1px solid #e5e7eb;background:#f9fafb;text-align:center}.cloud-help-footer p{margin:0;color:#6b7280;font-size:14px}.cloud-help-footer a{color:#3b82f6;text-decoration:none;font-weight:500}.cloud-help-footer a:hover{text-decoration:underline}@media (max-width: 768px){.cloud-help-modal{max-width:100%;max-height:100vh;border-radius:0}.provider-tabs{grid-template-columns:1fr}.content-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.content-tab{white-space:nowrap}.tab-content{padding:20px}}.cloud-accounts-container{padding:2rem;max-width:1400px;margin:0 auto}.accounts-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.accounts-header h1{font-size:2rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.accounts-header p{color:var(--gray-500);margin:0}.header-actions{display:flex;gap:12px;align-items:center}.btn-help{display:flex;align-items:center;gap:8px;padding:.75rem 1.25rem;background:#fff;color:#3b82f6;border:2px solid #3b82f6;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;font-size:14px}.btn-help:hover{background:#3b82f6;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f64d}.btn-help svg{flex-shrink:0}.btn-add{padding:.75rem 1.5rem;background:linear-gradient(135deg,#0891b2,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #0891b24d}.btn-add:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0891b266}.info-banner{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem 1.5rem;background:hsl(var(--primary) / .05);border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius-md);margin-bottom:1.5rem;color:hsl(var(--primary))}.info-banner svg{width:24px;height:24px;flex-shrink:0;margin-top:2px}.info-banner strong{display:block;font-weight:600;margin-bottom:.25rem;color:hsl(var(--foreground))}.info-banner p{margin:0;font-size:.875rem;color:hsl(var(--muted-foreground))}.message-banner{padding:1rem 1.5rem;border-radius:var(--radius-md);margin-bottom:1.5rem;font-weight:500}.message-banner.success{background:#d1fae5;color:#065f46;border:1px solid #10b981}.message-banner.error{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.account-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.5rem;transition:all .2s;box-shadow:var(--shadow-sm)}.account-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.account-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--gray-200)}.account-provider{display:flex;gap:1rem;align-items:center}.provider-icon-wrapper{display:flex;align-items:center;justify-content:center;width:56px;height:56px;min-width:56px;background:#fff;border-radius:var(--radius-md);border:1px solid var(--gray-200);padding:.5rem}.provider-icon-wrapper svg{max-width:100%;max-height:100%;width:auto;height:auto}.provider-showcase{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid var(--gray-200);padding:2rem 1.5rem;text-align:center;transition:all .4s ease}.provider-showcase-title{font-size:.875rem;font-weight:600;color:var(--gray-600);text-transform:uppercase;letter-spacing:.5px;margin:0 0 1.5rem}.provider-logos{display:flex;justify-content:center;align-items:center;gap:2rem;flex-wrap:wrap}.provider-logo-item{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background:#fff;border:2px solid var(--gray-200);border-radius:var(--radius-lg);padding:1rem;transition:all .3s ease;cursor:default}.provider-logo-item svg{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.provider-logo-item.active{border-width:3px;transform:scale(1.1);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1.1)}50%{transform:scale(1.15)}}.provider-select{width:100%;padding:.75rem 1rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;font-weight:500;transition:all .2s;background:#fff}.telemetry-note{margin:.5rem 0 1rem;padding:.75rem 1rem;border-radius:var(--radius-md);background:#f1f5f9;border:1px solid #e2e8f0;color:var(--gray-700);font-size:.875rem;display:flex;flex-direction:column;gap:.35rem}.telemetry-note strong{font-size:.8125rem;text-transform:uppercase;letter-spacing:.4px;color:var(--gray-600)}.telemetry-note-muted{color:var(--gray-500);font-size:.8125rem}.account-provider h3{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:var(--gray-900)}.provider-name{font-size:.875rem;color:var(--gray-500)}.account-status{flex-shrink:0}.status-badge{padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.verified{background:#d1fae5;color:#065f46}.status-badge.unverified{background:#fef3c7;color:#92400e}.status-badge.metrics-supported{background:linear-gradient(135deg,#8b5cf6,#ec4899);color:#fff;font-size:.7rem;padding:.2rem .6rem;display:inline-flex;align-items:center;gap:.25rem}.account-details{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.account-capabilities{background:#f8fafc;border:1px solid var(--gray-200);border-radius:var(--radius-md);padding:.75rem;margin-bottom:1rem}.capabilities-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.capabilities-title{display:inline-flex;align-items:center;gap:.35rem;font-size:.8125rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.4px}.capabilities-note{font-size:.75rem;color:var(--gray-500)}.capabilities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.5rem}.capability-chip{border-radius:var(--radius-sm);padding:.5rem .6rem;display:flex;flex-direction:column;gap:.2rem;border:1px solid transparent;background:#fff}.capability-label{font-size:.75rem;color:var(--gray-600);font-weight:600}.capability-status{font-size:.75rem;font-weight:600;color:var(--gray-900)}.capability-chip.enabled{border-color:#86efac;background:#f0fdf4}.capability-chip.enabled .capability-status{color:#15803d}.capability-chip.warning{border-color:#fcd34d;background:#fffbeb}.capability-chip.warning .capability-status{color:#b45309}.capability-chip.pending{border-color:#bae6fd;background:#eff6ff}.capability-chip.pending .capability-status{color:#1d4ed8}.capability-chip.disabled{border-color:#fecaca;background:#fef2f2}.capability-chip.disabled .capability-status{color:#b91c1c}.capability-chip.unknown{border-color:var(--gray-200);background:#fff}.capability-chip.unknown .capability-status{color:var(--gray-500)}.detail-row{display:flex;justify-content:space-between;font-size:.875rem}.detail-label{color:var(--gray-500);font-weight:500}.detail-value{color:var(--gray-900);font-weight:600;font-family:Monaco,Courier New,monospace}.account-notes{background:var(--gray-50);padding:.75rem;border-radius:var(--radius-sm);font-size:.875rem;color:var(--gray-700);margin-bottom:1rem;display:flex;gap:.5rem}.notes-icon{flex-shrink:0}.account-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--gray-200)}.btn-test,.btn-edit,.btn-delete{flex:1;padding:.5rem;border:none;border-radius:var(--radius-sm);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-test{background:#fff;color:#0891b2;border:1px solid #0891b2}.btn-test:hover:not(:disabled){background:#0891b2;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #0891b240}.btn-test:disabled{opacity:.6;cursor:not-allowed}.btn-edit{background:#fff;color:#6b7280;border:1px solid #6b7280}.btn-edit:hover{background:#6b7280;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #6b728040}.btn-delete{background:#f8f9fa;color:#6c757d;border:1px solid #dee2e6}.btn-delete:hover{background:#e9ecef;color:#495057;transform:translateY(-1px);box-shadow:0 2px 8px #6c757d26}.empty-state{grid-column:1 / -1;text-align:center;padding:4rem 2rem;background:#fff;border:2px dashed var(--gray-300);border-radius:var(--radius-lg)}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin:0 0 .5rem}.empty-state p{color:var(--gray-500);margin:0 0 1.5rem}.empty-actions{display:flex;gap:12px;justify-content:center;align-items:center}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,#0891b2,#14b8a6);color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0891b24d}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#6b7280;border:2px solid #e5e7eb;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{border-color:#3b82f6;color:#3b82f6;transform:translateY(-2px);box-shadow:0 4px 12px #3b82f626}.modal-content{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);max-width:600px;width:100%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--gray-200)}.modal-header h2{font-size:1.5rem;font-weight:600;color:var(--gray-900);margin:0}.modal-close{background:none;border:none;font-size:2rem;color:var(--gray-400);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.modal-close:hover{background:var(--gray-100);color:var(--gray-600)}.form-group label{display:block;font-size:.875rem;font-weight:600;color:var(--gray-700);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .875rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;transition:all .2s;font-family:inherit}.form-group textarea{resize:vertical;font-family:Monaco,Courier New,monospace;font-size:.8125rem}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #06b6d426}.form-group input:disabled{background:var(--gray-100);cursor:not-allowed}.info-message{background:var(--primary-50);border:1px solid var(--primary-200);border-radius:var(--radius-md);padding:.75rem 1rem;margin-bottom:1rem;font-size:.875rem;color:var(--primary-700)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid var(--gray-200)}.btn-cancel,.btn-save{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel{background:#fff;color:var(--gray-700);border:1px solid var(--gray-300)}.btn-cancel:hover{background:var(--gray-50)}.btn-save{background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff}.btn-save:hover{transform:translateY(-1px);box-shadow:0 4px 12px #06b6d44d}.loading{text-align:center;padding:4rem;color:var(--gray-500);font-size:1.125rem}@media (max-width: 768px){.cloud-accounts-container{padding:1rem}.accounts-header{flex-direction:column;gap:1rem}.btn-add{width:100%}.accounts-grid{grid-template-columns:1fr}.account-actions{flex-direction:column}.modal-content{max-height:95vh}}.sync-timestamp{display:flex;align-items:center;gap:.375rem}.sync-icon{font-size:.875rem}.status-active{color:#10b981;font-weight:600}.status-inactive{color:#ef4444;font-weight:600}.account-card.recently-used{border-left:3px solid var(--primary-500)}.account-card.recently-used:before{content:"🔥 Recently Used";position:absolute;top:-.5rem;right:1rem;background:var(--primary-500);color:#fff;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;box-shadow:0 2px 4px #0000001a}.account-card{position:relative}.detail-value.sync-timestamp{font-family:inherit;font-weight:500;color:var(--gray-600)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ai-modal-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow:hidden;animation:slideUp .3s ease-out;display:flex;flex-direction:column;height:auto}.ai-modal-header{padding:24px 32px;background:linear-gradient(135deg,#14b8a6,#06b6d4);display:flex;justify-content:space-between;align-items:center;flex-shrink:0;border-radius:16px 16px 0 0}.ai-modal-subtitle{font-size:13px;color:#ffffffd9;margin-top:4px}.modal-close{width:36px;height:36px;border-radius:8px;border:none;background:#fff3;color:#fff;font-size:24px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:#ffffff4d;color:#fff}.ai-modal-footer{padding:20px 32px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;background:#f8fafc;flex-shrink:0}.ai-modal-stepper{display:flex;gap:12px;padding:14px 24px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:12px;font-weight:600;color:#64748b;flex-wrap:wrap}.ai-step{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#e2e8f0}.ai-step span{width:20px;height:20px;border-radius:999px;background:#cbd5f5;color:#1e293b;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.ai-step.active{background:#e0f2fe;color:#0369a1}.ai-step.active span{background:#38bdf8;color:#0f172a}.ai-success-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:18px 20px;color:#1f2937}.ai-success-panel h3{margin:0 0 8px;font-size:18px;font-weight:700}.ai-success-panel p{margin:0 0 16px;font-size:14px;color:#475569;line-height:1.5}.ai-success-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px}.ai-success-details span{display:block;font-size:12px;color:#64748b;margin-bottom:4px;text-transform:uppercase;letter-spacing:.3px}.ai-success-details strong{font-size:14px;color:#0f172a}.ai-success-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.error-banner{background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:12px 16px;margin:0 0 16px;display:flex;align-items:center;gap:12px;color:#dc2626;font-size:14px;flex-shrink:0}.error-banner svg{width:20px;height:20px;flex-shrink:0}.step-description{font-size:15px;color:#64748b;margin:0 0 24px;text-align:center}.ai-onboarding-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;margin-bottom:20px}.ai-onboarding-header{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:700;color:#1f2937;margin-bottom:8px}.ai-onboarding-tag{background:#e0f2fe;color:#0369a1;font-size:11px;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.3px}.ai-onboarding-panel ul{margin:0;padding-left:18px;color:#475569;font-size:13px;line-height:1.6}.provider-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.provider-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:24px 16px;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;gap:12px;position:relative}.provider-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f;border-color:currentColor}.provider-card.provider-disabled{background:#f8fafc;border-color:#e2e8f0;cursor:not-allowed;opacity:.7}.provider-card.provider-disabled:hover{transform:none;box-shadow:none;border-color:#e2e8f0}.provider-card.provider-disabled .provider-name{color:#94a3b8}.coming-soon-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;padding:4px 8px;border-radius:4px;box-shadow:0 2px 4px #0000001a}.provider-icon{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center}.provider-name{font-size:14px;font-weight:600;color:#1a202c;text-align:center}.selected-provider-banner{padding:16px 20px;border-radius:8px;margin-bottom:24px;display:flex;align-items:center;gap:12px;font-size:15px;font-weight:600;color:#1a202c}.provider-icon-small{font-size:24px}.change-provider{margin-left:auto;padding:6px 12px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#64748b;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.change-provider:hover{background:#f8fafc;border-color:#94a3b8;color:#475569}.form-group{margin-bottom:24px}.form-group label{display:block;font-size:14px;font-weight:600;color:#1a202c;margin-bottom:8px}.form-group input[type=text],.form-group input[type=password],.form-group textarea{width:100%;padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;color:#1a202c;transition:all .2s ease;font-family:inherit}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.form-group textarea{resize:vertical;min-height:60px}.field-hint{display:block;font-size:12px;color:#94a3b8;margin-top:6px}.api-key-actions{display:flex;justify-content:space-between;align-items:center;margin-top:6px;gap:12px}.btn-test-connection{padding:6px 12px;border-radius:6px;border:1px solid #14b8a6;background:#fff;color:#14b8a6;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-test-connection:hover:not(:disabled){background:#14b8a61a}.btn-test-connection:disabled{opacity:.5;cursor:not-allowed}.test-result{margin-top:8px;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:500}.test-result.success{background:#d1fae5;color:#065f46;border:1px solid #10b981}.test-result.error{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.api-key-input-wrapper{position:relative}.api-key-input-wrapper input{padding-right:48px}.toggle-visibility{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:32px;height:32px;border:none;background:transparent;cursor:pointer;font-size:18px;border-radius:6px;transition:background .2s ease}.toggle-visibility:hover{background:#f1f5f9}.tracking-methods{display:flex;flex-direction:column;gap:12px}.tracking-method-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s ease}.tracking-method-option:hover{border-color:#cbd5e1;background:#f8fafc}.tracking-method-option input[type=radio]{margin-top:2px;width:18px;height:18px;cursor:pointer;accent-color:#14b8a6}.tracking-method-option input[type=radio]:checked~.method-content{color:#14b8a6}.tracking-method-option:has(input:checked){border-color:#14b8a6;background:#14b8a60d}.method-content{flex:1}.method-name{font-size:14px;font-weight:600;color:#1a202c;margin-bottom:4px}.method-description{font-size:13px;color:#64748b}.btn-cancel,.btn-submit{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#475569}.btn-submit{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;box-shadow:0 2px 8px #14b8a64d;border:2px solid transparent}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #14b8a666}.btn-submit:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 640px){.ai-modal-container{max-width:100%;max-height:100vh;border-radius:0}.ai-modal-header{padding:20px 24px}.ai-modal-body{padding:24px}.ai-modal-footer{padding:16px 24px;flex-direction:column-reverse}.btn-cancel,.btn-submit{width:100%;justify-content:center}.provider-grid{grid-template-columns:repeat(2,1fr)}.error-banner{margin:0 24px 16px}}.ai-btn-delete{background:#dc2626;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.ai-btn-delete:hover{background:#b91c1c}.ai-btn-delete:disabled{background:#9ca3af;cursor:not-allowed}.ai-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.ai-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.ai-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px;animation:fadeIn .2s ease-out}.ai-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;width:100%;max-height:90vh;overflow:hidden;animation:slideUp .3s ease-out;display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.ai-modal-header{padding:24px 32px;background:linear-gradient(135deg,#14b8a6,#06b6d4);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.ai-modal-header h2{font-size:24px;font-weight:700;color:#fff;margin:0}.ai-modal-close{width:36px;height:36px;border-radius:8px;border:none;background:#fff3;color:#fff;font-size:28px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;line-height:1;padding:0}.ai-modal-close:hover{background:#ffffff4d;transform:scale(1.1)}.ai-modal-body{padding:32px;overflow-y:auto;overflow-x:hidden;flex:1 1 auto;min-height:0;max-height:calc(90vh - 200px)}.ai-modal-body::-webkit-scrollbar{width:8px}.ai-modal-body::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.ai-modal-body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.ai-modal-body::-webkit-scrollbar-thumb:hover{background:#94a3b8}.ai-error-banner{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:12px;margin-bottom:24px;font-size:14px}.ai-error-icon{font-size:18px;flex-shrink:0}.ai-form-group{margin-bottom:24px}.ai-form-group:last-child{margin-bottom:0}.ai-form-group label{display:block;font-size:14px;font-weight:600;color:#1f2937;margin-bottom:8px}.ai-form-group input[type=text],.ai-form-group input[type=email],.ai-form-group input[type=password],.ai-form-group select,.ai-form-group textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;color:#1f2937;background:#fff;transition:all .2s ease;font-family:inherit}.ai-form-group input:focus,.ai-form-group select:focus,.ai-form-group textarea:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.ai-form-group input:disabled,.ai-input-disabled{background:#f9fafb;color:#9ca3af;cursor:not-allowed}.ai-form-group small{display:block;margin-top:6px;font-size:12px;color:#6b7280}.ai-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;color:#1f2937}.ai-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#14b8a6}.ai-checkbox-label span{font-size:14px}.ai-tracking-methods{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ai-tracking-method{border:2px solid #e5e7eb;border-radius:10px;padding:16px;cursor:pointer;transition:all .2s ease;display:flex;gap:12px;align-items:flex-start;background:#fff}.ai-tracking-method:hover{border-color:#14b8a6;background:#f0fdfa}.ai-tracking-method.selected{border-color:#14b8a6;background:linear-gradient(135deg,#f0fdfa,#ecfeff);box-shadow:0 2px 8px #14b8a626}.ai-tracking-method input[type=radio]{margin-top:2px;width:18px;height:18px;cursor:pointer;accent-color:#14b8a6;flex-shrink:0}.ai-tracking-method-content{flex:1}.ai-tracking-method-title{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:4px}.ai-tracking-method-desc{font-size:12px;color:#6b7280}.ai-modal-footer{padding:20px 32px;background:#f9fafb;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-shrink:0}.ai-modal-footer-right{display:flex;gap:12px}.ai-btn-primary,.ai-btn-secondary,.ai-btn-delete{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none;white-space:nowrap}.ai-btn-primary{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;box-shadow:0 2px 8px #14b8a64d}.ai-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #14b8a666}.ai-btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.ai-btn-secondary{background:#fff;color:#6b7280;border:2px solid #e5e7eb}.ai-btn-secondary:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}.ai-btn-delete{background:#fff;color:#dc2626;border:2px solid #fecaca}.ai-btn-delete:hover:not(:disabled){background:#fef2f2;border-color:#dc2626;color:#991b1b}.ai-btn-delete:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 768px){.ai-modal{max-width:100%;max-height:100vh;border-radius:0}.ai-modal-header{padding:20px 24px}.ai-modal-header h2{font-size:20px}.ai-modal-body{padding:24px;max-height:calc(100vh - 180px)}.ai-modal-footer{padding:16px 24px;flex-direction:column;align-items:stretch}.ai-modal-footer-right{width:100%;flex-direction:column-reverse}.ai-btn-primary,.ai-btn-secondary,.ai-btn-delete{width:100%}.ai-tracking-methods{grid-template-columns:1fr}}.ai-provider-display{display:flex;align-items:center;width:100%}.ai-input-disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.accounts-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.accounts-header h1{font-size:2rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.accounts-subtitle{font-size:1rem;color:#6b7280;margin:0}.accounts-filters{display:flex;align-items:center;gap:1.5rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:2rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;flex:1;min-width:200px}.search-box input{flex:1;border:none;background:transparent;font-size:.875rem;color:#374151;outline:none}.search-box input::placeholder{color:#9ca3af}.provider-filter{display:flex;align-items:center;gap:.75rem}.filter-label{font-size:.875rem;font-weight:500;color:#6b7280}.provider-buttons{display:flex;gap:.5rem;flex-wrap:wrap}.provider-btn{display:flex;align-items:center;padding:.5rem 1rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease}.provider-btn:hover{background:#e5e7eb;border-color:#d1d5db}.provider-btn.active{background:#3b82f6;border-color:#3b82f6;color:#fff}.accounts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px}.accounts-empty h2{font-size:1.5rem;font-weight:600;color:#1f2937;margin:1.5rem 0 .5rem}.accounts-empty p{font-size:1rem;color:#6b7280;margin:0 0 2rem}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.account-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .2s ease}.account-card:hover{box-shadow:0 4px 12px #00000014;border-color:#d1d5db}.account-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f3f4f6}.account-provider{display:flex;align-items:center}.account-name{font-size:1.125rem;font-weight:600;color:#1f2937;margin-bottom:.25rem}.account-provider-name{font-size:.875rem;color:#6b7280}.account-status{display:flex;align-items:center;gap:.5rem;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600}.account-status.active{background:#d1fae5;color:#065f46}.account-status.inactive{background:#fee2e2;color:#991b1b}.account-card-body{margin-bottom:1rem}.account-info-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;font-size:.875rem}.info-label{color:#6b7280;font-weight:500}.info-value{color:#1f2937;font-weight:600}.account-card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid #f3f4f6}.action-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;background:#fff;color:#374151}.action-btn:hover{background:#f9fafb;border-color:#d1d5db}.action-btn.test{color:#3b82f6;border-color:#3b82f6}.action-btn.test:hover{background:#eff6ff}.action-btn.toggle{color:#f59e0b;border-color:#f59e0b}.action-btn.toggle:hover{background:#fffbeb}.action-btn.edit{color:#10b981;border-color:#10b981}.action-btn.edit:hover{background:#f0fdf4}.action-btn.delete{color:#ef4444;border-color:#ef4444}.action-btn.delete:hover{background:#fef2f2}.message{display:flex;align-items:center;padding:1rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;font-size:.875rem;font-weight:500}.message.success{background:#d1fae5;color:#065f46;border:1px solid #86efac}.message.error{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;color:#fff;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px #3b82f64d}.provider-logo{border-radius:4px}@media (max-width: 768px){.accounts-header{flex-direction:column;gap:1rem}.accounts-filters{flex-direction:column;align-items:stretch}.accounts-grid{grid-template-columns:1fr}.account-card-actions{flex-wrap:wrap}}.integrations-hub{display:grid;gap:16px}.integrations-hub-header h2{margin:0 0 6px;font-size:20px;color:#0f172a}.integrations-hub-header p{margin:0;font-size:13px;color:#64748b}.integrations-hub-tabs{display:inline-flex;gap:6px;padding:6px;border-radius:999px;border:1px solid rgba(148,163,184,.35);background:#94a3b81f;box-shadow:inset 0 1px #fff9}.integrations-tab{border:1px solid transparent;background:transparent;border-radius:999px;padding:10px 16px;display:grid;gap:2px;text-align:left;cursor:pointer;transition:all .2s ease;min-width:220px;color:#0f172a}.integrations-tab-main{display:flex;align-items:center;gap:8px}.integrations-tab-icon{width:28px;height:28px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:#94a3b833;color:#475569}.integrations-tab span{font-weight:600;font-size:13px;color:inherit}.integrations-tab small{color:#64748b;font-size:11px}.integrations-tab.active{border-color:#3b82f699;background:linear-gradient(135deg,#0f172ae6,#1e293bf2);color:#fff;box-shadow:0 8px 18px #0f172a33}.integrations-tab.active .integrations-tab-icon{background:#ffffff2e;color:#fff}.integrations-tab:hover{background:#fff9}.integrations-hub-content{border:1px solid #e2e8f0;border-radius:16px;padding:14px;background:#fff;box-shadow:0 6px 18px #0f172a0f}.ai-services-container{padding:0}.ai-services-tabs{display:flex;gap:.5rem;border-bottom:2px solid var(--gray-200);margin-bottom:1.25rem;padding-bottom:0}.ai-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;color:var(--gray-500);font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;bottom:-2px}.ai-tab:hover:not(:disabled){color:var(--gray-800);background:var(--gray-50)}.ai-tab.active{color:var(--primary-400);border-bottom-color:var(--primary-400);background:transparent}.ai-tab:disabled{opacity:.5;cursor:not-allowed}.ai-tab-content{min-height:400px}.ai-services-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:0;border-bottom:none;gap:12px;flex-wrap:wrap}.ai-services-header h1{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0}.ai-empty-state-banner{padding:1rem 1.5rem;background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;color:#92400e;font-size:.875rem}.ai-empty-state-banner a{color:#d97706;font-weight:600;text-decoration:underline;cursor:pointer}.ai-empty-state-banner a:hover{color:#b45309}.ai-services-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.provider-filter{display:flex;gap:8px;flex-wrap:wrap}.provider-filter-btn{padding:.5rem .875rem;border:1px solid var(--gray-200);background:#fff;border-radius:var(--radius-md);font-size:.8rem;font-weight:600;color:var(--gray-600);cursor:pointer;transition:all .2s ease;white-space:nowrap;min-width:60px;text-align:center}.provider-filter-btn:hover{background:var(--gray-50);border-color:var(--gray-300, #d1d5db)}.provider-filter-btn.active{background:var(--primary-400);color:#fff;border-color:var(--primary-400);box-shadow:var(--shadow-sm)}.btn-primary{background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;padding:.625rem 1.25rem;border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.ai-overview-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.ai-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-sm);display:flex;align-items:flex-start;gap:.75rem;transition:box-shadow .2s}.ai-card:hover{box-shadow:var(--shadow-md)}.ai-card-icon{font-size:1rem;width:auto;height:auto;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:0;color:#64748b;margin-top:.1rem}.ai-card-content{flex:1}.ai-card-label{font-size:.75rem;font-weight:700;color:var(--gray-600);margin-bottom:.3rem;text-transform:uppercase;letter-spacing:.02em}.ai-card-value{font-size:1.4rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.2rem}.ai-card-subtitle{font-size:.8rem;color:var(--gray-600);line-height:1.35}.ai-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);margin-bottom:.75rem}.ai-widget-wrapper{margin-bottom:.75rem}.ai-section h2{font-size:1.05rem;font-weight:700;color:var(--gray-900);margin:0 0 .75rem}.ai-accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem}.ai-account-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s;cursor:pointer}.ai-account-card:hover{box-shadow:var(--shadow-md)}.ai-account-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.ai-account-provider{font-size:.75rem;font-weight:700;color:var(--gray-600);text-transform:uppercase;letter-spacing:.02em;display:flex;align-items:center}.ai-account-provider img{flex-shrink:0}.ai-account-status{font-size:12px;font-weight:500;padding:4px 10px;border-radius:12px;display:flex;align-items:center;gap:4px}.ai-account-status.active{background:#d4f4dd;color:#1e7e34}.ai-account-status.inactive{background:#f8d7da;color:#721c24}.ai-account-name{font-size:.9375rem;font-weight:700;color:var(--gray-900);margin-bottom:.35rem}.ai-account-method{font-size:.8rem;color:var(--gray-600)}.ai-empty-state{text-align:center;padding:18px;border:1px dashed var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);color:var(--gray-600)}.ai-empty-state p{margin:.35rem 0;font-size:.875rem}.ai-empty-state p:first-child{font-size:.9375rem;font-weight:700;color:var(--gray-900)}.ai-quick-start{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-top:20px}.ai-step{display:flex;gap:16px;align-items:flex-start}.ai-step-number{width:40px;height:40px;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}.ai-step-content h3{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 8px}.ai-step-content p{font-size:14px;color:var(--text-secondary, #666);margin:0;line-height:1.5}.ai-services-container .loading{text-align:center;padding:18px;font-size:.875rem;color:var(--gray-600)}.error-message{background:#fef2f2;color:#991b1b;padding:.75rem 1rem;border-radius:var(--radius-md);border:1px solid #fecaca;margin:.75rem 0;font-size:.875rem}.model-usage-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);transition:box-shadow .2s}.model-requests{font-size:.8rem;color:var(--gray-600)}.model-cost{font-size:1.05rem;font-weight:800;color:var(--gray-900)}@media (max-width: 768px){.ai-services-header{flex-direction:column;align-items:flex-start;gap:.75rem}.ai-services-actions{width:100%;flex-direction:column}.provider-filter{width:100%}.provider-filter-btn{flex:1;min-width:80px;text-align:center}.btn-primary{width:100%}.ai-overview-cards,.ai-quick-start,.ai-accounts-grid{grid-template-columns:1fr}.model-usage-item{flex-direction:column;align-items:flex-start;gap:.5rem}.model-cost{align-self:flex-end}}.ai-account-edit-hint{font-size:12px;color:#9ca3af;margin-top:8px;opacity:0;transition:opacity .2s}.ai-account-card:hover .ai-account-edit-hint{opacity:1}.ai-budget-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.ai-budget-container .budget-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.budget-header h2{font-size:20px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.btn-add-budget{padding:10px 20px;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #14b8a64d}.btn-add-budget:hover{transform:translateY(-2px);box-shadow:0 4px 12px #14b8a666}.budget-form{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:2px solid #99f6e4;border-radius:12px;padding:24px;margin-bottom:24px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:13px;font-weight:600;color:var(--text-primary, #1a1a1a)}.form-group input,.form-group select{padding:10px 12px;border:2px solid #99f6e4;border-radius:8px;font-size:14px;background:#fff;color:var(--text-primary, #1a1a1a);transition:all .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-cancel,.btn-save{padding:10px 24px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:#fff;color:#666;border:2px solid #e0e0e0}.btn-cancel:hover{background:#f5f5f5;border-color:#999}.btn-save{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;box-shadow:0 2px 8px #14b8a64d}.btn-save:hover{transform:translateY(-2px);box-shadow:0 4px 12px #14b8a666}.budget-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.budget-card{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:12px;padding:20px;transition:all .2s ease}.budget-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #14b8a626;border-color:#14b8a6}.ai-budget-container .budget-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.budget-info h3{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 8px}.budget-detail{display:block;font-size:12px;color:var(--text-secondary, #666);margin-bottom:4px}.budget-provider-icon{margin-right:.25rem;vertical-align:middle}.budget-actions{display:flex;gap:8px}.btn-icon{background:#fff;border:1px solid #99f6e4;border-radius:6px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-icon:hover{background:#14b8a6;border-color:#14b8a6;color:#fff;transform:scale(1.1)}.budget-amount{display:flex;align-items:baseline;gap:4px;margin-bottom:16px}.current-spend{font-size:28px;font-weight:700;color:var(--text-primary, #1a1a1a)}.budget-limit{font-size:18px;font-weight:600;color:var(--text-secondary, #666)}.budget-progress-container{display:flex;align-items:center;gap:12px;margin-bottom:16px}.budget-progress-bar{flex:1;height:12px;background:#ccfbf1;border-radius:6px;overflow:hidden}.budget-progress-fill{height:100%;border-radius:6px;transition:all .3s ease}.budget-progress-text{font-size:14px;font-weight:700;min-width:50px;text-align:right}.budget-alert{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px}.budget-empty{text-align:center;padding:48px 24px}.budget-empty p{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 8px}.budget-empty span{font-size:14px;color:var(--text-secondary, #666)}@media (max-width: 768px){.budget-header{flex-direction:column;align-items:flex-start}.btn-add-budget{width:100%}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-cancel,.btn-save{width:100%}.budget-list{grid-template-columns:1fr}}.opt-card-icon{color:#64748b}.ai-optimization-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px;text-align:center;border:1px dashed var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);color:var(--gray-600);margin-top:.75rem}.ai-optimization-empty h2{font-size:1.05rem;font-weight:700;color:var(--gray-900);margin:.75rem 0 .35rem}.ai-optimization-empty p{font-size:.875rem;color:var(--gray-600);margin:0}.enterprise-filter-widget{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);margin-bottom:.75rem;box-shadow:var(--shadow-sm);overflow:hidden}.filter-widget-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e5e7eb}.filter-widget-title{display:flex;align-items:center;gap:.75rem;font-size:1rem;font-weight:600;color:#1f2937}.filter-widget-title svg{color:#3b82f6}.filter-widget-actions{display:flex;align-items:center;gap:.75rem}.filter-clear-btn{padding:.5rem 1rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.filter-clear-btn:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af;color:#374151}.filter-clear-btn:disabled{opacity:.5;cursor:not-allowed}.filter-export-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:6px;font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #3b82f633}.filter-export-btn:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.filter-widget-body{padding:1.5rem}.filter-search{flex:1;min-width:200px;padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;transition:all .2s;background:#fff}.filter-search:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61f}.filter-select{padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;background:#fff;cursor:pointer;min-width:160px;transition:all .2s}.filter-select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #3b82f61f}.filter-action-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem .875rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;font-size:.875rem;font-weight:600;color:var(--gray-700);cursor:pointer;transition:all .2s ease}.filter-action-btn:hover:not(:disabled){border-color:#cbd5f5;background:#f8fafc}.filter-action-btn:disabled{opacity:.5;cursor:not-allowed}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:1.5rem}.filter-section{display:flex;flex-direction:column;gap:.75rem}.filter-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.filter-section-label{font-size:.8125rem;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.05em}.filter-section-count{font-size:.75rem;font-weight:600;color:#6b7280;background:#f3f4f6;padding:.25rem .5rem;border-radius:12px}.filter-options{display:flex;flex-wrap:wrap;gap:.5rem}.filter-option-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;font-size:.875rem;font-weight:500;color:#374151;cursor:pointer;transition:all .2s ease;position:relative}.filter-option-btn:hover{background:#f3f4f6;border-color:#d1d5db;transform:translateY(-1px);box-shadow:0 2px 4px #0000000d}.filter-option-btn.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6;color:#fff;box-shadow:0 2px 8px #3b82f64d}.filter-option-btn.active svg{color:#fff}.jira-ticket-link{margin-top:10px;font-size:12px;font-weight:600}.jira-ticket-link a{color:#2563eb;text-decoration:none}.jira-ticket-link a:hover{text-decoration:underline}.filter-option-btn.impact-high.active{background:linear-gradient(135deg,#dc2626,#b91c1c);border-color:#dc2626}.filter-option-btn.impact-medium.active{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#f59e0b}.filter-option-btn.impact-low.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.filter-option-btn.status-pending.active{background:linear-gradient(135deg,#6b7280,#4b5563);border-color:#6b7280}.filter-option-btn.status-accepted.active{background:linear-gradient(135deg,#3b82f6,#2563eb);border-color:#3b82f6}.filter-option-btn.status-implemented.active{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b981}.filter-option-label{font-weight:500}.filter-search-row{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.enterprise-search-box{display:flex;align-items:center;gap:.75rem;padding:.875rem 1.25rem;background:#f9fafb;border:1.5px solid #e5e7eb;border-radius:8px;transition:all .2s ease}.enterprise-search-box:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.enterprise-search-box .search-icon{color:#9ca3af;flex-shrink:0}.enterprise-search-box .search-input{flex:1;border:none;background:transparent;font-size:.9375rem;color:#1f2937;outline:none;font-weight:400}.enterprise-search-box .search-input::placeholder{color:#9ca3af;font-weight:400}.search-clear-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:#e5e7eb;border:none;border-radius:50%;color:#6b7280;cursor:pointer;transition:all .2s ease;flex-shrink:0}.search-clear-btn:hover{background:#d1d5db;color:#374151}.ai-recommendations-list{display:flex;flex-direction:column;gap:.75rem}.ai-recommendation-card{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:box-shadow .2s}.ai-recommendation-card:hover{box-shadow:var(--shadow-md)}.recommendation-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--gray-100, #f3f4f6)}.recommendation-badges{display:flex;gap:.75rem;flex-wrap:wrap}.impact-badge{display:inline-flex;align-items:center;padding:.5rem .75rem;border-radius:8px;font-size:.75rem;font-weight:600;border:2px solid}.type-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#f3f4f6;border:1px solid #e5e7eb;border-radius:8px;font-size:.75rem;font-weight:500;color:#374151}.savings-badge-large{display:flex;align-items:baseline;gap:.25rem;padding:.125rem .5rem;background:#d1fae5;color:var(--success, #065f46);border-radius:var(--radius-sm, 6px);font-weight:600;font-size:.8125rem}.savings-amount,.savings-label{font-size:.8125rem;font-weight:600;color:var(--success, #065f46)}.recommendation-card-body{margin-bottom:1.5rem}.recommendation-title{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 .75rem}.recommendation-description{font-size:.9375rem;color:#6b7280;line-height:1.6;margin:0 0 1rem}.recommendation-meta{display:flex;gap:1.5rem;margin-bottom:1rem;padding:.75rem;background:#f9fafb;border-radius:8px}.meta-item{display:flex;align-items:center;gap:.5rem}.meta-label{font-size:.875rem;color:#6b7280;font-weight:500}.meta-value{font-size:.875rem;color:#1f2937;font-weight:600}.recommendation-stats{margin-bottom:1rem}.stat-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#374151}.stat-percentage{color:#6b7280;margin-left:.25rem}.model-comparison{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;margin-bottom:1rem}.model-current,.model-suggested{display:flex;flex-direction:column;gap:.25rem}.model-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.model-name{font-size:1rem;font-weight:600;color:#1f2937}.model-name.suggested{color:#059669}.recommendation-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;padding:1rem;background:#f9fafb;border-radius:8px;margin-bottom:1rem}.metadata-item{display:flex;flex-direction:column;gap:.25rem}.metadata-key{font-size:.75rem;color:#6b7280;text-transform:capitalize}.metadata-value{font-size:.875rem;font-weight:600;color:#1f2937}.recommendation-card-actions{display:flex;gap:.5rem;justify-content:flex-end;padding-top:.75rem;border-top:1px solid var(--gray-100, #f3f4f6)}.action-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid var(--gray-200);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease}.action-btn.accept{background:#d1fae5;color:#065f46;border:1px solid #10b981}.action-btn.accept:hover{background:#10b981;color:#fff}.action-btn.implement{background:#dbeafe;color:#1e40af;border:1px solid #3b82f6}.action-btn.implement:hover{background:#3b82f6;color:#fff}.action-btn.reject{background:#fee2e2;color:#991b1b;border:1px solid #ef4444}.action-btn.reject:hover{background:#ef4444;color:#fff}.action-btn:disabled{opacity:.6;cursor:not-allowed}.action-btn .spin{animation:spin 1s linear infinite}.no-results{text-align:center;padding:18px;border:1px dashed var(--gray-200);border-radius:var(--radius-lg);background:var(--gray-50);color:var(--gray-600)}.ai-optimization-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--gray-200);padding-bottom:0}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:3px solid transparent;font-size:.9375rem;font-weight:500;color:var(--gray-500);cursor:pointer;transition:all .2s ease;position:relative;bottom:-2px}.tab-btn:hover{color:var(--gray-800);background:var(--gray-50)}.tab-btn.active{color:var(--primary-400);border-bottom-color:var(--primary-400);background:transparent}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .375rem;background:var(--primary-400);color:#fff;border-radius:10px;font-size:.75rem;font-weight:600}.tab-btn.active .tab-badge{background:var(--primary-500)}.ai-analytics-section{animation:fadeIn .3s ease;display:flex;flex-direction:column;gap:1.5rem}.ai-analytics-section .forecast-metrics-grid,.ai-analytics-section .dashboard-section{margin-bottom:0}.ai-chart-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:.75rem;box-shadow:var(--shadow-sm)}.model-usage-section{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:0;box-shadow:var(--shadow-sm)}.section-title{display:flex;align-items:center;gap:.5rem;font-size:1.05rem;font-weight:700;color:var(--gray-900);margin:0 0 .75rem}.model-usage-list{display:flex;flex-direction:column;gap:.5rem}.model-usage-item{display:grid;grid-template-columns:2fr 3fr 1fr 80px;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-md);transition:box-shadow .2s}.model-usage-item:hover{box-shadow:var(--shadow-sm)}.model-info{display:flex;flex-direction:column;gap:.15rem}.model-name{font-size:.875rem;font-weight:700;color:var(--gray-900)}.model-requests{font-size:.75rem;color:var(--gray-600)}.model-cost-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;position:relative}.model-cost-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .3s ease}.model-cost{font-size:.875rem;font-weight:800;color:var(--gray-900);text-align:right}.model-percentage{font-size:.8rem;font-weight:500;color:var(--gray-600);text-align:right}.ai-forecasting-section{animation:fadeIn .3s ease;display:flex;flex-direction:column;gap:1.5rem}.ai-forecasting-section .forecast-metrics-grid{margin-bottom:0}.forecast-info-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:1.25rem;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-lg);margin-bottom:.75rem;box-shadow:var(--shadow-sm)}.forecast-info-card h3{font-size:1.05rem;font-weight:700;color:var(--gray-900);margin:.75rem 0 .35rem}.forecast-info-card p{font-size:.875rem;color:var(--gray-600);margin:0;max-width:600px}.status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pending{background:#f3f4f6;color:#6b7280}.status-accepted{background:#dbeafe;color:#1e40af}.status-implemented{background:#d1fae5;color:#065f46}.status-dismissed{background:#fee2e2;color:#991b1b}.export-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#14b8a6);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:auto;box-shadow:0 2px 4px #3b82f633}.export-btn:hover{background:linear-gradient(135deg,#2563eb,#0d9488);box-shadow:0 4px 8px #3b82f64d;transform:translateY(-1px)}.implementation-info{padding:1rem;background:#f0fdf4;border:1px solid #86efac;border-radius:8px;margin-top:1rem}.actual-savings{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#065f46;margin-bottom:.5rem}.implementation-notes{font-size:.875rem;color:#374151;margin-bottom:.5rem;line-height:1.5}.implementation-date{font-size:.75rem;color:#6b7280}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{font-size:1.5rem;font-weight:600;color:#1f2937;margin:0 0 1.5rem}.modal-form{display:flex;flex-direction:column;gap:1rem}.modal-form label{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;font-weight:500;color:#374151}.modal-form textarea,.modal-form input,.modal-form select{padding:.75rem;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-family:inherit;background:#fff}.modal-form textarea:focus,.modal-form input:focus,.modal-form select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-help{margin:0;font-size:.75rem;color:#6b7280}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.btn-cancel{padding:.75rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:6px;font-size:.875rem;font-weight:600;color:#374151;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background:#f9fafb;border-color:#d1d5db}.btn-primary{padding:.5rem 1rem;background:var(--primary-400);border:1px solid var(--primary-400);border-radius:var(--radius-md);font-size:.875rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s ease}.btn-primary.danger{background:#fff;border-color:#ef4444;color:#ef4444}.btn-primary.danger:hover{background:#fee2e2;border-color:#dc2626;color:#dc2626}.btn-primary:hover{background:var(--primary-500);border-color:var(--primary-500)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-primary.danger:disabled{box-shadow:none}@media (max-width: 768px){.filter-widget-header{flex-direction:column;align-items:flex-start;gap:1rem}.filter-widget-actions{width:100%;justify-content:flex-end}.filter-row{grid-template-columns:1fr;gap:1.25rem}.enterprise-filter-widget{margin-bottom:1.5rem}.recommendation-card-header{flex-direction:column;gap:1rem}.recommendation-card-actions{flex-direction:column}.action-btn{width:100%;justify-content:center}.ai-optimization-tabs{flex-wrap:wrap}.tab-btn{flex:1;min-width:120px;justify-content:center}.model-usage-item{grid-template-columns:1fr;gap:.75rem}.model-cost,.model-percentage{text-align:left}}.ai-recommendations-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.recommendations-header{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.recommendations-header h2{font-size:18px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0}.filter-buttons{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.filter-selects{display:flex;gap:6px;flex-wrap:wrap}.filter-selects select{padding:6px 10px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:12px;color:#1f2937}.filter-btn{padding:6px 12px;border:1px solid #99f6e4;background:#fff;border-radius:6px;font-size:12px;font-weight:500;color:#14b8a6;cursor:pointer;transition:all .2s ease;white-space:nowrap}.filter-btn:hover{background:#f0fdfa;border-color:#14b8a6}.filter-btn.active{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-color:transparent;box-shadow:0 2px 8px #14b8a64d}.recommendations-list{display:flex;flex-direction:column;gap:16px}.recommendation-card{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:12px;padding:20px;transition:all .2s ease}.recommendation-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #14b8a626;border-color:#14b8a6}.recommendation-header{display:flex;gap:12px;margin-bottom:16px;flex-wrap:wrap}.impact-badge{padding:6px 12px;border-radius:6px;font-size:11px;font-weight:700;letter-spacing:.5px}.savings-badge{padding:6px 12px;background:#d4f4dd;color:#1e7e34;border-radius:6px;font-size:12px;font-weight:600}.confidence-badge{padding:6px 10px;background:#e0e7ff;color:#3730a3;border-radius:6px;font-size:11px;font-weight:600}.recommendation-title{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 12px}.recommendation-description{font-size:14px;color:var(--text-secondary, #666);line-height:1.6;margin:0 0 16px}.recommendation-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.meta-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:#f8fafc;border:1px solid #e2e8f0;font-size:12px;color:#334155}.recommendation-details{background:#fff;border-radius:8px;padding:16px;margin-bottom:16px;border:1px solid #e0e4ff}.detail-item{display:flex;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:13px;color:var(--text-secondary, #666)}.detail-item:last-child{margin-bottom:0}.detail-icon{color:#14b8a6;font-weight:700;flex-shrink:0}.recommendation-actions{display:flex;gap:12px;justify-content:flex-end}.btn-details,.btn-simulate{padding:10px 16px;border-radius:8px;border:2px solid #cbd5f5;background:#fff;color:#4f46e5;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-details:hover:not(:disabled),.btn-simulate:hover:not(:disabled){background:#eef2ff;border-color:#6366f1}.btn-simulate{border-color:#bae6fd;color:#0369a1}.btn-simulate:hover:not(:disabled){background:#e0f2fe;border-color:#38bdf8}.btn-dismiss,.btn-apply{padding:10px 20px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-dismiss{background:#fff;color:#666;border:2px solid #e0e0e0}.btn-dismiss:hover:not(:disabled){background:#f5f5f5;border-color:#999;color:#333}.btn-apply{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;box-shadow:0 2px 8px #14b8a64d}.btn-apply:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #14b8a666}.btn-dismiss:disabled,.btn-apply:disabled{opacity:.6;cursor:not-allowed}.recommendation-expand{margin-top:16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.expand-section h4,.expand-section h5{margin:0 0 8px;font-size:13px;color:#0f172a}.expand-section p{margin:0 0 12px;font-size:13px;color:#475569}.expand-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:12px}.expand-card{border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.expand-card ul{padding-left:16px;margin:0;font-size:12px;color:#475569}.timeline-row{display:flex;gap:6px;align-items:center;margin-bottom:8px}.timeline-dot{width:10px;height:10px;border-radius:50%;background:#38bdf8;display:inline-block}.action-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#ecfeff;color:#0f766e;border-radius:999px;font-size:12px;font-weight:600}.recommendations-empty{text-align:center;padding:48px 24px}.empty-icon{font-size:64px;margin-bottom:16px}.recommendations-empty p{font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a);margin:0 0 8px}.recommendations-empty span{font-size:14px;color:var(--text-secondary, #666)}.loading{text-align:center;padding:48px;font-size:16px;color:var(--text-secondary, #666)}@media (max-width: 768px){.recommendations-header h2{font-size:16px}.filter-buttons{gap:4px}.filter-btn{padding:4px 8px;font-size:10px}.recommendation-actions{flex-direction:column-reverse}.btn-dismiss,.btn-apply{width:100%}}.recommendation-account{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px}.account-label{color:#666;font-weight:500}.account-name{color:#14b8a6;font-weight:600;background:#fff;padding:4px 10px;border-radius:6px;border:1px solid #99f6e4}.recommendation-stats{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:12px;background:#fff;border-radius:8px;border:1px solid #e0f2fe}.stat-item{font-size:13px;color:#666;font-weight:500}.ai-infra-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014;display:flex;flex-direction:column;gap:20px}.ai-infra-recommendation .btn-dismiss{background:#fee2e2;color:#991b1b;border:2px solid #ef4444}.ai-infra-recommendation .btn-dismiss:hover:not(:disabled){background:#ef4444;color:#fff;border-color:#ef4444}.ai-infra-recommendation .btn-apply{background:#d1fae5;color:#065f46;border:2px solid #10b981;box-shadow:none}.ai-infra-recommendation .btn-apply:hover:not(:disabled){background:#10b981;color:#fff;border-color:#10b981}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;padding:1.5rem;max-width:520px;width:100%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-content h3{margin:0 0 .5rem;color:#0f172a;font-size:1.125rem}.modal-content p{margin:0 0 1rem;color:#64748b;font-size:.875rem}.modal-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.modal-form label{font-size:.8125rem;font-weight:600;color:#334155}.modal-form select,.modal-form input{width:100%;padding:.65rem .75rem;border:1px solid #cbd5e1;border-radius:10px;font-size:.875rem;font-family:inherit;background:#fff}.modal-form select:focus,.modal-form input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.modal-help{margin:.25rem 0 0;font-size:.75rem;color:#64748b}.modal-error{margin-top:.5rem;padding:.5rem .75rem;border-radius:8px;background:#fee2e2;color:#991b1b;font-size:.8125rem;border:1px solid #fecaca}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.modal-btn{padding:.625rem 1.25rem;border:none;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.modal-btn.cancel{background:#f1f5f9;color:#475569}.modal-btn.cancel:hover{background:#e2e8f0}.modal-btn.confirm{background:#fff;color:#dc2626;border:1px solid #dc2626;box-shadow:0 6px 14px #dc26261f}.modal-btn.confirm:hover{background:#fee2e2;color:#dc2626;border-color:#dc2626}.ai-infra-summary{display:flex;flex-direction:column;gap:12px}.ai-infra-onboarding-note{display:grid;gap:8px;padding:12px 14px;border:1px dashed #e2e8f0;border-radius:12px;background:#f8fafc;color:#475569;font-size:12px}.ai-infra-onboarding-text{display:grid;gap:4px}.ai-infra-onboarding-text strong{color:#0f172a;font-size:12px}.ai-infra-onboarding-meta{display:flex;flex-wrap:wrap;gap:12px;color:#64748b;font-size:11px}.ai-infra-data-inputs{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;background:#fff;display:grid;gap:10px}.ai-infra-data-inputs-healthy{border-color:#99f6e4;background:#14b8a60a}.ai-infra-data-inputs-monitor{border-color:#fde68a;background:#f59e0b0f}.ai-infra-data-inputs-needs-attention{border-color:#fecaca;background:#ef44440f}.data-inputs-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.data-inputs-header strong{display:block;font-size:12px;color:#0f172a}.data-inputs-header span{display:block;font-size:11px;color:#64748b;margin-top:2px}.data-inputs-status{font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;background:#e2e8f0;color:#475569;white-space:nowrap}.data-inputs-status-healthy{background:#14b8a626;color:#0f766e}.data-inputs-status-monitor{background:#f59e0b2e;color:#92400e}.data-inputs-status-needs-attention{background:#ef444429;color:#b91c1c}.ai-infra-data-inputs-collapsed{padding:8px 12px;min-height:auto}.data-inputs-collapsed-label{display:flex;align-items:center;gap:8px;width:100%;padding:0;border:none;background:transparent;cursor:pointer;font-size:12px;color:#0f172a;text-align:left}.data-inputs-collapsed-label .data-inputs-chevron{flex-shrink:0;color:#64748b}.data-inputs-collapsed-label .data-inputs-label-text{font-weight:600}.data-inputs-collapsed-label .tooltip-icon{margin-left:auto;color:#64748b;cursor:help}.data-inputs-collapse-btn{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;cursor:pointer;font-size:12px;color:#0f172a;font-weight:600}.data-inputs-collapse-btn strong{font-size:inherit}.data-inputs-description{font-size:11px;color:#64748b;margin:0 0 8px}.ai-infra-data-inputs label{display:grid;gap:6px;font-size:11px;color:#64748b}.ai-infra-data-inputs select,.ai-infra-data-inputs input[type=file]{border:1px solid #e2e8f0;border-radius:8px;padding:6px 8px;font-size:12px;color:#0f172a}.ai-infra-data-inputs button{border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;font-size:12px;background:#f8fafc;color:#0f172a;cursor:pointer}.ai-infra-data-inputs .data-inputs-primary{background:#0f172a;border-color:#0f172a;color:#fff}.ai-infra-data-inputs .data-inputs-ghost{background:#fff}.ai-infra-data-inputs .data-inputs-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;justify-content:space-between}.ai-infra-chart-card{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#fff}.ai-infra-recommendation{background:#fff;border-color:#e2e8f0}.ai-infra-status{padding:6px 10px;border-radius:999px;font-size:11px;font-weight:600;background:#f1f5f9;color:#475569}.ai-infra-status-accepted{background:#dbeafe;color:#2563eb}.ai-infra-status-rejected{background:#fee2e2;color:#b91c1c}.ai-infra-status-implemented{background:#d1fae5;color:#047857}.ai-infra-jira-status{margin-top:8px;font-size:11px;color:#64748b}.ai-infra-jira-link{display:inline-flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;color:#2563eb;text-decoration:none;font-weight:600}.ai-infra-jira-link:hover{text-decoration:underline}.ai-infra-header{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.ai-infra-header-compact .page-title{margin:0}.ai-infra-header-left{display:flex;flex-direction:column;gap:4px;min-width:260px}.ai-infra-summary-line{display:flex;align-items:center;gap:8px;font-size:12px;color:#475569;flex-wrap:wrap}.ai-infra-severity{background:#ef444424;color:#b91c1c;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600}.ai-infra-chip{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:999px;font-size:11px;padding:2px 8px;cursor:pointer}.ai-infra-header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;width:100%}.ai-infra-header-right{margin-left:auto;display:flex;align-items:center;gap:8px;position:relative}.ai-infra-filter-group{position:relative}.data-freshness{font-size:12px;color:#475569;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px}.export-btn{border:1px solid #0ea5a4;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:8px;padding:8px 12px;font-size:12px;cursor:pointer}.export-btn-compact{padding:6px 10px;font-size:11px}.export-btn:disabled{opacity:.6;cursor:not-allowed}.ai-infra-filter-button{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.ai-infra-filter-panel{position:absolute;left:0;top:calc(100% + 6px);background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px;display:grid;gap:8px;min-width:180px;z-index:10;box-shadow:0 10px 24px #0f172a14}.ai-infra-filter-panel label{font-size:11px;font-weight:600;color:#475569;display:flex;align-items:center;gap:6px}.ai-infra-filter-panel select{border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:12px;background:#fff}.optimization-filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.ai-infra-optimization-filters{margin-top:.75rem}.filter-search{flex:1;min-width:200px;padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.875rem;transition:all .2s;background:#fff}.filter-search:focus{outline:none;border-color:#0ea5a4;box-shadow:0 0 0 3px #0ea5a41f}.filter-select{padding:.625rem .875rem;border:1px solid #e2e8f0;border-radius:10px;font-size:.875rem;background:#fff;cursor:pointer;min-width:160px;transition:all .2s}.filter-select:focus{outline:none;border-color:#0ea5a4;box-shadow:0 0 0 3px #0ea5a41f}.ai-infra-executive{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.ai-infra-filters{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.ai-infra-filters-with-quality{justify-content:space-between;flex-wrap:wrap}.ai-infra-filter-controls{display:flex;align-items:center;gap:12px}.ai-infra-filter-label{font-size:12px;color:#475569;font-weight:600}.ai-infra-filters select{border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;font-size:12px;background:#fff}.ai-infra-quality{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff}.ai-infra-quality strong{display:block;font-size:13px;color:#0f172a}.ai-infra-quality-subtitle{display:block;font-size:12px;color:#64748b;margin-top:2px}.ai-infra-quality-metrics{display:flex;gap:12px;font-size:12px;color:#334155;flex-wrap:wrap}.ai-infra-quality-healthy{border-color:#99f6e4;background:#14b8a60f}.ai-infra-quality-monitor{border-color:#fde68a;background:#f59e0b14}.ai-infra-quality-needs-attention{border-color:#fecaca;background:#ef444414}.ai-infra-reconcile{border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;flex-wrap:wrap}.ai-infra-reconcile-metrics{display:flex;gap:12px;font-size:12px;color:#334155;flex-wrap:wrap}.ai-infra-reconcile-actions{display:flex;align-items:center;gap:10px}.reconcile-severity{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:600}.reconcile-severity.low{background:#14b8a626;color:#0f766e}.reconcile-severity.medium{background:#f59e0b2e;color:#92400e}.reconcile-severity.high{background:#ef444429;color:#b91c1c}.reconcile-severity.unknown{background:#94a3b833;color:#475569}.reconcile-action-btn{border:1px solid #0ea5a4;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.executive-card{background:#fff;color:#0f172a;border:1px solid #e2e8f0;border-radius:12px;padding:14px;min-height:100px;box-shadow:0 1px 3px #0f172a14;position:relative}.executive-card-icon{width:32px;height:32px;border-radius:10px;background:transparent;color:#334155;display:inline-flex;align-items:center;justify-content:center;margin-bottom:8px}.executive-card span{font-size:12px;color:#64748b}.executive-card strong{display:block;margin-top:6px;font-size:20px}.executive-card ul{margin:8px 0 0;padding-left:16px;font-size:12px;color:#475569}.executive-card li{margin-bottom:4px}.ai-infra-header h1{margin:0;font-size:20px}.ai-services-tabs{display:flex;gap:8px;border-bottom:2px solid #e5e7eb;margin-bottom:32px;padding-bottom:0;flex-wrap:wrap}.ai-infra-collapsible{display:flex;flex-direction:column;gap:10px}.ai-infra-collapsible>button{align-self:flex-start;border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.ai-infra-secondary{display:grid;gap:12px}.ai-infra-onboarding{border:1px solid #e2e8f0;border-radius:12px;padding:16px;background:#f8fafc;display:flex;flex-direction:column;gap:16px}.onboarding-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}.step-card{display:flex;gap:10px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px}.step-number{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.step-card p{margin:4px 0 0;font-size:12px;color:#64748b}.onboarding-actions{display:grid;grid-template-columns:minmax(220px,1fr) minmax(280px,1fr);gap:16px;align-items:start}.status-cards{display:flex;gap:10px;flex-wrap:wrap}.status-cards>div{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px;flex:1;min-width:150px;display:grid;gap:4px}.status-cards svg{color:#0f766e}.status-cards span{color:#64748b;font-size:12px}.status-cards strong{display:block;margin-top:4px;font-size:18px}.upload-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:12px;display:grid;gap:10px}.upload-card-glow{animation:uploadGlow 2.2s ease-out}@keyframes uploadGlow{0%{box-shadow:0 0 #14b8a673;border-color:#14b8a6}40%{box-shadow:0 0 0 6px #14b8a633;border-color:#0ea5a4}to{box-shadow:0 0 #14b8a600;border-color:#e2e8f0}}.upload-row{display:flex;gap:8px;flex-wrap:wrap}.upload-row select,.upload-row input{flex:1;min-width:180px;border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px}.upload-row button{border:none;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:8px;padding:6px 12px;cursor:pointer}.upload-row button:disabled{opacity:.6;cursor:not-allowed}.upload-error{color:#b91c1c;font-size:12px}.upload-success{color:#166534;font-size:12px}.ai-tab{display:flex;align-items:center;padding:12px 24px;background:transparent;border:none;border-bottom:3px solid transparent;color:#6b7280;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:-2px;gap:6px}.ai-tab:hover:not(:disabled){color:#14b8a6;background:#f0fdfa}.ai-tab.active{color:#14b8a6;border-bottom-color:#14b8a6;background:transparent}.ai-infra-metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px}.ai-infra-card{border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;background:#fff;box-shadow:0 1px 2px #0f172a0a;transition:border-color .2s ease,box-shadow .2s ease}.ai-infra-card span{display:block;color:#64748b;font-size:12px}.tooltip-icon{display:inline-flex;align-items:center;justify-content:center;margin-left:6px;color:#0f766e;cursor:help}.ai-infra-card strong{font-size:18px;color:#0f172a}.ai-infra-card:hover{border-color:#cbd5f5;box-shadow:0 6px 14px #0f172a14}.ai-infra-section{margin-bottom:26px}.ai-infra-section h3{margin:0 0 12px;font-size:16px}.ai-infra-list{display:flex;flex-direction:column;gap:12px}.ai-infra-list-item{display:flex;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;background:#fff;box-shadow:0 1px 2px #0f172a0a;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ai-infra-list-item span{display:block;color:#64748b;font-size:12px}.ai-infra-value{font-weight:600;color:#0f172a}.ai-infra-list-item:hover{border-color:#cbd5f5;box-shadow:0 6px 14px #0f172a14;transform:translateY(-1px)}.ai-infra-badges{display:flex;flex-wrap:wrap;gap:8px}.ai-infra-badge{background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:6px 12px;font-size:12px;color:#334155}.ai-infra-recs{display:grid;gap:16px}.ai-infra-rec-card{border:1px solid #e2e8f0;border-radius:14px;padding:18px;background:#fff;box-shadow:0 1px 2px #0f172a0a;transition:border-color .2s ease,box-shadow .2s ease}.ai-infra-rec-header{display:flex;gap:10px;align-items:center;margin-bottom:10px}.ai-infra-impact{padding:4px 8px;border-radius:6px;font-size:11px;font-weight:600}.ai-infra-savings{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#166534;background:#f0fdf4;padding:4px 8px;border-radius:999px}.ai-infra-rec-meta{display:flex;gap:12px;margin-top:8px;color:#64748b;font-size:12px}.ai-infra-rec-card:hover{border-color:#cbd5f5;box-shadow:0 8px 20px #0f172a1a}.ai-infra-rec-toggle{margin-top:10px;border:1px solid #e2e8f0;background:#fff;color:#0f766e;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.ai-infra-rec-details{margin-top:12px;border-top:1px dashed #e2e8f0;padding-top:12px;display:grid;gap:12px}.ai-infra-rec-detail-block h5{margin:0 0 6px;font-size:13px;color:#0f172a}.ai-infra-rec-detail-block p{margin:0;color:#475569;font-size:12px}.ai-infra-rec-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.ai-infra-rec-detail-grid span{display:block;color:#64748b;font-size:11px}.ai-infra-rec-detail-grid strong{font-size:13px;color:#0f172a}.ai-infra-form{display:grid;grid-template-columns:minmax(120px,160px) 1fr;gap:8px 12px;align-items:center;max-width:520px}.ai-infra-form input{border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px}.ai-infra-form select{border:1px solid #e2e8f0;border-radius:8px;padding:6px 10px;background:#fff}.ai-infra-form button{grid-column:1 / -1;margin-top:8px;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border:none;border-radius:8px;padding:8px 12px;cursor:pointer}.ai-infra-error{margin-top:8px;color:#b91c1c;font-size:12px}.ai-infra-empty{color:#94a3b8;font-size:13px}.ai-infra-loading{padding:40px;text-align:center;color:#64748b}.ai-infra-dashboard{display:flex;flex-direction:column;gap:1.5rem}.ai-dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:16px}.ai-dashboard-header h1{margin:0 0 .35rem;font-size:1.5rem;color:#0f172a}.ai-dashboard-header p{margin:0;color:#64748b}.ai-dashboard-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding:1rem 1.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:16px}.ai-dashboard-filters .filter-group{display:flex;flex-direction:column;gap:.35rem}.ai-dashboard-filters label{font-size:.75rem;font-weight:600;color:#475569}.ai-dashboard-filters select,.ai-dashboard-filters input{border:1px solid #e2e8f0;border-radius:10px;padding:.5rem .75rem;font-size:.875rem}.ai-waste-list{display:flex;flex-direction:column;gap:.75rem}.ai-waste-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px}.ai-waste-title{font-weight:600;color:#0f172a}.ai-waste-meta{font-size:.75rem;color:#64748b;margin-top:.2rem}.ai-waste-value{font-weight:600;color:#ef4444}.ai-flag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem}.ai-flag-list{display:flex;flex-direction:column;gap:.75rem}.ai-flag-item{padding:.75rem 1rem;border-radius:12px;border:1px solid #e2e8f0;background:#f8fafc}.ai-flag-title{font-weight:600;color:#0f172a}.ai-flag-meta{display:flex;justify-content:space-between;font-size:.75rem;color:#64748b;margin-top:.25rem}.ai-actions-row{display:flex;justify-content:flex-end}.primary-btn{background:#2563eb;color:#fff;border:none;padding:.6rem 1rem;border-radius:10px;font-weight:600;cursor:pointer}.primary-btn:disabled{opacity:.7;cursor:not-allowed}.ai-recommendation-list{display:flex;flex-direction:column;gap:1rem}.ai-recommendation-card{border:1px solid #e5e7eb;border-radius:16px;background:#fff;padding:1rem 1.25rem}.ai-recommendation-header{display:flex;justify-content:space-between;gap:1rem}.ai-recommendation-header h4{margin:0 0 .35rem;font-size:1rem}.ai-recommendation-impact{display:flex;flex-direction:column;gap:.5rem;align-items:flex-end}.impact-chip{padding:.25rem .6rem;border-radius:999px;font-size:.7rem;font-weight:600;text-transform:capitalize;background:#f3f4f6;color:#475569}.impact-chip.high{background:#fee2e2;color:#b91c1c}.impact-chip.medium{background:#fef3c7;color:#b45309}.impact-chip.low{background:#dbeafe;color:#1d4ed8}.savings-chip{font-size:.75rem;color:#16a34a}.ai-recommendation-meta{display:flex;gap:1rem;margin-top:.75rem;font-size:.75rem;color:#64748b}.ai-economics-grid{display:grid;grid-template-columns:minmax(240px,1fr) minmax(240px,1fr);gap:1.5rem}.ai-economics-form{display:flex;flex-direction:column;gap:.75rem}.ai-economics-results{display:flex;flex-direction:column;justify-content:center}.ai-empty-inline{font-size:.85rem;color:#64748b}.ai-cost-playground{padding:2rem;max-width:1400px;margin:0 auto}.playground-header{margin-bottom:2rem}.header-content{display:flex;align-items:center;gap:1rem}.header-icon{color:#3b82f6}.playground-header h1{font-size:2rem;font-weight:700;margin:0;color:#1a1a1a}.playground-header p{margin:.5rem 0 0;color:#666;font-size:1rem}.playground-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid #e5e7eb}.tab-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:1rem;font-weight:500;color:#666;transition:all .2s;margin-bottom:-2px}.tab-button:hover{color:#3b82f6;background:#f0f9ff}.tab-button.active{color:#3b82f6;border-bottom-color:#3b82f6;font-weight:600}.playground-content{display:grid;grid-template-columns:400px 1fr;gap:2rem}.input-panel{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;height:fit-content;position:sticky;top:2rem}.input-panel h3{margin:0 0 1.5rem;font-size:1.25rem;font-weight:600;color:#1a1a1a}.input-group{margin-bottom:1.25rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.input-group input,.input-group select{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.9375rem;transition:all .2s}.input-group input:focus,.input-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.compare-models-readonly{padding:.625rem .75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:.875rem;color:#6b7280;background:#f9fafb;cursor:default;-webkit-user-select:none;user-select:none;line-height:1.4}.input-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.input-hint{font-size:.875rem;color:#6b7280;margin-left:.5rem}.optimization-options{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.optimization-options h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1a1a1a}.checkbox-label{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;cursor:pointer;font-size:.9375rem}.checkbox-label input[type=checkbox]{width:auto;cursor:pointer}.run-button{width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#14b8a6);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s;margin-top:1.5rem}.run-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.run-button:disabled{opacity:.6;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}.results-panel{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014;min-height:400px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:400px;color:#9ca3af;text-align:center}.empty-state svg{margin-bottom:1rem;opacity:.5}.error-state{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b}.simulation-results h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#1a1a1a}.cost-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.cost-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem;text-align:center}.cost-card.highlight{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#3b82f6}.cost-label{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.cost-value{font-size:1.75rem;font-weight:700;color:#1a1a1a}.breakdown-section{margin-bottom:2rem}.breakdown-section h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#1a1a1a}.breakdown-chart{display:flex;flex-direction:column;gap:.75rem}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f9fafb;border-radius:6px}.breakdown-item .percentage{color:#6b7280;font-size:.875rem}.token-summary{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.token-item{display:flex;justify-content:space-between;padding:.75rem;background:#f9fafb;border-radius:6px}.comparison-results h3{margin:0 0 .5rem;font-size:1.5rem;font-weight:600;color:#1a1a1a}.comparison-description{color:#6b7280;margin-bottom:1.5rem}.comparison-table{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;margin-bottom:1.5rem}.comparison-header{display:grid;grid-template-columns:2fr 1.5fr 1.5fr 1.5fr;gap:1rem;padding:1rem;background:#f9fafb;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb}.comparison-header-sortable{display:grid;grid-template-columns:2fr 1.5fr 1.5fr 1.5fr;gap:1rem;padding:0;background:#f9fafb;border-bottom:2px solid #e5e7eb}.comparison-th{display:inline-flex;align-items:center;gap:.35rem;padding:1rem;border:none;background:transparent;font-weight:600;font-size:inherit;color:#374151;cursor:pointer;text-align:left;transition:background .15s,color .15s}.comparison-th:hover{background:#f3f4f6;color:#111827}.comparison-th[aria-sort] .sort-icon.inactive{display:none}.sort-icon{flex-shrink:0;color:#6b7280}.comparison-th[aria-sort] .sort-icon:not(.inactive){color:#3b82f6}.comparison-provider-logo{flex-shrink:0;object-fit:contain;border-radius:4px}.model-name{display:flex;align-items:center;gap:.5rem;font-weight:500}.model-name>span{flex:1;min-width:0}.comparison-row{display:grid;grid-template-columns:2fr 1.5fr 1.5fr 1.5fr;gap:1rem;padding:1rem;border-bottom:1px solid #e5e7eb;transition:background .2s}.comparison-row:hover{background:#f9fafb}.comparison-row.recommended{background:#ecfdf5;border-left:4px solid #10b981}.recommended-badge{background:#10b981;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.savings.positive{color:#10b981;font-weight:600}.recommendation-box{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ecfdf5;border:1px solid #10b981;border-radius:8px;color:#065f46}.recommendation-box-logo{flex-shrink:0;object-fit:contain;border-radius:4px}.recommendation-box svg{color:#10b981;flex-shrink:0;margin-top:2px}.recommendation-text{font-size:.875rem;margin-top:.25rem}.optimization-results h3{margin:0 0 1.5rem;font-size:1.5rem;font-weight:600;color:#1a1a1a}.base-scenario{margin-bottom:2rem;padding:1rem;background:#f9fafb;border-radius:8px}.base-scenario h4{margin:0 0 .75rem;font-size:1rem;font-weight:600}.scenario-cost{display:flex;justify-content:space-between;align-items:center}.scenario-cost .cost-value{font-size:1.5rem;font-weight:700;color:#1a1a1a}.optimizations-list{margin-bottom:2rem}.optimizations-list h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600}.optimization-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem;margin-bottom:1rem}.optimization-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.optimization-header svg{color:#3b82f6;flex-shrink:0;margin-top:2px}.optimization-type{font-size:.75rem;color:#6b7280;margin-top:.25rem}.optimization-savings{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid #e5e7eb}.savings-amount{display:flex;align-items:center;gap:.5rem;color:#10b981;font-weight:600}.cost-comparison{display:flex;align-items:center;gap:.5rem;color:#6b7280}.cost-comparison .optimized{color:#10b981;font-weight:600}.best-optimization{margin-bottom:2rem}.best-optimization h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600}.best-opt-card{display:flex;align-items:flex-start;gap:1rem;padding:1.5rem;background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:2px solid #10b981;border-radius:8px}.best-opt-card svg{color:#10b981;flex-shrink:0}.best-savings{margin-top:.5rem;color:#065f46;font-weight:600}.combined-optimization h4{margin:0 0 1rem;font-size:1.125rem;font-weight:600}.combined-card{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border:2px solid #3b82f6;border-radius:8px;padding:1.5rem}.combined-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-weight:600;color:#1e40af}.combined-savings{text-align:center;margin-bottom:1rem}.savings-label{font-size:.875rem;color:#1e40af;margin-bottom:.5rem}.savings-value{font-size:2rem;font-weight:700;color:#1e40af;margin-bottom:.5rem}.savings-value .percentage{font-size:1.25rem;margin-left:.5rem}.optimized-cost{font-size:1rem;color:#1e40af;font-weight:500}.applied-optimizations{margin-top:1rem;padding-top:1rem;border-top:1px solid #93c5fd;font-size:.875rem;color:#1e40af}@media (max-width: 1024px){.playground-content{grid-template-columns:1fr}.input-panel{position:static}.cost-summary{grid-template-columns:1fr}.comparison-header,.comparison-header-sortable,.comparison-row{grid-template-columns:1fr;gap:.5rem}}.bulk-operations-page{padding:1.5rem;max-width:100%;width:100%;margin:0;animation:fadeIn .3s ease-out;overflow-x:hidden;box-sizing:border-box}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.page-header h1{font-size:1.75rem;font-weight:700;color:var(--gray-900);margin:0 0 .5rem}.page-header p{font-size:.9375rem;color:var(--gray-500);margin:0}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid var(--gray-200)}.tab{padding:.75rem 1.5rem;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;font-size:.9375rem;font-weight:600;color:var(--gray-600);transition:all .2s;position:relative;bottom:-2px}.tab:hover:not(.active){color:var(--gray-900);background:var(--gray-50);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.tab.active{color:var(--primary-600);border-bottom-color:var(--primary-600);background:transparent}.tab-content{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-sm);border:1px solid var(--gray-200)}.export-section h2,.import-section h2,.gdpr-section h2{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--gray-900)}.export-section>p,.import-section>p,.gdpr-section>p{color:var(--gray-500);font-size:.9375rem;margin-bottom:1.5rem;line-height:1.6}.export-form{max-width:600px;background:var(--gray-50);padding:1.5rem;border-radius:var(--radius-md);border:1px solid var(--gray-200)}.form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:var(--gray-700);font-size:.875rem}.form-select{width:100%;padding:.625rem .875rem;border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.9375rem;background:#fff;cursor:pointer;transition:all .2s;font-weight:500;color:var(--gray-900)}.form-select:hover{border-color:var(--gray-400)}.form-select:focus{outline:none;border-color:var(--primary-500);box-shadow:0 0 0 3px #06b6d426}.radio-group{display:flex;flex-direction:column;gap:.75rem}.radio-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.75rem 1rem;border-radius:var(--radius-sm);transition:all .2s;border:1px solid var(--gray-200);background:#fff;font-weight:500;color:var(--gray-700)}.radio-label:hover{background:var(--gray-50);border-color:var(--gray-300)}.radio-label:has(input:checked){background:var(--primary-50);border-color:var(--primary-500);color:var(--primary-700);font-weight:600}.radio-label input[type=radio]{cursor:pointer;width:16px;height:16px;accent-color:var(--primary-500)}.btn-primary{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--primary-500),var(--primary-700));color:#fff;border:none;border-radius:var(--radius-md);font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #0000001a;margin-top:1rem}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 6px #0000001a}.btn-primary:active{transform:translateY(0)}.btn-secondary{padding:.625rem 1.25rem;background:#fff;color:var(--gray-700);border:1px solid var(--gray-300);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:var(--gray-50);border-color:var(--gray-400)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.import-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.import-card{padding:1.5rem;background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-lg);transition:all .2s;box-shadow:var(--shadow-sm)}.import-card:hover{border-color:var(--primary-300);box-shadow:var(--shadow-md);transform:translateY(-2px)}.import-card h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--gray-900)}.import-card p{color:var(--gray-600);font-size:.875rem;margin-bottom:1rem;line-height:1.5}.import-card-disabled{opacity:.7;background:var(--gray-50);cursor:not-allowed}.import-card-disabled:hover{border-color:var(--gray-200);box-shadow:var(--shadow-sm);transform:none}.card-header-with-badge{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.card-header-with-badge h3{margin-bottom:0}.coming-soon-badge{padding:.25rem .625rem;background:#fef3c7;color:#92400e;border:1px solid #fde68a;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em;white-space:nowrap}.gdpr-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.info-card{padding:1.5rem;background:var(--gray-50);border-radius:var(--radius-md);border:1px solid var(--gray-200);transition:all .2s}.info-card:hover{border-color:var(--gray-300);box-shadow:var(--shadow-sm)}.info-card h3{font-size:1.125rem;font-weight:600;margin-bottom:.75rem;color:var(--gray-900)}.info-card p{color:var(--gray-600);font-size:.875rem;margin-bottom:1rem;line-height:1.6}.import-progress{position:fixed;top:80px;right:20px;display:flex;align-items:center;gap:12px;padding:1rem 1.5rem;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;border:1px solid var(--gray-200);animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(400px);opacity:0}to{transform:translate(0);opacity:1}}.import-progress span{font-weight:500;color:var(--gray-700);font-size:.875rem}.spinner{width:20px;height:20px;border:3px solid var(--gray-200);border-top:3px solid var(--primary-500);border-radius:50%;animation:spin .8s linear infinite}.result-details{padding:0 24px 20px;background:#ffffff80;margin-top:12px}.result-details summary{padding:14px 0;cursor:pointer;font-weight:600;color:#475569;-webkit-user-select:none;user-select:none;transition:color .2s;display:flex;align-items:center;gap:8px}.result-details summary:before{content:"▸";transition:transform .3s;display:inline-block}.result-details[open] summary:before{transform:rotate(90deg)}.result-details summary:hover{color:#1e293b}.result-details ul{margin:12px 0 0;max-height:240px;overflow-y:auto;background:#fff;border-radius:8px;padding:12px 24px}.result-details ul::-webkit-scrollbar{width:6px}.result-details ul::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.result-details ul::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.result-details ul::-webkit-scrollbar-thumb:hover{background:#94a3b8}.result-details li{padding:8px 0;color:#64748b;font-size:14px;line-height:1.5;border-bottom:1px solid #f1f5f9}.result-details li:last-child{border-bottom:none}@media (max-width: 768px){.bulk-operations-page{padding:1rem}.page-header{padding:1.5rem}.page-header h1{font-size:24px}.tabs{flex-direction:column}.tab{text-align:center}.tab-content{padding:1.5rem}.import-options,.gdpr-info{grid-template-columns:1fr}.result-notification,.import-progress{right:12px;left:12px;max-width:none}}.result-notification{position:fixed;top:80px;right:20px;max-width:400px;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;overflow:hidden;animation:slideIn .3s ease-out;border:2px solid}.result-notification.success{border-color:#10b981}.result-notification.error{border-color:#ef4444}.result-header{display:flex;align-items:center;gap:12px;padding:1rem 1.25rem}.result-notification.success .result-header{background:#d1fae5}.result-notification.error .result-header{background:#fee2e2}.result-icon{font-size:1.25rem}.result-message{flex:1;font-weight:600;color:var(--gray-900);font-size:.875rem;line-height:1.5}.btn-close{background:#fffc;border:none;font-size:1.25rem;color:var(--gray-500);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all .2s}.btn-close:hover{background:#fff;color:var(--gray-700)}@media (max-width: 1024px){.bulk-operations-page{padding:1.25rem}}@media (max-width: 768px){.bulk-operations-page{padding:1rem}.page-header{flex-direction:column;gap:.5rem}.tabs{flex-direction:row;overflow-x:auto}.tab{white-space:nowrap;flex-shrink:0}.import-options,.gdpr-info{grid-template-columns:1fr}.result-notification,.import-progress{right:12px;left:12px;max-width:none}}.gdpr-section{padding:0}.gdpr-nav{display:flex;gap:10px;margin:20px 0;border-bottom:2px solid var(--gray-200);padding-bottom:10px}.gdpr-nav-btn{padding:10px 20px;background:none;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--gray-600);border-bottom:3px solid transparent;transition:all .3s}.gdpr-nav-btn:hover{color:var(--primary-600);background:var(--gray-50)}.gdpr-nav-btn.active{color:var(--primary-600);border-bottom-color:var(--primary-600)}.gdpr-overview{display:flex;flex-direction:column;gap:20px;padding:20px 0}.compliance-score-card{background:linear-gradient(135deg,#0891b2,#14b8a6);color:#fff;padding:30px;border-radius:12px;text-align:center;box-shadow:0 4px 12px #0891b233}.score-circle{display:inline-flex;align-items:baseline;gap:5px;margin-top:10px}.score-value{font-size:64px;font-weight:700}.score-label{font-size:24px;opacity:.8}.gdpr-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.metric-card{background:#fff;border:1px solid var(--gray-200);border-radius:8px;padding:20px;text-align:center;transition:transform .2s,box-shadow .2s}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.metric-card.warning{border-color:#ff9800;background:#fff3e0}.metric-icon{font-size:32px;margin-bottom:10px}.metric-value{font-size:36px;font-weight:700;color:#333;display:block;margin:10px 0}.metric-label{font-size:14px;color:#666}.gdpr-quick-actions{display:flex;gap:15px;justify-content:center;margin-top:10px}.gdpr-requests{padding:20px 0;margin-top:20px}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0;font-size:20px}.section-header>div{display:flex;gap:10px}.requests-table{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.requests-table table{width:100%;border-collapse:collapse}.requests-table th{background:var(--gray-50);padding:12px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid var(--gray-200)}.requests-table td{padding:12px;border-bottom:1px solid #f0f0f0}.requests-table tr:hover{background:#fafafa}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.badge-access{background:#e3f2fd;color:#1976d2}.badge-erasure{background:#ffebee;color:#d32f2f}.badge-rectification{background:#fff3e0;color:#f57c00}.badge-portability{background:#e8f5e9;color:#388e3c}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-pending{background:#fff3e0;color:#f57c00}.status-in_progress{background:#e3f2fd;color:#1976d2}.status-completed{background:#e8f5e9;color:#388e3c}.status-rejected{background:#ffebee;color:#d32f2f}.text-muted{color:#999;font-size:12px}.btn-action{padding:6px 12px;font-size:12px;border:none;border-radius:4px;cursor:pointer;background:var(--primary-600);color:#fff;transition:background .2s}.btn-action:hover{background:var(--primary-700)}.btn-action.btn-danger{background:#d32f2f}.btn-action.btn-danger:hover{background:#c62828}.btn-action.btn-secondary{background:#757575}.btn-action.btn-secondary:hover{background:#616161}.gdpr-consents{padding:20px 0;margin-top:20px}.consents-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.consent-card{background:#fff;border:1px solid var(--gray-200);border-radius:8px;padding:20px;transition:box-shadow .2s}.consent-card:hover{box-shadow:0 4px 12px #0000001a}.consent-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.consent-purpose{font-weight:600;font-size:16px;text-transform:capitalize}.consent-status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.consent-status.active{background:#e8f5e9;color:#388e3c}.consent-status.withdrawn{background:#ffebee;color:#d32f2f}.consent-details{margin-bottom:15px;font-size:14px;color:#666}.consent-details div{margin:5px 0}.btn-sm{padding:8px 16px;font-size:13px}.gdpr-policies{padding:20px 0;margin-top:20px}.policies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.policy-card{background:#fff;border:1px solid var(--gray-200);border-radius:8px;padding:20px;transition:box-shadow .2s}.policy-card:hover{box-shadow:0 4px 12px #0000001a}.policy-card h4{margin:0 0 15px;font-size:16px;color:#333;text-transform:capitalize}.policy-details{font-size:14px}.policy-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f0f0f0}.policy-row:last-child{border-bottom:none}.policy-row span{color:#666}.policy-row strong{color:#333}.modal-content{background:#fff;border-radius:12px;padding:0;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--gray-200)}.modal-header h3{margin:0;font-size:20px}.modal-close{background:none;border:none;font-size:28px;cursor:pointer;color:#999;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.modal-close:hover{background:var(--gray-50);color:#333}.modal-content form{padding:20px}.modal-content .form-group{margin-bottom:20px}.modal-content .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333}.modal-content .form-group input,.modal-content .form-group select,.modal-content .form-group textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;font-size:14px;font-family:inherit}.modal-content .form-group textarea{resize:vertical}.checkbox-label{display:flex!important;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:auto!important;margin:0}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:20px;border-top:1px solid var(--gray-200)}.gdpr-notification{position:fixed;top:20px;right:20px;padding:15px 20px;border-radius:8px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:15px;z-index:1001;animation:slideIn .3s ease-out}.gdpr-notification.success{background:#4caf50;color:#fff}.gdpr-notification.error{background:#f44336;color:#fff}.gdpr-notification button{background:none;border:none;color:#fff;font-size:20px;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.gdpr-notification button:hover{background:#fff3}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state p{font-size:16px}.loading-spinner{text-align:center;padding:40px;color:#666;font-size:16px}.k8s-chart-container{background:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-lg, 12px);padding:0;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05));transition:box-shadow .2s ease;overflow:hidden;margin-bottom:.75rem}.k8s-chart-container:hover{box-shadow:var(--shadow-md, 0 4px 6px rgba(0,0,0,.07))}.k8s-chart-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem .25rem}.k8s-chart-title{font-size:.875rem;font-weight:600;color:var(--gray-600, #4b5563);display:flex;align-items:center;gap:.5rem;line-height:1.3}.k8s-chart{width:100%;height:auto!important;display:block;aspect-ratio:1000 / 330;padding:0 .75rem .75rem;box-sizing:border-box}.k8s-chart-container .chart-type-toggle{display:inline-flex;gap:2px;background:var(--gray-50, #f9fafb);padding:3px;border-radius:8px;border:1px solid var(--gray-200, #e5e7eb)}.k8s-chart-container .toggle-btn{background:transparent;border:none;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:.8125rem;color:#64748b;font-weight:600;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;height:auto}.k8s-chart-container .toggle-btn:hover{color:#334155;background:#ffffffb3}.k8s-chart-container .toggle-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a14}.k8s-chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:#6b7280}.k8s-chart-empty svg{margin-bottom:1rem;opacity:.5}.k8s-chart-empty p{font-size:.9375rem;font-weight:500;margin:.5rem 0;color:#374151}.k8s-chart-empty span{font-size:.875rem;color:#9ca3af}@media (max-width: 768px){.k8s-chart-container{margin-bottom:.5rem}}.k8s-util-chart-container{background:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-lg, 12px);padding:0;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05));transition:box-shadow .2s ease;overflow:hidden;margin-bottom:.75rem}.k8s-util-chart-container:hover{box-shadow:var(--shadow-md, 0 4px 6px rgba(0,0,0,.07))}.k8s-util-chart-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem .25rem}.k8s-util-chart-title{font-size:.875rem;font-weight:600;color:var(--gray-600, #4b5563);display:flex;align-items:center;gap:.5rem;line-height:1.3}.k8s-util-controls{display:flex;gap:.5rem;align-items:center}.k8s-metric-toggle{display:inline-flex;gap:2px;background:var(--gray-50, #f9fafb);padding:3px;border-radius:8px;border:1px solid var(--gray-200, #e5e7eb)}.k8s-metric-toggle .metric-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:#64748b;font-size:.75rem;font-weight:600;transition:all .15s ease}.k8s-metric-toggle .metric-btn:hover{color:#334155;background:#ffffffb3}.k8s-metric-toggle .metric-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a14}.k8s-util-chart-container .chart-type-toggle{display:inline-flex;gap:2px;background:var(--gray-50, #f9fafb);padding:3px;border-radius:8px;border:1px solid var(--gray-200, #e5e7eb)}.k8s-util-chart-container .toggle-btn{background:transparent;border:none;padding:5px 10px;border-radius:6px;cursor:pointer;font-size:.8125rem;color:#64748b;font-weight:600;transition:all .15s ease;display:inline-flex;align-items:center;justify-content:center;gap:4px;width:auto;height:auto}.k8s-util-chart-container .toggle-btn:hover{color:#334155;background:#ffffffb3}.k8s-util-chart-container .toggle-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 3px #0f172a14}.k8s-util-chart{width:100%;height:auto!important;display:block;aspect-ratio:1000 / 330;padding:0 .75rem .75rem;box-sizing:border-box}.k8s-util-chart-container .k8s-chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:#6b7280}.k8s-util-chart-container .k8s-chart-empty svg{margin-bottom:1rem;opacity:.5}.k8s-util-chart-container .k8s-chart-empty p{font-size:.9375rem;font-weight:500;margin:.5rem 0;color:#374151}.k8s-util-chart-container .k8s-chart-empty span{font-size:.875rem;color:#9ca3af}@keyframes lineDrawIn{to{stroke-dashoffset:0}}@keyframes areaFillIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.k8s-util-chart-container{margin-bottom:.5rem}.k8s-util-controls{flex-wrap:wrap;gap:4px}.k8s-metric-toggle .metric-btn{font-size:.6875rem;padding:3px 8px}}.kubernetes-container{padding:2rem;max-width:1400px;margin:0 auto}.kubernetes-container .summary-card,.kubernetes-container .metric-card,.kubernetes-container .card,.kubernetes-container .chart-container{position:static!important;overflow:visible!important;background:#fff!important;box-shadow:0 1px 3px #0000000f!important;border-radius:.5rem!important;border:1px solid #e5e7eb!important;transform:none!important;transition:border-color .2s,box-shadow .2s!important}.kubernetes-container .summary-card:before,.kubernetes-container .metric-card:before,.kubernetes-container .card:before{display:none!important}.kubernetes-container .summary-card:hover,.kubernetes-container .metric-card:hover,.kubernetes-container .card:hover{transform:none!important;box-shadow:0 2px 8px #0000001a!important;border-color:var(--primary-200, #99f6e4)!important}.kubernetes-container .kubernetes-header{margin-bottom:1.5rem!important}.kubernetes-container .summary-cards{margin-bottom:1.5rem!important;gap:.75rem!important}.kubernetes-container .summary-card{padding:1.25rem!important;margin-bottom:0!important}.kubernetes-container .section{margin-bottom:1.75rem!important}.kubernetes-container .section h2{margin-bottom:.75rem!important}.kubernetes-container .charts-section{margin-bottom:1.75rem!important}.kubernetes-container .clusters-list{gap:.75rem!important}.kubernetes-container .cluster-details{margin-top:1rem!important}.kubernetes-container .namespaces-table{margin-top:1.25rem!important}.kubernetes-container .details-grid{margin-bottom:1.5rem!important}.kubernetes-container .card-content{padding:0!important}.kubernetes-container .card-icon{font-size:inherit!important}.kubernetes-container .card-label{font-size:.75rem!important;margin-bottom:.375rem!important}.kubernetes-container .card-value{font-size:1.5rem!important;margin:0!important}.kubernetes-container .time-range-selector button{padding:.5rem 1rem!important;font-size:.875rem!important}.kubernetes-container .btn-primary,.kubernetes-container .btn-secondary{padding:.5rem 1rem!important;font-size:.8125rem!important}.kubernetes-container table{font-size:.8125rem!important}.kubernetes-container th,.kubernetes-container td{padding:.75rem!important;font-size:.8125rem!important}.kubernetes-container .empty-state{padding:4rem 2rem!important;margin:0!important}.kubernetes-container .empty-state h2{margin:1rem 0 .5rem!important}.kubernetes-container .empty-state p{margin:0 0 1.5rem!important}.kubernetes-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid #e5e7eb}.header-content{display:flex;gap:1rem;align-items:flex-start}.header-icon{color:var(--primary-500, #14b8a6);margin-top:.25rem}.header-content h1{margin:0 0 .5rem;font-size:1.875rem;font-weight:700;color:#111827}.header-content p{margin:0;color:#6b7280;font-size:.875rem}.k8s-tooltip{margin-left:8px;width:18px;height:18px;border-radius:999px;border:1px solid #cbd5f5;color:#4338ca;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#eef2ff;vertical-align:middle}.k8s-billing-badge{margin-left:8px;padding:.15rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em;border:1px solid transparent;vertical-align:middle;display:inline-flex;align-items:center}.k8s-billing-badge.billing{background:#ecfdf3;color:#067647;border-color:#a7f3d0}.k8s-billing-badge.fallback{background:#fffbeb;color:#92400e;border-color:#fcd34d}.header-actions{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.time-range-selector{display:flex;gap:.5rem;background:#f3f4f6;padding:.25rem;border-radius:6px}.time-range-selector button{padding:.5rem 1rem;border:none;background:transparent;border-radius:4px;font-size:.875rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s ease}.time-range-selector button:hover{background:#e5e7eb;color:#374151}.time-range-selector button.active{background:#fff;color:var(--primary-500, #14b8a6);box-shadow:0 1px 2px #0000000d}.charts-section{margin-bottom:2rem}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:var(--primary-500, #14b8a6);color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-secondary{background:#f3f4f6;color:#374151}.btn-secondary:hover{background:#e5e7eb}.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center}.loading-state p,.error-state p{margin-top:1rem;color:#6b7280}.btn-retry{margin-top:1rem;padding:.5rem 1.5rem;background:var(--primary-500, #14b8a6);color:#fff;border:none;border-radius:.375rem;cursor:pointer}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;background:#f9fafb;border-radius:.5rem;border:2px dashed #d1d5db}.empty-state h2{margin:1rem 0 .5rem;color:#111827}.empty-state p{margin:0 0 1.5rem;color:#6b7280}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.summary-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem;display:flex;gap:1rem;align-items:flex-start}.summary-card.primary{background:#fff;color:inherit;border:1px solid #e5e7eb}.card-icon{width:3rem;height:3rem;border-radius:.5rem;background:transparent;border:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#64748b}.card-content{flex:1}.card-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;font-weight:500;margin-bottom:.5rem}.card-value{font-size:1.5rem;font-weight:700;color:#111827}.section{margin-bottom:2rem}.section h2{margin:0 0 1rem;font-size:1.25rem;font-weight:600;color:#111827}.provider-breakdown,.environment-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.provider-card,.environment-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1rem;display:flex;gap:.75rem;align-items:center;min-width:0;overflow:hidden}.provider-info{flex:1}.provider-name{font-weight:600;color:#111827;margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.provider-stats{font-size:.875rem;color:#6b7280;margin-bottom:.5rem}.provider-cost{font-size:1.125rem;font-weight:700;color:#10b981}.environment-badge{padding:.375rem .625rem;border-radius:.375rem;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;flex-shrink:0;text-align:center;min-width:3.5rem}.environment-badge.prod,.environment-badge.production{background:#fee2e2;color:#991b1b}.environment-badge.staging{background:#fef3c7;color:#92400e}.environment-badge.dev,.environment-badge.development{background:#dbeafe;color:#1e40af}.environment-badge.testing,.environment-badge.qa{background:#e0f2fe;color:#0c4a6e}.environment-badge.sandbox{background:#f0fdf4;color:#166534}.environment-badge.unknown{background:#f3f4f6;color:#6b7280}.environment-info{flex:1;min-width:0}.environment-namespaces{font-size:.8125rem;color:#6b7280;margin-bottom:.125rem}.environment-cost{font-size:1rem;font-weight:700;color:#10b981;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.clusters-list{display:flex;flex-direction:column;gap:.75rem}.cluster-card{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s}.cluster-card:hover{border-color:var(--primary-500, #14b8a6);box-shadow:0 4px 6px -1px #0000001a}.cluster-card.selected{border-color:var(--primary-500, #14b8a6);background:#f0fdfa}.cluster-header{display:flex;gap:1rem;align-items:center;flex:1}.cluster-info h3{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:#111827}.cluster-meta{font-size:.875rem;color:#6b7280;display:flex;gap:.5rem;align-items:center}.cluster-cost{display:flex;align-items:center;gap:.75rem}.cost-value{font-size:1.25rem;font-weight:700;color:#111827}.btn-recalculate{background:#f3f4f6;border:none;border-radius:.375rem;padding:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.btn-recalculate:hover{background:#e5e7eb;color:var(--primary-500, #14b8a6)}.cluster-details{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;font-weight:500}.detail-value{font-size:1rem;font-weight:600;color:#111827}.namespaces-table{margin-top:1.5rem}.namespaces-table h3{margin:0 0 1rem;font-size:1.125rem;font-weight:600;color:#111827}.namespaces-table table{width:100%;border-collapse:collapse}.namespaces-table th{text-align:left;padding:.75rem;font-size:.875rem;font-weight:600;color:#6b7280;text-transform:uppercase;border-bottom:2px solid #e5e7eb}.namespaces-table td{padding:.75rem;border-bottom:1px solid #f3f4f6;color:#374151}.namespaces-table tr:hover{background:#f9fafb}.env-badge{display:inline-block;padding:.25rem .5rem;border-radius:.25rem;font-size:.75rem;font-weight:600;text-transform:uppercase;background:#f3f4f6;color:#6b7280}.env-badge.prod,.env-badge.production{background:#fee2e2;color:#991b1b}.env-badge.staging{background:#fef3c7;color:#92400e}.env-badge.dev,.env-badge.development{background:#dbeafe;color:#1e40af}.env-badge.testing,.env-badge.qa{background:#e0f2fe;color:#0c4a6e}.env-badge.sandbox{background:#f0fdf4;color:#166534}.cost-cell{font-weight:600;color:#10b981}@media (max-width: 768px){.kubernetes-container{padding:1rem}.kubernetes-header{flex-direction:column;gap:1rem}.summary-cards{grid-template-columns:1fr}.cluster-card{flex-direction:column;align-items:flex-start;gap:1rem}}.k8s-opt-container{padding:1.5rem 2rem;max-width:1400px;margin:0 auto}.k8s-opt-container .summary-card,.k8s-opt-container .metric-card,.k8s-opt-container .card,.k8s-opt-container .chart-container{position:static!important;overflow:visible!important;transform:none!important}.k8s-opt-container .summary-card:before,.k8s-opt-container .metric-card:before,.k8s-opt-container .card:before{display:none!important}.k8s-opt-container .summary-card:hover,.k8s-opt-container .metric-card:hover,.k8s-opt-container .card:hover{transform:none!important}.k8s-opt-container .k8s-opt-header{margin-bottom:1.5rem!important}.k8s-opt-container .k8s-opt-kpi-strip{margin-bottom:1.5rem!important;gap:.75rem!important}.k8s-opt-container .k8s-opt-type-cards,.k8s-opt-container .k8s-opt-filters{margin-bottom:1.25rem!important}.k8s-opt-container .k8s-opt-recs-list{gap:.75rem!important}.k8s-opt-container .k8s-opt-kpi{padding:1rem!important}.k8s-opt-container .kpi-label{margin-bottom:.125rem!important}.k8s-opt-container .kpi-value{margin:.125rem 0!important;font-size:1.4rem!important}.k8s-opt-container .kpi-sub{margin:0!important}.k8s-opt-container .k8s-opt-type-card{padding:.625rem 1rem!important;font-size:.8125rem!important}.k8s-opt-container .k8s-opt-search input{padding:0!important;font-size:.8125rem!important}.k8s-opt-container .k8s-opt-filter-group select{padding:.375rem .625rem!important;font-size:.8125rem!important}.k8s-opt-container .k8s-opt-filter-group label{font-size:.75rem!important;margin-bottom:0!important}.k8s-opt-container .k8s-opt-btn-secondary{padding:.5rem 1rem!important;font-size:.8125rem!important}.k8s-opt-container .k8s-opt-clear-filters{padding:.375rem .75rem!important;font-size:.75rem!important}.k8s-opt-container .k8s-rec-card-top,.k8s-opt-container .k8s-rec-card-main{margin-bottom:.5rem!important}.k8s-opt-container .k8s-rec-text{margin:0 0 .5rem!important}.k8s-opt-container .k8s-detail-body{gap:1.5rem!important}.k8s-opt-container .k8s-detail-section h3{margin-bottom:.75rem!important}.k8s-opt-container .k8s-detail-actions li{margin-bottom:.25rem!important}.k8s-opt-container .k8s-opt-empty{padding:4rem 2rem!important;margin:0!important}.k8s-opt-container .k8s-opt-empty h2{margin:.5rem 0 .25rem!important}.k8s-opt-container .k8s-opt-empty p{margin:0!important}.k8s-opt-loading,.k8s-opt-error,.k8s-opt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;gap:1rem;color:var(--gray-500, #6b7280)}.k8s-opt-loading p,.k8s-opt-error p{font-size:1rem;max-width:420px}.k8s-opt-error svg{color:#ef4444}.k8s-opt-empty{background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border-radius:var(--radius-lg, 16px);padding:4rem 2rem}.k8s-opt-empty h2{color:var(--gray-900, #1e293b);margin:.5rem 0 .25rem;font-size:1.25rem}.k8s-opt-empty p{color:var(--gray-500, #64748b);max-width:400px}.k8s-opt-empty svg{color:var(--gray-400, #94a3b8)}.k8s-opt-spinner{animation:k8s-spin 1s linear infinite}.k8s-opt-btn-retry{padding:.5rem 1.25rem;border:none;border-radius:var(--radius-md, 8px);background:var(--primary-500, #14b8a6);color:#fff;font-weight:600;cursor:pointer;transition:background .15s}.k8s-opt-btn-retry:hover{background:var(--primary-600, #0d9488)}.k8s-opt-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.k8s-opt-header-left{display:flex;align-items:flex-start;gap:.75rem}.k8s-opt-header-icon{color:var(--primary-500, #14b8a6);margin-top:2px;flex-shrink:0}.k8s-opt-title{margin:0;font-size:1.25rem;font-weight:700;color:var(--gray-900, #0f172a);letter-spacing:-.02em}.k8s-opt-subtitle{margin:.25rem 0 0;font-size:.8125rem;color:var(--gray-500, #64748b)}.k8s-opt-header-actions{display:flex;gap:.5rem}.k8s-opt-btn-secondary{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 8px);background:#fff;color:var(--gray-600, #475569);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s}.k8s-opt-btn-secondary:hover{background:var(--gray-50, #f8fafc);border-color:var(--gray-300, #cbd5e1)}.k8s-opt-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.k8s-opt-kpi-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem;margin-bottom:1.5rem}.k8s-opt-kpi{background:#fff;border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-lg, 12px);padding:1rem;display:flex;gap:.75rem;align-items:flex-start;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05));transition:all .2s}.k8s-opt-kpi:hover{border-color:var(--primary-200, #99f6e4);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.08));transform:translateY(-2px)}.kpi-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--gray-100, #f1f5f9);color:var(--gray-600, #475569)}.kpi-savings .kpi-icon{background:#d1fae5;color:#059669}.kpi-cost .kpi-icon{background:#ccfbf1;color:var(--primary-600, #0d9488)}.kpi-rate .kpi-icon{background:#e0f2fe;color:#0284c7}.kpi-body{display:flex;flex-direction:column;min-width:0}.kpi-label{font-size:.75rem;color:var(--gray-500, #64748b);font-weight:700;text-transform:uppercase;letter-spacing:.02em}.kpi-value{font-size:1.4rem;font-weight:800;color:var(--gray-900, #0f172a);margin:.125rem 0;line-height:1.25}.kpi-sub{font-size:.8rem;color:var(--gray-500, #64748b);line-height:1.35}.kpi-savings .kpi-value{color:#059669}.k8s-opt-type-cards{display:flex;gap:.75rem;margin-bottom:1.25rem;overflow-x:auto;padding-bottom:.25rem}.k8s-opt-type-card{display:flex;align-items:center;gap:.625rem;padding:.625rem 1rem;background:#fff;border:1.5px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 10px);cursor:pointer;transition:all .15s;white-space:nowrap;flex-shrink:0;font-family:inherit;font-size:.8125rem}.k8s-opt-type-card:hover{border-color:var(--type-color);box-shadow:var(--shadow-sm, 0 1px 4px rgba(0,0,0,.06))}.k8s-opt-type-card.active{border-color:var(--type-color);background:color-mix(in srgb,var(--type-color) 6%,white);box-shadow:0 0 0 2px color-mix(in srgb,var(--type-color) 18%,transparent)}.type-card-icon{width:30px;height:30px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--type-color) 12%,white);color:var(--type-color);flex-shrink:0}.type-card-body{display:flex;flex-direction:column;text-align:left}.type-card-label{font-weight:600;color:var(--gray-700, #334155);font-size:.8125rem}.type-card-savings{font-weight:700;color:#059669;font-size:.875rem}.type-card-count{font-size:.7rem;color:var(--gray-400, #94a3b8)}.k8s-opt-filters{display:flex;gap:.75rem;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap}.k8s-opt-search{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 8px);padding:.4375rem .75rem;flex:1;min-width:200px;max-width:360px}.k8s-opt-search svg{color:var(--gray-400, #94a3b8);flex-shrink:0}.k8s-opt-search input{border:none;outline:none;font-size:.8125rem;width:100%;background:transparent;color:var(--gray-700, #334155)}.k8s-opt-search input::placeholder{color:var(--gray-300, #cbd5e1)}.k8s-opt-filter-group{display:flex;align-items:center;gap:.375rem}.k8s-opt-filter-group label{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;color:var(--gray-500, #64748b)}.k8s-opt-filter-group select{padding:.375rem .625rem;border:1px solid var(--gray-200, #e2e8f0);border-radius:6px;font-size:.8125rem;background:#fff;color:var(--gray-700, #334155);cursor:pointer}.k8s-opt-clear-filters{padding:.375rem .75rem;border:none;border-radius:6px;background:#fee2e2;color:#991b1b;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .15s}.k8s-opt-clear-filters:hover{background:#fecaca}.k8s-opt-recs-list{display:flex;flex-direction:column;gap:.75rem}.k8s-opt-no-recs{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:3rem;color:var(--gray-400, #94a3b8);text-align:center}.k8s-opt-no-recs svg{color:var(--primary-500, #14b8a6)}.k8s-rec-card{display:flex;align-items:stretch;background:#fff;border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-lg, 12px);cursor:pointer;transition:all .2s;overflow:hidden;position:relative;box-shadow:var(--shadow-sm, 0 1px 2px rgba(0,0,0,.05))}.k8s-rec-card:hover{border-color:var(--primary-200, #99f6e4);box-shadow:var(--shadow-md, 0 4px 12px rgba(0,0,0,.08));transform:translateY(-2px)}.k8s-rec-card.selected{border-color:var(--primary-500, #14b8a6);box-shadow:0 0 0 2px #14b8a633}.k8s-rec-card-accent{width:4px;flex-shrink:0;background:var(--rec-accent, var(--gray-300, #cbd5e1));border-radius:4px 0 0 4px}.k8s-rec-card-body{flex:1;padding:1rem 1.25rem;min-width:0}.k8s-rec-chevron{align-self:center;margin-right:1rem;color:var(--gray-300, #cbd5e1);flex-shrink:0;transition:color .15s}.k8s-rec-card:hover .k8s-rec-chevron{color:var(--gray-400, #94a3b8)}.k8s-rec-card-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.k8s-rec-type-badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--rec-accent, var(--gray-500, #64748b))}.k8s-rec-badges{display:flex;gap:.375rem}.k8s-rec-priority,.k8s-rec-confidence{font-size:.675rem;font-weight:600;padding:.125rem .5rem;border-radius:12px}.priority-high{background:#fee2e2;color:#991b1b}.priority-medium{background:#fef3c7;color:#92400e}.priority-low{background:#d1fae5;color:#065f46}.confidence-high{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.confidence-medium{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.confidence-low{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.confidence-estimated{background:#f3f4f6;color:#6b7280;border:1px solid #e5e7eb}.k8s-rec-confidence{cursor:help}.k8s-rec-card--suppressed{opacity:.85;border-left-color:#9ca3af}.k8s-rec-card-main{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.5rem}.k8s-rec-resource{min-width:0;flex:1}.k8s-rec-name{display:block;font-size:1rem;font-weight:700;color:var(--gray-900, #0f172a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k8s-rec-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem;font-size:.75rem;color:var(--gray-500, #64748b)}.k8s-rec-meta span{display:inline-flex;align-items:center;gap:.2rem}.k8s-rec-region{background:var(--gray-100, #f1f5f9);padding:.05rem .4rem;border-radius:4px;font-size:.7rem}.k8s-rec-savings-block{text-align:right;flex-shrink:0}.k8s-rec-savings-value{display:block;font-size:1.25rem;font-weight:800;color:#059669;line-height:1.2}.k8s-rec-savings-label{display:block;font-size:.7rem;color:var(--gray-400, #94a3b8)}.k8s-rec-text{font-size:.8125rem;color:var(--gray-600, #475569);line-height:1.5;margin:0 0 .5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.k8s-rec-metrics-bar{display:flex;gap:.5rem;flex-wrap:wrap}.k8s-metric-pill{display:inline-flex;gap:.25rem;align-items:center;background:var(--gray-50, #f8fafc);border:1px solid var(--gray-200, #e2e8f0);border-radius:6px;padding:.2rem .5rem;font-size:.7rem}.k8s-metric-pill-label{color:var(--gray-400, #94a3b8);font-weight:500}.k8s-metric-pill-value{color:var(--gray-700, #334155);font-weight:700}.k8s-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:1000;display:flex;justify-content:flex-end;animation:k8s-fade-in .15s ease-out}@keyframes k8s-fade-in{0%{opacity:0}to{opacity:1}}@keyframes k8s-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.k8s-detail-panel{width:520px;max-width:90vw;height:100%;background:#fff;overflow-y:auto;box-shadow:-8px 0 30px #0000001f;animation:k8s-slide-in .2s ease-out}.k8s-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:3px solid var(--primary-500, #14b8a6);position:sticky;top:0;background:#fff;z-index:1}.k8s-detail-header-left{display:flex;align-items:center;gap:.75rem;min-width:0}.k8s-detail-type-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.k8s-detail-header h2{margin:0;font-size:1.125rem;font-weight:700;color:var(--gray-900, #0f172a);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k8s-detail-type-label{font-size:.75rem;color:var(--gray-500, #64748b)}.k8s-detail-close{background:none;border:none;font-size:1.5rem;color:var(--gray-400, #94a3b8);cursor:pointer;padding:.25rem;line-height:1;transition:color .15s}.k8s-detail-close:hover{color:var(--gray-600, #475569)}.k8s-detail-body{padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.k8s-detail-savings-hero{background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border-radius:var(--radius-lg, 12px);padding:1.25rem;text-align:center}.k8s-detail-savings-amount{font-size:2rem;font-weight:800;color:#059669;line-height:1.2}.k8s-detail-savings-amount span{font-size:.875rem;font-weight:500;color:#10b981}.k8s-detail-savings-pct{font-size:.8125rem;color:#065f46;margin-top:.25rem}.k8s-detail-context{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.k8s-detail-ctx-item{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;color:var(--gray-700, #334155);background:var(--gray-50, #f8fafc);padding:.5rem .75rem;border-radius:var(--radius-md, 8px);border:1px solid var(--gray-100, #f1f5f9)}.k8s-detail-ctx-item strong{color:var(--gray-500, #64748b);font-weight:600}.k8s-detail-ctx-item svg{color:var(--gray-400, #94a3b8);flex-shrink:0}.k8s-detail-section h3{display:flex;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:700;color:var(--gray-600, #475569);text-transform:uppercase;letter-spacing:.04em;margin:0 0 .75rem}.k8s-detail-section h3 svg{color:var(--gray-400, #94a3b8)}.k8s-detail-rec-text{font-size:.875rem;color:var(--gray-700, #334155);line-height:1.6;margin:0}.k8s-detail-actions{list-style-type:decimal;padding-left:1.25rem;margin:0}.k8s-detail-actions li{font-size:.8125rem;color:var(--gray-700, #334155);line-height:1.7;padding-left:.25rem}.k8s-detail-metrics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.k8s-detail-metric{display:flex;flex-direction:column;background:var(--gray-50, #f8fafc);border-radius:var(--radius-md, 8px);padding:.625rem .75rem;border:1px solid var(--gray-100, #f1f5f9)}.k8s-detail-metric-label{font-size:.7rem;color:var(--gray-400, #94a3b8);font-weight:500;margin-bottom:.125rem}.k8s-detail-metric-value{font-size:.875rem;font-weight:700;color:var(--gray-900, #0f172a);word-break:break-all}.k8s-detail-footer-badges{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.5rem;border-top:1px solid var(--gray-100, #f1f5f9)}.k8s-badge-risk,.k8s-badge-effort,.k8s-badge-datasource{font-size:.7rem;font-weight:600;padding:.2rem .625rem;border-radius:6px}.risk-low{background:#d1fae5;color:#065f46}.risk-medium{background:#fef3c7;color:#92400e}.risk-high{background:#fee2e2;color:#991b1b}.effort-easy{background:#d1fae5;color:#065f46}.effort-medium{background:#fef3c7;color:#92400e}.effort-complex{background:#fee2e2;color:#991b1b}.k8s-badge-datasource{background:#ccfbf1;color:#0e7490}.k8s-rec-status-pill{display:inline-flex;align-items:center;gap:.25rem;font-size:.675rem;font-weight:700;padding:.15rem .5rem;border-radius:12px;text-transform:capitalize}.rec-status-ready{background:#f3f4f6;color:#6b7280}.rec-status-accepted{background:#dbeafe;color:#3b82f6}.rec-status-implemented{background:#d1fae5;color:#10b981}.rec-status-dismissed{background:#f3f4f6;color:#6b7280}.rec-status-suppressed{background:#fef3c7;color:#f59e0b}.k8s-rec-id{display:inline-block;font-size:.65rem;font-weight:600;color:var(--gray-400, #94a3b8);background:var(--gray-100, #f1f5f9);padding:.05rem .4rem;border-radius:4px;margin-left:.5rem;font-family:SF Mono,Fira Code,monospace}.k8s-rec-card-footer{display:flex;justify-content:flex-start;margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--gray-100, #f1f5f9)}.k8s-rec-review-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.4375rem 1rem;border:1px solid var(--gray-300, #cbd5e1);border-radius:6px;background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.k8s-rec-review-btn:hover{background:linear-gradient(135deg,#0f2757,#27b0a2);box-shadow:var(--shadow-sm, 0 1px 4px rgba(0,0,0,.1))}.k8s-rec-card{cursor:default}.k8s-opt-efficiency-banner{display:flex;align-items:center;gap:.625rem;padding:.75rem 1rem;background:#eff6ff;border:1px solid #bfdbfe;border-radius:var(--radius-md, 8px);color:#1e40af;font-size:.8125rem;margin-bottom:1.25rem}.k8s-opt-efficiency-banner svg{flex-shrink:0}.k8s-detail-header-right{display:flex;align-items:center;gap:.5rem}.k8s-detail-opp-id{display:block;font-size:.65rem;font-weight:600;color:var(--gray-400, #94a3b8);font-family:SF Mono,Fira Code,monospace;margin-top:.125rem}.k8s-detail-tabs{display:flex;gap:0;border-bottom:1px solid var(--gray-200, #e2e8f0);padding:0 1.5rem;position:sticky;top:73px;background:#fff;z-index:1}.k8s-detail-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.75rem 1rem;border:none;background:none;color:var(--gray-500, #64748b);font-size:.8125rem;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:all .15s}.k8s-detail-tab:hover{color:var(--gray-700, #334155);background:var(--gray-50, #f8fafc)}.k8s-detail-tab.active{color:var(--primary-600, #0d9488);border-bottom-color:var(--primary-500, #14b8a6)}.k8s-detail-efficiency-note{display:flex;align-items:center;justify-content:center;gap:.375rem;font-size:.75rem;color:#1e40af;background:#eff6ff;padding:.375rem .75rem;border-radius:6px;margin-top:.5rem}.k8s-detail-audit-list{display:flex;flex-direction:column;gap:.5rem}.k8s-audit-entry{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:var(--gray-50, #f8fafc);border-radius:var(--radius-md, 8px);border:1px solid var(--gray-100, #f1f5f9)}.k8s-audit-label{font-size:.75rem;font-weight:600;color:var(--gray-500, #64748b)}.k8s-audit-value{font-size:.8125rem;color:var(--gray-800, #1e293b);font-weight:500}.k8s-audit-mono{font-family:SF Mono,Fira Code,monospace;font-size:.7rem;max-width:200px;overflow:hidden;text-overflow:ellipsis}.k8s-detail-ticket-link{display:inline-block;color:var(--primary-600, #0d9488);font-size:.8125rem;word-break:break-all}.k8s-detail-footer-actions{display:flex;flex-wrap:wrap;gap:.5rem;padding:1rem 1.5rem;border-top:1px solid var(--gray-200, #e2e8f0);position:sticky;bottom:0;background:#fff;z-index:1}.k8s-action-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 8px);background:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s}.k8s-action-btn:disabled{opacity:.5;cursor:not-allowed}.k8s-action-btn.accept{background:#3b82f6;color:#fff;border-color:#3b82f6}.k8s-action-btn.accept:hover:not(:disabled){background:#2563eb}.k8s-action-btn.reject{background:#fff;color:#ef4444;border-color:#fca5a5}.k8s-action-btn.reject:hover:not(:disabled){background:#fef2f2}.k8s-action-btn.implement{background:#10b981;color:#fff;border-color:#10b981}.k8s-action-btn.implement:hover:not(:disabled){background:#059669}.k8s-action-btn.dismiss{color:var(--gray-500, #64748b)}.k8s-action-btn.dismiss:hover:not(:disabled){background:var(--gray-50, #f8fafc)}.k8s-action-btn.reopen{color:var(--gray-500, #64748b)}.k8s-action-btn.secondary{color:var(--gray-600, #475569)}.k8s-action-btn.secondary:hover:not(:disabled){background:var(--gray-50, #f8fafc)}.k8s-action-btn.reject-confirm{background:#ef4444;color:#fff;border-color:#ef4444}.k8s-action-btn.reject-confirm:hover:not(:disabled){background:#dc2626}.k8s-action-btn.implement-confirm{background:#10b981;color:#fff;border-color:#10b981}.k8s-action-btn.implement-confirm:hover:not(:disabled){background:#059669}.k8s-detail-footerMeta{font-size:.8125rem;color:var(--gray-500, #64748b);font-weight:500;padding:.25rem 0}.k8s-reject-form{display:flex;flex-direction:column;gap:.625rem;width:100%;padding:.875rem;background:#fef2f2;border-radius:var(--radius-md, 8px);border:1px solid #fecaca}.k8s-reject-form-header{display:flex;align-items:center;gap:.375rem;color:#991b1b;font-size:.875rem}.k8s-reject-form-desc{font-size:.8125rem;color:#7f1d1d;margin:0;line-height:1.5}.k8s-reject-form label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;font-weight:600;color:var(--gray-600, #475569)}.k8s-reject-form select{padding:.375rem .625rem;border:1px solid var(--gray-200, #e2e8f0);border-radius:6px;font-size:.8125rem;background:#fff}.k8s-reject-actions{display:flex;gap:.5rem;justify-content:flex-end}.k8s-implement-confirm{display:flex;flex-direction:column;gap:.5rem;width:100%;padding:.875rem;background:#fffbeb;border-radius:var(--radius-md, 8px);border:1px solid #fde68a}.k8s-implement-confirm-icon{color:#b45309;display:flex;align-items:center}.k8s-implement-confirm-body{display:flex;flex-direction:column;gap:.25rem}.k8s-implement-confirm-title{font-size:.875rem;font-weight:700;color:#92400e}.k8s-implement-confirm-text{font-size:.8125rem;color:#78350f;margin:0;line-height:1.5}@media (max-width: 1024px){.k8s-opt-kpi-strip{grid-template-columns:repeat(2,1fr)}.k8s-detail-context{grid-template-columns:1fr}}@media (max-width: 640px){.k8s-opt-container{padding:1rem}.k8s-opt-kpi-strip{grid-template-columns:1fr}.k8s-opt-header,.k8s-opt-filters{flex-direction:column}.k8s-opt-search{max-width:100%}.k8s-rec-card-main{flex-direction:column}.k8s-rec-savings-block{text-align:left}.k8s-detail-metrics-grid{grid-template-columns:1fr}.k8s-detail-tabs{overflow-x:auto}}.k8mi-container{padding:1.25rem 0}.k8mi-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.k8mi-header-left{display:flex;align-items:flex-start;gap:.75rem}.k8mi-header-icon{color:var(--primary-color, #2563eb);margin-top:2px;flex-shrink:0}.k8mi-title{font-size:1.2rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.k8mi-subtitle{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.45;max-width:600px}.k8mi-btn-add{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;background:var(--primary-600, #2563eb);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:background .15s}.k8mi-btn-add:hover{background:var(--primary-700, #1d4ed8)}.k8mi-btn-add:disabled{opacity:.5;cursor:not-allowed}.k8mi-source-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.75rem;margin-bottom:1.25rem}.k8mi-source-card{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem;border:1px solid var(--gray-200, #e5e7eb);border-radius:12px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s;position:relative}.k8mi-source-card:hover{border-color:var(--source-color, var(--primary-color));box-shadow:0 2px 8px #0000000f}.k8mi-source-card.active{border-color:var(--source-color, var(--primary-color));box-shadow:0 0 0 2px color-mix(in srgb,var(--source-color, var(--primary-color)) 25%,transparent)}.k8mi-source-card.connected{background:#f0fdf4;border-color:#bbf7d0}.k8mi-source-card-icon{font-size:1.5rem;flex-shrink:0;line-height:1}.k8mi-source-card-body{flex:1;min-width:0}.k8mi-source-card-label{display:block;font-size:.95rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.k8mi-source-card-desc{display:block;font-size:.78rem;color:var(--text-secondary);line-height:1.4}.k8mi-source-card-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;color:#065f46;background:#d1fae5;border:1px solid #a7f3d0;border-radius:999px;padding:2px 8px;white-space:nowrap;position:absolute;top:.5rem;right:.5rem}.k8mi-form-panel{border:1px solid var(--gray-200, #e5e7eb);border-radius:12px;background:#fff;padding:1.25rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #0000000a}.k8mi-form-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.k8mi-form-header h3{font-size:1.05rem;font-weight:700;color:var(--text-primary);margin:0;flex:1}.k8mi-form-source-icon{font-size:1.3rem}.k8mi-form-close{background:none;border:none;cursor:pointer;color:var(--text-tertiary, #9ca3af);padding:4px;line-height:1}.k8mi-setup-steps{background:var(--surface-50, #f9fafb);border:1px solid var(--gray-100, #f3f4f6);border-radius:8px;padding:.85rem 1rem;margin-bottom:1.25rem}.k8mi-setup-steps h4{margin:0 0 .5rem;font-size:.85rem;font-weight:700;color:var(--text-primary)}.k8mi-setup-steps ol{margin:0;padding-left:1.2rem;font-size:.82rem;color:var(--text-secondary);line-height:1.6}.k8mi-docs-link{display:inline-flex;align-items:center;gap:4px;margin-top:.5rem;font-size:.8rem;font-weight:600;color:var(--primary-600, #2563eb);text-decoration:none}.k8mi-docs-link:hover{text-decoration:underline}.k8mi-form-fields{display:grid;gap:.85rem;margin-bottom:1rem}.k8mi-field{display:flex;flex-direction:column;gap:4px}.k8mi-field-label{font-size:.82rem;font-weight:600;color:var(--text-primary)}.k8mi-field input,.k8mi-field select{padding:8px 10px;border:1px solid var(--gray-200, #e5e7eb);border-radius:8px;font-size:.85rem;color:var(--text-primary);background:#fff;transition:border-color .15s}.k8mi-field input:focus,.k8mi-field select:focus{outline:none;border-color:var(--primary-500, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.k8mi-field-hint{font-size:.72rem;color:var(--text-tertiary, #9ca3af)}.k8mi-form-actions{display:flex;gap:.5rem;justify-content:flex-end}.k8mi-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-radius:8px;background:var(--primary-600, #2563eb);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer}.k8mi-btn-primary:hover{background:var(--primary-700, #1d4ed8)}.k8mi-btn-primary:disabled{opacity:.5;cursor:not-allowed}.k8mi-btn-secondary{display:inline-flex;align-items:center;gap:6px;padding:8px 18px;border:1px solid var(--gray-200, #e5e7eb);border-radius:8px;background:#fff;color:var(--text-secondary);font-size:.85rem;font-weight:600;cursor:pointer}.k8mi-btn-secondary:hover{background:var(--gray-50, #f9fafb)}.k8mi-list{display:grid;gap:.75rem}.k8mi-card{display:flex;border:1px solid var(--gray-200, #e5e7eb);border-radius:12px;background:#fff;overflow:hidden;transition:box-shadow .15s}.k8mi-card:hover{box-shadow:0 2px 8px #0000000f}.k8mi-card-accent{width:4px;flex-shrink:0}.k8mi-card-body{flex:1;padding:1rem 1.1rem;display:grid;gap:.6rem}.k8mi-card-top{display:flex;align-items:center;gap:.6rem}.k8mi-card-source-icon{font-size:1.25rem;flex-shrink:0}.k8mi-card-info{flex:1;min-width:0}.k8mi-card-name{display:block;font-size:.9rem;font-weight:700;color:var(--text-primary)}.k8mi-card-meta{display:flex;align-items:center;gap:6px;font-size:.78rem;color:var(--text-secondary)}.k8mi-status-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap}.k8mi-status--connected{color:#065f46;background:#d1fae5;border:1px solid #a7f3d0}.k8mi-status--pending{color:#92400e;background:#fef3c7;border:1px solid #fde68a}.k8mi-status--error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca}.k8mi-card-evidence{display:flex;flex-wrap:wrap;gap:.75rem}.k8mi-evidence-item{display:inline-flex;align-items:center;gap:4px;font-size:.78rem;font-weight:600;color:var(--text-secondary)}.k8mi-card-error{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#dc2626;padding:.4rem .6rem;background:#fef2f2;border-radius:6px}.k8mi-card-actions{display:flex;gap:.5rem}.k8mi-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;border:1px solid var(--gray-200, #e5e7eb);background:#fff;color:var(--text-secondary);transition:background .15s,border-color .15s}.k8mi-action-btn:hover{background:var(--gray-50, #f9fafb);border-color:var(--gray-300, #d1d5db)}.k8mi-action-btn:disabled{opacity:.5;cursor:not-allowed}.k8mi-action-btn.test{color:var(--primary-600, #2563eb)}.k8mi-action-btn.delete{color:#dc2626}.k8mi-action-btn.delete:hover{background:#fef2f2;border-color:#fecaca}.k8mi-empty{text-align:center;padding:3rem 1.5rem;color:var(--text-secondary)}.k8mi-empty h3{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:.75rem 0 .5rem}.k8mi-empty p{font-size:.85rem;max-width:500px;margin:0 auto 1.25rem;line-height:1.5}.k8mi-loading{display:flex;align-items:center;gap:.5rem;justify-content:center;padding:2rem;color:var(--text-secondary);font-size:.85rem}@keyframes k8mi-spin{to{transform:rotate(360deg)}}.k8mi-spin{animation:k8mi-spin .8s linear infinite}.k8s-hub{max-width:1440px;margin:0 auto}.k8s-hub .summary-card,.k8s-hub .metric-card,.k8s-hub .card,.k8s-hub .chart-container{position:static!important;overflow:visible!important;transform:none!important}.k8s-hub .summary-card:before,.k8s-hub .metric-card:before,.k8s-hub .card:before{display:none!important}.k8s-hub .summary-card:hover,.k8s-hub .metric-card:hover,.k8s-hub .card:hover{transform:none!important}.k8s-hub .k8s-hub-header{margin-bottom:0!important;padding:1.5rem 2rem 0!important}.k8s-hub .k8s-hub-tabs{margin-bottom:0!important;padding:1.25rem 2rem 0!important}.k8s-hub .k8s-hub-tab{padding:.625rem 1.25rem!important;font-size:.875rem!important}.k8s-hub .k8s-hub-title{margin:0!important;font-size:1.625rem!important}.k8s-hub .k8s-hub-subtitle{margin:.25rem 0 0!important}.k8s-hub .k8s-hub-btn-discover{padding:.5rem 1rem!important;font-size:.8125rem!important}.k8s-hub-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.5rem 2rem 0}.k8s-hub-header-left{display:flex;align-items:flex-start;gap:.75rem}.k8s-hub-logo{color:var(--primary-500, #14b8a6);margin-top:2px;flex-shrink:0}.k8s-hub-title{margin:0;font-size:1.625rem;font-weight:700;color:var(--gray-900, #0f172a);letter-spacing:-.02em}.k8s-hub-subtitle{margin:.25rem 0 0;font-size:.875rem;color:var(--gray-500, #64748b)}.k8s-hub-header-right{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.k8s-hub-sync-badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.75rem;font-weight:600;color:var(--gray-500, #64748b);background:var(--gray-50, #f8fafc);border:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md, 8px);padding:.375rem .75rem}.sync-icon-ok{color:var(--success-500, #10b981)}.sync-icon-none{color:var(--gray-400, #94a3b8)}.k8s-hub-btn-discover{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border:none;border-radius:var(--radius-md, 8px);background:linear-gradient(135deg,var(--primary-500, #14b8a6) 0%,var(--primary-600, #0d9488) 100%);color:#fff;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s;box-shadow:0 1px 3px #14b8a640}.k8s-hub-btn-discover:hover{background:linear-gradient(135deg,var(--primary-600, #0d9488) 0%,var(--primary-700, #0f766e) 100%);box-shadow:0 2px 6px #14b8a659}.k8s-hub-btn-discover:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}@keyframes k8s-spin{to{transform:rotate(360deg)}}.k8s-spin{animation:k8s-spin 1s linear infinite}.k8s-hub-discovery-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin:1rem 2rem 0;padding:1rem 1.25rem;background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border:1px solid #99f6e4;border-radius:var(--radius-md, 10px)}.k8s-hub-banner-content{display:flex;align-items:flex-start;gap:.75rem}.k8s-hub-banner-content svg{color:var(--primary-500, #14b8a6);flex-shrink:0;margin-top:1px}.k8s-hub-banner-content strong{display:block;font-size:.875rem;color:#065f46;margin-bottom:.25rem}.k8s-hub-banner-content p{margin:0;font-size:.8125rem;color:#0d9488;line-height:1.5}.k8s-hub-banner-close{background:none;border:none;font-size:1.25rem;color:#5eead4;cursor:pointer;padding:0;line-height:1}.k8s-hub-banner-close:hover{color:var(--primary-500, #14b8a6)}.k8s-hub-discovery-result{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.75rem 2rem 0;padding:.75rem 1.25rem;border-radius:var(--radius-md, 8px);font-size:.8125rem}.k8s-hub-discovery-result.success{background:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.k8s-hub-discovery-result.error{background:#fee2e2;border:1px solid #fecaca;color:#991b1b}.k8s-hub-result-body{flex:1}.k8s-hub-result-body strong{font-weight:700}.k8s-hub-result-close{background:none;border:none;font-size:1.125rem;cursor:pointer;padding:0;line-height:1;color:inherit;opacity:.5}.k8s-hub-result-close:hover{opacity:1}.k8s-hub-tabs{display:flex;gap:0;padding:1.25rem 2rem 0;border-bottom:2px solid var(--gray-200, #e2e8f0)}.k8s-hub-tab{display:inline-flex;align-items:center;gap:.375rem;padding:.625rem 1.25rem;border:none;background:none;font-size:.875rem;font-weight:600;color:var(--gray-500, #64748b);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s;font-family:inherit}.k8s-hub-tab:hover{color:var(--gray-700, #334155)}.k8s-hub-tab.active{color:var(--primary-500, #14b8a6);border-bottom-color:var(--primary-500, #14b8a6)}.k8s-hub-tab.active svg{color:var(--primary-500, #14b8a6)}.k8s-hub-tab-label{white-space:nowrap}.k8s-hub-content{min-height:400px}.k8s-hub-content .kubernetes-container,.k8s-hub-content .k8s-opt-container{padding-top:1rem}@media (max-width: 768px){.k8s-hub-header{flex-direction:column;padding:1rem}.k8s-hub-header-right{flex-wrap:wrap}.k8s-hub-tabs{padding:1rem 1rem 0;overflow-x:auto}.k8s-hub-discovery-banner{margin:.75rem 1rem 0}}.carbon-footprint-dashboard{padding:1.5rem 2rem 2.5rem;background:#f8fafc;min-height:100vh}.carbon-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.header-content{flex:1}.header-title-row{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.header-title-row h1{font-size:2rem;font-weight:700;color:#065f46;margin:0}.beta-badge{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.header-subtitle{color:#6b7280;font-size:1rem;margin:0}.carbon-tooltip{margin-left:8px;width:18px;height:18px;border-radius:999px;border:1px solid #cfe7df;color:#0f766e;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;cursor:help;background:#ecfdf5;vertical-align:middle}.carbon-estimate-badge{margin-left:8px;padding:.15rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;letter-spacing:.02em;border:1px solid #a7f3d0;color:#047857;background:#ecfdf3;vertical-align:middle;display:inline-flex;align-items:center}.time-range-selector{display:flex;gap:.5rem}.time-range-selector button{padding:.5rem 1rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;color:#6b7280;font-weight:500;cursor:pointer;transition:all .2s}.time-range-selector button:hover{border-color:#10b981;color:#10b981}.time-range-selector button.active{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b981}.carbon-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.carbon-card{background:#fff;border-radius:var(--radius-lg);border:1px solid var(--gray-200);padding:1rem;box-shadow:var(--shadow-sm);display:flex;gap:.75rem;align-items:flex-start;transition:box-shadow .2s}.carbon-card:hover{box-shadow:var(--shadow-md)}.carbon-card.primary{background:#fff}.carbon-card.primary .card-label{color:var(--gray-600)}.carbon-card.primary .card-value{color:var(--gray-900)}.carbon-card.primary .card-sublabel{color:var(--gray-600)}.carbon-footprint-dashboard .card-icon{width:auto;height:auto;border-radius:0;background:transparent;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#64748b;margin-top:.1rem}.carbon-card.primary .card-icon{background:transparent;color:#64748b}.carbon-footprint-dashboard .card-content{flex:1}.carbon-footprint-dashboard .card-label{font-size:.75rem;color:var(--gray-600);font-weight:700;text-transform:uppercase;letter-spacing:.02em;margin-bottom:.3rem}.carbon-footprint-dashboard .card-value{font-size:1.4rem;font-weight:800;color:var(--gray-900);line-height:1.25;margin-bottom:.2rem}.carbon-footprint-dashboard .card-sublabel{font-size:.8rem;color:var(--gray-600);line-height:1.35}.card-trend{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.trend-up{color:#ef4444}.trend-down{color:#10b981}.trend-stable{color:#6b7280}.card-trend .positive{color:#10b981}.card-trend .negative{color:#ef4444}.environmental-impact{background:#fff;border-radius:16px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 4px 6px -1px #0000001a}.environmental-impact h3{margin:0 0 1rem;color:#111827;font-size:1.25rem}.impact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.impact-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#f9fafb;border-radius:12px}.impact-value{font-size:1.5rem;font-weight:700;color:#111827}.impact-label{font-size:.875rem;color:#6b7280}.carbon-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.carbon-tabs button{padding:.75rem 1.5rem;border:none;background:transparent;color:#6b7280;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;margin-bottom:-2px;display:flex;align-items:center;gap:.5rem;transition:all .2s}.carbon-tabs button:hover{color:#10b981}.carbon-tabs button.active{color:#10b981;border-bottom-color:#10b981}.carbon-tab-content{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 4px 6px -1px #0000001a;min-height:400px}.chart-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem}.chart-card{background:#f9fafb;border-radius:12px;padding:1.5rem}.chart-card.full-width{grid-column:1 / -1}.chart-card h3{margin:0 0 1rem;color:#111827;font-size:1.125rem}.no-data{text-align:center;padding:3rem;color:#9ca3af}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.breakdown-card{background:#f9fafb;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb}.breakdown-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #e5e7eb}.provider-name{font-weight:600;color:#111827;font-size:1.125rem}.breakdown-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.metric{display:flex;flex-direction:column;gap:.25rem}.metric-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.metric-value{font-size:1.125rem;font-weight:600;color:#111827}.ai-controls{display:flex;gap:1rem;margin-bottom:2rem;align-items:center}.ai-provider-select{padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:8px;background:#fff;font-size:.875rem;min-width:200px}.fetch-insights-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.fetch-insights-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 6px -1px #3b82f64d}.fetch-insights-btn:disabled{opacity:.6;cursor:not-allowed}.insights-list{display:flex;flex-direction:column;gap:1.5rem}.insight-card{background:#f9fafb;border-radius:12px;padding:1.5rem;border-left:4px solid #10b981}.insight-header{margin-bottom:1rem}.insight-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.ai-provider-badge{background:#3b82f6;color:#fff;padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:capitalize}.insight-card h4{margin:0;color:#111827;font-size:1.125rem;flex:1}.priority-badge{padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase}.priority-badge.high{background:#fee2e2;color:#991b1b}.priority-badge.medium{background:#fef3c7;color:#92400e}.priority-badge.low{background:#dbeafe;color:#1e40af}.insight-description{color:#4b5563;line-height:1.6;margin-bottom:1rem}.insight-metrics{display:flex;gap:1.5rem;margin-bottom:1rem;flex-wrap:wrap}.insight-metric{display:flex;align-items:center;gap:.5rem;color:#065f46;font-weight:500}.action-items{background:#fff;border-radius:8px;padding:1rem;margin-top:1rem}.action-items h5{margin:0 0 .75rem;color:#111827;font-size:.875rem;font-weight:600}.action-items ul{margin:0;padding-left:1.5rem;color:#4b5563}.action-items li{margin-bottom:.5rem;line-height:1.5}.insight-reasoning{display:flex;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:1rem;background:#fef3c7;border-radius:8px;color:#92400e;font-size:.875rem;line-height:1.5}.insight-extra{margin-top:1rem;background:#fff;border-radius:8px;padding:1rem}.insight-extra h5{margin:0 0 .75rem;color:#111827;font-size:.875rem;font-weight:600}.extra-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}.extra-detail{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border-radius:6px;background:#f3f4f6}.extra-label{font-size:.75rem;font-weight:600;text-transform:capitalize;color:#6b7280}.extra-value{font-size:.875rem;color:#111827;white-space:pre-wrap}.no-insights{text-align:center;padding:4rem 2rem;color:#9ca3af}.no-insights .hint{font-size:.875rem;margin-top:.5rem;color:#6b7280}.goals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.goals-header h3{margin:0;color:#111827}.create-goal-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;position:relative;z-index:10;pointer-events:auto!important;-webkit-user-select:none;user-select:none}.create-goal-btn:hover{transform:translateY(-1px);box-shadow:0 4px 6px -1px #10b9814d}.goals-list{display:flex;flex-direction:column;gap:1.5rem}.goal-card{background:#f9fafb;border-radius:12px;padding:1.5rem;border:1px solid #e5e7eb}.goal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.goal-header h4{margin:0;color:#111827;font-size:1.125rem}.goal-status{padding:.25rem .75rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase}.goal-status.active{background:#dbeafe;color:#1e40af}.goal-status.completed{background:#d1fae5;color:#065f46}.goal-status.failed{background:#fee2e2;color:#991b1b}.goal-progress{margin-bottom:1rem}.progress-bar{height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);transition:width .3s}.progress-text{font-size:.875rem;color:#6b7280;text-align:right}.goal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.goal-metric{display:flex;flex-direction:column;gap:.25rem}.goal-metric span:first-child{font-size:.75rem;color:#6b7280}.goal-metric span:last-child{font-size:1rem;font-weight:600;color:#111827}.no-goals{text-align:center;padding:4rem 2rem;color:#9ca3af}.modal-content{background:#fff;border-radius:12px;padding:0;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:1.5rem;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#111827}.modal-body{padding:1.5rem}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:500;color:#374151;margin-bottom:.5rem;font-size:.875rem}.form-group input[type=text],.form-group input[type=number],.form-group input[type=date]{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:all .2s}.form-group input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-group small{display:block;margin-top:.25rem;color:#6b7280;font-size:.75rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.checkbox-group{display:flex;flex-wrap:wrap;gap:1rem;margin-top:.5rem}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-size:.875rem;color:#374151}.checkbox-label input[type=checkbox]{width:auto;margin:0;cursor:pointer}.secondary-button{padding:.625rem 1.25rem;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;font-weight:500;cursor:pointer;transition:all .2s}.secondary-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.secondary-button:disabled{opacity:.5;cursor:not-allowed}.primary-button{padding:.625rem 1.25rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;font-weight:500;cursor:pointer;transition:all .2s}.primary-button:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 6px -1px #0000001a}.primary-button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 768px){.carbon-header{flex-direction:column;gap:1rem}.carbon-summary-cards,.chart-grid,.breakdown-grid,.goal-metrics{grid-template-columns:1fr}}.sso-login{margin-top:24px}.sso-divider{display:flex;align-items:center;text-align:center;margin:24px 0}.sso-divider:before,.sso-divider:after{content:"";flex:1;border-bottom:1px solid #e2e8f0}.sso-divider span{padding:0 16px;color:#64748b;font-size:.875rem;font-weight:600;letter-spacing:.01em}.sso-providers{display:flex;flex-direction:column;gap:10px}.sso-button{display:flex;align-items:center;justify-content:flex-start;width:100%;padding:12px 14px;background:#fff;border:1px solid #dbe4ef;border-radius:10px;color:#1f2937;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;gap:12px}.sso-button:hover:not(:disabled){border-color:#cfd8e3;box-shadow:0 6px 16px #0f172a14}.sso-button:active:not(:disabled){transform:translateY(0)}.sso-button:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(.6);box-shadow:none;transform:none}.sso-button--disabled .sso-icon{background:#f1f5f9;border-color:#e2e8f0;box-shadow:none}.sso-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#fff;border:1px solid #e5e7eb}.sso-label{font-size:.95rem;font-weight:600;color:inherit}.sso-badge{margin-left:auto;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;border:1px solid #e2e8f0;padding:.25rem .45rem;border-radius:999px}.sso-button--google .sso-icon{border-color:#4285f440}.sso-button--microsoft .sso-icon{border-color:#00a4ef40}.sso-button--okta .sso-icon{border-color:#007dc140}.sso-button--saml .sso-icon{border-color:#94a3b859}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative;overflow:hidden}.login-background{position:absolute;top:0;left:0;right:0;bottom:0;z-index:0}.login-background-gradient{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#1e3a5f,#14b8a6,#06b6d4);opacity:.95}.login-background-pattern{position:absolute;top:0;left:0;right:0;bottom:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 40% 20%,rgba(255,255,255,.05) 0%,transparent 50%);animation:patternMove 20s ease-in-out infinite}@keyframes patternMove{0%,to{transform:translate(0)}50%{transform:translate(20px,20px)}}.login-card{position:relative;z-index:1;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:440px;padding:2rem 2.5rem 2.5rem;animation:slideUp .5s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:1.5rem}.login-logo{display:flex!important;justify-content:center!important;align-items:center!important;margin-bottom:.5rem!important;width:100%!important}.login-logo img{height:120px!important;min-height:120px!important;max-height:120px!important;width:auto!important;max-width:95%!important;object-fit:contain!important;filter:drop-shadow(0 4px 12px rgba(59,130,246,.2))!important}.login-tagline{font-size:1rem;font-weight:600;color:#14b8a6;margin:0 0 .5rem;letter-spacing:.01em}.login-logo svg{width:64px;height:64px;filter:drop-shadow(0 4px 12px rgba(59,130,246,.3))}.login-header h1{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 .5rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-subtitle{font-size:.9375rem;color:#64748b;margin:0;font-weight:500}.login-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#f1f5f9;padding:.375rem;border-radius:10px}.login-tab{flex:1;padding:.75rem 1rem;border:none;background:transparent;color:#64748b;font-size:.9375rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .2s ease}.login-tab:hover{color:#14b8a6}.login-tab.active{background:#fff;color:#14b8a6;box-shadow:0 2px 8px #00000014}.error-message{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:.875rem;margin-bottom:1.25rem;animation:shake .4s ease;line-height:1.5}.error-message svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}.error-message span{flex:1;word-break:break-word}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}.success-message{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;color:#166534;font-size:.875rem;margin-bottom:1.25rem;animation:slideIn .4s ease}.success-message svg{width:20px;height:20px;flex-shrink:0;margin-top:2px}.success-message div{flex:1}.success-message strong{display:block;margin-bottom:.25rem;font-weight:600}.success-message p{margin:0;line-height:1.4;opacity:.9}.verification-note{font-size:.85rem;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem .9rem;line-height:1.4}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.login-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.875rem;font-weight:600;color:#334155}.form-group input{padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:8px;font-size:.9375rem;transition:all .2s ease;background:#fff}.form-group input:focus{outline:none;border-color:#14b8a6;box-shadow:0 0 0 3px #14b8a61a}.form-group input::placeholder{color:#94a3b8}.btn-login{padding:1rem;font-size:1rem;font-weight:600;border-radius:8px;border:none;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;box-shadow:0 4px 12px #14b8a64d}.btn-login:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #14b8a666}.btn-login:active:not(:disabled){transform:translateY(0)}.btn-login:disabled{opacity:.7;cursor:not-allowed}.btn-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.forgot-password-link{text-align:center;margin-top:-.5rem;display:flex;flex-direction:column;gap:.5rem}.link-button{background:none;border:none;color:#14b8a6;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:color .2s ease}.link-button:hover{color:#0d9488;text-decoration:underline}.signup-benefits{display:flex;flex-direction:column;gap:.625rem;padding:1rem;background:#f8fafc;border-radius:8px;margin-top:.5rem}.benefit-item{display:flex;align-items:center;gap:.75rem;font-size:.875rem;color:#475569}.benefit-item svg{width:20px;height:20px;color:#10b981;flex-shrink:0}.login-footer{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:1.25rem}.providers-section{text-align:center}.providers-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:.75rem}.providers-grid{display:flex;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap}.provider-item{display:flex;align-items:center;justify-content:center;padding:.25rem;background:transparent;border:none;border-radius:0;transition:opacity .2s ease;cursor:default;opacity:.9}.ai-providers-section .providers-label{margin-top:.25rem}.ai-providers-grid{gap:1rem}.ai-provider-item{padding:.25rem}.ai-provider-logo{width:32px;height:32px;display:block}.security-section{background:linear-gradient(135deg,#f0fdfa,#ecfeff);border:1px solid #99f6e4;border-radius:10px;padding:.875rem}.security-badge{display:flex;align-items:center;gap:.875rem}.security-badge svg{width:32px;height:32px;color:#14b8a6;flex-shrink:0}.security-text{flex:1}.security-title{font-size:.9375rem;font-weight:700;color:#0f766e;margin-bottom:.25rem}.security-subtitle{font-size:.75rem;color:#14b8a6;font-weight:600}.trust-badges{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.trust-badge{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;font-size:.75rem;color:#64748b;font-weight:600}.trust-badge svg{width:14px;height:14px;color:#14b8a6;flex-shrink:0}@media (max-width: 640px){.login-container{padding:1rem}.login-card{padding:1.5rem 1.25rem 2rem}.login-header{margin-bottom:1.25rem}.login-logo img{height:100px!important;min-height:100px!important;max-height:100px!important}.login-tagline{font-size:.9375rem}.providers-grid{gap:1rem}.provider-item{padding:.5rem}.feature-row{grid-template-columns:1fr;gap:.5rem}.trust-badges{flex-direction:column;align-items:stretch}.trust-badge{justify-content:center}}.email-verification-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#13316c,#2bc5b5,#21d5ed);padding:20px}.email-verification-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;padding:40px;width:100%;max-width:480px;text-align:center}.verification-header{margin-bottom:30px}.verification-icon{width:80px;height:80px;background:linear-gradient(135deg,#13316c,#2bc5b5);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;box-shadow:0 4px 16px #13316c4d}.verification-icon svg{width:40px;height:40px;color:#fff}.verification-header h1{font-size:28px;font-weight:700;color:#1f2937;margin:0 0 10px}.verification-header p{color:#6b7280;font-size:16px;margin:0;line-height:1.5}.verification-form{margin-bottom:30px}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;font-weight:600;color:#374151;margin-bottom:8px;font-size:14px}.form-group input{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:16px;transition:all .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 3px #2bc5b526}.form-group input:disabled{background-color:#f9fafb;color:#9ca3af;cursor:not-allowed}.verify-button{width:100%;background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;border:none;padding:14px 24px;border-radius:10px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #13316c4d}.verify-button:hover:not(:disabled){background:linear-gradient(135deg,#0f2757,#27b0a2);transform:translateY(-1px);box-shadow:0 8px 25px #13316c66}.verify-button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.verification-actions{display:flex;flex-direction:column;gap:15px}.resend-form{background:#f9fafb;padding:20px;border-radius:8px;margin-bottom:15px}.resend-actions{display:flex;gap:10px;margin-top:15px}.resend-button{flex:1;background:#2bc5b5;color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:6px}.resend-button:hover:not(:disabled){background:#27b0a2}.resend-button:disabled{opacity:.6;cursor:not-allowed}.cancel-button{flex:1;background:#6b7280;color:#fff;border:none;padding:10px 16px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-button:hover:not(:disabled){background:#4b5563}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.resend-link{background:none;border:none;color:#2bc5b5;font-size:14px;cursor:pointer;text-decoration:underline;padding:0}.resend-link:hover:not(:disabled){color:#27b0a2}.resend-link:disabled{opacity:.6;cursor:not-allowed}.back-link{background:none;border:none;color:#6b7280;font-size:14px;cursor:pointer;text-decoration:none;padding:0;display:flex;align-items:center;justify-content:center;gap:4px}.back-link:hover:not(:disabled){color:#374151}.back-link:disabled{opacity:.6;cursor:not-allowed}.success-message{background:#eafaf9;border:1px solid hsl(174 64% 47%);color:#176960;padding:12px 16px;border-radius:10px;margin-bottom:20px;display:flex;align-items:center;gap:8px;text-align:left}.success-message svg{width:20px;height:20px;flex-shrink:0}.error-message{background:#fee2e2;border:1px solid #ef4444;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:center;gap:8px;text-align:left}.error-message svg{width:20px;height:20px;flex-shrink:0}.spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 640px){.email-verification-container{padding:10px}.email-verification-card{padding:30px 20px}.verification-header h1{font-size:24px}.verification-header p{font-size:14px}.resend-actions{flex-direction:column}}.data-freshness-indicator{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;margin-top:32px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px;border:1px solid #dee2e6;font-size:13px;color:#6c757d;box-shadow:0 1px 3px #0000000d}.freshness-icon{font-size:16px;animation:pulse 2s ease-in-out infinite}.freshness-text{font-weight:500;letter-spacing:.3px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@media (max-width: 768px){.data-freshness-indicator{font-size:12px;padding:10px 16px;margin-top:24px}.freshness-icon{font-size:14px}}@media (prefers-color-scheme: dark){.data-freshness-indicator{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;border-color:#dee2e6!important;color:#6c757d!important}}.admin-console{padding:2rem;max-width:1400px;margin:0}.admin-header{margin-bottom:2rem}.admin-header h1{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.admin-header p{color:var(--text-secondary);margin:0}.admin-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color);justify-content:flex-start}.admin-tabs button{padding:1rem 1.5rem;border:none;background:none;font-size:1rem;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;border-bottom:3px solid transparent;margin-bottom:-2px}.admin-tabs button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.admin-tabs button:hover{color:var(--text-primary)}.admin-content{min-height:400px}.advisor-config-panel{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--border-color)}.advisor-config-header{margin-bottom:1.5rem}.advisor-config-header h3{margin:0 0 .5rem;font-size:1.25rem}.advisor-config-header p{margin:0;color:var(--text-secondary)}.advisor-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.advisor-config-field{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:var(--text-secondary)}.advisor-config-field input{border:1px solid var(--border-color);border-radius:8px;padding:.6rem .75rem;font-size:.9rem;background:#fff;color:var(--text-primary)}.advisor-config-field small{font-size:.75rem;color:var(--text-secondary)}.advisor-config-actions{margin-top:1.5rem;display:flex;align-items:center;gap:1rem}.advisor-config-actions button{border:none;border-radius:8px;padding:.6rem 1rem;background:var(--primary-color);color:#fff;font-weight:600;cursor:pointer}.advisor-config-status{font-size:.85rem;color:var(--text-secondary)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;display:flex;align-items:center;gap:1.5rem;box-shadow:0 2px 8px #0000000d;border:1px solid var(--border-color)}.stat-icon{font-size:1.5rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border-radius:var(--radius-md);color:var(--text-secondary);opacity:.7}.stat-info{flex:1}.stat-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:.5rem}.stat-label{font-size:1rem;font-weight:600;color:var(--text-secondary);margin-bottom:.25rem}.stat-sublabel{font-size:.875rem;color:var(--text-secondary)}.tier-distribution{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem}.tier-distribution h3{margin:0 0 1rem;font-size:1.25rem;color:var(--text-primary)}.tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.tier-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.tier-count{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.billing-run-panel{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--border-color);margin-bottom:2rem}.billing-run-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.25rem}.billing-run-header h3{margin:0 0 .25rem;font-size:1.1rem;color:var(--text-primary)}.billing-run-header p{margin:0;font-size:.85rem;color:var(--text-secondary)}.billing-run-button{border:none;border-radius:8px;padding:.6rem 1rem;background:var(--primary-color);color:#fff;font-weight:600;cursor:pointer}.billing-run-actions{display:flex;align-items:center;gap:.75rem}.billing-run-button.secondary{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.billing-run-button:disabled{opacity:.6;cursor:not-allowed}.billing-run-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.billing-run-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:.25rem}.billing-run-value{font-size:.95rem;color:var(--text-primary);font-weight:600}.billing-run-status{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;font-size:.8rem;font-weight:600;text-transform:capitalize;background:#3b82f61f;color:#3b82f6}.billing-run-status.succeeded{background:#10b98126;color:#10b981}.billing-run-status.failed{background:#ef444426;color:#ef4444}.billing-run-status.running{background:#f59e0b26;color:#f59e0b}.billing-run-status.none{background:#6b728026;color:#6b7280}.billing-run-message{margin-top:.75rem;font-size:.85rem;color:var(--text-secondary)}.billing-run-error{margin-top:.75rem;font-size:.85rem;color:#ef4444}.view-header{margin-bottom:1.5rem}.view-header h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin:0}.table-container{background:var(--bg-secondary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:0 2px 8px #0000000d}.admin-table{width:100%;border-collapse:collapse}.admin-table thead{background:var(--bg-primary);border-bottom:2px solid var(--border-color)}.admin-table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.admin-table td{padding:1rem;border-bottom:1px solid var(--border-color)}.admin-table tbody tr:hover{background:var(--bg-primary)}.org-info,.user-info{display:flex;flex-direction:column;gap:.25rem}.org-info strong,.user-info strong{color:var(--text-primary);font-weight:600}.org-info small,.user-info small{color:var(--text-secondary);font-size:.875rem}.tier-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tier-free{background:#e5e7eb;color:#374151}.tier-starter{background:#dbeafe;color:#1e40af}.tier-professional{background:#d1fae5;color:#065f46}.tier-enterprise{background:#fef3c7;color:#92400e}.role-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:capitalize}.role-super-admin{background:#fecaca;color:#991b1b}.role-org-admin{background:#fed7aa;color:#9a3412}.role-user{background:#dbeafe;color:#1e40af}.role-viewer{background:#e5e7eb;color:#374151}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.inactive{background:#fee2e2;color:#991b1b}.count-badge{display:inline-block;padding:.25rem .75rem;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;font-weight:600;color:var(--text-primary)}.action-buttons{display:flex!important;flex-direction:row!important;align-items:center;justify-content:flex-start;gap:.5rem;white-space:nowrap;flex-wrap:nowrap}.btn-edit,.btn-toggle{display:inline-flex;align-items:center;justify-content:center;padding:.5rem;border:none;background:var(--bg-primary);border-radius:var(--radius-sm);cursor:pointer;font-size:1rem;transition:all .2s ease;flex-shrink:0}.btn-schedulers{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.btn-schedulers:hover{background:#dbeafe;color:#1e40af;transform:scale(1.05)}.btn-edit:hover{background:var(--primary-color);transform:scale(1.1)}.btn-toggle:hover{transform:scale(1.1)}.btn-toggle.deactivate:hover{background:#fee2e2}.btn-toggle.activate:hover{background:#d1fae5}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-primary);border-radius:var(--radius-lg);width:90%;max-width:500px;box-shadow:0 20px 60px #0000004d}.sched-modal{max-width:960px;max-height:88vh;display:flex;flex-direction:column;padding:0;overflow:hidden}.sched-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem 1rem;border-bottom:1px solid var(--gray-200, #e5e7eb);background:linear-gradient(135deg,#f0fdfa,#f8fafc);flex-shrink:0}.sched-modal-titleBlock{display:flex;flex-direction:column;gap:2px}.sched-modal-titleRow{display:flex;align-items:center;gap:8px}.sched-modal-titleRow h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--gray-900, #111827)}.sched-modal-titleIcon{color:#27b0a2}.sched-modal-orgName{margin:0;font-size:.8rem;color:var(--gray-500, #6b7280);font-weight:500}.sched-modal-headerActions{display:flex;align-items:center;gap:8px}.sched-refreshBtn{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:8px;border:1px solid var(--gray-200, #e5e7eb);background:#fff;color:var(--gray-700, #374151);cursor:pointer;transition:all .15s}.sched-refreshBtn:hover{border-color:#2bc5b5;color:#239f93}.sched-refreshBtn:disabled{opacity:.5;cursor:not-allowed}.sched-summaryStrip{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 1.5rem;border-bottom:1px solid var(--gray-100, #f3f4f6);background:#fff;flex-shrink:0}.sched-summaryPill{display:inline-flex;align-items:center;gap:5px;font-size:.73rem;font-weight:600;color:var(--gray-600, #4b5563)}.sched-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.sched-dot--total{background:var(--gray-400, #9ca3af)}.sched-dot--healthy{background:#10b981}.sched-dot--active{background:#3b82f6}.sched-dot--failing{background:#ef4444}.sched-dot--pending{background:#d1d5db}.sched-summaryTimestamp{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font-size:.7rem;color:var(--gray-400, #9ca3af);font-weight:500}.sched-errorBanner{display:flex;align-items:center;gap:8px;margin:0 1.5rem;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:.8rem;color:#991b1b;font-weight:500;flex-shrink:0}.sched-loadingState{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;gap:.75rem;color:var(--gray-400, #9ca3af)}.sched-list{flex:1;overflow-y:auto;padding:12px 1.5rem 1.5rem;display:flex;flex-direction:column;gap:6px}.sched-item{border:1px solid var(--gray-200, #e5e7eb);border-radius:10px;background:#fff;transition:box-shadow .15s,border-color .15s;overflow:hidden}.sched-item:hover{box-shadow:0 1px 4px #0000000a}.sched-item--expanded{border-color:#abede6;box-shadow:0 2px 8px #2bc5b514}.sched-item.sched-success{border-left:3px solid #10b981}.sched-item.sched-failed{border-left:3px solid #ef4444}.sched-item.sched-warning{border-left:3px solid #f59e0b}.sched-item.sched-running{border-left:3px solid #3b82f6}.sched-item.sched-pending{border-left:3px solid #d1d5db}.sched-itemMain{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none}.sched-itemIcon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;background:var(--gray-50, #f9fafb);color:var(--gray-500, #6b7280);flex-shrink:0}.sched-itemBody{flex:1;min-width:0}.sched-itemTitle{font-size:.83rem;font-weight:650;color:var(--gray-800, #1e293b)}.sched-itemMeta{display:flex;align-items:center;gap:10px;margin-top:2px}.sched-itemCadence{display:inline-flex;align-items:center;gap:3px;font-size:.7rem;font-weight:600;color:var(--gray-500, #6b7280)}.sched-itemLastRun{font-size:.7rem;color:var(--gray-400, #9ca3af)}.sched-itemRight{display:flex;align-items:center;gap:8px;flex-shrink:0}.sched-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:700;text-transform:uppercase;padding:3px 8px;border-radius:999px;letter-spacing:.02em;white-space:nowrap}.sched-badge.sched-success{background:#ecfdf5;color:#065f46}.sched-badge.sched-failed{background:#fef2f2;color:#991b1b}.sched-badge.sched-warning{background:#fffbeb;color:#92400e}.sched-badge.sched-running{background:#eff6ff;color:#1d4ed8}.sched-badge.sched-pending{background:#f3f4f6;color:#6b7280}.sched-runBtn{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:650;padding:5px 12px;border-radius:8px;border:1px solid hsl(174 64% 70%);background:linear-gradient(135deg,#2bc5b5,#239f93);color:#fff;cursor:pointer;transition:all .15s;white-space:nowrap}.sched-runBtn:hover:not(:disabled){box-shadow:0 2px 8px #2bc5b54d;transform:translateY(-1px)}.sched-runBtn:disabled{opacity:.45;cursor:not-allowed;transform:none}.sched-runBtn--running{background:#dbeafe;color:#1d4ed8;border-color:#93c5fd}.sched-expandBtn{background:none;border:none;padding:4px;cursor:pointer;color:var(--gray-400, #9ca3af);border-radius:6px}.sched-expandBtn:hover{background:var(--gray-100, #f3f4f6);color:var(--gray-600, #4b5563)}@keyframes schedSpin{to{transform:rotate(360deg)}}.sched-spin{animation:schedSpin 1s linear infinite}.sched-itemDetail{padding:12px 14px 14px;border-top:1px solid var(--gray-100, #f3f4f6);background:var(--gray-50, #f9fafb);display:flex;flex-direction:column;gap:10px}.sched-detailGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px}.sched-detailCell{display:flex;flex-direction:column;gap:1px}.sched-detailLabel{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-400, #9ca3af)}.sched-detailValue{font-size:.8rem;color:var(--gray-700, #374151);font-weight:500}.sched-errorBox{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;border-radius:8px;background:#fef2f2;border:1px solid #fecaca;font-size:.78rem;color:#991b1b;line-height:1.45}.sched-errorBox svg{flex-shrink:0;margin-top:2px}.sched-runLogSection{display:flex;flex-direction:column;gap:8px}.sched-runLogTitle{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--gray-500, #6b7280)}.sched-runLogStats{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.sched-runLogStat{text-align:center;padding:8px 4px;background:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:8px}.sched-runLogStatNum{display:block;font-size:1.1rem;font-weight:700;color:var(--gray-800, #1e293b)}.sched-runLogStatLabel{display:block;font-size:.65rem;font-weight:600;color:var(--gray-400, #9ca3af);text-transform:uppercase;letter-spacing:.03em;margin-top:1px}.sched-accountTable{border:1px solid var(--gray-200, #e5e7eb);border-radius:8px;overflow:hidden;font-size:.78rem}.sched-accountTableHead{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;padding:6px 10px;background:var(--gray-100, #f3f4f6);border-bottom:1px solid var(--gray-200, #e5e7eb);font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--gray-500, #6b7280)}.sched-accountTableRow{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;padding:7px 10px;border-bottom:1px solid var(--gray-100, #f3f4f6);align-items:center}.sched-accountTableRow:last-child{border-bottom:none}.sched-accountTableRow--error{background:#fef2f2}.sched-acctName{font-weight:600;color:var(--gray-700, #374151);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sched-acctProvider{text-transform:uppercase;font-weight:600;color:var(--gray-500, #6b7280);font-size:.72rem}.sched-acctOk{display:inline-flex;align-items:center;gap:3px;color:#065f46;font-weight:600}.sched-acctWarn{display:inline-flex;align-items:center;gap:3px;color:#92400e;font-weight:600}.sched-acctError{display:inline-flex;align-items:center;gap:3px;color:#991b1b;font-weight:600}.sched-runLogErrors{border:1px solid #fecaca;border-radius:8px;padding:8px 10px;background:#fef2f2}.sched-runLogErrorsTitle{display:flex;align-items:center;gap:5px;font-size:.75rem;font-weight:700;color:#991b1b;margin-bottom:4px}.sched-runLogErrorItem{font-size:.75rem;color:#7f1d1d;padding:3px 0;border-top:1px solid #fecaca;line-height:1.4}.sched-runLogErrorItem:first-child{border-top:none}.sched-hintBox{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;font-size:.78rem;color:#1e40af;line-height:1.45}.sched-hintBox svg{flex-shrink:0;margin-top:2px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color)}.modal-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:2rem;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.modal-form{padding:1.5rem}.modal-form .form-group{margin-bottom:1.5rem}.modal-form label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary);font-size:.9rem}.modal-form input,.modal-form select{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;box-sizing:border-box}.modal-form input:focus,.modal-form select:focus{outline:none;border-color:var(--primary-color)}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--border-color)}.btn-cancel,.btn-save{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-md);font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel{background:var(--bg-secondary);color:var(--text-primary)}.btn-cancel:hover{background:var(--border-color)}.btn-save{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff}.btn-save:hover{transform:translateY(-2px);box-shadow:0 4px 12px #06b6d466}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;animation:spin 1s linear infinite}.btn-provider-access{padding:.375rem .75rem;background:var(--primary-50, #eff6ff);color:var(--primary-700, #1d4ed8);border:1px solid var(--primary-200, #bfdbfe);border-radius:var(--radius-sm);font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-provider-access:hover{background:var(--primary-100, #dbeafe);border-color:var(--primary-300, #93c5fd);transform:translateY(-1px)}.modal-description{margin-bottom:1.5rem;padding:1rem;background:var(--bg-secondary, #f8fafc);border-radius:var(--radius-md);border-left:3px solid var(--primary-color, #3b82f6)}.modal-description p{margin:.5rem 0;font-size:.9rem;color:var(--text-primary)}.provider-checkboxes{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.provider-checkbox{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.provider-checkbox:hover{background:var(--bg-primary, #ffffff);border-color:var(--primary-300, #93c5fd)}.provider-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0}.provider-label{font-size:.9375rem;font-weight:500;color:var(--text-primary)}.revenue-summary,.revenue-metrics-section,.subscription-metrics-section,.conversion-metrics-section{margin-bottom:2rem}.revenue-metrics-section h3,.subscription-metrics-section h3,.conversion-metrics-section h3{margin:0 0 1rem;font-size:1.25rem;color:var(--text-primary)}.payment-issue-row{background:#fef2f2!important}.payment-warning{display:inline-block;margin-left:.5rem;color:#dc2626;font-size:.875rem;font-weight:600}.billing-period{font-size:.875rem;color:var(--text-secondary)}.stripe-id{font-family:monospace;color:var(--text-secondary);font-size:.75rem}.status-active{background:#d1fae5;color:#065f46}.status-trialing{background:#dbeafe;color:#1e40af}.status-past-due{background:#fed7aa;color:#9a3412}.status-canceled{background:#e5e7eb;color:#374151}.status-unpaid{background:#fecaca;color:#991b1b}.status-incomplete{background:#fef3c7;color:#92400e}.modal-large{max-width:700px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.75rem;border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary-color)}.form-group input.error,.form-group select.error{border-color:#dc2626}.form-group input:disabled,.form-group select:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.6}.error-message{display:block;margin-top:.25rem;font-size:.875rem;color:#dc2626;font-weight:500}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:500;color:var(--text-primary)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0}.checkbox-label span{font-size:.9375rem}.form-help{display:block;margin-top:.5rem;font-size:.875rem;color:var(--text-secondary);font-style:italic}.form-divider{margin:2rem 0 1.5rem;padding-top:1.5rem;border-top:2px solid var(--border-color);position:relative}.form-divider span{position:absolute;top:-.75rem;left:50%;transform:translate(-50%);background:var(--bg-primary);padding:0 1rem;font-weight:600;color:var(--text-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.btn-save:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}.subscription-info-section{background:var(--bg-secondary);border-radius:var(--radius-md);padding:1.5rem;margin-bottom:1.5rem;border:1px solid var(--border-color)}.subscription-info-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.subscription-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item label{font-size:.75rem;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.info-item span{font-size:.9rem;color:var(--text-primary);font-weight:500}.info-item.trial-info{background:#dbeafe;padding:.75rem;border-radius:var(--radius-sm)}.info-item.trial-info .trial-date{color:#1e40af;font-weight:600}.info-item.cancellation-info{background:#fef2f2;padding:.75rem;border-radius:var(--radius-sm)}.info-item.cancellation-info .cancel-warning{color:#dc2626;font-weight:600}.info-item.cancellation-info .cancel-date{color:#991b1b;font-weight:600}.btn-edit-subscription{width:100%;padding:.75rem 1rem;background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;border:none;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.btn-edit-subscription:hover{transform:translateY(-2px);box-shadow:0 4px 12px #06b6d466}.subscription-status-select{display:block;width:100%;padding:.5rem .75rem;font-size:.875rem;font-weight:600;border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-md, 8px);background:#fff;color:var(--text-primary, #1e293b);cursor:pointer;transition:border-color .15s,box-shadow .15s}.subscription-status-select:focus{outline:none;border-color:#2bc5b5;box-shadow:0 0 0 3px #2bc5b51f}.status-change-hint{display:flex;align-items:center;gap:6px;margin-top:6px;font-size:.75rem;color:var(--text-secondary, #64748b)}.status-change-hint .status-badge{font-size:.68rem;padding:1px 8px}.trial-row{background:#eff6ff!important;border-left:3px solid #3b82f6}.canceled-row{background:#f9fafb!important;border-left:3px solid #6b7280;opacity:.85}.tier-with-indicators{display:flex;flex-direction:column;gap:.5rem}.trial-indicator{display:inline-block;font-size:.75rem;font-weight:600;color:#1e40af;background:#dbeafe;padding:.25rem .5rem;border-radius:var(--radius-sm)}.canceled-indicator{display:inline-block;font-size:.75rem;font-weight:600;color:#374151;background:#e5e7eb;padding:.25rem .5rem;border-radius:var(--radius-sm)}.confirmation-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10001;animation:fadeIn .2s ease-in}.confirmation-dialog{background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:80vh;overflow-y:auto;animation:slideUp .3s ease-out}.confirmation-header{padding:20px 24px;border-bottom:1px solid #e5e7eb;background:#fef3c7}.confirmation-header h4{margin:0;font-size:18px;font-weight:600;color:#92400e;display:flex;align-items:center;gap:8px}.confirmation-body{padding:24px}.confirmation-body p{margin:0 0 16px;color:#374151;line-height:1.6}.confirmation-body strong{color:#111827;font-weight:600}.change-list{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px 16px 16px 36px;margin:12px 0;list-style:disc}.change-list li{color:#374151;margin:8px 0;font-size:14px}.confirmation-warning{background:#fef3c7;border:1px solid #fbbf24;border-radius:8px;padding:16px;margin:16px 0}.confirmation-warning strong{color:#92400e;display:block;margin-bottom:8px}.confirmation-warning ul{margin:8px 0 0;padding-left:20px;list-style:disc}.confirmation-warning li{color:#78350f;margin:4px 0;font-size:14px}.confirmation-actions{padding:16px 24px;border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;background:#f9fafb}.btn-confirm{background:#dc2626;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-confirm:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.pagination{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;background:var(--bg-secondary);border-top:1px solid var(--border-color);border-radius:0 0 var(--radius-lg) var(--radius-lg);margin-top:-1px}.pagination-btn{padding:.625rem 1.25rem;background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:.9rem;font-weight:600;color:var(--text-primary);cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:#fff;border-color:var(--primary-color);transform:translateY(-1px);box-shadow:0 2px 8px #06b6d44d}.pagination-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-secondary)}.pagination-info{display:flex;flex-direction:column;align-items:center;gap:.25rem;font-size:.9rem;font-weight:600;color:var(--text-primary)}.pagination-count{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.admin-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s ease}.admin-table th.sortable:hover{background:var(--bg-secondary)}.sort-icon{display:inline-block;margin-left:.5rem;font-size:.875rem;color:var(--text-secondary);opacity:.5;transition:all .2s ease}.sort-icon.active{opacity:1;color:var(--primary-color);font-weight:700}.admin-table th.sortable:hover .sort-icon{opacity:.8}.org-id-cell{display:inline-block;font-family:ui-monospace,SF Mono,Cascadia Code,monospace;font-size:.8rem;font-weight:700;color:var(--text-secondary);background:var(--bg-secondary, #f8fafc);border:1px solid var(--border-color, #e2e8f0);border-radius:var(--radius-sm, 4px);padding:2px 8px;letter-spacing:.02em}.email-text{font-size:.875rem;color:var(--text-secondary);font-family:Courier New,monospace}.delete-user-modal{max-width:600px;max-height:90vh;overflow-y:auto}.delete-warning{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.warning-header{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.warning-header h4{color:#dc2626;margin:0;font-size:1.1rem;font-weight:600}.user-info{background:#fff;padding:1rem;border-radius:6px;margin:1rem 0;border-left:4px solid #dc2626}.user-info p{margin:.25rem 0;font-size:.9rem}.impact-warnings{margin:1rem 0;padding:1rem;background:#fff3cd;border:1px solid #ffeaa7;border-radius:6px}.impact-warnings h5{margin:0 0 .5rem;color:#856404;font-size:.9rem}.impact-warnings ul{margin:0;padding-left:1.2rem}.impact-warnings li{color:#856404;font-size:.85rem;margin:.25rem 0}.deletion-consequences{margin:1rem 0}.deletion-consequences h5{margin:0 0 .5rem;color:#dc2626;font-size:.9rem;font-weight:600}.deletion-consequences ul{margin:0;padding-left:1.2rem}.deletion-consequences li{color:#dc2626;font-size:.85rem;margin:.25rem 0;font-weight:500}.gdpr-notice{margin-top:1rem;padding:.75rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px}.gdpr-notice p{margin:0;font-size:.85rem;color:#0369a1}.business-rule-notice{margin-top:1rem;padding:.75rem;background:#fef3c7;border:1px solid #f59e0b;border-radius:6px;border-left:4px solid #f59e0b}.business-rule-notice h5{margin:0 0 .5rem;color:#92400e;font-size:.9rem;font-weight:600}.business-rule-notice p{margin:.5rem 0 0;font-size:.85rem;color:#92400e;line-height:1.4}.business-rule-notice p:first-of-type{margin-top:0}.reason-select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:.9rem;background:#fff}.confirm-input{width:100%;padding:.75rem;border:2px solid #dc2626;border-radius:6px;font-size:.9rem;font-family:monospace;background:#fef2f2}.confirm-input:focus{outline:none;border-color:#b91c1c;box-shadow:0 0 0 3px #dc26261a}.btn-delete{background:#dc2626;color:#fff;border:none;padding:.5rem;border-radius:4px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.btn-delete:hover{background:#b91c1c;transform:translateY(-1px)}.btn-delete-confirm{background:#dc2626;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-delete-confirm:hover:not(:disabled){background:#b91c1c}.btn-delete-confirm:disabled{background:#9ca3af;cursor:not-allowed}.btn-delete-final{background:#dc2626;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-delete-final:hover:not(:disabled){background:#b91c1c}.btn-delete-final:disabled{background:#9ca3af;cursor:not-allowed}.final-confirmation{text-align:center;padding:1rem}.confirmation-header{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1.5rem}.confirmation-header h4{color:#dc2626;margin:0;font-size:1.2rem;font-weight:600}.user-summary{background:#fef2f2;padding:1rem;border-radius:6px;margin:1rem 0;border-left:4px solid #dc2626}.final-warning{background:#fff3cd;padding:1rem;border-radius:6px;margin:1rem 0;border:1px solid #ffeaa7}.final-warning p{margin:0;color:#856404;font-weight:600}.action-buttons{display:flex;gap:.5rem;align-items:center}.btn-toggle{display:flex;align-items:center;justify-content:center}.pricing-intel-toggle{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;border:1px solid transparent;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.pricing-intel-toggle.enabled{background:#fef3c7;color:#92400e;border-color:#fbbf24}.pricing-intel-toggle.enabled:hover{background:#fde68a}.pricing-intel-toggle.disabled{background:#f1f5f9;color:#64748b;border-color:#cbd5e1}.pricing-intel-toggle.disabled:hover{background:#e2e8f0}.feature-flag-group{border-top:1px solid #e2e8f0;padding-top:1rem;margin-top:.5rem}.feature-flag-group h4{margin:0 0 .75rem;font-size:.9rem;color:#334155;font-weight:600}.feature-flag-row{display:flex;align-items:center;gap:12px}.feature-flag-row .toggle-label{display:flex;align-items:center;font-size:.875rem;color:#334155;font-weight:500;cursor:pointer;flex:1}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #00000026}.toggle-switch input:checked+.toggle-slider{background-color:#f59e0b}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-status{font-size:.8rem;font-weight:600;min-width:60px}.toggle-status.on{color:#92400e}.toggle-status.off{color:#64748b}.subscription-tier-config{padding:24px;max-width:1400px;margin:0 auto}.subscription-tier-config h2{font-size:28px;font-weight:600;color:#1a1a1a;margin-bottom:8px}.subscription-tier-config .subtitle{color:#666;margin-bottom:24px}.message{padding:12px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.tiers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:32px}.tier-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a;border:2px solid #e0e0e0;transition:all .3s ease}.tier-card:hover{box-shadow:0 4px 16px #00000026;transform:translateY(-2px)}.tier-card.tier-free{border-color:#9e9e9e}.tier-card.tier-starter{border-color:#4caf50}.tier-card.tier-professional{border-color:#2196f3}.tier-card.tier-enterprise{border-color:#9c27b0}.tier-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tier-header h3{font-size:22px;font-weight:600;margin:0}.tier-badge{background:#f5f5f5;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;color:#666}.tier-description{color:#666;margin-bottom:16px;font-size:14px}.tier-pricing{background:#f8f9fa;padding:16px;border-radius:8px;margin-bottom:16px}.price-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.price-item:last-child{margin-bottom:0}.price-label{font-weight:500;color:#666}.price-value{font-size:20px;font-weight:700;color:#1a1a1a}.discount-badge{background:#4caf50;color:#fff;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;margin-left:8px}.promo-section{background:linear-gradient(135deg,#13316c,#2bc5b5);color:#fff;padding:12px;border-radius:8px;margin-bottom:16px}.promo-badge{font-weight:600;display:block;margin-bottom:8px}.promo-prices{font-size:14px}.promo-end{font-size:12px;opacity:.9;margin-top:4px}.tier-limits{margin-bottom:16px}.tier-limits h4{font-size:14px;font-weight:600;margin-bottom:8px;color:#333}.tier-limits ul{list-style:none;padding:0;margin:0}.tier-limits li{padding:6px 0;font-size:14px;color:#666;border-bottom:1px solid #f0f0f0}.tier-limits li:last-child{border-bottom:none}.tier-features h4{font-size:14px;font-weight:600;margin-bottom:8px;color:#333}.features-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.feature-tag{background:#e3f2fd;color:#1976d2;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:capitalize}.edit-btn{width:100%;padding:12px;background:#2196f3;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:background .2s}.edit-btn:hover{background:#1976d2}.edit-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-modal{background:#fff;border-radius:12px;padding:32px;max-width:900px;width:100%;max-height:90vh;overflow-y:auto}.edit-modal h3{font-size:24px;margin-bottom:24px;color:#1a1a1a}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:24px}.form-section h4{font-size:16px;font-weight:600;margin-bottom:16px;color:#333;border-bottom:2px solid #e0e0e0;padding-bottom:8px}.form-group{margin-bottom:16px}.form-group label{display:block;font-weight:500;margin-bottom:6px;color:#555;font-size:14px}.form-group input,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2196f3}.form-group small{display:block;margin-top:4px;color:#666;font-size:12px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:24px;border-top:1px solid #e0e0e0}.btn-cancel,.btn-save{padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-cancel{background:#f5f5f5;color:#666}.btn-cancel:hover{background:#e0e0e0}.btn-save{background:#4caf50;color:#fff}.btn-save:hover{background:#45a049}.btn-cancel:disabled,.btn-save:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 768px){.tiers-grid,.form-grid,.form-row{grid-template-columns:1fr}.edit-modal{padding:20px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem;animation:fadeIn .2s ease-out}.modal-container{background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:440px;width:100%;overflow:hidden;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:2rem 2rem 1.5rem;display:flex;align-items:center;gap:1rem;border-bottom:1px solid #e2e8f0}.modal-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.modal-icon svg{width:28px;height:28px}.modal-header.danger .modal-icon{background:#fee2e2;color:#dc2626}.modal-header.warning .modal-icon{background:#fef3c7;color:#f59e0b}.modal-header.info .modal-icon{background:#dbeafe;color:#3b82f6}.modal-header h3{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0}.modal-body{padding:1.5rem 2rem}.modal-body p{font-size:.9375rem;color:#64748b;line-height:1.6;margin:0}.modal-footer{padding:1.5rem 2rem;display:flex;gap:.75rem;justify-content:flex-end;background:#f8fafc;border-top:1px solid #e2e8f0}.btn-cancel,.btn-confirm{padding:.75rem 1.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#fff;color:#64748b;border:2px solid #e2e8f0}.btn-cancel:hover{background:#f8fafc;border-color:#cbd5e1;color:#475569}.btn-confirm{color:#fff;box-shadow:0 2px 8px #00000026}.btn-confirm:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003}.btn-confirm:active{transform:translateY(0)}.btn-confirm.danger{background:linear-gradient(135deg,#dc2626,#b91c1c)}.btn-confirm.danger:hover{box-shadow:0 4px 12px #dc262666}.btn-confirm.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.btn-confirm.warning:hover{box-shadow:0 4px 12px #f59e0b66}.btn-confirm.info{background:linear-gradient(135deg,#1e3a5f,#14b8a6)}.btn-confirm.info:hover{box-shadow:0 4px 12px #3b82f666}@media (max-width: 640px){.modal-container{margin:1rem}.modal-header{padding:1.5rem 1.5rem 1rem}.modal-body{padding:1rem 1.5rem}.modal-footer{padding:1rem 1.5rem;flex-direction:column-reverse}.btn-cancel,.btn-confirm{width:100%;justify-content:center}}.recharts-wrapper{filter:drop-shadow(0 4px 12px rgba(0,0,0,.08))}.recharts-surface{border-radius:12px}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#94a3b826;stroke-width:1;stroke-dasharray:4 4}.recharts-cartesian-axis-tick-value{fill:#64748b;font-size:.8125rem;font-weight:500;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.recharts-cartesian-axis-line{stroke:#e2e8f0;stroke-width:1.5}.recharts-tooltip-wrapper{filter:drop-shadow(0 8px 24px rgba(0,0,0,.15))}.recharts-default-tooltip{background:linear-gradient(135deg,#fff,#f8fafc)!important;border:1px solid #e2e8f0!important;border-radius:12px!important;padding:12px 16px!important;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014!important}.recharts-tooltip-label{font-weight:600!important;color:#0f172a!important;margin-bottom:8px!important;font-size:.875rem!important;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}.recharts-tooltip-item{color:#475569!important;font-size:.8125rem!important;padding:4px 0!important;font-weight:500!important;display:flex!important;align-items:center!important;gap:8px!important}.recharts-tooltip-item-value{font-weight:600!important;color:#0f172a!important;margin-left:auto!important}.recharts-legend-wrapper{padding-top:16px!important}.recharts-legend-item{margin-right:24px!important;display:inline-flex!important;align-items:center!important;gap:8px!important}.recharts-legend-item-text{color:#475569!important;font-size:.875rem!important;font-weight:500!important;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif!important}.recharts-bar-rectangle{filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));transition:all .3s ease}.recharts-bar-rectangle:hover{filter:drop-shadow(0 4px 12px rgba(0,0,0,.15));opacity:.9}.recharts-line-curve{filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));stroke-width:3}.recharts-line-dots .recharts-dot{filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));stroke-width:3;r:5}.recharts-line-dots .recharts-dot:hover{r:7;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.recharts-area-curve{filter:drop-shadow(0 2px 8px rgba(0,0,0,.08))}.recharts-area-area{opacity:.3}.provider-color-aws{fill:#f90;stroke:#f90}.provider-color-gcp{fill:#4285f4;stroke:#4285f4}.provider-color-azure{fill:#0078d4;stroke:#0078d4}.provider-color-oci{fill:#f80000;stroke:#f80000}.provider-color-alibaba{fill:#ff6a00;stroke:#ff6a00}.chart-gradient-aws{stop-color:#f90}.chart-gradient-gcp{stop-color:#4285f4}.chart-gradient-azure{stop-color:#0078d4}.chart-gradient-oci{stop-color:#f80000}.chart-gradient-alibaba{stop-color:#ff6a00}.premium-chart-container{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;padding:24px;box-shadow:0 1px 3px #0000000d,0 4px 12px #00000014,0 8px 24px #0000000d;border:1px solid rgba(226,232,240,.8);position:relative;overflow:hidden}.premium-chart-container:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1e3a5f,#14b8a6,#1e3a5f);opacity:.6}.premium-chart-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.premium-chart-title{font-size:1.125rem;font-weight:600;color:#0f172a;display:flex;align-items:center;gap:12px;font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.premium-chart-subtitle{font-size:.875rem;color:#64748b;margin-top:4px}.premium-legend{display:flex;flex-wrap:wrap;gap:16px;padding:12px 0}.premium-legend-item{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#f8fafccc;border-radius:8px;border:1px solid #e2e8f0;transition:all .2s ease;cursor:pointer}.premium-legend-item:hover{background:#fff;box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.premium-legend-item.inactive{opacity:.4}.premium-legend-color{width:12px;height:12px;border-radius:3px;box-shadow:0 2px 4px #00000026}.premium-legend-label{font-size:.875rem;font-weight:500;color:#475569;display:flex;align-items:center;gap:6px}.premium-legend-value{font-size:.8125rem;font-weight:600;color:#0f172a;margin-left:4px}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.chart-loading{height:300px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9 40%,#f1f5f9);background-size:1000px 100%;animation:shimmer 2s infinite linear;border-radius:12px}@media (max-width: 768px){.premium-chart-container{padding:16px}.premium-chart-title{font-size:1rem}.premium-legend{gap:8px}.premium-legend-item{padding:4px 8px;font-size:.8125rem}.recharts-cartesian-axis-tick-value{font-size:.75rem}}.premium-bar-chart .recharts-bar-rectangle{rx:6;ry:6}.premium-stacked-bar .recharts-bar-rectangle{stroke:#fff;stroke-width:2}.premium-line-chart .recharts-line-curve{stroke-linecap:round;stroke-linejoin:round}.premium-area-chart .recharts-area-area{fill-opacity:.2}.premium-area-chart .recharts-area-curve{stroke-width:3}.recharts-pie-sector{filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:all .3s ease}.recharts-pie-sector:hover{filter:drop-shadow(0 4px 12px rgba(0,0,0,.2));transform:scale(1.05)}.premium-tooltip{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:12px;padding:12px 16px;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;min-width:200px}.premium-tooltip-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.premium-tooltip-title{font-weight:600;color:#0f172a;font-size:.875rem}.premium-tooltip-content{display:flex;flex-direction:column;gap:6px}.premium-tooltip-row{display:flex;justify-content:space-between;align-items:center;gap:16px}.premium-tooltip-label{font-size:.8125rem;color:#64748b;font-weight:500}.premium-tooltip-value{font-size:.875rem;font-weight:600;color:#0f172a}.chart-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:#94a3b8;text-align:center;padding:40px}.chart-empty-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.chart-empty-text{font-size:.9375rem;font-weight:500;color:#64748b}@keyframes chartFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes chartSlideIn{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes pulseGlow{0%,to{box-shadow:0 1px 3px #0000000d,0 4px 12px #00000014,0 8px 24px #0000000d}50%{box-shadow:0 2px 6px #14b8a61a,0 8px 20px #14b8a626,0 16px 32px #14b8a61a}}@keyframes shimmerGradient{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes barGrowUp{0%{transform:scaleY(0);transform-origin:bottom}to{transform:scaleY(1);transform-origin:bottom}}@keyframes lineDrawIn{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}@keyframes dotPulse{0%,to{r:5;opacity:1}50%{r:7;opacity:.8}}@keyframes areaFillIn{0%{opacity:0;transform:scaleY(0);transform-origin:bottom}to{opacity:.3;transform:scaleY(1);transform-origin:bottom}}@keyframes pieSliceIn{0%{transform:scale(0) rotate(-180deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}@keyframes tooltipBounceIn{0%{opacity:0;transform:scale(.8) translateY(10px)}60%{opacity:1;transform:scale(1.05) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}.chart-container,.premium-chart-container,.forecast-chart-container{animation:chartFadeIn .6s ease-out}.chart-container:nth-child(1){animation-delay:0s}.chart-container:nth-child(2){animation-delay:.1s}.chart-container:nth-child(3){animation-delay:.2s}.chart-container:nth-child(4){animation-delay:.3s}.chart-container,.premium-chart-container{background:linear-gradient(135deg,#fff,#f8fafc,#f1f5f9,#f8fafc,#fff);background-size:200% 200%;animation:chartFadeIn .6s ease-out,gradientShift 8s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.chart-container:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at top right,rgba(20,184,166,.03) 0%,transparent 50%),radial-gradient(circle at bottom left,rgba(99,102,241,.03) 0%,transparent 50%);pointer-events:none;border-radius:16px;z-index:0}.chart-container>*{position:relative;z-index:1}.chart-container:before,.premium-chart-container:before{background:linear-gradient(90deg,#1e3a5f,#14b8a6,#06b6d4,#14b8a6,#1e3a5f);background-size:200% 100%;animation:borderGradientFlow 1.5s ease infinite}@keyframes borderGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.recharts-wrapper{animation:chartSlideIn .5s ease-out}.recharts-bar-rectangle{animation:barGrowUp .8s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));transition:all .3s cubic-bezier(.34,1.56,.64,1)}.recharts-bar-rectangle:hover{filter:drop-shadow(0 6px 16px rgba(0,0,0,.15));transform:translateY(-2px) scale(1.02)}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(1){animation-delay:0s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(2){animation-delay:.05s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(3){animation-delay:.1s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(4){animation-delay:.15s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(5){animation-delay:.2s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(6){animation-delay:.25s}.recharts-bar-rectangles>.recharts-bar-rectangle:nth-child(7){animation-delay:.3s}.recharts-line-curve{stroke-dasharray:1000;stroke-dashoffset:1000;animation:lineDrawIn 1.5s ease-out forwards;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.recharts-line-dots .recharts-dot{animation:dotPulse 2s ease-in-out infinite;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15));stroke-width:3;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.recharts-line-dots .recharts-dot:hover{r:8!important;filter:drop-shadow(0 4px 12px rgba(0,0,0,.25));animation:none}.recharts-area-area{animation:areaFillIn 1s ease-out forwards;opacity:.3}.recharts-area-curve{stroke-dasharray:1000;stroke-dashoffset:1000;animation:lineDrawIn 1.5s ease-out forwards;filter:drop-shadow(0 2px 8px rgba(0,0,0,.08));stroke-width:3}.recharts-pie-sector{animation:pieSliceIn .6s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:all .3s cubic-bezier(.34,1.56,.64,1);transform-origin:center}.recharts-pie-sector:hover{filter:drop-shadow(0 6px 20px rgba(0,0,0,.2));transform:scale(1.08)}.recharts-pie .recharts-pie-sector:nth-child(1){animation-delay:0s}.recharts-pie .recharts-pie-sector:nth-child(2){animation-delay:.1s}.recharts-pie .recharts-pie-sector:nth-child(3){animation-delay:.2s}.recharts-pie .recharts-pie-sector:nth-child(4){animation-delay:.3s}.recharts-pie .recharts-pie-sector:nth-child(5){animation-delay:.4s}.recharts-tooltip-wrapper{animation:tooltipBounceIn .3s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 8px 24px rgba(0,0,0,.15))}.recharts-default-tooltip,.premium-tooltip{background:linear-gradient(135deg,#fffffffa,#f8fafcf2)!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(226,232,240,.8)!important;border-radius:12px!important;padding:12px 16px!important;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014,inset 0 1px #ffffff80!important}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:#94a3b826;stroke-width:1;stroke-dasharray:4 4;animation:gridFadeIn .8s ease-out}@keyframes gridFadeIn{0%{opacity:0}to{opacity:1}}.provider-color-aws,.chart-gradient-aws{fill:url(#awsGradient);stroke:#f90}.provider-color-gcp,.chart-gradient-gcp{fill:url(#gcpGradient);stroke:#4285f4}.provider-color-azure,.chart-gradient-azure{fill:url(#azureGradient);stroke:#0078d4}.provider-color-oci,.chart-gradient-oci{fill:url(#ociGradient);stroke:#f80000}.provider-color-alibaba,.chart-gradient-alibaba{fill:url(#alibabaGradient);stroke:#ff6a00}.legend-button,.premium-legend-item{animation:chartFadeIn .4s ease-out;transition:all .3s cubic-bezier(.34,1.56,.64,1)}.legend-button:hover,.premium-legend-item:hover{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 12px #14b8a633}.legend-button:nth-child(1){animation-delay:0s}.legend-button:nth-child(2){animation-delay:.05s}.legend-button:nth-child(3){animation-delay:.1s}.legend-button:nth-child(4){animation-delay:.15s}.service-table tr,.provider-table tr{animation:chartFadeIn .3s ease-out;transition:all .2s cubic-bezier(.34,1.56,.64,1)}.service-table tr:hover,.provider-table tr:hover{transform:translate(4px) scale(1.01);box-shadow:0 2px 8px #14b8a61f}.service-table tr:nth-child(1){animation-delay:0s}.service-table tr:nth-child(2){animation-delay:.03s}.service-table tr:nth-child(3){animation-delay:.06s}.service-table tr:nth-child(4){animation-delay:.09s}.service-table tr:nth-child(5){animation-delay:.12s}.service-table tr:nth-child(6){animation-delay:.15s}.service-table tr:nth-child(7){animation-delay:.18s}.chart-loading{height:300px;background:linear-gradient(90deg,#f1f5f9,#e2e8f0,#f1f5f9 40%,#f1f5f9);background-size:1000px 100%;animation:shimmerGradient 2s infinite linear;border-radius:12px;position:relative;overflow:hidden}.chart-loading:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;border:3px solid #e2e8f0;border-top-color:#14b8a6;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.recharts-cartesian-axis-tick{animation:chartFadeIn .5s ease-out}.recharts-cartesian-axis-tick:nth-child(1){animation-delay:0s}.recharts-cartesian-axis-tick:nth-child(2){animation-delay:.05s}.recharts-cartesian-axis-tick:nth-child(3){animation-delay:.1s}.recharts-cartesian-axis-tick:nth-child(4){animation-delay:.15s}.recharts-cartesian-axis-tick:nth-child(5){animation-delay:.2s}.recharts-active-dot{animation:dotPulse 1s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(0,0,0,.3))}.forecast-chart-container{animation:chartFadeIn .7s ease-out}.forecast-stat{animation:chartSlideIn .5s ease-out}.forecast-stat:nth-child(1){animation-delay:.1s}.forecast-stat:nth-child(2){animation-delay:.2s}.forecast-stat:nth-child(3){animation-delay:.3s}.multi-chart-legend{animation:chartFadeIn .5s ease-out}@media (max-width: 768px){.chart-container,.premium-chart-container,.recharts-wrapper{animation-duration:.3s}.recharts-bar-rectangle,.recharts-line-curve,.recharts-area-curve{animation-duration:.5s}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.chart-container.glass-effect,.premium-chart-container.glass-effect{background:#ffffffb3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0000001a,inset 0 1px #ffffff80}.chart-container.neon-glow:hover{box-shadow:0 0 20px #14b8a64d,0 0 40px #14b8a633,0 0 60px #14b8a61a}.chart-container.depth-3d{transform-style:preserve-3d;transition:transform .3s ease}.chart-container.depth-3d:hover{transform:perspective(1000px) rotateX(2deg) rotateY(-2deg) translateZ(10px)}.onboarding-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .3s ease}.onboarding-wizard{background:#fff;border-radius:16px;padding:2.75rem;max-width:720px;width:90%;max-height:90vh;overflow-y:auto;border:1px solid #e5e7eb;box-shadow:0 24px 70px #0f172a59;position:relative;animation:slideUp .4s ease}.onboarding-skip{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:#666;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;border-radius:6px;transition:all .2s}.onboarding-skip:hover{background:#f5f5f5;color:#333}.onboarding-progress-bar{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem}.progress-dot{width:12px;height:12px;border-radius:50%;background:#e0e0e0;transition:all .3s}.progress-dot.active{background:var(--primary-color);transform:scale(1.2)}.onboarding-content{text-align:center;margin-bottom:2rem}.onboarding-icon{font-size:4rem;margin-bottom:1rem;animation:bounce .6s ease}.onboarding-content h2{font-size:1.75rem;color:#0f172a;margin-bottom:.5rem}.onboarding-content p{color:#64748b;font-size:1rem;margin-bottom:2rem}.onboarding-details{margin-top:2rem}.welcome-info h3{color:var(--primary-color);margin-bottom:1rem}.feature-list{display:grid;gap:1rem;margin-top:1.5rem;text-align:left}.feature-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s}.feature-item:hover{background:#e9ecef;transform:translate(4px)}.feature-icon{font-size:1.5rem}.trial-info{text-align:center}.trial-badge{display:inline-block;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;padding:.75rem 1.5rem;border-radius:50px;font-weight:600;font-size:1.125rem;margin-bottom:1rem;box-shadow:0 10px 24px #2563eb40}.trial-features{display:flex;flex-direction:column;gap:1rem;margin:2rem 0;text-align:left}.trial-feature{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f8f9fa;border-radius:8px}.trial-feature svg{width:24px;height:24px;color:var(--success-color);flex-shrink:0}.trial-note{font-size:.875rem;color:#666;margin-top:1.5rem;padding:1rem;background:#f8f9fa;border-radius:8px}.cloud-setup{text-align:center}.provider-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:2rem 0}.provider-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem;background:#f8fafc;border-radius:12px;border:1px solid #e2e8f0;transition:all .2s;cursor:pointer}.provider-option:hover{border-color:var(--primary-color);background:#fff;box-shadow:0 4px 12px #0000001a}.provider-logo{font-size:2rem}.onboarding-actions{display:flex;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.onboarding-actions .btn-primary,.onboarding-actions .btn-secondary{min-width:160px}.completion-info{text-align:left}.next-steps{background:#f8f9fa;padding:1.5rem;border-radius:12px;margin-top:1.5rem}.next-steps h4{color:var(--primary-color);margin-bottom:1rem}.next-steps ul{list-style:none;padding:0;margin:0}.next-steps li{padding:.5rem 0 .5rem 1.5rem;position:relative}.next-steps li:before{content:"✓";position:absolute;left:0;color:var(--success-color);font-weight:700}.onboarding-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.onboarding-actions button{min-width:120px}.onboarding-loading{display:flex;align-items:center;justify-content:center;height:100vh;font-size:1.25rem;color:#666}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@media (max-width: 768px){.onboarding-wizard{padding:2rem;width:95%}.onboarding-content h2{font-size:1.5rem}.provider-options{grid-template-columns:1fr}}.feature-gate-loading{display:flex;justify-content:center;align-items:center;padding:2rem;color:#627084;font-size:1rem}.feature-gate-upgrade{display:flex;justify-content:center;align-items:center;min-height:400px;padding:2rem;background:linear-gradient(180deg,#fff,#f5f7fa)}.upgrade-card{background:linear-gradient(135deg,#0d4da5,#20afdf);border-radius:16px;padding:3rem;text-align:center;color:#fff;max-width:500px;box-shadow:0 20px 40px -15px #0d4da540,0 8px 16px -8px #1d253026;border:1px solid hsl(215 85% 45% / .2);position:relative;overflow:hidden}.upgrade-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,hsl(215 85% 40% / .1) 0%,transparent 50%,hsl(195 75% 55% / .1) 100%);pointer-events:none}.upgrade-icon{font-size:4rem;margin-bottom:1rem;animation:pulse 2s infinite;filter:drop-shadow(0 4px 8px hsl(215 85% 20% / .3));position:relative;z-index:1}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}.upgrade-card h3{font-size:2rem;margin-bottom:1rem;font-weight:700;letter-spacing:-.025em;position:relative;z-index:1;text-shadow:0 2px 4px hsl(215 85% 20% / .2)}.upgrade-card p{font-size:1.1rem;margin-bottom:2rem;opacity:.95;line-height:1.6;position:relative;z-index:1}.upgrade-card p strong{font-weight:700;text-transform:capitalize;text-shadow:0 1px 2px hsl(215 85% 20% / .2)}.upgrade-button{background:#fff;color:#0d4da5;border:none;padding:1rem 2.5rem;font-size:1.1rem;font-weight:700;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #082c5e4d,0 2px 4px #082c5e33;position:relative;z-index:1;letter-spacing:.025em}.upgrade-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #082c5e66,0 4px 8px #082c5e4d;background:#f8fafb}.upgrade-button:active{transform:translateY(0);box-shadow:0 2px 8px #082c5e4d}.feature-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px;margin-left:.5rem;box-shadow:0 2px 4px #1d253026}.product-tour-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;pointer-events:none}.tour-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;pointer-events:all}.tour-spotlight{position:absolute;background:transparent;border-radius:8px;box-shadow:0 0 0 9999px #000000b3,0 0 20px #14b8a680,inset 0 0 20px #14b8a633;pointer-events:none;transition:all .3s ease;z-index:10001}.tour-tooltip{position:absolute;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:400px;max-width:calc(100vw - 40px);pointer-events:all;z-index:10002;animation:tourFadeIn .3s ease}.tour-tooltip.center{top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes tourFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.tour-tooltip-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#14b8a6,#06b6d4);border-radius:12px 12px 0 0;border-bottom:none}.tour-tooltip-header h3{margin:0;font-size:18px;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.tour-step-icon{display:inline-flex;align-items:center;justify-content:center}.tour-close-btn{background:none;border:none;padding:4px;cursor:pointer;color:#ffffffe6;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.tour-close-btn:hover{background:#fff3;color:#fff}.tour-close-btn svg{width:20px;height:20px}.tour-tooltip-content{padding:20px 24px}.tour-tooltip-content p{margin:0;font-size:15px;line-height:1.6;color:#65758b}.tour-tooltip-footer{padding:16px 24px 20px;border-top:1px solid hsl(220 13% 91%)}.tour-progress{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tour-step-counter{font-size:13px;color:#65758b;font-weight:500}.tour-progress-dots{display:flex;gap:6px}.tour-dot{width:8px;height:8px;border-radius:50%;background:#e5e7eb;cursor:pointer;transition:all .2s}.tour-dot.active{background:linear-gradient(135deg,#14b8a6,#06b6d4);width:24px;border-radius:4px}.tour-dot.completed{background:#21c45d}.tour-dot:hover{transform:scale(1.2)}.tour-actions{display:flex;gap:8px;justify-content:flex-end}.tour-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;outline:none}.tour-btn-primary{background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff}.tour-btn-primary:hover{background:linear-gradient(135deg,#0d9488,#0891b2);transform:translateY(-1px);box-shadow:0 4px 12px #14b8a666}.tour-btn-secondary{background:#e5e7eb;color:#0f1729}.tour-btn-secondary:hover{background:#d2d5da}.tour-btn-text{background:transparent;color:#65758b}.tour-btn-text:hover{background:#e5e7eb;color:#0f1729}@media (max-width: 768px){.tour-tooltip{width:calc(100vw - 40px);max-height:calc(100vh - 40px);overflow-y:auto}.tour-tooltip.center{top:20px;left:20px;transform:none}.tour-tooltip-header h3{font-size:16px}.tour-tooltip-content p{font-size:14px}.tour-actions{flex-wrap:wrap}.tour-btn{flex:1;min-width:100px}}.tutorial-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.tutorial-modal{background:#fff;border-radius:16px;width:100%;max-width:1200px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px #00000040;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tutorial-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:none;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:16px 16px 0 0}.tutorial-header-content h2{margin:0 0 4px;font-size:24px;font-weight:600}.tutorial-header-content p{margin:0;font-size:14px;opacity:.9}.tutorial-close-btn{background:#fff3;border:none;padding:8px;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.tutorial-close-btn:hover{background:#ffffff4d;transform:scale(1.05)}.tutorial-close-btn svg{width:24px;height:24px}.tutorial-content{display:flex;flex:1;overflow:hidden}.tutorial-sidebar{width:280px;border-right:1px solid hsl(220 13% 91%);overflow-y:auto;background:#f3f4f6}.tutorial-tour-cta{padding:16px;border-bottom:1px solid hsl(220 13% 91%);background:#fff}.tutorial-tour-btn{width:100%;padding:12px 16px;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.tutorial-tour-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #3b82f64d}.tutorial-tour-btn svg{width:20px;height:20px}.tutorial-sections{padding:8px}.tutorial-section-group{margin-bottom:4px}.tutorial-section-btn{width:100%;padding:12px 16px;background:transparent;border:none;border-radius:8px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s;text-align:left;font-size:14px;font-weight:600;color:#0f1729}.tutorial-section-btn:hover{background:#fff}.tutorial-section-btn.active{background:#fff;box-shadow:0 2px 8px #00000014}.tutorial-section-icon{font-size:20px}.tutorial-lessons{padding-left:20px;margin-top:4px}.tutorial-lesson-btn{width:100%;padding:10px 16px;background:transparent;border:none;border-radius:6px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .2s;text-align:left;margin-bottom:2px}.tutorial-lesson-btn:hover{background:#ffffff80}.tutorial-lesson-btn.active{background:#fff;box-shadow:0 1px 4px #00000014}.tutorial-lesson-title{font-size:13px;color:#65758b;font-weight:500}.tutorial-lesson-btn.active .tutorial-lesson-title{color:#14b8a6;font-weight:600}.tutorial-lesson-duration{font-size:11px;color:#97a3b4;background:#e5e7eb;padding:2px 8px;border-radius:12px}.tutorial-main{flex:1;overflow-y:auto;padding:32px}.tutorial-lesson-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.tutorial-lesson-header h3{margin:0;font-size:28px;font-weight:700;color:#0f1729}.tutorial-duration-badge{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#f3f4f6;border-radius:20px;font-size:13px;font-weight:600;color:#65758b}.tutorial-duration-badge svg{width:16px;height:16px}.tutorial-lesson-overview{margin-bottom:32px;padding:20px;background:#14b8a60d;border-left:4px solid #14b8a6;border-radius:8px}.tutorial-lesson-overview p{margin:0;font-size:16px;line-height:1.6;color:#65758b}.tutorial-steps{display:flex;flex-direction:column;gap:16px}.tutorial-step{border:1px solid hsl(220 13% 91%);border-radius:12px;overflow:hidden;background:#fff;transition:all .2s}.tutorial-step:hover{box-shadow:0 4px 12px #00000014}.tutorial-step-header{width:100%;padding:20px;background:#fff;border:none;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all .2s}.tutorial-step-header:hover{background:#f9fafb}.tutorial-step-number{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;flex-shrink:0}.tutorial-step-header h4{margin:0;font-size:18px;font-weight:600;color:#0f1729;flex:1;text-align:left}.tutorial-step-chevron{width:20px;height:20px;color:#65758b;transition:transform .2s}.tutorial-step-chevron.expanded{transform:rotate(180deg)}.tutorial-step-content{padding:0 20px 20px 72px;animation:expandDown .2s ease}@keyframes expandDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.tutorial-step-description{margin:0 0 16px;font-size:15px;line-height:1.6;color:#65758b}.tutorial-tips{background:#edfdf3;border-left:4px solid hsl(142 71% 45%);border-radius:8px;padding:16px}.tutorial-tips-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:600;font-size:14px;color:#1a9948}.tutorial-tips-header svg{width:16px;height:16px}.tutorial-tips ul{margin:0;padding-left:20px}.tutorial-tips li{font-size:14px;line-height:1.6;color:#126d34;margin-bottom:8px}.tutorial-tips li:last-child{margin-bottom:0}.tutorial-sidebar::-webkit-scrollbar,.tutorial-main::-webkit-scrollbar{width:8px}.tutorial-sidebar::-webkit-scrollbar-track,.tutorial-main::-webkit-scrollbar-track{background:transparent}.tutorial-sidebar::-webkit-scrollbar-thumb,.tutorial-main::-webkit-scrollbar-thumb{background:#e5e7eb;border-radius:4px}.tutorial-sidebar::-webkit-scrollbar-thumb:hover,.tutorial-main::-webkit-scrollbar-thumb:hover{background:#d2d5da}@media (max-width: 968px){.tutorial-modal{max-width:100%;max-height:100vh;border-radius:0}.tutorial-content{flex-direction:column}.tutorial-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid hsl(220 13% 91%)}.tutorial-main{padding:20px}.tutorial-lesson-header{flex-direction:column;align-items:flex-start;gap:12px}.tutorial-step-content{padding-left:20px}}.notification-bell-container{position:relative}.notification-bell-button{position:relative;background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.notification-bell-button:hover{background:#0000000d}.bell-icon{width:24px;height:24px;color:#6b7280}.notification-badge{position:absolute;top:4px;right:4px;background:#dc2626;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:10px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #dc26264d;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:380px;max-height:500px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000026;z-index:1000;display:flex;flex-direction:column;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-dropdown-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #e5e7eb}.notification-dropdown-header h3{font-size:16px;font-weight:600;color:#1f2937;margin:0}.notification-header-actions{display:flex;align-items:center;gap:8px}.unread-count{font-size:12px;color:#dc2626;font-weight:600;background:#fee2e2;padding:4px 8px;border-radius:12px}.mark-all-read-btn{background:#f3f4f6;border:none;border-radius:6px;padding:4px 8px;font-size:14px;font-weight:600;color:#6b7280;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.mark-all-read-btn:hover{background:#e5e7eb;color:#374151}.notification-list{flex:1;overflow-y:auto;max-height:400px}.notification-loading,.notification-empty{padding:40px 20px;text-align:center;color:#6b7280}.notification-empty svg{width:48px;height:48px;margin:0 auto 12px;color:#10b981}.notification-empty p{font-size:16px;font-weight:600;color:#1f2937;margin:0 0 4px}.notification-empty span{font-size:14px;color:#6b7280}.notification-item{display:flex;align-items:flex-start;padding:16px 20px;cursor:pointer;transition:all .2s;border-bottom:1px solid #f3f4f6;position:relative}.notification-item:hover{background:#f9fafb}.notification-item:last-child{border-bottom:none}.notification-item.unread{background:#fef3f2}.notification-item.unread:hover{background:#fee2e2}.notification-item.viewed{opacity:.7}.unread-indicator{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:8px;height:8px;background:#dc2626;border-radius:50%;box-shadow:0 0 0 2px #dc262633}.notification-icon{flex-shrink:0;width:40px;height:40px;margin-right:12px}.notification-icon svg{width:100%;height:100%}.notification-content{flex:1;min-width:0}.notification-title{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-message{font-size:13px;color:#10b981;font-weight:600;margin-bottom:4px}.notification-time{font-size:12px;color:#6b7280}.notification-arrow{flex-shrink:0;font-size:20px;color:#d1d5db;margin-left:8px}.notification-dropdown-footer{padding:12px 20px;border-top:1px solid #e5e7eb}.notification-dropdown-footer button{width:100%;padding:10px;background:#f9fafb;border:none;border-radius:8px;font-size:14px;font-weight:600;color:#2bc5b5;cursor:pointer;transition:all .2s}.notification-dropdown-footer button:hover{background:#f3f4f6;color:#5568d3}@media (max-width: 480px){.notification-dropdown{width:calc(100vw - 32px);right:-16px}}.info-tooltip{position:relative;display:inline-flex;align-items:center}.info-tooltip-trigger{border:1px solid rgba(148,163,184,.4);background:#fff;color:#475569;border-radius:999px;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:border-color .15s ease,color .15s ease,background .15s ease}.info-tooltip-trigger:hover{border-color:#3b82f673;color:#1e3a8a;background:#f8fafc}.info-tooltip-trigger:focus-visible{outline:2px solid rgba(14,165,233,.4);outline-offset:2px}.info-tooltip-content{position:absolute;z-index:60;background:#0f172a;color:#fff;font-size:12px;line-height:1.45;padding:8px 10px;border-radius:8px;box-shadow:0 12px 24px #0f172a3d;opacity:0;pointer-events:none;transform:translateY(2px);transition:opacity .15s ease,transform .15s ease}.info-tooltip-content.open{opacity:1;pointer-events:auto;transform:translateY(0)}.info-tooltip-bottom .info-tooltip-content{top:calc(100% + 8px);right:0}.info-tooltip-top .info-tooltip-content{bottom:calc(100% + 8px);right:0}.advisor-panel{position:fixed;top:0;right:0;height:100vh;width:min(40vw,520px);min-width:360px;background:#fff;border-left:1px solid #e2e8f0;box-shadow:-12px 0 24px #0f172a14;transform:translate(100%);transition:transform .25s ease;z-index:1000;display:flex;flex-direction:column;padding:20px;gap:18px;overflow-y:auto}.advisor-panel-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a47;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:990}.advisor-panel.embedded{position:static;top:auto;right:auto;height:auto;width:100%;min-width:0;transform:none;transition:none;z-index:auto;border-left:none;box-shadow:none;padding:0;gap:14px;overflow:visible}.advisor-panel.embedded .advisor-header-subtitle{font-size:12px;color:#334155}.advisor-panel.embedded .advisor-header-meta{font-size:11px;color:#64748b}.advisor-panel.embedded .advisor-body{padding:12px 0 0;gap:14px}.advisor-panel.embedded .advisor-card{border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.advisor-detail-structured{display:grid}.advisor-detail-row{padding:10px 0;border-bottom:1px solid #e2e8f0}.advisor-detail-row:first-child{padding-top:0}.advisor-detail-row:last-child{border-bottom:0;padding-bottom:0}.advisor-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid #e2e8f0;padding-bottom:12px;flex-wrap:nowrap;background:linear-gradient(135deg,#f0f9ff,#f0fdfa)}.advisor-header h3{margin:0 0 4px;font-size:16px;color:#0f172a}.advisor-header p{margin:0;font-size:12px;color:#64748b}.advisor-header-subtitle{font-size:12px;color:#64748b;margin:0 0 4px}.advisor-header-meta{font-size:11px;color:#94a3b8;margin:0}.advisor-section-title{margin:0 0 8px;font-size:13px;font-weight:600;color:#0f172a}.advisor-decision-brief-section{margin-bottom:4px}.advisor-brief-bullets{margin:0;padding-left:18px;font-size:12px;color:#475569;line-height:1.5}.advisor-recommendations-badge{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:linear-gradient(135deg,#0ea5e914,#14b8a61f);border:1px solid rgba(14,165,233,.2)}.advisor-recommendations-badge-text{font-size:12px;color:#0f172a}.advisor-recommendations-badge-button{border:1px solid #0ea5a4;background:#fff;color:#0f766e;border-radius:8px;padding:4px 12px;font-size:12px;font-weight:600;cursor:pointer}.advisor-recommendations-badge-button:hover{background:#14b8a614}.advisor-review-cards{display:grid;gap:10px}.advisor-review-card{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;background:#fff;display:grid;gap:8px}.advisor-review-card.low-materiality{opacity:.7;border-style:dashed}.advisor-optional-group{display:grid;gap:10px}.advisor-optional-header h5{margin:0;font-size:12px;color:#475569;font-weight:600}.advisor-review-card-content{display:grid;gap:4px}.advisor-review-card-title{font-size:12px;color:#0f172a;display:block}.advisor-review-card-reason{margin:0;font-size:11px;color:#64748b;line-height:1.4}.advisor-review-card-meta{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:#64748b}.advisor-review-card-meta .advisor-confidence{text-transform:lowercase}.advisor-review-card-meta .advisor-tags{font-size:10px;color:#94a3b8}.advisor-review-card-link{font-size:12px;color:#0f766e;font-weight:600;text-decoration:none}.advisor-review-card-link.muted{color:#64748b;font-weight:500}.advisor-review-card-link:hover{text-decoration:underline}.advisor-caveats{padding:8px 0;font-size:11px;color:#64748b}.advisor-caveat{margin:0 0 4px}.advisor-answer-routing{margin-top:10px;padding-top:10px;border-top:1px solid #e2e8f0}.advisor-answer-routing a{font-size:12px;color:#0f766e;font-weight:600;text-decoration:none}.advisor-answer-routing a:hover{text-decoration:underline}.advisor-suggested-questions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.advisor-microcopy{margin:12px 0 0;font-size:11px;color:#94a3b8;line-height:1.4}.advisor-debug{margin-top:12px;padding:8px 10px;border:1px dashed #e2e8f0;border-radius:8px;font-size:11px;color:#64748b;background:#f8fafc;display:grid;gap:4px}.advisor-section{display:grid;gap:8px}.advisor-empty-state{border:1px solid rgba(226,232,240,.75);border-radius:10px;background:#f8fafc;padding:10px 12px;grid-template-columns:1fr auto;align-items:center}.advisor-header-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.advisor-status{font-size:11px;color:#64748b;display:flex;align-items:center;gap:6px}.advisor-telemetry-toggle{border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-weight:600;cursor:pointer;font-size:10px;padding:2px 6px;border-radius:999px}.advisor-status-loading{color:#0ea5a4;font-weight:600}.advisor-status-error{color:#ef4444;font-weight:600}.advisor-status-timestamp{color:#64748b}.advisor-loading-banner{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #bae6fd;border-radius:12px;background:linear-gradient(135deg,#0ea5e914,#38bdf82e)}.advisor-loading-spinner{width:20px;height:20px;border-radius:999px;border:2px solid #e2e8f0;border-top-color:#0ea5a4;animation:advisor-spin .9s linear infinite}.advisor-loading-text{display:grid;gap:2px;font-size:12px;color:#0f172a}.advisor-loading-text strong{font-size:12px;font-weight:600}.advisor-loading-text span{color:#475569;font-size:11px}.advisor-telemetry{border:1px solid #e2e8f0;border-radius:10px;padding:10px;background:#fff;display:grid;gap:8px;font-size:12px;color:#475569;opacity:.8}.advisor-telemetry strong{color:#0f172a;font-size:12px}.advisor-telemetry-list{display:grid;gap:6px}.advisor-telemetry-row{display:grid;grid-template-columns:1fr auto auto;gap:8px;font-size:11px;color:#64748b}.advisor-section h4{margin:0;font-size:13px;color:#0f172a}.advisor-section ul{margin:0;padding-left:18px;color:#475569;font-size:12px;overflow-wrap:anywhere;word-break:break-word}.advisor-summary{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#fff;display:grid;gap:6px}.advisor-summary h4{margin:0;font-size:13px;color:#0f172a}.advisor-summary-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.advisor-summary-toggle{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer}.advisor-summary p{margin:0;font-size:12px;color:#475569}.advisor-answer{border-color:#cbd5f5;background:#fff}.advisor-details{background:#f8fafc}.advisor-explanation{background:#f8fafc;border-style:dashed}.advisor-explanation-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.advisor-explanation-title{display:flex;align-items:center;gap:8px}.advisor-answer-source{font-size:10px;font-weight:600;color:#475569;background:#e2e8f0;border-radius:999px;padding:2px 8px}.advisor-explanation-icon{width:16px;height:16px;border-radius:6px;background:linear-gradient(135deg,#0ea5e94d,#14b8a666);border:1px solid rgba(14,165,233,.4)}.advisor-explanation-actions{display:flex;align-items:center;gap:8px}.advisor-explanation-copy{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer;display:inline-flex;align-items:center;gap:6px}.advisor-explanation-copy-icon{width:10px;height:10px;border:1px solid #94a3b8;border-radius:2px;box-shadow:2px -2px #cbd5f5}.advisor-explanation-progress{margin:0;padding-left:18px;color:#64748b;font-size:11px}.advisor-explanation-question{border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px;background:#fff;display:grid;gap:4px}.advisor-explanation-text{font-size:12px;color:#334155;white-space:pre-wrap}.advisor-explanation-list{margin:0;padding-left:18px;font-size:12px;color:#475569}.advisor-explanation-heading{margin:0;font-size:12px;color:#0f172a}.advisor-open-questions{background:#0ea5e914;border-color:#0ea5e940;padding:12px 14px}.advisor-open-questions ul{margin:0}.advisor-explanation-error{color:#ef4444;font-size:12px}.advisor-handoff-list{display:grid;gap:10px}.advisor-handoff-card{border:1px solid #e2e8f0;border-radius:10px;padding:10px;background:#fff;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;font-size:12px;color:#475569}.advisor-handoff-card strong{display:block;color:#0f172a;font-size:12px;margin-bottom:4px}.advisor-handoff-card button{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.advisor-workflow{margin:8px 0 0;padding-left:16px;display:grid;gap:6px;color:#475569}.advisor-workflow li{display:grid;gap:4px;font-size:12px}.advisor-workflow button{border:1px solid #e2e8f0;background:#f8fafc;color:#0f172a;border-radius:8px;padding:4px 8px;font-size:11px;cursor:pointer;justify-self:start}.advisor-reasoning{margin:6px 0 0;font-size:11px;color:#64748b}.advisor-question-block{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#fff;display:grid;gap:10px}.advisor-question{display:grid;gap:4px}.advisor-question-label{font-size:11px;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.04em}.advisor-question p{margin:0;font-size:12px;color:#475569}.advisor-inline-actions{display:flex;justify-content:flex-end}.advisor-retry{border:1px solid #cbd5f5;background:#fff;color:#1e293b;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer}.advisor-retry:disabled{opacity:.6;cursor:not-allowed}.advisor-chips{display:flex;flex-wrap:wrap;gap:8px}.advisor-chips-history{margin-top:6px}.advisor-chip{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}.advisor-chip:hover{border-color:#cbd5f5;background:#f8fafc}.advisor-quick-actions{display:grid;gap:10px}.advisor-quick-actions-buttons{display:flex;flex-wrap:wrap;gap:8px}.advisor-quick-actions-buttons button{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.advisor-input-section{display:grid;gap:8px}.advisor-input-section label{font-size:12px;color:#334155;font-weight:600}.advisor-input-section textarea{width:100%;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;font-size:13px;color:#0f172a;resize:vertical;min-height:90px}.advisor-input-actions{display:flex;justify-content:flex-end}.advisor-submit{border:1px solid #0ea5a4;background:linear-gradient(135deg,#14b8a6,#06b6d4);color:#fff;border-radius:8px;padding:6px 12px;font-size:12px;cursor:pointer}.advisor-response{border-top:1px solid #e2e8f0;padding-top:12px;display:grid;gap:12px}.advisor-response-header span{display:block;font-size:11px;color:#64748b}.advisor-response-header strong{font-size:13px;color:#0f172a}.advisor-response-section h5{margin:0 0 6px;font-size:12px;color:#0f172a}.advisor-response-section p,.advisor-response-section ul{margin:0;color:#475569;font-size:12px}.advisor-response-section ul{padding-left:18px}.advisor-audience{display:grid;gap:8px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.advisor-audience-label{font-size:12px;font-weight:600;color:#334155}.advisor-audience-toggle{display:flex;gap:6px;flex-wrap:wrap}.advisor-audience-toggle button{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer}.advisor-audience-toggle button.active{border-color:#0ea5a4;background:linear-gradient(135deg,#14b8a62e,#06b6d42e);color:#0f766e}.advisor-audience-note{font-size:12px;color:#64748b}.advisor-decisions{display:grid;gap:16px}.decision-card{border:1px solid #e2e8f0;border-radius:14px;padding:14px;display:grid;gap:12px;background:#fff}.decision-card-header h4{margin:0 0 4px;font-size:12px;color:#64748b;text-transform:uppercase;letter-spacing:.08em}.decision-card-header p{margin:0;font-size:14px;color:#0f172a;font-weight:600}.decision-options{display:grid;gap:10px}.decision-option{border:1px solid #e2e8f0;border-radius:12px;padding:10px;background:#f8fafc;display:grid;gap:6px}.decision-option.recommended{border-color:#0ea5a4;background:#14b8a614}.decision-option-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.decision-option-header strong{font-size:13px;color:#0f172a}.decision-badge{font-size:10px;padding:3px 8px;border-radius:999px;background:#14b8a633;color:#0f766e;font-weight:600}.decision-option-metrics{display:grid;gap:4px;font-size:12px;color:#475569}.decision-why strong{display:block;font-size:12px;color:#0f172a;margin-bottom:4px}.decision-why p{margin:0;font-size:12px;color:#475569}.decision-actions{display:flex;gap:8px;flex-wrap:wrap}.decision-actions button{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.decision-simulation{border:1px dashed #e2e8f0;border-radius:12px;padding:10px;display:grid;gap:10px}.decision-simulation-controls{display:grid;gap:8px;font-size:12px;color:#475569}.decision-simulation-controls label{display:grid;gap:6px}.decision-simulation-controls select,.decision-simulation-controls input[type=range]{width:100%}.decision-simulation-output{display:grid;gap:4px;font-size:12px;color:#0f172a}.decision-no-action{border-left:3px solid #ef4444;background:#ef44440f;border-radius:10px;padding:10px;display:grid;gap:6px}.decision-no-action strong{font-size:12px;color:#7f1d1d}.decision-no-action-metrics{display:grid;gap:4px;font-size:12px;color:#7f1d1d}.decision-explain{border-top:1px solid #e2e8f0;padding-top:10px;display:grid;gap:8px}.decision-explain strong{font-size:12px;color:#0f172a}.decision-explain p{margin:0;font-size:12px;color:#475569}.decision-explain-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;font-size:12px;color:#475569}.decision-explain-list ul{margin:6px 0 0;padding-left:16px}.decision-actions-secondary{display:flex;flex-wrap:wrap;gap:8px}.decision-actions-secondary button{border:1px solid #0ea5a4;background:#fff;color:#0f766e;border-radius:8px;padding:6px 10px;font-size:12px;cursor:pointer}.decision-action-status{margin-top:8px;font-size:12px;color:#475569}.advisor-history{border-top:1px solid #e2e8f0;padding-top:12px;display:grid;gap:10px}.advisor-history-header h4{margin:0 0 4px;font-size:13px;color:#0f172a}.advisor-history-header span{font-size:12px;color:#64748b}.advisor-history-list{display:grid;gap:8px}.advisor-history-item{border:1px solid #e2e8f0;border-radius:12px;padding:10px;display:flex;justify-content:space-between;gap:12px;background:#f8fafc}.advisor-history-item strong{font-size:12px;color:#0f172a}.advisor-history-item span{display:block;font-size:11px;color:#64748b}.advisor-history-answer{margin-top:6px;font-size:12px;color:#475569}.advisor-history-toggle{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer;white-space:nowrap}.advisor-history-metrics{display:grid;gap:4px;font-size:11px;color:#475569;text-align:right}.advisor-history-empty{font-size:12px;color:#94a3b8}@keyframes advisor-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.advisor-panel{width:min(60vw,480px)}}@media (max-width: 720px){.advisor-panel{width:100%;min-width:unset}}.advisor-panel{position:fixed;top:0;right:0;height:100vh;width:min(40vw,520px);min-width:360px;background:#fff;border-left:1px solid rgba(226,232,240,.6);box-shadow:-10px 0 24px #0f172a14;transform:translate(100%);transition:transform .25s ease;z-index:1000;display:flex;flex-direction:column;padding:0;gap:0;overflow:hidden}.advisor-panel.open{transform:translate(0)}.advisor-header{padding:14px 16px;border-bottom:1px solid rgba(226,232,240,.6);background:linear-gradient(135deg,#f0f9ff,#f0fdfa);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:nowrap}.advisor-header-left{display:grid;gap:2px;flex:1;min-width:0}.advisor-title{margin:0;font-size:17px;font-weight:700;color:#0f172a}.advisor-header-subtitle{margin:0;font-size:12px;color:#475569;font-weight:600}.advisor-header-meta{margin:2px 0 0;font-size:11px;color:#94a3b8}.advisor-header-perspective{margin:0;padding:8px 20px 0;font-size:11px;font-weight:600;color:#64748b}.advisor-header-right{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.advisor-lens-toggle{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:4px;padding:4px;border-radius:8px;background:#eef2f7;border:1px solid rgba(203,213,225,.85);min-width:200px}.advisor-lens-highlight{position:absolute;top:4px;left:4px;width:calc((100% - 8px) / 3);height:calc(100% - 8px);border-radius:6px;background:linear-gradient(135deg,#2563eb,#0ea5a4);box-shadow:inset 0 1px 1px #ffffff38,0 3px 10px #0e74903d;transform:translate(calc(var(--advisor-active-lens-index, 0) * 100%));transition:transform .15s ease;z-index:0}.advisor-lens-btn{border:0;background:transparent;color:#64748b;font-size:12px;font-weight:600;padding:6px 10px;border-radius:6px;cursor:pointer;position:relative;z-index:1;transition:color .15s ease}.advisor-lens-btn.active{color:#fff;text-shadow:0 1px 1px rgba(15,23,42,.18)}.advisor-close{flex-shrink:0;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);border-radius:10px;height:38px;width:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:0}.advisor-close:hover{background:var(--gray-50)}.advisor-close-icon{display:block;stroke-width:2.2;color:currentColor}.advisor-close:focus-visible{outline:2px solid hsl(174 64% 47%);outline-offset:2px}.advisor-loading-indicator{padding:12px 20px 8px;display:grid;gap:12px}.advisor-loading-progress{display:grid;gap:6px}.advisor-loading-step{font-size:12px;color:#94a3b8;opacity:.35;transition:opacity .25s ease,color .25s ease}.advisor-loading-step.active{opacity:1;color:#334155}.advisor-loading-hint{margin:6px 0 0;font-size:11px;color:#64748b}.advisor-loading-skeleton{display:grid;gap:8px}.advisor-loading-skeleton-line{height:10px;border-radius:7px;background:linear-gradient(90deg,#e2e8f0a6,#f1f5f9f2,#e2e8f0a6);background-size:220% 100%;animation:advisor-loading-shimmer 1.4s linear infinite}.advisor-loading-skeleton-line.wide{height:12px}.advisor-body{padding:16px 20px;display:grid;gap:20px;overflow-y:auto;flex:1;opacity:1;transition:opacity .15s ease,transform .15s ease}.advisor-body.lens-switching{opacity:.72;transform:translateY(1px)}.advisor-section-title{margin:0 0 8px;font-size:11px;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.08em}.advisor-card{border:0;border-radius:0;background:transparent;padding:0;box-shadow:none}.advisor-summary-card{background:transparent}.advisor-brief-bullets{margin:0;padding-left:18px;font-size:14px;color:#1f2937;line-height:1.6}.advisor-review-cards{display:grid;gap:12px}.advisor-review-card{border:1px solid rgba(226,232,240,.75);border-radius:10px;padding:12px;background:#fff;display:grid;gap:10px;box-shadow:none}.advisor-review-card-optional{background:#fff;border-style:solid;opacity:1}.advisor-review-card-title{font-size:14px;font-weight:600;color:#0f172a}.advisor-review-card-reason{margin:4px 0 0;font-size:13px;color:#475569;line-height:1.5}.advisor-review-card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.advisor-review-metrics{display:flex;align-items:center;gap:8px}.advisor-impact{font-size:14px;font-weight:600;color:#0f172a}.advisor-review-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.advisor-pill{font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px;border:1px solid transparent}.advisor-pill-high{background:#ecfdf3;color:#047857;border-color:#10b98133}.advisor-pill-medium{background:#fffbeb;color:#b45309;border-color:#f59e0b40}.advisor-pill-low{background:#f1f5f9;color:#64748b;border-color:#94a3b84d}.advisor-tags{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap}.advisor-tag{font-size:11px;color:#475569;background:#f1f5f9;border-radius:6px;padding:2px 8px}.advisor-review-card-link{text-decoration:none}.advisor-section-overview,.advisor-section-urgency{padding-bottom:10px;border-bottom:1px solid rgba(226,232,240,.7)}.advisor-section-opportunity{border-left:3px solid #14b8a6;padding-left:12px}.advisor-top-opportunity{display:grid;gap:8px}.advisor-top-opportunity-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.advisor-top-opportunity-impact{font-size:1.1rem;font-weight:800;color:#0f172a}.advisor-opportunity-cta{width:100%;justify-content:center;display:inline-flex;border-radius:9px;box-shadow:0 6px 14px #14b8a633;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.advisor-opportunity-cta:hover{transform:translateY(-1px);box-shadow:0 8px 16px #14b8a642;filter:saturate(1.05)}.advisor-section-lower-priority{padding-top:2px}.advisor-lower-priority-list{display:grid;gap:8px}.advisor-lower-priority-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(226,232,240,.72);border-radius:8px;padding:8px 10px;background:#fff}.advisor-lower-priority-item .advisor-review-card-title{font-size:12px}.advisor-lower-priority-item .advisor-impact{font-size:12px;color:#475569}.advisor-optional-group{margin-top:8px;display:grid;gap:10px}.advisor-optional-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.advisor-optional-header h5{margin:0;font-size:13px;color:#475569;font-weight:600}.advisor-summary-toggle{border:1px solid rgba(226,232,240,.8);background:#fff;color:#475569;border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer}.advisor-caveats{font-size:12px;color:#64748b;display:grid;gap:4px}.advisor-question-label{font-size:11px;font-weight:600;color:#334155;text-transform:uppercase;letter-spacing:.06em}.advisor-explanation-body{display:grid;gap:8px}.advisor-explanation-text,.advisor-explanation-list{font-size:13px;color:#334155}.advisor-explanation-list{margin:0;padding-left:18px}.advisor-answer-routing{border-top:1px solid rgba(226,232,240,.6);padding-top:10px;margin-top:8px}.advisor-answer-routing a{text-decoration:none}.advisor-helper-text{font-size:12px;color:#64748b;margin:0}.advisor-input-card{border:1px solid rgba(226,232,240,.6);border-radius:12px;background:#fff;padding:12px;box-shadow:0 1px 2px #0f172a0d;display:grid;gap:10px}.advisor-input-card textarea{width:100%;border:1px solid rgba(226,232,240,.8);border-radius:10px;padding:10px;font-size:13px;color:#0f172a;resize:vertical;min-height:88px}.advisor-submit{border:0;background:transparent;color:inherit;padding:0}.advisor-suggested-questions,.advisor-chips{display:flex;flex-wrap:wrap;gap:8px}.advisor-chip{border:0;background:#f1f5f9;color:#475569;border-radius:999px;padding:6px 12px;font-size:12px;cursor:pointer}.advisor-chip:hover{background:#e2e8f0}.advisor-debug{margin:0 20px;padding:8px 10px;border:1px dashed rgba(226,232,240,.8);border-radius:8px;font-size:11px;color:#64748b;background:#f8fafc;display:grid;gap:4px}.advisor-skeleton{display:grid;gap:16px}.advisor-skeleton-card{border-radius:12px;background:#f8fafc;padding:16px;display:grid;gap:8px}.advisor-skeleton-line{height:10px;border-radius:6px;background:#e2e8f0b3;animation:advisor-pulse 1.6s ease-in-out infinite}.advisor-skeleton-line.wide{height:12px;width:100%}.advisor-skeleton-list{display:grid;gap:12px}.advisor-skeleton-input{border-radius:12px;background:#f8fafc;padding:16px;display:grid;gap:8px}@keyframes advisor-pulse{0%,to{opacity:.7}50%{opacity:1}}@keyframes advisor-loading-shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}.advisor-panel.embedded{position:static!important;top:auto!important;right:auto!important;height:auto!important;width:100%!important;min-width:0!important;transform:none!important;transition:none!important;z-index:auto!important;border-left:none!important;box-shadow:none!important;padding:0!important;gap:14px!important;overflow:visible!important}.advisor-panel.embedded .advisor-header{padding:12px 14px!important;border-bottom:1px solid rgba(226,232,240,.6)!important;border-radius:10px 10px 0 0!important;background:linear-gradient(135deg,#f0f9ff,#f0fdfa)!important;flex-wrap:nowrap!important;align-items:flex-start!important;gap:10px!important}.advisor-panel.embedded .advisor-header-left{flex:1!important;min-width:0!important}.advisor-panel.embedded .advisor-header-right{flex-shrink:0!important;align-items:flex-start!important;padding-top:2px!important}.advisor-panel.embedded .advisor-lens-toggle{min-width:210px!important}.advisor-panel.embedded .advisor-header-perspective{padding:6px 14px 0!important}.advisor-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600;line-height:1.2;border:1px solid transparent;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.advisor-btn:focus-visible{outline:none;box-shadow:0 0 0 3px #0ea5e940}.advisor-btn-primary{background:var(--brand-600);color:#fff;border-color:transparent}.advisor-btn-primary:hover{background:var(--brand-700)}.advisor-btn-secondary{background:#f1f5f9;color:#0f172a;border-color:#e2e8f099}.advisor-btn-secondary:hover{background:#e2e8f0}.advisor-btn-ghost{background:transparent;color:#334155}.advisor-btn-ghost:hover{background:#f1f5f9}.advisor-btn-sm{padding:6px 10px;font-size:12px}.advisor-btn-icon{width:32px;height:32px;padding:0}.advisor-tooltip{position:relative;display:inline-flex;align-items:center}.advisor-tooltip-content{position:absolute;top:calc(100% + 8px);right:0;background:#0f172a;color:#fff;font-size:12px;padding:6px 8px;border-radius:6px;max-width:240px;box-shadow:0 10px 24px #0f172a33;opacity:0;pointer-events:none;transition:opacity .15s ease;transition-delay:.15s;z-index:50}.advisor-tooltip:focus-within .advisor-tooltip-content,.advisor-tooltip:hover .advisor-tooltip-content{opacity:1;pointer-events:auto}.review-queue-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a47;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);z-index:990}.review-queue-panel{position:fixed;top:0;right:0;height:100vh;width:min(40vw,520px);min-width:360px;background:#fff;border-left:1px solid rgba(226,232,240,.6);box-shadow:-10px 0 24px #0f172a14;transform:translate(100%);transition:transform .2s ease;z-index:1000;display:flex;flex-direction:column;padding:0;gap:0;overflow:hidden}.review-queue-panel.open{transform:translate(0)}.review-queue-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid rgba(226,232,240,.6);padding:16px 20px}.review-queue-header-left{display:grid;gap:4px}.review-queue-title{margin:0;font-size:16px;font-weight:600;color:#0f172a}.review-queue-subtitle{margin:0;font-size:14px;color:#475569}.review-queue-meta{margin:0;font-size:12px;color:#64748b}.review-queue-close{flex-shrink:0;border:1px solid var(--gray-200);background:#fff;color:var(--gray-700);border-radius:10px;height:38px;width:38px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0;line-height:0}.review-queue-close:hover{background:var(--gray-50)}.review-queue-close-icon{display:block;stroke-width:2.2;color:currentColor}.review-queue-close:focus-visible{outline:2px solid hsl(174 64% 47%);outline-offset:2px}.review-queue-body{padding:16px 20px;display:grid;gap:16px;overflow-y:auto;flex:1}.review-queue-sort{display:flex;align-items:center;gap:8px;font-size:12px;color:#475569}.review-queue-sort select{border:1px solid #e2e8f0;border-radius:8px;padding:4px 8px;font-size:12px;background:#fff;color:#0f172a}.review-queue-list{display:grid;gap:12px}.review-queue-item{border:1px solid rgba(226,232,240,.6);border-radius:12px;padding:16px;background:#fff;display:grid;gap:12px;box-shadow:0 1px 2px #0f172a0d}.review-queue-main{display:grid;gap:6px;font-size:12px;color:#475569}.review-queue-main strong{font-size:14px;color:#0f172a}.review-queue-domain{color:#64748b}.review-queue-summary{color:#475569}.review-queue-metrics{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-queue-impact{font-size:14px;font-weight:600;color:#0f172a}.review-queue-meta{color:#64748b}.review-queue-state{font-size:11px;color:#64748b}.review-queue-updated{font-size:11px;color:#0f172a}.review-queue-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.review-queue-pill{font-size:11px;font-weight:600;border-radius:999px;padding:2px 8px;border:1px solid transparent}.review-queue-pill-high{background:#ecfdf3;color:#047857;border-color:#10b98133}.review-queue-pill-medium{background:#fffbeb;color:#b45309;border-color:#f59e0b40}.review-queue-pill-low{background:#f1f5f9;color:#64748b;border-color:#94a3b84d}.review-queue-actions{display:flex;gap:8px;flex-wrap:wrap}.review-queue-empty{font-size:12px;color:#94a3b8;padding:8px 0;display:grid;gap:4px}.review-queue-empty strong{color:#0f172a}@media (max-width: 1024px){.review-queue-panel{width:min(60vw,480px)}}@media (max-width: 720px){.review-queue-panel{width:100%;min-width:unset}}.app-footer{background:#fff;border-top:1px solid #e5e7eb;margin-top:auto;padding:1.25rem 2rem}.footer-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:2rem}.footer-left{flex-shrink:0}.footer-center{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;justify-content:center}.footer-right{flex-shrink:0}.footer-copyright{color:#6b7280;font-size:.8125rem;margin:0}.footer-center a{color:#6b7280;text-decoration:none;font-size:.8125rem;font-weight:500;transition:color .2s}.footer-center a:hover{color:#14b8a6}.footer-divider{color:#d1d5db;font-size:.8125rem;-webkit-user-select:none;user-select:none}.footer-version{color:#9ca3af;font-size:.75rem;font-weight:500;padding:.25rem .625rem;background:#f3f4f6;border-radius:4px}@media (max-width: 768px){.app-footer{padding:1rem 1.25rem}.footer-content{flex-direction:column;gap:.75rem;text-align:center}.footer-center{order:-1}.footer-left,.footer-right{width:100%}}.cookie-consent-overlay{position:fixed;bottom:0;left:0;right:0;z-index:9999;animation:slideUp .4s ease-out}@keyframes slideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.cookie-consent-banner{background:#fff;border-top:3px solid #14b8a6;box-shadow:0 -4px 20px #00000026;padding:1.5rem 2rem;max-width:100%}.cookie-consent-content{display:flex;gap:1.5rem;align-items:flex-start;margin-bottom:1.5rem}.cookie-icon{font-size:2.5rem;flex-shrink:0}.cookie-text h3{font-size:1.125rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.cookie-text p{font-size:.875rem;color:#4b5563;line-height:1.6;margin:0}.cookie-text a{color:#14b8a6;text-decoration:underline;font-weight:600}.cookie-text a:hover{color:#0d9488}.cookie-consent-actions{display:flex;gap:.75rem;justify-content:flex-end;flex-wrap:wrap}.cookie-btn{padding:.625rem 1.5rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:none;white-space:nowrap}.cookie-btn-primary{background:#14b8a6;color:#fff;box-shadow:0 2px 8px #14b8a64d}.cookie-btn-primary:hover{background:#0d9488;box-shadow:0 4px 12px #14b8a666;transform:translateY(-1px)}.cookie-btn-secondary{background:#f3f4f6;color:#4b5563;border:1px solid #e5e7eb}.cookie-btn-secondary:hover{background:#e5e7eb;border-color:#d1d5db}.cookie-btn-tertiary{background:transparent;color:#14b8a6;border:2px solid #14b8a6}.cookie-btn-tertiary:hover{background:#14b8a61a}.cookie-preferences{margin-bottom:1.5rem}.cookie-preferences h3{font-size:1.25rem;font-weight:700;color:#1f2937;margin:0 0 .5rem}.cookie-preferences-intro{font-size:.875rem;color:#6b7280;margin:0 0 1.5rem}.cookie-category{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:.75rem}.cookie-category-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.cookie-category-info{flex:1}.cookie-category-info h4{font-size:.9375rem;font-weight:600;color:#1f2937;margin:0 0 .25rem}.cookie-category-info p{font-size:.8125rem;color:#6b7280;margin:0;line-height:1.5}.cookie-toggle{position:relative;display:inline-block;width:48px;height:24px;flex-shrink:0}.cookie-toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.3s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.cookie-toggle input:checked+.toggle-slider{background-color:#14b8a6}.cookie-toggle input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-slider.disabled{background-color:#94a3b8;cursor:not-allowed;opacity:.6}@media (max-width: 768px){.cookie-consent-banner{padding:1.25rem 1rem}.cookie-consent-content{flex-direction:column;gap:1rem}.cookie-icon{font-size:2rem}.cookie-consent-actions{flex-direction:column}.cookie-btn{width:100%;justify-content:center}.cookie-category-header{flex-direction:column;align-items:flex-start}.cookie-toggle{align-self:flex-end}}@media print{.cookie-consent-overlay{display:none!important}}:root{--brand-500: #06b6d4;--brand-600: #0891b2;--brand-700: #0e7490}.app-container{display:flex;min-height:100vh;background:hsl(var(--background));max-width:100vw;overflow-x:hidden}.app-container.panel-drawer-open .sidebar,.app-container.panel-drawer-open .main-content,.app-container.panel-drawer-open .app-header{pointer-events:none}.main-content{flex:1;margin-left:240px;padding-top:72px;min-height:100vh;transition:margin-left .3s ease;background:#f8f9fa;max-width:calc(100vw - 240px);overflow-x:hidden;box-sizing:border-box;display:flex;flex-direction:column}body.sidebar-collapsed .main-content{margin-left:70px}.app-header{background:linear-gradient(to bottom,#fff,#fafbfc);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:.75rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem;position:fixed;top:0;left:0;right:0;z-index:100;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a;height:72px;transition:background .3s ease}.app-header.admin-mode{background:linear-gradient(135deg,#1e293b,#0f172a);box-shadow:0 4px 6px #0f172a4d,0 2px 4px #0f172a33;border-bottom:2px solid #f59e0b}.app-header.admin-mode .brand-logo h1{color:#fff;-webkit-text-fill-color:white;text-shadow:0 2px 4px rgba(0,0,0,.3)}.app-header.admin-mode .sidebar-toggle-button{color:#fff}.app-header.admin-mode .sidebar-toggle-button:hover{background:#ffffff1a}.header-left{display:flex;align-items:center;gap:1rem;min-height:56px}.sidebar-toggle-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:8px;color:#6b7280;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0}.sidebar-toggle-button svg{width:20px;height:20px}.sidebar-toggle-button:hover{background:#f8f9fa;color:hsl(var(--primary))}.brand-logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:32px;height:32px;filter:drop-shadow(0 2px 4px hsl(var(--primary) / .2))}.app-header h1{font-size:1.25rem;font-weight:700;color:hsl(var(--foreground));letter-spacing:-.025em;background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.provider-selector{display:flex;gap:.75rem;align-items:center;flex:1;justify-content:center}.provider-selector button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:50px;font-size:.875rem;font-weight:600;cursor:pointer;background:transparent;color:#6b7280;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;letter-spacing:-.01em;height:44px;overflow:visible;text-overflow:clip;white-space:nowrap}.provider-selector button span{overflow:visible;text-overflow:clip;white-space:nowrap}.provider-icon-container{display:flex;align-items:center;justify-content:center;width:24px;height:24px;transition:all .2s}.provider-icon-container svg{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.provider-selector button.active{background:var(--gradient-hero);color:#fff;box-shadow:0 4px 12px #3c83f659}.provider-selector button.active .provider-icon-container{filter:brightness(1.2) drop-shadow(0 0 4px rgba(255,255,255,.5))}.provider-selector button:hover:not(.active):not(:disabled){color:#1f2937;background:#3b82f614;transform:scale(1.02)}.provider-selector button:hover:not(.active):not(:disabled) .provider-icon-container{transform:scale(1.1)}.provider-selector button:disabled{opacity:.4;cursor:not-allowed;color:hsl(var(--muted-foreground) / .5)}.provider-selector button:disabled:hover{background:transparent;transform:none}.provider-selector button:disabled .provider-icon-container{transform:none;opacity:.5;filter:grayscale(1)}.page-title{font-size:1.5rem!important;font-weight:700!important;color:#0f172a!important;margin:0!important;background:none!important;-webkit-text-fill-color:#0f172a!important;-webkit-background-clip:border-box!important;background-clip:border-box!important}.page-subtitle{font-size:.9375rem!important;color:#64748b!important;margin:0!important}.advisor-button{position:relative;border:2px solid transparent;background:linear-gradient(#f8fafc,#f8fafc) padding-box,linear-gradient(135deg,#0ea5e959,#14b8a659) border-box;color:#0f172a;border-radius:999px;padding:.4rem .9rem;font-size:.85rem;font-weight:600;letter-spacing:.02em;cursor:pointer;transition:all .2s ease}.advisor-button:hover{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#0ea5e98c,#14b8a68c) border-box}.advisor-button:focus-visible{outline:2px solid rgba(14,165,233,.5);outline-offset:2px}.advisor-menu{display:grid;gap:6px}.advisor-sub-button{border:1px solid #e2e8f0;background:#fff;color:#475569;border-radius:999px;padding:.25rem .75rem;font-size:.75rem;font-weight:600;cursor:pointer}.advisor-sub-button:hover{border-color:#cbd5f5;color:#0f172a}.spend-type-selector{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;margin-right:12px}.top-filters{display:inline-flex;align-items:center;gap:16px;flex-wrap:nowrap;white-space:nowrap;overflow:visible;min-width:0}.provider-group{display:inline-flex;align-items:center;gap:8px;min-width:0}.filter-label{font-size:.75rem;font-weight:600;color:#64748b}.spend-type-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:.3rem 1.5rem .3rem .6rem;font-size:.75rem;font-weight:600;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,#94a3b8 50%),linear-gradient(135deg,#94a3b8 50%,transparent 50%);background-position:calc(100% - 12px) calc(50% - 2px),calc(100% - 7px) calc(50% - 2px);background-size:5px 5px,5px 5px;background-repeat:no-repeat}.spend-type-select:focus-visible{outline:2px solid rgba(14,165,233,.4);outline-offset:2px}.provider-selector{display:inline-flex;align-items:center;gap:6px;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}.provider-selector button{flex:0 0 auto}.provider-dropdown,.spend-type-dropdown{position:relative;display:inline-flex;align-items:center;gap:8px}.filter-dropdown-trigger{border:1px solid #e2e8f0;background:#fff;color:#0f172a;border-radius:8px;padding:.35rem .7rem;font-size:.75rem;font-weight:600;cursor:pointer;min-width:140px;text-align:center;display:inline-flex;align-items:center;justify-content:center}.filter-dropdown-trigger.disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.filter-dropdown-trigger .filter-trigger-content{display:inline-flex;align-items:center;gap:8px;justify-content:center;width:100%}.filter-trigger-split{display:inline-flex;align-items:center;gap:6px}.filter-trigger-divider{color:#94a3b8;font-weight:700}.spend-icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:#0f172a}.spend-icon svg{width:18px;height:18px}.filter-trigger-logo{width:18px;height:18px;object-fit:contain}.filter-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;z-index:40;min-width:280px;max-height:360px;overflow:auto;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 12px 30px #0f172a2e;padding:10px}.filter-group{display:grid;gap:6px;padding:6px 0;border-bottom:1px solid #f1f5f9}.filter-group.is-disabled{opacity:.55;pointer-events:none}.filter-group:last-child{border-bottom:none}.filter-group-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding:0 4px}.filter-option{border:1px solid transparent;background:#fff;border-radius:8px;padding:6px 8px;font-size:12px;font-weight:600;color:#0f172a;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.filter-option.disabled{cursor:default;color:#94a3b8;background:#f8fafc;border-color:#e2e8f0}.filter-option.active{border-color:#cbd5f5;background:#94a3b81f}.filter-option-logo{width:18px;height:18px;object-fit:contain}.filter-option-fallback{width:18px;height:18px;border-radius:6px;background:#94a3b82e;color:#0f172a;font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.account-selector-dropdown{position:relative;width:200px;flex-shrink:0}.account-selector-dropdown:not(:last-child){margin-right:.5rem}.account-selector-dropdown.hidden{visibility:hidden;pointer-events:none}.account-select{padding:.5rem 2rem .5rem .75rem;border-radius:6px;border:1px solid #e5e7eb;font-size:.875rem;font-weight:500;cursor:pointer;background:#fff;color:#374151;transition:all .2s ease;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%236b7280' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:12px}.account-select:hover{border-color:hsl(var(--primary));background-color:#f9fafb}.account-select:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .1)}.account-selector{padding:.625rem 1rem;border-radius:8px;border:1px solid #e5e7eb;font-size:.875rem;font-weight:500;cursor:pointer;background:#fff;color:#1f2937;transition:all .2s cubic-bezier(.4,0,.2,1);min-width:200px;max-width:300px;box-shadow:0 1px 2px #0000000a}.account-selector:hover{border-color:hsl(var(--primary));box-shadow:0 2px 8px #00000014}.account-selector:focus{outline:none;border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .1),0 2px 8px #00000014}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;height:400px;gap:1rem}.loading:before{content:"";width:40px;height:40px;border:3px solid hsl(var(--border));border-top-color:hsl(var(--primary));border-radius:50%;animation:spin .8s linear infinite}.loading:after{content:"Loading...";font-size:.875rem;color:hsl(var(--muted-foreground));font-weight:500}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.logo-icon:hover{animation:float 1s ease-in-out infinite}@media (max-width: 768px){.main-content{margin-left:0!important;padding-top:150px}body.sidebar-collapsed .main-content{margin-left:0!important}.app-header{flex-direction:column;align-items:flex-start;padding:1rem 1.25rem;min-height:auto}.header-left{flex-direction:column;align-items:flex-start;gap:.75rem;width:100%}.brand-logo{gap:.5rem}.logo-icon{width:28px;height:28px}.app-header h1{font-size:1.125rem}.provider-selector{width:100%;overflow-x:auto;padding:.125rem}.provider-selector button{padding:.5rem .75rem;font-size:.75rem;white-space:nowrap}.provider-selector button span{display:none}.provider-icon{width:20px;height:20px}}.header-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}.help-menu-container{position:relative}.help-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:50%;color:#6b7280;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);padding:0}.help-button svg{width:22px;height:22px}.help-button:hover{background:hsl(var(--primary) / .1);color:hsl(var(--primary));transform:scale(1.05)}.help-dropdown{position:absolute;top:calc(100% + .75rem);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #0000001f,0 4px 12px #00000014;min-width:220px;padding:.5rem;z-index:1000;animation:fadeIn .2s ease}.help-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;border-radius:var(--radius-sm);color:hsl(var(--foreground));font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s}.help-item svg{width:18px;height:18px;color:hsl(var(--muted-foreground));flex-shrink:0}.help-item:hover{background:#f8f9fa;color:hsl(var(--primary))}.help-item:hover svg{color:hsl(var(--primary))}.help-item.disabled{opacity:.4;cursor:not-allowed;color:hsl(var(--muted-foreground))}.help-item.disabled:hover{background:transparent;color:hsl(var(--muted-foreground))}.help-item.disabled svg{color:hsl(var(--muted-foreground))}.user-menu-container{position:relative}.user-menu-button{display:flex;align-items:center;gap:.75rem;padding:.375rem .75rem .375rem .375rem;background:transparent;border:none;border-radius:50px;color:#1f2937;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);height:44px}.user-avatar-icon{width:36px;height:36px;padding:6px;background:var(--gradient-hero);color:#fff;border-radius:50%;flex-shrink:0;box-shadow:0 2px 8px hsl(var(--primary) / .25);display:flex;align-items:center;justify-content:center;overflow:hidden}.user-avatar-image-container{padding:0!important;background:transparent!important}.user-avatar-image{width:100%;height:100%;object-fit:cover;border-radius:50%;display:block}.user-name-text{font-size:.875rem;font-weight:600;color:#1f2937;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chevron-icon{width:16px;height:16px;color:#6b7280;transition:transform .2s;flex-shrink:0}.user-menu-button:hover{background:hsl(var(--primary) / .05)}.user-menu-button:hover .chevron-icon{transform:rotate(180deg)}.user-menu-button:hover .user-avatar-icon{box-shadow:0 4px 12px hsl(var(--primary) / .35);transform:scale(1.05)}.user-dropdown{position:absolute;top:calc(100% + .75rem);right:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 10px 40px #0000001f,0 4px 12px #00000014;min-width:260px;padding:0;z-index:1000;animation:fadeIn .2s ease}.user-dropdown-header{padding:1rem 1.25rem;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.user-dropdown-info{display:flex;flex-direction:column;gap:.25rem}.user-dropdown-name{font-size:.9375rem;font-weight:700;color:#1f2937}.user-dropdown-email{font-size:.8125rem;color:#6b7280;font-weight:500}.user-dropdown-role{display:inline-block;font-size:.6875rem;padding:.25rem .625rem;background:hsl(var(--primary) / .1);color:hsl(var(--primary));border:1px solid hsl(var(--primary) / .2);border-radius:var(--radius-sm);font-weight:600;text-transform:capitalize;margin-top:.375rem;width:fit-content}.user-dropdown-divider{height:1px;background:#e5e7eb;margin:.5rem 0}.user-dropdown-item{display:flex;align-items:center;gap:.875rem;width:100%;padding:.875rem 1.25rem;background:transparent;border:none;color:#1f2937;font-size:.875rem;font-weight:500;text-align:left;cursor:pointer;transition:all .2s}.user-dropdown-item svg{width:18px;height:18px;color:#6b7280;flex-shrink:0}.user-dropdown-item:hover{background:#f8f9fa;color:hsl(var(--primary))}.user-dropdown-item:hover svg{color:hsl(var(--primary))}.user-dropdown-item.logout-item{color:#dc2626}.user-dropdown-item.logout-item svg{color:#dc2626}.user-dropdown-item.logout-item:hover{background:#fef2f2;color:#b91c1c}.user-dropdown-item.logout-item:hover svg{color:#b91c1c}.help-item.disabled:hover svg{color:hsl(var(--muted-foreground))}.sidebar-user-badge{margin-top:.5rem;text-align:center}.user-role-badge{display:inline-block;padding:.25rem .75rem;background:hsl(var(--primary) / .1);border:1px solid hsl(var(--primary) / .3);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;color:hsl(var(--primary));text-transform:capitalize}.account-selector-wrapper{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#fafcff;border-bottom:1px solid hsl(215 20% 92%);max-width:1600px;margin:0 auto}@media (max-width: 768px){.account-selector-wrapper{flex-direction:column;gap:12px;padding:12px 16px}}.brand-logo{display:flex!important;align-items:center!important;min-width:300px!important}.header-logo{height:58px!important;width:auto!important;object-fit:contain!important;display:block!important;min-height:58px!important;max-height:58px!important}@media (max-width: 768px){.brand-logo{min-width:240px!important}.header-logo{height:50px!important;min-height:50px!important;max-height:50px!important}}.advisor-button{display:inline-flex;align-items:center;gap:8px;border:2px solid transparent;background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#2563eb59,#0ea5a459) border-box;color:#334155;border-radius:10px;padding:7px 12px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 1px 2px #0f172a0f;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,color .15s ease,transform .15s ease}.advisor-button:hover{background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#2563eb8c,#0ea5a48c) border-box;color:#0f172a;box-shadow:0 0 0 2px #0ea5e91f,0 6px 16px #0f172a1a;transform:translateY(-1px)}.advisor-button.active{background:linear-gradient(135deg,#2563eb1f,#0ea5a41f) padding-box,linear-gradient(135deg,#2563eb99,#0ea5a499) border-box;color:#0f172a}.advisor-button:focus-visible{outline:2px solid rgba(14,165,233,.4);outline-offset:2px}.advisor-button-icon svg{width:16px;height:16px}.advisor-button-icon{position:relative;display:inline-flex;align-items:center;justify-content:center}.advisor-indicator{width:6px;height:6px;border-radius:999px;background:var(--brand-600);position:absolute;top:-2px;right:-2px}.advisor-button.pulse-once{animation:advisor-button-pulse .9s ease-out 1}@keyframes advisor-button-pulse{0%{box-shadow:0 0 #0ea5e942,0 1px 2px #0f172a0f}65%{box-shadow:0 0 0 8px #0ea5e900,0 4px 12px #0f172a1a}to{box-shadow:0 1px 2px #0f172a0f}}.advisor-sub-button{border:none;background:transparent;padding:0}.card,.dashboard-card,.summary-card,.metric-card,.chart-container,.widget-container{background:linear-gradient(135deg,#fff,#fafbfc);border-radius:16px;box-shadow:0 1px 3px #0000000d,0 4px 12px #00000014,0 8px 24px #0000000f;border:1px solid rgba(226,232,240,.8);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.card:before,.dashboard-card:before,.summary-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#14b8a6,#06b6d4,#0891b2);opacity:0;transition:opacity .3s ease}.card:hover,.dashboard-card:hover,.summary-card:hover{transform:translateY(-4px);box-shadow:0 4px 8px #00000014,0 12px 24px #14b8a626,0 16px 32px #0000001a}.card:hover:before,.dashboard-card:hover:before,.summary-card:hover:before{opacity:1}.card-title,.widget-title,.section-title{font-size:1.125rem;font-weight:700;color:#1e293b;letter-spacing:-.01em;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.card-subtitle{font-size:.875rem;font-weight:500;color:#64748b;margin-bottom:1rem}.metric-value{font-size:2.25rem;font-weight:800;background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2;letter-spacing:-.02em}.metric-label{font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-top:.5rem}.metric-change{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:6px;font-size:.8125rem;font-weight:700;margin-top:.5rem}.metric-change.positive{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.metric-change.negative{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#991b1b}.chart-wrapper{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:inset 0 1px 3px #0000000d;border:1px solid #f1f5f9}.chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f1f5f9}.chart-legend{display:flex;gap:1.5rem;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#475569}.legend-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 2px 4px #00000026}.btn-premium{padding:.75rem 1.5rem;background:linear-gradient(135deg,#1e3a5f,#14b8a6);color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #14b8a640,0 4px 16px #14b8a626;position:relative;overflow:hidden}.btn-premium:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.btn-premium:hover{transform:translateY(-2px);box-shadow:0 4px 12px #14b8a659,0 8px 24px #14b8a633}.btn-premium:hover:before{left:100%}.btn-premium:active{transform:translateY(0)}.btn-secondary{padding:.75rem 1.5rem;background:#fff;color:#1e3a5f;border:2px solid #e2e8f0;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#f8fafc;border-color:#14b8a6;color:#14b8a6;transform:translateY(-2px);box-shadow:0 4px 12px #14b8a626}.badge-premium{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .875rem;background:linear-gradient(135deg,#f0fdfa,#ccfbf1);border:1px solid #99f6e4;border-radius:8px;font-size:.8125rem;font-weight:700;color:#0f766e;box-shadow:0 2px 4px #14b8a61a}.badge-warning{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#fcd34d;color:#92400e}.badge-danger{background:linear-gradient(135deg,#fee2e2,#fecaca);border-color:#fca5a5;color:#991b1b}.badge-info{background:linear-gradient(135deg,#dbeafe,#bfdbfe);border-color:#93c5fd;color:#1e40af}.progress-bar-container{width:100%;height:10px;background:#f1f5f9;border-radius:10px;overflow:hidden;box-shadow:inset 0 2px 4px #0000000f;position:relative}.progress-bar{height:100%;background:linear-gradient(90deg,#14b8a6,#06b6d4);border-radius:10px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 1s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.stat-card{background:linear-gradient(135deg,#fff,#f8fafc);border-radius:14px;padding:1.5rem;box-shadow:0 2px 8px #0000000f,0 4px 16px #0000000a;border:1px solid rgba(226,232,240,.8);transition:all .3s ease;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(20,184,166,.05) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.stat-card:hover:after{opacity:1}.stat-card:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 8px 16px #14b8a61f,0 12px 32px #00000014}.icon-container{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#14b8a6,#06b6d4);box-shadow:0 4px 12px #14b8a640,0 2px 6px #14b8a626;color:#fff;font-size:1.5rem;transition:all .3s ease}.icon-container:hover{transform:rotate(5deg) scale(1.1);box-shadow:0 6px 16px #14b8a659,0 4px 8px #14b8a633}.divider-premium{height:2px;background:linear-gradient(90deg,transparent 0%,#e2e8f0 50%,transparent 100%);margin:1.5rem 0}.skeleton-loader{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0,#f1f5f9 75%);background-size:200% 100%;animation:loading .75s ease-in-out infinite;border-radius:8px}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.tooltip-premium{background:linear-gradient(135deg,#1e293b,#334155);color:#fff;padding:.625rem 1rem;border-radius:8px;font-size:.8125rem;font-weight:600;box-shadow:0 4px 12px #00000040,0 2px 6px #00000026;position:relative}.tooltip-premium:before{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid #1e293b}.table-premium{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f}.table-premium thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.table-premium th{padding:1rem;text-align:left;font-weight:700;font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em;color:#475569;border-bottom:2px solid #cbd5e1}.table-premium td{padding:1rem;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.9375rem}.table-premium tbody tr{transition:all .2s ease}.table-premium tbody tr:hover{background:linear-gradient(135deg,#f8fafc,#f1f5f9);transform:scale(1.01);box-shadow:0 2px 8px #14b8a614}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fadeInUp .6s cubic-bezier(.4,0,.2,1)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.animate-pulse{animation:pulse 1s cubic-bezier(.4,0,.6,1) infinite}.glass-effect{background:#ffffffe6;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3);box-shadow:0 8px 32px #0000001a,inset 0 1px #fff9}.bg-gradient-primary{background:linear-gradient(135deg,#1e3a5f,#14b8a6)}.bg-gradient-success{background:linear-gradient(135deg,#10b981,#059669)}.bg-gradient-warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.bg-gradient-danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.text-gradient-primary{background:linear-gradient(135deg,#1e3a5f,#14b8a6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-success{background:linear-gradient(135deg,#10b981,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}@media (max-width: 768px){.metric-value{font-size:1.875rem}.card,.dashboard-card,.summary-card{border-radius:12px}.btn-premium,.btn-secondary{padding:.625rem 1.25rem;font-size:.875rem}}.react-grid-layout{position:relative;transition:height .2s ease}.react-grid-item{transition:all .2s ease;transition-property:left,top,width,height}.react-grid-item img{pointer-events:none;-webkit-user-select:none;user-select:none}.react-grid-item.cssTransforms{transition-property:transform,width,height}.react-grid-item.resizing{transition:none;z-index:1;will-change:width,height}.react-grid-item.react-draggable-dragging{transition:none;z-index:3;will-change:transform}.react-grid-item.dropping{visibility:hidden}.react-grid-item.react-grid-placeholder{background:red;opacity:.2;transition-duration:.1s;z-index:2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none}.react-grid-item.react-grid-placeholder.placeholder-resizing{transition:none}.react-grid-item>.react-resizable-handle{position:absolute;width:20px;height:20px}.react-grid-item>.react-resizable-handle:after{content:"";position:absolute;right:3px;bottom:3px;width:5px;height:5px;border-right:2px solid rgba(0,0,0,.4);border-bottom:2px solid rgba(0,0,0,.4)}.react-resizable-hide>.react-resizable-handle{display:none}.react-grid-item>.react-resizable-handle.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-w,.react-grid-item>.react-resizable-handle.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-n,.react-grid-item>.react-resizable-handle.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-grid-item>.react-resizable-handle.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-grid-item>.react-resizable-handle.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.react-resizable{position:relative}.react-resizable-handle{position:absolute;width:20px;height:20px;background-repeat:no-repeat;background-origin:content-box;box-sizing:border-box;background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA2IDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiNmZmZmZmYwMCIgeD0iMHB4IiB5PSIwcHgiIHdpZHRoPSI2cHgiIGhlaWdodD0iNnB4Ij48ZyBvcGFjaXR5PSIwLjMwMiI+PHBhdGggZD0iTSA2IDYgTCAwIDYgTCAwIDQuMiBMIDQgNC4yIEwgNC4yIDQuMiBMIDQuMiAwIEwgNiAwIEwgNiA2IEwgNiA2IFoiIGZpbGw9IiMwMDAwMDAiLz48L2c+PC9zdmc+);background-position:bottom right;padding:0 3px 3px 0}.react-resizable-handle-sw{bottom:0;left:0;cursor:sw-resize;transform:rotate(90deg)}.react-resizable-handle-se{bottom:0;right:0;cursor:se-resize}.react-resizable-handle-nw{top:0;left:0;cursor:nw-resize;transform:rotate(180deg)}.react-resizable-handle-ne{top:0;right:0;cursor:ne-resize;transform:rotate(270deg)}.react-resizable-handle-w,.react-resizable-handle-e{top:50%;margin-top:-10px;cursor:ew-resize}.react-resizable-handle-w{left:0;transform:rotate(135deg)}.react-resizable-handle-e{right:0;transform:rotate(315deg)}.react-resizable-handle-n,.react-resizable-handle-s{left:50%;margin-left:-10px;cursor:ns-resize}.react-resizable-handle-n{top:0;transform:rotate(225deg)}.react-resizable-handle-s{bottom:0;transform:rotate(45deg)}.widget-card,.insight-card,.metric-card,.summary-card{background:#fff;padding:1.25rem;border-radius:var(--radius-lg);border:1px solid var(--gray-200);transition:all .2s;box-shadow:var(--shadow-sm)}.widget-card:hover,.insight-card:hover,.metric-card:hover{border-color:var(--primary-200);box-shadow:var(--shadow-md);transform:translateY(-2px)}.status-badge,.badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;display:inline-block}.status-badge.success,.status-badge.active,.status-badge.verified,.badge-success{background:#d1fae5;color:#065f46}.status-badge.warning,.status-badge.pending,.status-badge.unverified,.badge-warning{background:#fef3c7;color:#92400e}.status-badge.error,.status-badge.inactive,.status-badge.failed,.badge-error{background:#fee2e2;color:#991b1b}.status-badge.info,.status-badge.processing,.badge-info{background:#ccfbf1;color:#0e7490}.message-banner{padding:1rem 1.25rem;border-radius:var(--radius-md);margin-bottom:1rem;font-size:.875rem;font-weight:500;border:1px solid}.message-banner.success{background:#d1fae5;color:#065f46;border-color:#10b981}.message-banner.error{background:#fee2e2;color:#991b1b;border-color:#ef4444}.message-banner.warning{background:#fef3c7;color:#92400e;border-color:#f59e0b}.message-banner.info{background:#ccfbf1;color:#0e7490;border-color:#14b8a6}.btn-success{background:#10b981;color:#fff;border:1px solid #059669}.btn-success:hover{background:#059669}.btn-warning{background:#f59e0b;color:#fff;border:1px solid #d97706}.btn-warning:hover{background:#d97706}.btn-danger{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.btn-danger:hover{background:#fecaca}.btn-delete{background:#fef7f7;color:#be123c;border:1px solid #f1c2c2}.btn-delete:hover{background:#fef2f2;color:#9f1239}.btn-cancel{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.btn-cancel:hover{background:#e2e8f0}.progress-bar{height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:#10b981;transition:width .3s}.progress-fill.warning{background:#f59e0b}.progress-fill.danger{background:#ef4444}.progress-fill.info{background:#14b8a6}.bg-light{background:#f9fafb}.bg-lighter{background:#f8f9fa}.bg-primary-light{background:#e6f7f5}.bg-success-light{background:#d1fae5}.bg-warning-light{background:#fef3c7}.bg-error-light{background:#fee2e2}.gradient-primary{background:linear-gradient(135deg,var(--primary-500) 0%,var(--primary-600) 100%)}.gradient-success{background:linear-gradient(135deg,#10b981,#059669)}.gradient-info{background:linear-gradient(135deg,#14b8a6,#06b6d4)}:root{--chart-primary: #14b8a6;--chart-secondary: #06b6d4;--chart-tertiary: #f59e0b;--chart-quaternary: #1e3a5f;--chart-forecast: #f59e0b;--chart-actual: #10b981;--chart-projected: #7dd3fc}:root{--provider-aws: #FF9900;--provider-gcp: #4285F4;--provider-azure: #0078D4;--provider-oci: #F80000;--provider-alibaba: #FF6A00;--provider-all: #1f2937}.page-title,.optimization-header h1,.forecast-header h1,.savings-header h1,.calculator-header h1,.reports-header h1,.cost-allocation-header h1,.settings-header h1,.accounts-header h1{font-size:1.5rem;font-weight:700;color:var(--gray-900);margin:0 0 .25rem;line-height:1.2}.page-subtitle,.optimization-subtitle,.forecast-subtitle{font-size:.9375rem;color:var(--gray-500);margin:0;line-height:1.4}.section-title,.widget-title,.card-title{font-size:.875rem;font-weight:600;color:var(--gray-600);padding:.5rem .75rem .375rem;border-bottom:none;background:transparent;line-height:1.3;display:flex;align-items:center;gap:.5rem}.section-subtitle{font-size:.75rem;font-weight:400;color:var(--gray-500);margin-left:.25rem}.card-header h3,.budget-header h3,.insight-card-title{font-size:.9375rem;font-weight:600;color:var(--gray-600);margin:0;line-height:1.3}.metric-label,.stat-label,.projection-label{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;font-weight:600;line-height:1.2}.metric-value,.stat-value,.projection-value{font-size:1.125rem;font-weight:600;color:var(--gray-700);line-height:1.2}.metric-value-large{font-size:1.75rem;font-weight:600;color:var(--gray-800);line-height:1.1}.status-text{font-size:.875rem;font-weight:600;line-height:1.3}.body-text{font-size:.875rem;font-weight:400;color:var(--gray-700);line-height:1.5}.small-text,.caption-text{font-size:.8125rem;font-weight:400;color:var(--gray-500);line-height:1.4}.button-text{font-size:.875rem;font-weight:600;line-height:1.2}.link-text{font-size:.875rem;font-weight:500;color:var(--primary-500);line-height:1.4}.empty-state-title{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin:0 0 .5rem;line-height:1.3}.modal-title{font-size:1.25rem;font-weight:600;color:var(--gray-900);margin:0;line-height:1.3}.form-label{font-size:.875rem;font-weight:600;color:var(--gray-700);margin-bottom:.5rem;line-height:1.3}@media (max-width: 768px){.page-title,.optimization-header h1,.forecast-header h1,.savings-header h1,.calculator-header h1,.reports-header h1,.cost-allocation-header h1,.settings-header h1,.accounts-header h1{font-size:1.25rem}.metric-value-large{font-size:1.5rem}.empty-state-title,.modal-title{font-size:1.125rem}}.btn-primary,button.primary,.button-primary,[class*=btn-].primary{background:linear-gradient(135deg,#13316c,#2bc5b5)!important;color:#fff!important;border:none!important}.btn-primary:hover,button.primary:hover,.button-primary:hover{background:linear-gradient(135deg,#0f2757,#27b0a2)!important;transform:translateY(-1px);box-shadow:0 4px 12px #14b8a64d}.btn-secondary,button.secondary,.button-secondary{background:#2bc5b5!important;color:#fff!important;border:1px solid hsl(174 64% 42%)!important}.btn-secondary:hover,button.secondary:hover,.button-secondary:hover{background:#27b0a2!important}.btn-outline,button.outline,.button-outline{background:transparent!important;color:#13316c!important;border:2px solid hsl(220 70% 25%)!important}.btn-outline:hover,button.outline:hover,.button-outline:hover{background:#13316c!important;color:#fff!important}button.active:not(.danger):not(.warning):not(.success),.btn.active:not(.danger):not(.warning):not(.success),.toggle-btn.active{background:linear-gradient(135deg,#13316c,#2bc5b5)!important;color:#fff!important;border-color:#2bc5b5!important}.icon-button,.btn-icon{color:#13316c}.icon-button:hover,.btn-icon:hover{color:#2bc5b5;background:#2bc5b51a}.btn-link,button.link,a.button{color:#2bc5b5!important;text-decoration:none}.btn-link:hover,button.link:hover,a.button:hover{color:#27b0a2!important;text-decoration:underline}button:disabled,.btn:disabled,.button:disabled{opacity:.5;cursor:not-allowed;background:hsl(var(--muted))!important;color:hsl(var(--muted-foreground))!important}.btn-success,button.success{background:linear-gradient(135deg,#10b981,#059669)!important}.btn-warning,button.warning{background:linear-gradient(135deg,#f59e0b,#d97706)!important}.btn-danger,button.danger{background:linear-gradient(135deg,#dc2626,#b91c1c)!important}.btn-delete{background:#fef7f7!important;color:#be123c!important;border:1px solid #f1c2c2!important}.btn-delete:hover{background:#fef2f2!important;color:#9f1239!important;transform:translateY(-1px);box-shadow:0 2px 8px #be123c26!important}:root{--compact-space-xs: .125rem;--compact-space-sm: .25rem;--compact-space-md: .5rem;--compact-space-lg: .75rem;--compact-space-xl: 1rem;--compact-text-xs: .6875rem;--compact-text-sm: .75rem;--compact-text-base: .8125rem;--compact-text-md: .875rem;--compact-text-lg: .9375rem;--compact-text-xl: 1rem;--compact-text-2xl: 1.125rem}body{font-size:.8125rem;line-height:1.4}h1{font-size:1.25rem;margin-bottom:.5rem;line-height:1.2}h2{font-size:1.0625rem;margin-bottom:.5rem;line-height:1.2}h3{font-size:.9375rem;margin-bottom:.375rem;line-height:1.2}.card,.widget,.summary-card,.opt-card,.savings-card{padding:.75rem!important;margin-bottom:.75rem!important}.card-header,.widget-header{padding:.5rem .75rem!important;font-size:.875rem!important;margin-bottom:.5rem!important}.card-content,.widget-content{padding:.5rem!important}.summary-cards,.optimization-summary{gap:.75rem!important}.summary-card,.opt-card{padding:.75rem!important}.card-value,.opt-card-value{font-size:1.25rem!important;margin:.25rem 0!important}.card-label,.opt-card-label{font-size:.6875rem!important;text-transform:uppercase;letter-spacing:.025em;margin-bottom:.25rem!important}.card-sublabel,.opt-card-sublabel{font-size:.6875rem!important;margin-top:.25rem!important}.card-icon,.opt-card-icon{font-size:1.25rem!important}table{font-size:.75rem!important}th{padding:.5rem!important;font-size:.6875rem!important;font-weight:600}td{padding:.5rem!important;font-size:.75rem!important}button,.button,.btn{padding:.375rem .75rem!important;font-size:.75rem!important;font-weight:600}button.small,.button-small{padding:.25rem .5rem!important;font-size:.6875rem!important}input,select,textarea{padding:.375rem .625rem!important;font-size:.75rem!important}label{font-size:.6875rem!important;margin-bottom:.25rem!important;font-weight:600}.optimization-filters,.filters-container{gap:.5rem!important;margin-bottom:.75rem!important}.filter-select,.filter-search{padding:.375rem .625rem!important;font-size:.75rem!important}.chart-container{padding:.75rem!important;margin-bottom:.75rem!important}.chart-legend{font-size:.6875rem!important;gap:.75rem!important}.chart-title{font-size:.875rem!important;margin-bottom:.5rem!important}.resource-card{padding:.75rem!important;margin-bottom:.75rem!important}.resource-header{margin-bottom:.5rem!important}.resource-title h3{font-size:.875rem!important;margin:0!important}.resource-type{font-size:.6875rem!important}.resource-cost{font-size:.75rem!important}.cost-current{font-size:.875rem!important;font-weight:600}.cost-savings{font-size:.6875rem!important}.utilization-bar{height:6px!important;margin:.375rem 0!important}.utilization-header,.utilization-labels{font-size:.6875rem!important}.resource-metrics{gap:.5rem!important;padding:.5rem!important;margin:.5rem 0!important}.metric{padding:.375rem!important}.metric-label{font-size:.6875rem!important}.metric-value{font-size:.75rem!important;font-weight:600}.resource-recommendation{padding:.5rem!important;margin-top:.5rem!important}.recommendation-text{font-size:.75rem!important;line-height:1.4}.action-items{font-size:.6875rem!important;margin-top:.375rem!important}.action-items li{margin-bottom:.25rem!important}.badge,.status-badge,.priority-badge,.utilization-badge{padding:.125rem .375rem!important;font-size:.625rem!important;font-weight:600}.dashboard{padding:.75rem!important}.dashboard-header{margin-bottom:.75rem!important}.dashboard-section{margin-bottom:0!important}.grid,.card-grid{gap:.75rem!important}@media (min-width: 768px){.summary-cards,.optimization-summary{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}}.sidebar{padding:.75rem!important}.sidebar-item{padding:.5rem .75rem!important;font-size:.8125rem!important}.sidebar-icon{width:16px!important;height:16px!important}.modal-content{padding:1rem!important}.modal-header{padding:.75rem 1rem!important;font-size:.9375rem!important}.modal-body{padding:.75rem 1rem!important;font-size:.75rem!important}.notification{padding:.5rem .75rem!important;font-size:.75rem!important}.provider-breakdown-section{padding:.75rem!important;margin:.75rem 0!important}.provider-breakdown-card{padding:.75rem!important}.provider-breakdown-stats{gap:.5rem!important}.provider-breakdown-stats .stat-label{font-size:.625rem!important}.provider-breakdown-stats .stat-value{font-size:.875rem!important}.time-range-selector button{padding:.375rem .75rem!important;font-size:.6875rem!important}.section-header h2{font-size:.9375rem!important;margin-bottom:.375rem!important}.section-header p{font-size:.6875rem!important}.usage-comparison-section,.provider-breakdown-section,.resources-container,.section,.widget-section{margin-bottom:.75rem!important;margin-top:0!important}.dashboard-section,.chart-section{margin-bottom:0!important;margin-top:0!important}.dashboard>*:not(:last-child),.main-content>*:not(:last-child){margin-bottom:.75rem!important}.section-header{margin-bottom:.5rem!important;margin-top:0!important}.optimization-header,.dashboard-header,.page-header{margin-top:0!important;margin-bottom:.75rem!important}.summary-cards,.optimization-summary,.savings-summary{margin-bottom:.75rem!important;margin-top:0!important}.usage-chart-container,.chart-wrapper{margin-top:.5rem!important;margin-bottom:.5rem!important}.optimization-filters,.filters-container,.filter-bar{margin-top:.5rem!important;margin-bottom:.75rem!important}.card+.card,.widget+.widget{margin-top:0!important}.resource-card+.resource-card{margin-top:0!important}ul,ol{margin-top:.25rem!important;margin-bottom:.25rem!important}li{margin-bottom:.125rem!important}p{margin-top:0!important;margin-bottom:.5rem!important}p:last-child{margin-bottom:0!important}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}.card,.widget,.section{margin-bottom:.75rem!important}.summary-card,.opt-card{margin-bottom:0!important}.grid,.card-grid,.summary-cards,.optimization-summary{row-gap:.75rem!important;column-gap:.75rem!important}.recharts-wrapper{margin:0!important}.table-wrapper{margin-top:.5rem!important;margin-bottom:.5rem!important}.form-group,.input-group{margin-bottom:.5rem!important}.button-group,.action-buttons{gap:.5rem!important;margin-top:.5rem!important}.flex,.flex-row,.flex-col{gap:.5rem!important}.time-range-selector{margin-bottom:.5rem!important;margin-top:0!important}.provider-breakdown-grid{margin-top:.5rem!important}.resource-recommendation{margin-top:.5rem!important;margin-bottom:0!important}.resource-actions{margin-top:.5rem!important;padding-top:.5rem!important}.cross-cloud-comparison{margin-top:.75rem!important;padding:.75rem!important}.comparison-grid{gap:.5rem!important;margin-top:.5rem!important}.modal-content>*{margin-bottom:.75rem!important}.modal-content>*:last-child{margin-bottom:0!important}.notification+.notification{margin-top:.5rem!important}.settings-section{margin-bottom:1rem!important}.settings-group,.sidebar-section{margin-bottom:.75rem!important}.sidebar-item{margin-bottom:.125rem!important}.dashboard-grid{gap:.625rem!important}.empty-state,.no-results,.loading-container{padding:1rem!important;margin:.5rem 0!important}.legend-item{margin-right:.75rem!important;margin-bottom:.25rem!important}.summary-stat{margin-right:1rem!important;margin-bottom:.25rem!important}.metrics-grid{gap:.5rem!important}.breadcrumb{margin-bottom:.5rem!important}.tabs{margin-bottom:.75rem!important}.tab-content{padding-top:.75rem!important}.alert{margin-bottom:.75rem!important;padding:.75rem!important}.tooltip{padding:.375rem .625rem!important}.dropdown-menu{padding:.25rem!important}.dropdown-item{padding:.375rem .75rem!important}hr{margin:.75rem 0!important}.footer{margin-top:1rem!important;padding:.75rem!important}.header{margin-bottom:.75rem!important;padding:.75rem!important}.topology-container{padding:.75rem!important}.topology-header{margin-bottom:.75rem!important}.topology-legend{margin-bottom:.75rem!important;padding:.75rem!important}.topology-view{padding:1rem!important;gap:.75rem!important;min-height:500px!important}.region-container{margin-bottom:.75rem!important;padding:.75rem!important}.region-header{margin-bottom:.75rem!important;padding-bottom:.5rem!important}.vpcs-grid{gap:.75rem!important}.vpc-container{margin-bottom:.75rem!important;padding:.75rem!important}.vpc-header{margin-bottom:.5rem!important}.subnets-grid{gap:.75rem!important;margin-bottom:.75rem!important}.subnet-container{padding:.625rem!important;margin-bottom:0!important}.subnet-header{margin-bottom:.5rem!important;padding-bottom:.375rem!important}.resources-list{gap:.5rem!important}.resource-card{padding:.5rem!important;margin-bottom:0!important}.resource-header{margin-bottom:.375rem!important}.resource-details{gap:.25rem!important;margin-bottom:.25rem!important}.resource-cost{margin-top:.25rem!important}.standalone-resources{margin-top:.75rem!important;padding:.75rem!important}.standalone-header{margin-bottom:.5rem!important;padding-bottom:.375rem!important}.standalone-grid{gap:.75rem!important}.topology-stats{gap:.75rem!important;margin-bottom:.75rem!important}.stat-card{padding:.75rem!important}.stat-value{margin-bottom:.25rem!important}.region-container,.vpc-container,.subnet-container{position:relative;z-index:1}.topology-view>*{margin-top:0!important}.connections-panel{padding:1rem!important}.connections-header{margin-bottom:.75rem!important;padding-bottom:.5rem!important}.selected-resource-info{padding:.75rem!important;margin-bottom:1rem!important}.connections-list{gap:.5rem!important}.connection-item{padding:.625rem!important;gap:.5rem!important}.anomaly-container,.anomaly-detection{padding:.75rem!important}.anomaly-header{margin-bottom:.75rem!important}.anomaly-summary,.anomaly-stats{gap:.75rem!important;margin-bottom:.75rem!important}.anomaly-stat-card{padding:.75rem!important;margin-bottom:0!important}.anomaly-filters{gap:.5rem!important;margin-bottom:.75rem!important;margin-top:0!important}.anomaly-chart-section{margin-bottom:.75rem!important;padding:.75rem!important}.anomaly-list,.anomalies-container{gap:.75rem!important;margin-top:0!important}.anomaly-card,.anomaly-item{padding:.75rem!important;margin-bottom:.75rem!important}.anomaly-card-header{margin-bottom:.5rem!important;padding-bottom:.5rem!important}.anomaly-details{gap:.5rem!important;margin-top:.5rem!important}.anomaly-metrics{gap:.5rem!important;margin:.5rem 0!important}.anomaly-actions{margin-top:.5rem!important;padding-top:.5rem!important;gap:.5rem!important}.anomaly-card,.anomaly-stat-card,.anomaly-chart-section{position:relative;z-index:1}.severity-badge,.anomaly-severity{padding:.25rem .5rem!important;margin:0!important}.anomaly-timeline{margin:.75rem 0!important;padding:.75rem!important}.timeline-item{margin-bottom:.5rem!important;padding:.5rem!important}.timeline-item:last-child{margin-bottom:0!important}.anomaly-chart-container{padding:.75rem!important;margin:0!important}.anomaly-legend{gap:.75rem!important;margin-bottom:.5rem!important;padding:.5rem!important}.anomaly-type-filters{gap:.5rem!important;margin-bottom:.75rem!important}.anomaly-description{margin:.5rem 0!important;padding:.5rem!important}.anomaly-impact,.anomaly-recommendations{margin-top:.5rem!important;padding:.5rem!important}.anomaly-recommendations li{margin-bottom:.25rem!important}.anomaly-status{padding:.25rem .5rem!important;margin:0!important}.anomaly-provider{gap:.375rem!important;margin:.25rem 0!important}.anomaly-cost-impact{padding:.5rem!important;margin:.5rem 0!important}.anomaly-resolution{margin-top:.75rem!important;padding:.75rem!important}.anomaly-history{margin-top:.75rem!important}.anomaly-history-item{padding:.5rem!important;margin-bottom:.5rem!important}.anomaly-history-item:last-child{margin-bottom:0!important}::selection{background:#14b8a6;color:#fff;text-shadow:none}::-moz-selection{background:#14b8a6;color:#fff;text-shadow:none}input::selection,textarea::selection,select::selection{background:#14b8a6;color:#fff}input::-moz-selection,textarea::-moz-selection,select::-moz-selection{background:#14b8a6;color:#fff}code::selection,pre::selection{background:#14b8a6;color:#fff}code::-moz-selection,pre::-moz-selection{background:#14b8a6;color:#fff}table ::selection{background:#14b8a6;color:#fff}table ::-moz-selection{background:#14b8a6;color:#fff}.card ::selection,.widget ::selection,.summary-card ::selection{background:#14b8a6;color:#fff}.card ::-moz-selection,.widget ::-moz-selection,.summary-card ::-moz-selection{background:#14b8a6;color:#fff}button::selection{background:#14b8a6;color:#fff}button::-moz-selection{background:#14b8a6;color:#fff}a::selection{background:#14b8a6;color:#fff}a::-moz-selection{background:#14b8a6;color:#fff}h1::selection,h2::selection,h3::selection,h4::selection,h5::selection,h6::selection{background:#14b8a6;color:#fff}h1::-moz-selection,h2::-moz-selection,h3::-moz-selection,h4::-moz-selection,h5::-moz-selection,h6::-moz-selection{background:#14b8a6;color:#fff}.sidebar ::selection{background:#14b8a6;color:#fff}.sidebar ::-moz-selection{background:#14b8a6;color:#fff}.modal ::selection,.modal-content ::selection{background:#14b8a6;color:#fff}.modal ::-moz-selection,.modal-content ::-moz-selection{background:#14b8a6;color:#fff}.dropdown ::selection,.dropdown-menu ::selection{background:#14b8a6;color:#fff}.dropdown ::-moz-selection,.dropdown-menu ::-moz-selection{background:#14b8a6;color:#fff}.dark ::selection,.dark-mode ::selection,[data-theme=dark] ::selection{background:#5eead4;color:#0f172a}.dark ::-moz-selection,.dark-mode ::-moz-selection,[data-theme=dark] ::-moz-selection{background:#5eead4;color:#0f172a}.admin-mode ::selection{background:#f59e0b;color:#fff}.admin-mode ::-moz-selection{background:#f59e0b;color:#fff}:root{--background: 210 40% 98%;--foreground: 215 25% 15%;--card: 0 0% 100%;--card-foreground: 215 25% 15%;--popover: 0 0% 100%;--popover-foreground: 215 25% 15%;--primary: 220 70% 25%;--primary-foreground: 0 0% 100%;--primary-50: hsl(220 70% 97%);--primary-100: hsl(220 70% 92%);--primary-200: hsl(220 70% 82%);--primary-300: hsl(220 70% 65%);--primary-400: hsl(220 70% 45%);--primary-500: hsl(220 70% 25%);--primary-600: hsl(220 70% 20%);--primary-700: hsl(220 70% 15%);--primary-800: hsl(220 70% 12%);--primary-900: hsl(220 70% 10%);--secondary: 174 64% 47%;--secondary-foreground: 0 0% 100%;--accent: 187 85% 53%;--accent-foreground: 0 0% 100%;--muted: 210 30% 94%;--muted-foreground: 215 15% 45%;--success: 142 70% 45%;--success-foreground: 0 0% 100%;--warning: 38 92% 50%;--warning-foreground: 0 0% 100%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 100%;--error: 0 84% 60%;--info: 187 85% 53%;--border: 215 20% 88%;--input: 215 20% 88%;--ring: 215 85% 35%;--sidebar-background: 0 0% 98%;--sidebar-foreground: 240 5.3% 26.1%;--sidebar-primary: 240 5.9% 10%;--sidebar-primary-foreground: 0 0% 98%;--sidebar-accent: 240 4.8% 95.9%;--sidebar-accent-foreground: 240 5.9% 10%;--sidebar-border: 220 13% 91%;--sidebar-ring: 217.2 91.2% 59.8%;--gray-50: hsl(210 40% 98%);--gray-100: hsl(210 30% 94%);--gray-200: hsl(215 20% 88%);--gray-300: hsl(215 20% 75%);--gray-400: hsl(215 15% 60%);--gray-500: hsl(215 15% 45%);--gray-600: hsl(215 20% 35%);--gray-700: hsl(215 25% 25%);--gray-800: hsl(215 25% 15%);--gray-900: hsl(215 30% 10%);--gradient-hero: linear-gradient(135deg, hsl(220 70% 25%), hsl(174 64% 47%));--gradient-card: linear-gradient(180deg, hsl(0 0% 100%), hsl(210 30% 97%));--shadow-sm: 0 1px 3px 0 hsl(215 25% 15% / .08);--shadow-md: 0 4px 12px -2px hsl(215 25% 15% / .12);--shadow-lg: 0 20px 40px -15px hsl(215 85% 35% / .15);--shadow-xl: 0 24px 48px -8px hsl(215 25% 15% / .18);--shadow-glow: 0 0 40px hsl(174 64% 47% / .2);--radius: .75rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--primary-color: hsl(220 70% 25%);--accent-color: hsl(174 64% 47%);--bg-primary: hsl(0 0% 100%);--bg-secondary: hsl(210 30% 94%);--text-primary: hsl(215 25% 15%);--text-secondary: hsl(215 15% 45%);--border-color: hsl(215 20% 88%)}*{margin:0;padding:0;box-sizing:border-box}*{user-select:text!important;-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important}button,.btn,[role=button],input,select,textarea,.react-grid-item,.react-resizable-handle{user-select:none!important;-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important}.react-grid-item *{user-select:text!important;-webkit-user-select:text!important}html{overflow-x:hidden;max-width:100vw}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";font-variant-numeric:tabular-nums;letter-spacing:-.011em;font-size:14px;line-height:1.5;background:hsl(var(--background));color:hsl(var(--foreground));min-height:100vh;user-select:text;-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;overflow-x:hidden;max-width:100vw}h1{font-size:1.75rem;font-weight:700;letter-spacing:-.03em;line-height:1.2;font-feature-settings:"cv02","cv03","cv04","cv11"}h2{font-size:1.375rem;font-weight:600;letter-spacing:-.025em;line-height:1.3;font-feature-settings:"cv02","cv03","cv04","cv11"}h3{font-size:1.125rem;font-weight:600;letter-spacing:-.02em;line-height:1.4;font-feature-settings:"cv02","cv03","cv04","cv11"}h4{font-size:1rem;font-weight:600;letter-spacing:-.015em;line-height:1.4;font-feature-settings:"cv02","cv03","cv04","cv11"}h5{font-size:.875rem;font-weight:600;letter-spacing:-.01em;line-height:1.5;font-feature-settings:"cv02","cv03","cv04","cv11"}h6{font-size:.8125rem;font-weight:600;letter-spacing:-.005em;line-height:1.5;font-feature-settings:"cv02","cv03","cv04","cv11"}.tabular-nums,table td,.metric-value,.cost-value,.stat-value{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.text-xs{font-size:.6875rem;line-height:1.4}.text-sm{font-size:.8125rem;line-height:1.5}.text-base{font-size:.875rem;line-height:1.5}.text-lg{font-size:1rem;line-height:1.5}.text-xl{font-size:1.125rem;line-height:1.4}p{margin-bottom:.75rem;font-size:.875rem;line-height:1.6}small{font-size:.8125rem}button,.btn{font-size:.875rem;letter-spacing:-.01em}input,select,textarea{font-size:.875rem}label{font-size:.8125rem;font-weight:500;letter-spacing:-.005em}#root{min-height:100vh;overflow-x:hidden;max-width:100vw}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsl(var(--gray-300));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:hsl(var(--gray-400))}.recharts-tooltip-cursor{fill:hsl(var(--gray-100))}html,body,#root,#root *{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important}button,input,select,textarea,[role=button],.react-grid-item.react-draggable-dragging,.react-grid-item.react-grid-placeholder{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}
