:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-color:#f6f8fb;--bg-muted:#eef3f8;--surface:#fff;--surface-subtle:#f8fafc;--text-color:#172033;--text-muted:#64748b;--text-soft:#94a3b8;--border:#dbe3ec;--border-strong:#cbd5e1;--accent:#12805c;--accent-hover:#0f6b4e;--accent-soft:#e7f6ef;--success:#12805c;--success-soft:#def7ec;--warning:#b45309;--warning-soft:#fff4d6;--danger:#b42318;--danger-soft:#fee4e2;--focus-ring:#12805c47;--shadow-sm:0 1px 2px #0f172a0f;--shadow-md:0 16px 40px #0f172a14;--radius-sm:6px;--radius-md:8px;--radius-lg:12px}*{box-sizing:border-box}html{background:var(--bg-color);min-width:320px}body{background:linear-gradient(180deg, #e7f6efb3 0, #f6f8fb00 240px), var(--bg-color);min-height:100vh;color:var(--text-color);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}button,input{font:inherit}button{border:0}a{color:inherit}#root{width:100%}.access-page{place-items:center;min-height:100vh;padding:24px;display:grid}.access-card{width:min(100%,420px);padding:28px}.access-card h1{margin:0}.access-card>p{color:var(--text-muted);margin:8px 0 22px}.access-card form{gap:8px;display:grid}.access-card label{color:var(--text-color);font-size:.82rem;font-weight:700}.access-card input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-height:42px;color:var(--text-color);padding:8px 10px}.access-card form button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;min-height:42px;margin-top:8px;font-weight:700}.access-card form button:disabled{cursor:wait;opacity:.65}.google-login-button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;width:100%;min-height:42px;margin-top:8px;font-weight:700}.access-error{color:var(--danger);margin:6px 0 0;font-size:.84rem}.access-link{color:var(--accent);cursor:pointer;background:0 0;margin:14px auto 0;padding:0;font-size:.82rem;display:block}.users-page{gap:16px;display:grid}.users-heading h2{margin:4px 0 0}.users-heading p{color:var(--text-muted);margin:4px 0 0}.section-eyebrow{color:var(--accent);text-transform:uppercase;font-size:.76rem;font-weight:800}.user-create-card{grid-template-columns:1fr 1fr 180px auto;align-items:end;gap:12px;padding:16px;display:grid}.user-create-card h3{grid-column:1/-1;margin:0}.user-create-card label{color:var(--text-muted);text-transform:uppercase;gap:6px;font-size:.76rem;font-weight:800;display:grid}.user-create-card input,.user-create-card select,.user-row select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:38px;color:var(--text-color);font:inherit;padding:6px 9px}.user-create-card button,.user-delete-button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;cursor:pointer;min-height:38px;padding:0 14px;font-weight:700}.users-list{gap:10px;display:grid}.user-row{grid-template-columns:1fr 180px auto;align-items:center;gap:12px;padding:12px;display:grid}.user-row strong,.user-row span{display:block}.user-row span{color:var(--text-muted);font-size:.82rem}.user-delete-button{border:1px solid var(--border-strong);color:var(--danger);background:0 0}.app-shell{width:min(100%,1240px);margin:0 auto;padding:28px}.app-header{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd1;justify-content:space-between;align-items:center;gap:24px;margin-bottom:24px;padding:18px;display:flex}.brand-block{grid-template-columns:44px 1fr;align-items:center;gap:12px;min-width:0;display:grid;position:relative}.brand-mark{border-radius:var(--radius-md);object-fit:cover;background:var(--surface);width:44px;height:44px;box-shadow:var(--shadow-sm);display:block}.brand-block h1,.chat-header h2,.vm-title-group h2{color:var(--text-color);letter-spacing:0;margin:0}.brand-block h1{font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.1}.header-subtitle,.last-updated{color:var(--text-muted);margin:3px 0 0;font-size:.88rem}.last-updated{grid-column:2;display:inline-flex}.nav-buttons{background:var(--bg-muted);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(4,minmax(96px,1fr));gap:4px;padding:4px;display:inline-grid}.nav-buttons button,.expand-button,.chat-input button{border-radius:var(--radius-sm);cursor:pointer;min-height:40px;font-size:.92rem;font-weight:700;transition:background .18s,border-color .18s,box-shadow .18s,color .18s,transform .18s}.nav-buttons button{color:var(--text-muted);background:0 0;padding:0 14px}.nav-buttons button.active{background:var(--surface);color:var(--accent);box-shadow:var(--shadow-sm)}.nav-buttons button:hover:not(.active){color:var(--text-color);background:#ffffff8c}.app-main{min-width:0}.surface-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.empty-state{color:var(--text-muted);padding:28px}.empty-state p{margin:0}.empty-state-danger{background:var(--danger-soft);color:var(--danger);border-color:#b4231842}.overview-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));align-items:start;gap:18px;display:grid}.azure-cost-summary{gap:16px;margin-bottom:18px;padding:18px;display:grid}.cost-page-toolbar{justify-content:flex-end;margin-bottom:10px;display:flex}.cost-pdf-button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-color);font:inherit;cursor:pointer;align-items:center;gap:6px;padding:8px 14px;font-weight:700;display:inline-flex}.cost-pdf-button:hover{border-color:var(--accent);color:var(--accent)}.cost-date-filter{flex-wrap:wrap;align-items:end;gap:14px;margin-bottom:18px;padding:16px 18px;display:flex}.cost-date-filter>div{flex:1;gap:4px;display:grid}.cost-date-filter>div span,.cost-date-filter label{color:var(--text-muted);font-size:.76rem;font-weight:700}.cost-date-filter label{gap:5px;display:grid}.cost-date-filter input,.cost-date-filter select,.cost-date-filter button{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:36px;color:var(--text-color);font:inherit;padding:7px 10px}.cost-date-filter button{border-color:var(--accent);background:var(--accent);color:#fff;cursor:pointer;font-weight:750}.cost-date-filter button:disabled{cursor:wait;opacity:.65}.cost-date-filter .cost-date-error{color:var(--danger,#b42318);flex-basis:100%;margin:0;font-size:.78rem}.azure-cost-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.azure-cost-heading span,.azure-cost-summary-grid span{color:var(--text-muted);font-size:.78rem;font-weight:750}.azure-cost-heading strong{color:var(--text-color);margin-top:4px;font-size:1.42rem;line-height:1.1;display:block}.azure-cost-updated{border:1px solid var(--border);background:var(--surface-subtle);border-radius:var(--radius-sm);text-align:right;padding:6px 8px}.azure-cost-summary-grid{border:1px solid var(--border);border-radius:var(--radius-sm);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;overflow:hidden}.azure-cost-summary-grid div{background:var(--surface-subtle);border-right:1px solid var(--border);min-width:0;padding:11px 12px}.azure-cost-summary-grid div:last-child{border-right:0}.azure-cost-summary-grid strong{color:var(--text-color);margin-top:4px;font-size:1rem;line-height:1.1;display:block}.azure-cost-note{color:var(--text-muted);margin:0;font-size:.82rem;line-height:1.45}.cost-insight-section{margin-top:20px;padding:22px}.cost-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.cost-section-heading h2{margin:0;font-size:1.05rem}.cost-section-heading span{color:var(--text-muted);font-size:.84rem}.cost-toggle{gap:6px;display:flex}.cost-toggle button{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:7px;padding:7px 10px}.cost-toggle button.active{color:var(--accent);border-color:var(--accent);background:var(--accent-bg)}.cost-breakdown-list{gap:12px;display:grid}.cost-breakdown-row{grid-template-columns:minmax(160px,1.2fr) minmax(100px,2fr) minmax(150px,1fr);align-items:center;gap:14px;display:grid}.cost-breakdown-name,.cost-breakdown-values{gap:2px;display:grid}.cost-breakdown-name span,.cost-breakdown-values span{color:var(--text-muted);font-size:.78rem}.cost-breakdown-values{text-align:right}.cost-bar{background:var(--bg-muted);border-radius:999px;height:8px;overflow:hidden}.cost-bar i{border-radius:inherit;background:linear-gradient(90deg, var(--accent), #7c62e5);height:100%;display:block}.cost-insights-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.cost-insights-grid .cost-insight-section{margin-top:20px}.cost-count{min-width:32px;height:32px;color:var(--accent);background:var(--accent-bg);border-radius:50%;place-items:center;display:grid}.advisor-list{gap:14px;margin:0;padding:0;list-style:none;display:grid}.advisor-list li{align-items:flex-start;gap:10px;display:flex}.advisor-list li>div{gap:3px;display:grid}.advisor-list li span:not(.advisor-impact){color:var(--text-muted);font-size:.8rem}.advisor-impact,.reservation-badge{text-transform:uppercase;background:var(--bg-muted);border-radius:999px;padding:3px 8px;font-weight:700;color:var(--text-muted)!important;font-size:.72rem!important}.impact-high{background:#d76a4d1c;color:#d76a4d!important}.impact-medium{background:#d1a52b1c;color:#d1a52b!important}.impact-low{background:var(--bg-muted);color:var(--text-muted)!important}.advisor-resource{word-break:break-all;font-family:ui-monospace,monospace;font-size:.76rem!important}.advisor-description{line-height:1.4}.advisor-savings{font-weight:600;color:var(--accent)!important}.advisor-show-more{color:var(--accent);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:0;font-size:.82rem;font-weight:600;text-decoration:underline}.cost-callout{border-left:3px solid var(--accent);color:var(--text-muted);background:var(--accent-bg);margin:16px 0 0;padding:10px;font-size:.84rem}.reservation-readiness p{color:var(--text-muted);font-size:.9rem;line-height:1.5}.reservation-placeholder-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px;display:grid}.reservation-placeholder-grid span{border:1px dashed var(--border);color:var(--text-muted);border-radius:8px;padding:10px;font-size:.76rem}.reservation-placeholder-grid strong{color:var(--text-color);margin-top:4px;font-size:.78rem;display:block}.reservation-gap-summary{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.reservation-gap-summary span,.reservation-gap-status{border-radius:999px;padding:4px 8px;font-size:.74rem;font-weight:700}.gap-deficit{color:#d76a4d;background:#d76a4d1c}.gap-surplus{color:#d1a52b;background:#d1a52b1c}.reservation-gap-list{gap:10px;margin:14px 0;padding:0;list-style:none;display:grid}.reservation-gap-list li{align-items:flex-start;gap:9px;display:flex}.reservation-gap-list li>div{gap:2px;display:grid}.reservation-gap-badges{flex-wrap:wrap;gap:4px!important;display:flex!important}.reservation-gap-list li span:not(.reservation-gap-status){color:var(--text-muted);font-size:.78rem}.reservation-gap-status{text-align:center;min-width:48px}@media (width<=760px){.cost-insights-grid{grid-template-columns:1fr}.cost-breakdown-row{grid-template-columns:1fr;gap:5px}.cost-breakdown-values{text-align:left}.cost-section-heading{flex-direction:column}}.azure-cost-breakdown{border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-md);margin-bottom:18px;overflow:hidden}.azure-cost-breakdown-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:18px;padding:14px 16px;display:flex}.azure-cost-breakdown-header h2{color:var(--text-color);margin:0;font-size:.98rem}.azure-cost-breakdown-header span{color:var(--text-muted);margin-top:4px;font-size:.78rem;font-weight:650;display:block}.azure-cost-breakdown-header strong{color:var(--text-color);white-space:nowrap;font-size:1.08rem}.cost-filter-controls{align-items:center;gap:10px;display:flex}.cost-filter-controls label{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.cost-filter-controls select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-subtle);max-width:190px;min-height:34px;color:var(--text-color);font:inherit;padding:6px 28px 6px 9px;font-size:.76rem}.cost-filter-controls select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.reservation-heading{align-items:center;gap:5px;display:inline-flex}.reservation-info{border:1px solid var(--text-soft);width:16px;height:16px;color:var(--text-muted);cursor:help;text-transform:none;border-radius:999px;place-items:center;font-size:.66rem;font-weight:800;line-height:1;display:inline-grid;position:relative}.reservation-info:after{z-index:2;border-radius:var(--radius-sm);color:#fff;content:attr(data-tooltip);text-align:left;text-transform:none;white-space:normal;opacity:0;pointer-events:none;background:#1e293b;width:250px;padding:9px 10px;font-size:.76rem;font-weight:500;line-height:1.35;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%,-3px)}.reservation-info:hover:after,.reservation-info:focus-visible:after{opacity:1;transform:translate(-50%)}.azure-cost-table-wrap{overflow-x:auto}.azure-cost-table{border-collapse:collapse;width:100%;min-width:760px;font-size:.8rem}.azure-cost-table th,.azure-cost-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px 14px}.azure-cost-table th{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:800}.azure-cost-table tbody tr:hover{background:var(--surface-subtle)}.azure-cost-table .azure-cost-unmonitored{background:#b4530912}.azure-cost-table tfoot{background:var(--surface-subtle)}.azure-cost-table tfoot th,.azure-cost-table tfoot td{color:var(--text-color);border-bottom:0}.cost-category-input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);width:170px;min-height:34px;color:var(--text-color);font:inherit;padding:6px 8px}.cost-category-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring);outline:none}.cost-bulk-controls{color:var(--text-muted);align-items:center;gap:10px;margin:14px 0;font-size:.82rem;display:flex}.cost-bulk-controls button{border-radius:var(--radius-sm);background:var(--accent);color:#fff;min-height:34px;font:inherit;cursor:pointer;border:0;padding:6px 12px;font-weight:700}.cost-bulk-controls button:disabled{cursor:not-allowed;opacity:.5}.cost-status-ok{border-color:#12805c2e}.cost-status-error,.cost-status-disabled,.cost-status-not_found,.cost-status-ambiguous,.cost-status-not_applicable,.cost-status-allocation_unavailable,.cost-status-partial{border-color:#b4530938}.overview-toolbar{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#ffffffb8;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding:10px;display:flex}.filter-chip{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);min-height:38px;color:var(--text-muted);cursor:pointer;align-items:center;gap:7px;padding:0 12px;font-size:.86rem;font-weight:800;transition:background .18s,border-color .18s,color .18s,box-shadow .18s;display:inline-flex}.filter-chip svg,.status-badge svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px;width:14px;height:14px}.filter-chip strong{background:var(--bg-muted);min-width:22px;height:22px;color:var(--text-color);border-radius:999px;place-items:center;padding:0 6px;font-size:.76rem;display:inline-grid}.filter-chip:hover,.filter-chip.active{color:var(--accent);border-color:#12805c59}.filter-chip.active{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #12805c1a}.filter-chip.active strong{color:var(--accent);background:#fff}.filter-alerta:hover,.filter-alerta.active{color:var(--warning);border-color:#b453094d}.filter-critico:hover,.filter-critico.active{color:var(--danger);border-color:#b423184d}.filter-offline:hover,.filter-offline.active{color:#475569;border-color:#64748b59}.vm-card{padding:18px;transition:transform .18s,box-shadow .18s,border-color .18s}.vm-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.vm-card.has-issues{border-color:var(--border-strong)}.vm-card.has-issues:hover{border-color:#12805c61}.vm-card-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.vm-title-group{min-width:0}.vm-title-group h2{overflow-wrap:anywhere;font-size:1rem;line-height:1.25}.vm-title-group span{color:var(--text-muted);overflow-wrap:anywhere;margin-top:4px;font-size:.82rem;display:block}.grafana-link{color:var(--accent);margin-top:10px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex}.grafana-link:hover{color:var(--accent-hover);text-underline-offset:3px;text-decoration:underline}.status-badge{letter-spacing:0;white-space:nowrap;border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;min-height:26px;padding:0 9px;font-size:.72rem;font-weight:800;display:inline-flex}.status-SAUDAVEL{background:var(--success-soft);color:var(--success);border-color:#12805c2e}.status-ALERTA,.status-MANUTENCAO{background:var(--warning-soft);color:var(--warning);border-color:#b4530933}.status-CRITICO{background:var(--danger-soft);color:var(--danger);border-color:#b4231833}.status-OFFLINE{color:#475569;background:#f1f5f9;border-color:#64748b33}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.metric-tile{background:var(--surface-subtle);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;min-height:82px;padding:9px;display:grid;overflow:hidden}.metric-tile span{color:var(--text-muted);font-size:.73rem;font-weight:700;display:block}.metric-tile strong{color:var(--text-color);margin-top:4px;font-size:1.02rem;line-height:1.1;display:block}.sparkline{width:100%;height:34px;color:var(--success);margin-top:5px}.sparkline-alerta,.sparkline-manutencao{color:var(--warning)}.sparkline-critico,.sparkline-offline{color:var(--danger)}.sparkline-line{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.2px}.sparkline-fill{fill:currentColor;opacity:.09;stroke:none}.incident-strip{border-radius:var(--radius-md);margin:0 0 14px;padding:10px 12px;font-size:.88rem;font-weight:700}.incident-warning{background:var(--warning-soft);color:var(--warning);border-left:3px solid var(--warning)}.incident-danger{background:var(--danger-soft);color:var(--danger);border-left:3px solid var(--danger)}.expand-button{background:var(--accent-soft);width:100%;color:var(--accent);margin-top:2px}.expand-button:hover{color:var(--accent-hover);background:#d9f0e7}.vm-details{border-top:1px solid var(--border);margin-top:16px;padding-top:16px;animation:.22s ease-out slideDown}.detail-item{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:12px}.detail-item+.detail-item{margin-top:10px}.detail-title{color:var(--text-color);align-items:center;gap:8px;margin:0;font-size:.82rem;font-weight:800;display:flex}.diagnostic-icon{border-radius:999px;flex:none;place-items:center;width:22px;height:22px;display:inline-grid}.diagnostic-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:14px;height:14px}.diagnostic-critical{background:var(--danger-soft);color:var(--danger)}.diagnostic-warning{background:var(--warning-soft);color:var(--warning)}.detail-message{color:var(--text-muted);margin:8px 0 0;font-size:.9rem}.suggestion-box{border-left:3px solid var(--warning);border-radius:var(--radius-sm);color:var(--text-color);background:#fff;margin-top:10px;padding:10px 12px;font-size:.9rem;font-weight:600}.correlation-note{border-radius:var(--radius-md);background:var(--accent-soft);color:var(--accent-hover);margin-top:12px;padding:10px 12px;font-size:.86rem}.network-page{gap:18px;display:grid}.network-hero{justify-content:space-between;align-items:flex-start;gap:18px;padding:18px;display:flex}.network-eyebrow{color:var(--accent);text-transform:uppercase;font-size:.76rem;font-weight:800;display:block}.network-hero h2{color:var(--text-color);margin:4px 0 0;font-size:1.15rem;line-height:1.25}.network-hero p,.network-target-header p,.network-metric-copy p,.network-health-card p{color:var(--text-muted);margin:4px 0 0;font-size:.88rem}.network-message{margin:0}.network-summary-grid,.network-target-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.network-metric-card,.network-health-card,.network-target-card{padding:16px}.network-metric-card{grid-template-columns:minmax(0,.95fr) minmax(120px,1fr);align-items:end;gap:14px;min-height:138px;display:grid}.network-metric-copy span,.network-health-card>span,.network-target-values span,.network-target-series span{color:var(--text-muted);font-size:.76rem;font-weight:800;display:block}.network-metric-copy strong,.network-health-card>strong{color:var(--text-color);margin-top:6px;font-size:1.55rem;line-height:1.05;display:block}.network-line-chart{width:100%;min-width:0;height:58px;color:var(--success);display:block}.network-empty-series{border:1px dashed var(--border-strong);border-radius:var(--radius-md);min-height:58px;color:var(--text-muted);justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.network-health-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:14px;display:grid}.network-health-strip span{border-radius:var(--radius-sm);justify-content:center;min-width:0;padding:7px 6px;font-size:.74rem;font-weight:800;display:inline-flex}.health-ok{background:var(--success-soft);color:var(--success)}.health-warning{background:var(--warning-soft);color:var(--warning)}.health-critical{background:var(--danger-soft);color:var(--danger)}.network-target-card{gap:14px;display:grid}.network-target-header{justify-content:space-between;gap:14px;display:flex}.network-target-header h3{color:var(--text-color);overflow-wrap:anywhere;margin:0;font-size:1rem;line-height:1.25}.network-target-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.network-target-values div,.network-target-series>div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);min-width:0;padding:10px}.network-target-values strong{color:var(--text-color);margin-top:5px;font-size:.98rem;line-height:1.15;display:block}.network-target-series{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.network-target-series .network-line-chart,.network-target-series .network-empty-series{height:50px;min-height:50px;margin-top:8px}.anomaly-border{border-color:#dc262673!important;box-shadow:0 0 12px #dc262626!important}.network-metric-detail-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px;display:flex}.network-anomaly-pill{color:#f87171;background:#dc26261f;border:1px solid #dc262640;border-radius:9999px;align-items:center;padding:1px 6px;font-size:.68rem;font-weight:600;display:inline-flex}.target-value-cell{flex-direction:column;display:flex;position:relative}.network-anomaly-tag{color:#f87171;border-radius:var(--radius-sm);background:#dc26261f;border:1px solid #dc262640;width:fit-content;margin-top:4px;padding:1px 5px;font-size:.68rem;font-weight:600;display:inline-block}.network-extra-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.network-extra-card{flex-direction:column;gap:14px;min-height:158px;padding:16px;display:flex}.network-extra-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.network-extra-header h3{color:var(--text-color);margin:0;font-size:1.05rem;line-height:1.25}.network-extra-header p{color:var(--text-muted);margin:4px 0 0;font-size:.8rem}.network-extra-values{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:12px;display:grid}.network-extra-placeholder{text-align:center;color:var(--text-muted);background:var(--surface-subtle);border:1px dashed var(--border-strong);border-radius:var(--radius-md);flex:1;justify-content:center;align-items:center;min-height:78px;margin:0;padding:18px;font-size:.88rem;font-style:italic;display:flex}.network-extra-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.network-extra-charts>div{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:10px}.network-extra-charts span{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.extra-value-cell{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-subtle);padding:12px}.extra-value-cell span{color:var(--text-muted);text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.extra-value-cell strong{color:var(--text-color);margin-top:6px;font-size:1.15rem;line-height:1.15;display:block}.chat-container{flex-direction:column;height:min(76vh,760px);min-height:560px;display:flex;overflow:hidden}.chat-header{border-bottom:1px solid var(--border);background:var(--surface-subtle);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 20px;display:flex}.chat-header h2{font-size:1.05rem;line-height:1.25}.chat-header p{color:var(--text-muted);margin:4px 0 0;font-size:.9rem}.agent-state{background:var(--success-soft);min-height:28px;color:var(--success);border-radius:999px;flex:none;align-items:center;padding:0 10px;font-size:.78rem;font-weight:800;display:inline-flex}.agent-state.is-busy{background:var(--warning-soft);color:var(--warning)}.chat-messages{background:linear-gradient(#f8fafca6,#fff);flex-direction:column;flex:1;gap:12px;min-height:0;padding:20px;display:flex;overflow-y:auto}.message{border-radius:var(--radius-lg);max-width:min(82%,760px);box-shadow:var(--shadow-sm);overflow-wrap:anywhere;padding:12px 14px;font-size:.94rem;line-height:1.6}.message.user{background:var(--accent);color:#fff;border-bottom-right-radius:var(--radius-sm);align-self:flex-end}.message.agent{background:var(--surface);color:var(--text-color);border:1px solid var(--border);border-bottom-left-radius:var(--radius-sm);align-self:flex-start}.agent-message-row{align-items:flex-start;gap:10px;display:flex}.bot-avatar{background:var(--accent);color:#fff;width:34px;height:34px;box-shadow:inset 0 0 0 1px #ffffff2e, var(--shadow-sm);border-radius:999px;flex:none;place-items:center;display:inline-grid}.bot-avatar svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:21px;height:21px}.agent-message-row .message-content{min-width:0}.message-content h1,.message-content h2,.message-content h3{color:var(--text-color);margin:18px 0 8px;font-weight:800;line-height:1.25}.message-content h1:first-child,.message-content h2:first-child,.message-content h3:first-child{margin-top:0}.message-content h1{font-size:1.18rem}.message-content h2{font-size:1.08rem}.message-content h3{font-size:1rem}.message-content p{margin:0 0 12px}.message-content p:last-child{margin-bottom:0}.message-content ul,.message-content ol{margin:0 0 12px 18px;padding:0}.message-content li{margin-bottom:4px}.message-content strong{color:var(--text-color);font-weight:800}.message.user strong{color:#fff}.message-content table{border-collapse:collapse;border-radius:var(--radius-md);border:1px solid var(--border);background:#fff;width:100%;margin:12px 0;font-size:.88rem;display:block;overflow-x:auto}.message-content th,.message-content td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:10px 12px}.message-content th{background:var(--surface-subtle);color:var(--text-muted);text-transform:uppercase;font-size:.74rem;font-weight:800}.message-content tr:last-child td{border-bottom:0}.message-content pre{border-radius:var(--radius-md);color:#f8fafc;background:#111827;max-width:100%;margin:12px 0;padding:12px;font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.84rem;overflow-x:auto}.message-content code{border-radius:var(--radius-sm);color:#9f1239;background:#0f172a0f;padding:2px 5px;font-family:Fira Code,SFMono-Regular,Consolas,monospace;font-size:.86em}.message-content pre code{color:inherit;background:0 0;padding:0}.debug-details{border-top:1px solid var(--border);margin-top:12px;padding-top:10px}.debug-details summary{cursor:pointer;color:var(--accent);font-size:.85rem;font-weight:800}.debug-info{color:var(--text-muted);margin-top:10px;font-size:.84rem}.debug-entry{border-bottom:1px solid var(--border);gap:4px;padding:8px 0;display:grid}.chat-input{border-top:1px solid var(--border);background:var(--surface);gap:10px;padding:16px;display:flex}.chat-input input{border-radius:var(--radius-md);border:1px solid var(--border-strong);background:var(--surface-subtle);min-width:0;height:46px;color:var(--text-color);outline:none;flex:1;padding:0 14px;transition:border-color .18s,box-shadow .18s,background .18s}.chat-input input::placeholder{color:var(--text-soft)}.chat-input input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus-ring);background:#fff}.chat-input button{background:var(--accent);color:#fff;min-width:104px;padding:0 18px}.chat-input button:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px)}.chat-input button:disabled{color:#64748b;cursor:not-allowed;background:#cbd5e1}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.24s ease-out forwards fadeIn}.loading-dots:after{content:".";animation:1.5s steps(5,end) infinite dots}@keyframes dots{0%,20%{color:#0000;text-shadow:.25em 0 #0000,.5em 0 #0000}40%{color:var(--text-color);text-shadow:.25em 0 #0000,.5em 0 #0000}60%{text-shadow:.25em 0 0 var(--text-color), .5em 0 0 #0000}80%,to{text-shadow:.25em 0 0 var(--text-color), .5em 0 0 var(--text-color)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=900px){.app-shell{padding:18px}.app-header{flex-direction:column;align-items:stretch}.nav-buttons{width:100%}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.network-metric-card{grid-template-columns:1fr}.overview-toolbar{align-items:stretch}.azure-cost-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.azure-cost-summary-grid div:nth-child(2){border-right:0}.azure-cost-summary-grid div:nth-child(-n+2){border-bottom:1px solid var(--border)}.filter-chip{flex:calc(33.333% - 8px);justify-content:center}}@media (width<=560px){.app-shell{padding:12px}.app-header{gap:16px;padding:14px}.brand-block{grid-template-columns:38px 1fr}.brand-mark{width:38px;height:38px}.header-subtitle{font-size:.82rem}.nav-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.overview-grid{grid-template-columns:1fr;gap:12px}.overview-toolbar{grid-template-columns:1fr 1fr;gap:8px;display:grid}.azure-cost-summary{padding:14px}.azure-cost-heading{flex-direction:column}.azure-cost-updated{text-align:left}.filter-chip{width:100%}.vm-card{padding:14px}.vm-card-header{flex-direction:column;align-items:flex-start}.status-badge{align-self:flex-start}.metric-grid{grid-template-columns:1fr 1fr}.network-hero,.network-target-header{flex-direction:column;align-items:flex-start}.network-summary-grid,.network-target-grid,.network-target-series{grid-template-columns:1fr}.network-target-values{grid-template-columns:1fr 1fr}.network-health-strip{grid-template-columns:1fr}.metric-tile{min-height:78px;padding:9px}.chat-container{height:calc(100vh - 154px);min-height:520px}.chat-header{flex-direction:column;padding:14px}.chat-messages{padding:14px}.message{max-width:94%;padding:11px 12px}.bot-avatar{width:30px;height:30px}.chat-input{flex-direction:column;padding:12px}.chat-input button{width:100%}}.network-links-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-bottom:14px;display:grid}.network-link-card{flex-direction:column;gap:10px;padding:16px;display:flex}.network-link-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.network-link-header h3{margin:0;font-size:1rem}.network-link-header p{opacity:.6;margin:2px 0 0;font-size:.78rem}.network-link-state{font-size:1.05rem}.reservation-headline{border-left:4px solid var(--color-success,#22a06b);background:#148c5a14;border-radius:8px;flex-direction:column;gap:6px;margin-bottom:12px;padding:14px 16px;display:flex}.reservation-savings-value{color:var(--color-success,#22a06b);font-size:1.5rem;font-weight:700}.reservation-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px;display:grid}.reservation-mini-grid span{opacity:.85;background:#00000008;border-radius:8px;padding:10px 12px;font-size:.8rem}.reservation-mini-grid strong{opacity:1;font-size:1.1rem;font-weight:700}.reservation-action-list{flex-direction:column;gap:10px;margin:0 0 12px;padding:0;list-style:none;display:flex}.reservation-action-item{background:#00000005;border:1px solid #00000014;border-radius:8px;padding:12px 14px}.reservation-action-item.action-deficit{border-left:4px solid #d97706}.reservation-action-item.action-surplus{border-left:4px solid #6366f1}.reservation-action-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:6px;display:flex}.reservation-tag{border-radius:999px;margin-right:8px;padding:3px 8px;font-size:.72rem;font-weight:600;display:inline-block}.reservation-tag.tag-buy{color:#92400e;background:#fef3c7}.reservation-tag.tag-review{color:#3730a3;background:#e0e7ff}.reservation-action-title{font-size:.95rem}.reservation-action-savings{color:var(--color-success,#22a06b);white-space:nowrap;font-size:.85rem;font-weight:600}.reservation-action-reco{opacity:.9;margin:4px 0 8px;font-size:.88rem;line-height:1.4}.reservation-action-vms{margin-top:6px;font-size:.82rem}.reservation-action-vms summary{cursor:pointer;opacity:.8;padding:4px 0;font-weight:500}.reservation-action-vms summary:hover{opacity:1}.reservation-action-vms ul{flex-direction:column;gap:4px;margin:0;padding:8px 0 0 12px;list-style:none;display:flex}.reservation-action-vms li{justify-content:space-between;gap:12px;display:flex}.reservation-action-vms .vm-cost{font-variant-numeric:tabular-nums;opacity:.75}.reservation-action-vms .vm-more{opacity:.6;font-style:italic}.reservation-empty{text-align:center;color:var(--color-success,#22a06b);padding:12px;font-weight:500}.reservation-footnote{opacity:.65;margin-top:10px;font-size:.78rem}.overview-produto-filter{color:var(--text-muted,#5b6961);align-items:center;gap:8px;margin-left:auto;font-size:.82rem;display:inline-flex}.overview-produto-filter span{font-weight:600}.overview-produto-filter select{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);min-height:34px;color:var(--text-color);font:inherit;padding:5px 10px}@media (width<=640px){.overview-produto-filter{width:100%;margin-left:0}.overview-produto-filter select{flex:1}}.vm-produto-badge{background:var(--accent-soft,#e1ede6);color:var(--accent-strong,#143d2d);border-radius:99px;width:fit-content;padding:2px 9px;font-size:.7rem;font-weight:600;display:inline-block}.reservation-ti-economy{border:1px solid var(--border-strong);background:#00000005;border-radius:10px;margin:16px 0;padding:14px 16px}.reservation-ti-economy-heading h4{margin:0 0 2px;font-size:.92rem}.reservation-ti-economy-heading span{opacity:.7;font-size:.78rem}.reservation-ti-total{font-family:var(--font-serif,inherit);color:var(--color-success,#22a06b);align-items:baseline;gap:8px;margin:10px 0 12px;font-size:1.3rem;font-weight:700;display:flex}.reservation-ti-total.negative{color:var(--danger)}.reservation-ti-total span{opacity:.75;font-size:.78rem;font-weight:400}.reservation-ti-table{border-collapse:collapse;width:100%;font-size:.82rem}.reservation-ti-table th{text-align:left;letter-spacing:.03em;text-transform:uppercase;opacity:.6;border-bottom:1px solid var(--border-strong);padding:6px 8px;font-size:.68rem}.reservation-ti-table td{border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums;padding:7px 8px}.reservation-ti-table td.positive{color:var(--color-success,#22a06b);font-weight:600}.reservation-ti-table td.negative{color:var(--danger);font-weight:600}.reservation-price-fallback{cursor:help;opacity:.6;margin-left:2px}.custeio-subhead{letter-spacing:.02em;text-transform:uppercase;opacity:.65;margin:22px 0 10px;font-size:.82rem;font-weight:700}.custeio-saldo-card{border:1px solid var(--border-strong);background:#00000004;border-left-width:4px;border-radius:10px;margin:4px 0 8px;padding:16px 18px}.custeio-saldo-card.negative{border-left-color:var(--danger)}.custeio-saldo-card.positive{border-left-color:var(--color-success,#22a06b)}.custeio-saldo-value{font-variant-numeric:tabular-nums;font-size:1.7rem;font-weight:800;line-height:1.1}.custeio-saldo-card.negative .custeio-saldo-value{color:var(--danger)}.custeio-saldo-card.positive .custeio-saldo-value{color:var(--color-success,#22a06b)}.custeio-saldo-text{opacity:.85;max-width:62ch;margin:6px 0 0;font-size:.9rem;line-height:1.5}.custeio-produto-list{gap:8px;margin:6px 0 4px;display:grid}.custeio-produto-row{grid-template-columns:140px 1fr auto;align-items:center;gap:12px;font-size:.86rem;display:grid}.custeio-produto-name{font-weight:600}.custeio-produto-bar{background:var(--bg-muted,#0000000f);border-radius:99px;height:8px;overflow:hidden}.custeio-produto-bar i{background:linear-gradient(90deg, var(--accent), var(--accent-strong,var(--accent)));border-radius:99px;height:100%;display:block}.custeio-produto-val{font-variant-numeric:tabular-nums;font-weight:700}@media (width<=560px){.custeio-produto-row{grid-template-columns:1fr auto}.custeio-produto-bar{display:none}}.custeio-sku-table{border-collapse:collapse;width:100%;font-size:.84rem}.custeio-sku-table th{text-align:right;letter-spacing:.03em;text-transform:uppercase;opacity:.6;border-bottom:1px solid var(--border-strong);padding:7px 8px;font-size:.66rem}.custeio-sku-table th:first-child{text-align:left}.custeio-sku-table td{border-bottom:1px solid var(--border);text-align:right;font-variant-numeric:tabular-nums;padding:8px}.custeio-sku-table td:first-child{text-align:left}.custeio-sku-table td:first-child .sku{font-weight:700}.custeio-sku-table td:first-child small{opacity:.55;font-size:.7rem;display:block}.custeio-sku-table td.negative{color:var(--danger);font-weight:700}.custeio-sku-table td.positive{color:var(--color-success,#22a06b);font-weight:700}.neg-word{color:var(--danger);font-weight:600}.custeio-price-editor{margin-top:10px}.custeio-price-table-wrap{margin-top:4px}.custeio-price-table{border-collapse:collapse;width:100%;font-size:.83rem}.custeio-price-table th{text-align:left;letter-spacing:.03em;text-transform:uppercase;opacity:.6;border-bottom:1px solid var(--border-strong);padding:6px 8px;font-size:.68rem}.custeio-price-table td{border-bottom:1px solid var(--border);padding:6px 8px}.custeio-price-table tr.row-dirty{background:var(--accent-bg,#00000008)}.custeio-price-input{border:1px solid var(--border-strong);background:var(--surface);width:96px;color:var(--text-color);font:inherit;font-variant-numeric:tabular-nums;text-align:right;border-radius:6px;padding:5px 8px}.custeio-price-input:focus{border-color:var(--accent);outline:none}.custeio-price-input:disabled{opacity:.6;cursor:not-allowed}.custeio-dirty-dot{color:var(--accent);text-transform:uppercase;letter-spacing:.04em;margin-left:8px;font-size:.68rem;font-weight:700}.custeio-edit-error{color:var(--danger);margin:8px 0 0;font-size:.82rem}.custeio-edit-actions{align-items:center;gap:10px;margin:12px 0 4px;display:flex}.custeio-save-btn{background:var(--accent);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:7px;padding:8px 16px;font-weight:700}.custeio-save-btn:disabled{opacity:.5;cursor:not-allowed}.custeio-discard-btn{border:1px solid var(--border-strong);color:var(--text-muted);font:inherit;cursor:pointer;background:0 0;border-radius:7px;padding:8px 12px}.azure-cost-table td.custeio-col{font-variant-numeric:tabular-nums}.azure-cost-table td.custeio-col small{opacity:.5;font-size:.68rem;font-family:var(--font-mono,monospace);display:block}@media print{.no-print,.app-header,.nav-buttons,.cost-date-filter button[type=submit],.cost-bulk-controls,.cost-filter-controls select,.cost-filter-controls label,.advisor-show-more,.custeio-price-editor,.reservation-action-vms summary{display:none!important}*{color-adjust:exact;-webkit-print-color-adjust:exact;print-color-adjust:exact}html,body{background:#fff!important}.app-shell{max-width:none!important;display:block!important}.app-main{margin:0!important;padding:0!important}.surface-card,.cost-insight-section,.azure-cost-summary,.cost-date-filter,.azure-cost-breakdown{box-shadow:none!important;border:1px solid #ccc!important}.surface-card,.cost-insight-section,.azure-cost-summary,.cost-date-filter{break-inside:avoid;page-break-inside:avoid}.cost-insights-grid{display:block!important}.cost-insights-grid>article{margin-bottom:14px}table{break-inside:auto}tr{break-inside:avoid}.azure-cost-table thead th:first-child,.azure-cost-table tbody td:first-child{display:none!important}.cost-category-input{background:0 0!important;border:none!important;padding:0!important}.reservation-action-vms[open] summary{display:none!important}a[href]:after{content:none!important}}.custeio-aviso{border-left:3px solid var(--danger);background:#b423180f;border-radius:0 8px 8px 0;margin:0 0 12px;padding:10px 14px;font-size:.84rem;line-height:1.5}
