.header{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:#fff;border-radius:var(--radius-lg);margin-bottom:var(--spacing-xl)}.header h1{color:#fff}.header .subtitle{color:rgba(255,255,255,.85)}.radio-group{display:flex;gap:var(--spacing-lg);flex-wrap:wrap}.radio-label{display:inline-flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all .2s}.radio-label:hover{background:var(--bg-card-hover);border-color:var(--color-primary)}.radio-label input{width:18px;height:18px;accent-color:var(--color-primary)}.radio-label:has(input:checked){background:var(--color-primary-muted);border-color:var(--color-primary)}.input-con-sufijo{display:flex;align-items:stretch}.input-con-sufijo input{flex:1;border-top-right-radius:0;border-bottom-right-radius:0}.input-con-sufijo .sufijo{display:flex;align-items:center;padding:0 var(--spacing-md);background:var(--bg-card);border:1px solid var(--color-border);border-left:none;border-radius:0 var(--radius-md) var(--radius-md) 0;color:var(--color-text-secondary);font-size:.9rem;font-weight:500;white-space:nowrap}.avanzado{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.avanzado summary{padding:var(--spacing-md);cursor:pointer;background:var(--bg-card);font-weight:500;color:var(--color-text-secondary);list-style:none;display:flex;align-items:center;gap:var(--spacing-sm);transition:background .2s}.avanzado summary:hover{background:var(--bg-card-hover)}.avanzado summary::-webkit-details-marker{display:none}.avanzado[open] summary{border-bottom:1px solid var(--color-border)}.avanzado .form-section{padding:var(--spacing-md);margin:0}.avanzado .form-section h3{font-size:.95rem;font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.oculto{display:none!important}.resultado{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-md)}.resultado h2{font-size:1.25rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--color-text)}.resumen-tarjeta{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.resumen-item{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-md);background:var(--bg-body);border-radius:var(--radius-md)}.resumen-label{font-size:.85rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.resumen-valor{font-size:1.5rem;font-weight:700;color:var(--color-text)}.resumen-destacado{color:var(--color-primary)}.detalle-aportes{margin-bottom:var(--spacing-xl)}.detalle-aportes h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--spacing-md)}.aportes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md)}.aporte-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-md);background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--color-border)}.aporte-label{font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.aporte-valor{font-size:1.25rem;font-weight:700;color:var(--color-text)}.timeline-container{margin-bottom:var(--spacing-xl)}.timeline-container h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--spacing-md)}.timeline{padding:var(--spacing-md) 0}.timeline-bar{display:flex;height:40px;border-radius:var(--radius-md);overflow:hidden;margin-bottom:var(--spacing-sm)}.timeline-segment{display:flex;align-items:center;justify-content:center;position:relative;transition:width .5s ease;min-width:0;overflow:hidden}.timeline-label{font-size:.7rem;font-weight:600;white-space:nowrap;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.4)}.segment-nacido{background:#64748b}.segment-trabajando{background:var(--color-primary)}.segment-futuro{background:#f59e0b}.segment-jubilado{background:var(--color-success)}.timeline-ages{display:flex;justify-content:space-between;padding:0 var(--spacing-xs)}.timeline-age{font-size:.8rem;font-weight:600;color:var(--color-text-secondary)}.fecha-jubilacion{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);background:var(--color-primary-muted);border-radius:var(--radius-md);border:1px solid var(--color-primary);margin-bottom:var(--spacing-xl)}.fecha-label{font-weight:600;color:var(--color-text)}.fecha-valor{font-size:1.25rem;font-weight:700;color:var(--color-primary)}.moratoria-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-warning-bg);border-radius:var(--radius-md);border:1px solid var(--color-warning)}.moratoria-section h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-warning)}.moratoria-texto{margin-bottom:var(--spacing-md);color:var(--color-text);line-height:1.6}.moratoria-detalle{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.moratoria-item{display:flex;flex-direction:column;padding:var(--spacing-md);background:rgba(0,0,0,.15);border-radius:var(--radius-md)}.moratoria-label{font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.moratoria-valor{font-size:1.15rem;font-weight:700;color:var(--color-warning)}.moratoria-nota{font-size:.85rem;color:var(--color-text-muted);line-height:1.5}.moratoria-nota a{color:var(--color-primary)}.haber-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-success-bg);border-radius:var(--radius-md);border:1px solid var(--color-success)}.haber-section h3{font-size:1.05rem;font-weight:600;margin-bottom:var(--spacing-md);color:var(--color-success)}.haber-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.haber-card{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--spacing-md);background:rgba(0,0,0,.15);border-radius:var(--radius-md)}.haber-label{font-size:.8rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-xs)}.haber-valor{font-size:1.3rem;font-weight:700;color:var(--color-success)}.haber-nota{font-size:.85rem;color:var(--color-text-muted);line-height:1.5}.jubilable-section{margin-bottom:var(--spacing-xl)}.jubilable-card{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-success-bg);border-radius:var(--radius-md);border:2px solid var(--color-success)}.jubilable-icon{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:var(--color-success);color:#fff;border-radius:50%;font-size:1.5rem;font-weight:700;flex-shrink:0}.jubilable-texto strong{display:block;font-size:1.1rem;color:var(--color-success);margin-bottom:var(--spacing-xs)}.jubilable-texto p{font-size:.9rem;color:var(--color-text-secondary);line-height:1.5}.acciones{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.acciones button{flex:1}.disclaimer{font-size:.85rem;color:var(--color-text-muted);padding:var(--spacing-md);background:var(--color-danger-bg);border-radius:var(--radius-md);border-left:4px solid var(--color-danger);line-height:1.5}.disclaimer a{color:var(--color-primary)}.disclaimer strong{color:var(--color-danger)}.info-section{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-top:var(--spacing-xl);box-shadow:var(--shadow-md)}.info-section h3{font-size:1.15rem;font-weight:600;margin-bottom:var(--spacing-lg);color:var(--color-text)}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.info-card{padding:var(--spacing-md);background:var(--bg-body);border-radius:var(--radius-md);border:1px solid var(--color-border)}.info-card h4{font-size:.95rem;font-weight:600;color:var(--color-primary);margin-bottom:var(--spacing-sm)}.info-card p{font-size:.85rem;color:var(--color-text-secondary);line-height:1.6}.info-links{padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.info-links p{font-weight:600;margin-bottom:var(--spacing-sm);color:var(--color-text-secondary);font-size:.9rem}.info-links ul{list-style:none;padding:0}.info-links li{margin-bottom:var(--spacing-sm)}.info-links a{color:var(--color-primary);text-decoration:none;font-size:.9rem;transition:color .2s}.info-links a:hover{color:var(--color-primary-hover);text-decoration:underline}@media (max-width:768px){.resumen-tarjeta{grid-template-columns:1fr}.aportes-grid{grid-template-columns:1fr}.info-grid{grid-template-columns:1fr}.moratoria-detalle{grid-template-columns:1fr}.haber-grid{grid-template-columns:1fr}.fecha-jubilacion{flex-direction:column;text-align:center;gap:var(--spacing-sm)}.jubilable-card{flex-direction:column;text-align:center}.acciones{flex-direction:column}}@media (max-width:480px){.radio-group{flex-direction:column;gap:var(--spacing-sm)}.resumen-valor{font-size:1.2rem}.timeline-label{font-size:.6rem}}@media print{body{background:#fff;font-size:12pt;color:#333}.container{max-width:none}.acciones,.avanzado,.footer,.formulario-section,.info-section,.mas-calculadoras{display:none!important}.resultado{box-shadow:none;padding:0}.header{background:0 0;color:#000;border-bottom:2px solid #000;border-radius:0}.header h1{color:#000;font-size:1.5rem}.header .subtitle{color:#666}.aporte-card,.haber-card,.moratoria-item,.resumen-item{background:#f5f5f5;border:1px solid #ccc}.fecha-jubilacion{background:#f0f8ff;border-color:var(--color-primary)}.moratoria-section{background:#fff8e1;border-color:#f59e0b}.haber-section{background:#e8f5e9;border-color:#10b981}.disclaimer{background:#fff;border:1px solid #ccc;border-left:4px solid #ef4444}.timeline-segment{-webkit-print-color-adjust:exact;print-color-adjust:exact}.jubilable-card{background:#e8f5e9;border-color:#10b981;-webkit-print-color-adjust:exact;print-color-adjust:exact}}