/* Simulador de ajustes de rodamientos y calentamiento por inducción */
.rda { background: var(--card, #fff); border: 1px solid var(--line, #cfdae6); border-radius: 8px; padding: 18px; margin: 26px 0; display: flex; flex-direction: column; gap: 14px; font-size: 16px; color: var(--navy, #0b1f33); }
.rda * { box-sizing: border-box; }
.rda-head { display: flex; flex-direction: column; gap: 4px; }
.rda-head strong { font-size: 1.1rem; }
.rda-head span { color: var(--muted, #4a5d70); font-size: .92rem; line-height: 1.5; }
.rda-note { background: #fff6e0; border-left: 4px solid #c98a00; color: #5a4000; padding: 9px 12px; font-size: .88rem; line-height: 1.5; border-radius: 0 4px 4px 0; }
.rda-box { border: 1px solid var(--line, #cfdae6); border-radius: 6px; padding: 12px 14px 14px; margin: 0; min-width: 0; display: flex; flex-direction: column; gap: 12px; }
.rda-box > legend { font-weight: 700; padding: 0 6px; font-size: .98rem; }
.rda-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.rda label { display: flex; flex-direction: column; gap: 4px; font-size: .88rem; font-weight: 600; min-width: 0; }
.rda select, .rda input[type="number"] { font: inherit; font-size: 1rem; font-weight: 400; min-height: 44px; padding: 8px 10px; border: 1px solid var(--line, #cfdae6); border-radius: 4px; background: #fff; color: var(--navy, #0b1f33); width: 100%; max-width: 100%; }
.rda label.rda-chk { flex-direction: row; align-items: flex-start; gap: 10px; font-weight: 400; line-height: 1.4; align-self: end; min-height: 44px; }
.rda input[type="checkbox"] { width: 22px; height: 22px; flex: none; margin: 0; accent-color: var(--navy, #0b1f33); }
.rda :is(select, input, button):focus-visible { outline: 3px solid var(--accent, #e0731a); outline-offset: 2px; }
.rda-btn { font: inherit; font-weight: 600; font-size: .95rem; min-height: 44px; padding: 9px 16px; border-radius: 4px; border: 1px solid var(--navy, #0b1f33); background: var(--navy, #0b1f33); color: #fff; cursor: pointer; align-self: flex-start; }
.rda-btn:disabled { opacity: .45; cursor: not-allowed; }
.rda-btn.ghost { background: transparent; color: var(--navy, #0b1f33); }
.rda-sug { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; align-items: end; }
.rda-sug .rda-hint { grid-column: 1 / -1; }
@media (max-width: 520px) { .rda-sug { grid-template-columns: minmax(0, 1fr); } .rda { padding: 14px 12px; } }
.rda-hint { margin: 0; font-size: .88rem; line-height: 1.5; color: var(--muted, #4a5d70); min-height: 1.3em; }
.rda-err { margin: 0; padding: 8px 10px; background: #fdecec; color: #721c24; border-radius: 4px; font-weight: 600; font-size: .9rem; }
.rda-fits { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 14px; }
.rda-card { border: 1px solid var(--line, #cfdae6); border-top-width: 5px; border-radius: 6px; padding: 12px; min-width: 0; background: #fff; }
.rda-card.rda-int { border-top-color: #b45309; }
.rda-card.rda-hol { border-top-color: #2a6fb0; }
.rda-card.rda-tra { border-top-color: #7c3aed; }
.rda-card h4 { margin: 0 0 6px; font-size: 1rem; }
.rda-badge { display: inline-block; font-size: .8rem; font-weight: 700; padding: 3px 9px; border-radius: 999px; background: #eef3f8; margin-bottom: 8px; }
.rda-svg { width: 100%; height: auto; display: block; max-width: 100%; }
.rda-sv-z { stroke: #0b1f33; stroke-width: 1.6; }
.rda-sv-r { fill: #cfe3f5; stroke: #2a6fb0; stroke-width: 1.6; }
.rda-sv-m { fill: #fde3cc; stroke: #e0731a; stroke-width: 1.6; }
.rda-sv-t { font: 700 13px Helvetica, Arial, sans-serif; fill: #0b1f33; }
.rda-sv-n { font: 600 12px Helvetica, Arial, sans-serif; fill: #0b1f33; }
.rda-sv-c, .rda-sv-u { font: 11px Helvetica, Arial, sans-serif; fill: #4a5d70; }
.rda-sv-l { font: 600 12px Helvetica, Arial, sans-serif; fill: #0b1f33; }
.rda-tab { width: 100%; border-collapse: collapse; font-size: .88rem; margin-top: 6px; }
.rda-tab th, .rda-tab td { text-align: left; padding: 6px 4px; border-top: 1px solid var(--line-soft, #e1e8ef); vertical-align: top; }
.rda-tab th { font-weight: 600; width: 48%; }
.rda-tab td i { font-style: normal; color: var(--muted, #4a5d70); }
.rda-formula { background: #e3eaf1; border-left: 4px solid var(--navy, #0b1f33); padding: 10px 12px; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: .92rem; overflow-x: auto; }
.rda-verd { padding: 10px 12px; border-radius: 4px; font-size: .92rem; line-height: 1.5; }
.rda-verd.ok { background: #effaf2; border: 1px solid #15803d; color: #0f4d27; }
.rda-verd.bad { background: #fdecec; border: 1px solid #b91c1c; color: #721c24; }
.rda-list { margin: 0; padding-left: 20px; font-size: .9rem; line-height: 1.55; }
.rda-sl { gap: 6px; }
.rda-sl input[type="range"] { width: 100%; min-height: 36px; accent-color: var(--accent, #e0731a); }
.rda-sl output { font-weight: 700; }
.rda-prog { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.rda-prog progress { flex: 1 1 160px; height: 14px; accent-color: #15803d; }
.rda-prog span { font-size: .88rem; font-weight: 600; }
.rda-ck { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.rda-ck li { margin: 0; }
.rda-ck label { flex-direction: row; align-items: flex-start; gap: 10px; font-weight: 400; font-size: .92rem; line-height: 1.45; padding: 6px 4px; min-height: 44px; cursor: pointer; }
.rda-ck input:checked + span { color: var(--muted, #4a5d70); text-decoration: line-through; }
