.cv-editor label { display:block; font-size:.875rem; font-weight:600; margin:.8rem 0 .3rem; color:#334155; }
.cv-editor input,.cv-editor textarea,.cv-editor select { display:block; width:100%; padding:.65rem; border:1px solid #94a3b8; border-radius:.5rem; background:white; color:#0f172a; font-size:1rem; }
.cv-editor button { min-height:44px; padding:.5rem .8rem; margin:.5rem .5rem .5rem 0; border:1px solid #0284c7; border-radius:.5rem; color:#075985; font-weight:600; background:#f0f9ff; }
.cv-editor :focus-visible { outline:3px solid #0284c7; outline-offset:2px; }
.cv-editor fieldset { min-width:0; padding:1rem; border:1px solid #cbd5e1; border-radius:.75rem; margin:1rem 0; }
.cv-editor legend,.cv-editor h3 { font-weight:700; color:#0f172a; }
.cv-editor section { margin:1.5rem 0; }
#cv-status { display:block; margin:1rem 0; padding:.75rem; background:#f0f9ff; color:#075985; font-size:.875rem; }
#cv-sheet,#europass-sheet { overflow-wrap:anywhere; min-width:0; }
#europass-sheet table { table-layout:fixed; }
#europass-sheet th,#europass-sheet td { padding-right:.4rem; overflow-wrap:anywhere; }
#europass-sheet [hidden] { display:none !important; }
@media (max-width:640px) { #europass-sheet > div:first-child { flex-direction:column; gap:1rem; } #europass-sheet > div:first-child > div { text-align:left; } }
@media (min-width:1024px) { #col-formulario { display:block !important; } }
@media print {
    @page { size:A4; margin:15mm; }
    /* Keep only the document and its ancestor chain in normal page flow. */
    body *:not(:has(#cv-sheet)):not(:has(#europass-sheet)):not(#cv-sheet):not(#cv-sheet *):not(#europass-sheet):not(#europass-sheet *) { display:none !important; }
    body *:has(#cv-sheet),body *:has(#europass-sheet) { display:block !important; position:static !important; width:100% !important; max-width:none !important; padding:0 !important; margin:0 !important; overflow:visible !important; }
    #cv-sheet,#europass-sheet { display:block !important; position:static !important; width:100% !important; padding:0 !important; margin:0 !important; border:0 !important; box-shadow:none !important; border-radius:0 !important; color:#0f172a !important; background:white !important; }
    #cv-sheet *,#europass-sheet * { visibility:visible !important; }
    #cv-sheet h3,#cv-sheet h4,#europass-sheet h3,#europass-sheet h4 { break-after:avoid; }
    #cv-sheet p,#europass-sheet p { orphans:3; widows:3; }
    #cv-sheet .page-break-avoid { break-inside:auto; }
    #europass-sheet thead { display:table-header-group; }
    #europass-sheet tr { break-inside:avoid; }
}
