.kpi-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:20px}.kpi-card{background:linear-gradient(135deg,#062f87,#1a4a9f);color:#fff;border-radius:8px;padding:12px 15px;text-align:center}.kpi-card .kpi-label{font-family:Fira Sans,sans-serif;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#fff;opacity:.85}.kpi-card .kpi-value{font-family:Oswald,sans-serif;font-size:22px;font-weight:500;line-height:1.2;color:#fff}.tambor-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.tambor-col{display:flex;flex-direction:column;gap:12px}.form-group{display:flex;flex-direction:column}.form-group label{font-family:Fira Sans,sans-serif;font-size:12px;font-weight:600;color:var(--text, #1e293b);margin-bottom:4px}.form-group input,.form-group select{padding:8px 10px;border:1px solid var(--border, #cbd5e1);border-radius:6px;font-family:Roboto,sans-serif;font-size:13px;background:#fff;color:var(--text, #1e293b);transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary, #062F87);box-shadow:0 0 0 3px #062f871a}.section-title{font-family:Fira Sans,sans-serif;font-size:14px;font-weight:700;color:var(--primary, #062F87);border-bottom:2px solid var(--accent, #3B82F6);padding-bottom:4px;margin:16px 0 10px}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.calc-btn,.example-btn,.report-btn{padding:10px 20px;border:none;border-radius:6px;font-family:Fira Sans,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s,transform .1s}.calc-btn{background:var(--primary, #062F87);color:#fff}.calc-btn:hover{background:#001a4d}.example-btn{background:var(--accent, #3B82F6);color:#fff}.example-btn:hover{background:#2563eb}.report-btn{background:#10b981;color:#fff}.report-btn:hover{background:#059669}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.result-card{background:var(--bg-grey, #f1f5f9);border-radius:8px;padding:14px;border-left:4px solid var(--primary, #062F87)}.result-card h3{font-family:Fira Sans,sans-serif;font-size:12px;font-weight:700;color:var(--primary, #062F87);margin:0 0 8px}.result-card .result-body{font-family:Roboto,sans-serif;font-size:12px;line-height:1.6;color:var(--text, #1e293b)}.alert{padding:10px 14px;border-radius:6px;font-family:Roboto,sans-serif;font-size:12px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.alert-danger{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.alert-warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.alert-ok{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.status-ok{color:#16a34a;font-weight:700}.status-alerta{color:#d97706;font-weight:700}.status-reprovado{color:#dc2626;font-weight:700}.derivation{background:#0f172a;color:#e2e8f0;padding:12px 16px;border-radius:6px;font-family:Courier New,monospace;font-size:11px;line-height:1.7;overflow-x:auto;margin-top:6px}.derivation code{display:block}details{margin-bottom:10px}details summary{font-family:Fira Sans,sans-serif;font-size:12px;font-weight:600;color:var(--primary, #062F87);cursor:pointer;padding:6px 0}details summary:hover{color:var(--accent, #3B82F6)}.history-panel{max-height:300px;overflow-y:auto;font-size:12px}.history-panel table{width:100%;border-collapse:collapse;font-family:Roboto,sans-serif}.history-panel th{background:var(--primary, #062F87);color:#fff;padding:6px 8px;text-align:left;font-size:11px;position:sticky;top:0}.history-panel td{padding:5px 8px;border-bottom:1px solid var(--border, #cbd5e1)}.history-panel tr:hover td{background:var(--bg-grey, #f1f5f9)}.svg-container{background:#fff;border:1px solid var(--border, #cbd5e1);border-radius:8px;padding:10px;margin:10px 0;text-align:center}.card-section{background:#fff;border:1px solid var(--border, #cbd5e1);border-radius:8px;padding:20px;margin-bottom:20px}.report-section{background:var(--bg-grey, #f1f5f9);border:1px solid var(--border, #cbd5e1);border-radius:8px;padding:16px;margin-top:16px}.report-section .form-row{display:flex;gap:10px;flex-wrap:wrap}.report-section .form-row input{flex:1;min-width:150px}.info-box{background:var(--bg-grey, #f1f5f9);border-left:4px solid var(--accent, #3B82F6);padding:10px 14px;border-radius:0 6px 6px 0;font-family:Roboto,sans-serif;font-size:12px;color:var(--text-muted, #64748b);margin-bottom:12px;line-height:1.5}.info-box strong{color:var(--text, #1e293b)}@media(max-width:768px){.tambor-grid,.result-grid{grid-template-columns:1fr}.kpi-bar{grid-template-columns:repeat(2,1fr)}}.bushing-families{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.bushing-cb{display:inline-flex;align-items:center;gap:3px;padding:3px 10px;border:1px solid #cbd5e1;border-radius:16px;background:#f8fafc;font-size:11px;cursor:pointer;transition:all .15s ease;user-select:none}.bushing-cb:hover{border-color:#3b82f6;background:#eff6ff}.bushing-cb input[type=checkbox]{width:14px;height:14px;accent-color:#1d4ed8;cursor:pointer;margin:0}.bushing-cb:has(input:checked){border-color:#3b82f6;background:#dbeafe;color:#1e40af;font-weight:600}.bushing-auto-btn:hover{background:#dbeafe!important}.bushing-result-card{border:1px solid #e2e8f0;border-radius:8px;padding:12px;margin:8px 0}.bushing-result-card h4{font-size:13px;margin:0 0 8px;color:#062f87}.bushing-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 16px;font-size:11px}.bushing-result-item{display:flex;justify-content:space-between;padding:2px 0;border-bottom:1px solid #f1f5f9}.bushing-result-item .label{color:#64748b}.bushing-result-item .value{font-weight:600;color:#1e293b}.bushing-verdict{margin-top:8px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:700;text-align:center}.bushing-verdict.ok{background:#dcfce7;color:#15803d}.bushing-verdict.warn{background:#fef3c7;color:#b45309}.bushing-verdict.fail{background:#fee2e2;color:#dc2626}.bushing-alternatives{margin-top:10px;font-size:11px}.bushing-alternatives table{width:100%;border-collapse:collapse;font-size:11px}.bushing-alternatives th{background:#f1f5f9;padding:4px 6px;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#475569}.bushing-alternatives td{padding:3px 6px;border-bottom:1px solid #f1f5f9}.bushing-alternatives .ok-td{color:#15803d;font-weight:600}.bushing-alternatives .fail-td{color:#dc2626}.bushing-alternatives .best-row{background:#f0fdf4;font-weight:700}@media print{.card-section,.result-grid{break-inside:avoid}}
