/* Diseño de la utilidad, aislado de la plantilla IA.Babel */
[hidden]{display:none!important}
#spinner{pointer-events:none}#spinner:not(.show){display:none}
.sticky-top{background:var(--primary,#1363c6)}
.hero-header h1{overflow-wrap:break-word}
#enobras .hero{background:#f4f7fe;padding:50px 20px;text-align:center}
#im_salir{margin-bottom:28px}
#cuerpo{color:#555;max-width:1140px}
#cuerpo header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;flex-wrap:wrap}
#cuerpo header h1{font-size:clamp(26px,4vw,40px);margin-bottom:10px}
#cuerpo header p{margin:0}
#cuerpo .badge{background:#eef5ff;color:var(--primary,#1363c6);border:1px solid #dbe8fb;padding:12px 16px;border-radius:50px;white-space:normal;line-height:1.5}
#cuerpo .intro{margin-bottom:28px}
#cuerpo .layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:30px;align-items:start}
#cuerpo .card{background:#fff;border:1px solid #dfe7f2;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #10294b08;min-width:0}
#cuerpo .bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between;padding:20px;background:#f4f7fe;border-bottom:1px solid #dfe7f2}
#cuerpo .file-label,#cuerpo .primary,#cuerpo .download{display:inline-block;position:relative;background:var(--primary,#1363c6);color:white;border:0;border-radius:50px;padding:12px 23px;cursor:pointer;font-weight:600;text-align:center}
#cuerpo .file-label:hover,#cuerpo .primary:hover,#cuerpo .download:hover{background:#0e4e9e}
#cuerpo .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
#cuerpo .file-label:focus-within{outline:3px solid #79baff;outline-offset:3px}
#cuerpo .zoom{max-width:100%;border:1px solid #d7e1ee;border-radius:6px;padding:9px;background:white;color:#555}
#cuerpo .canvas{height:410px;overflow:auto;display:flex;align-items:center;justify-content:center;background:#f7f9fc}
#cuerpo .canvas:not(.fit){display:block}
#cuerpo .canvas img{max-width:none;flex:none}
#cuerpo .canvas.fit img{max-width:100%;max-height:100%;object-fit:contain}
#cuerpo .empty{text-align:center;padding:28px;color:#78869a;line-height:1.8}
#cuerpo .empty svg{display:block;margin:0 auto 18px;stroke:var(--primary,#1363c6)}
#cuerpo .empty strong{display:block;color:#243652}
#cuerpo .meta{padding:16px 20px;font-size:13px;border-top:1px solid #dfe7f2;overflow-wrap:anywhere}
#cuerpo .tabs{display:flex;background:#f4f7fe;border-bottom:1px solid #dfe7f2}
#cuerpo .tabs button{flex:1;border:0;border-bottom:3px solid transparent;padding:18px 10px;background:transparent;color:#61708a;font-weight:600}
#cuerpo .tabs button[aria-selected=true]{color:var(--primary,#1363c6);border-bottom-color:var(--primary,#1363c6);background:white}
#cuerpo .pane{padding:26px}
#cuerpo h2{font-size:23px;line-height:1.3}
#cuerpo .pane p{font-size:14px;line-height:1.7}
#cuerpo .pane label:not(.check){display:block;margin:16px 0 7px;font-weight:600;color:#263c59;font-size:14px}
#cuerpo .pane input:not([type=checkbox]){width:100%;min-width:0;padding:11px 12px;border:1px solid #d7e1ee;border-radius:7px;background:white;color:#263c59}
#cuerpo .pane input[type=file]{font-size:13px}
#cuerpo .check{display:flex;gap:9px;align-items:center;margin:15px 0;font-size:14px}
#cuerpo input:focus,#cuerpo select:focus,#cuerpo button:focus-visible{outline:3px solid #b8d7ff;outline-offset:2px}
#cuerpo .hint{color:#78869a;font-size:12px!important}
#cuerpo .primary{width:100%;margin-top:8px}
#cuerpo .status{padding:18px;margin-top:20px;border:1px solid #d7e1ee;background:#f4f7fe;border-radius:8px}
#cuerpo .download{margin-top:16px}
#cuerpo details{margin:28px 0;padding:22px;background:#f4f7fe;border-radius:10px;font-size:14px;line-height:1.8}
#cuerpo summary{cursor:pointer;color:#203654;font-weight:600}
#cuerpo details[open] summary{margin-bottom:16px}
#cuerpo footer{font-size:13px;text-align:center;color:#78869a;padding:8px 0 15px}
@media(max-width:767px){#cuerpo .layout{grid-template-columns:1fr}#cuerpo .pane{padding:20px}#cuerpo .canvas{height:300px}#cuerpo header{gap:16px}.hero-header .display-4{font-size:36px}.hero-header img{max-height:180px!important}}

#cuerpo .status.error{background:#fff0ee;color:#953a2c;border-color:#f0c7c0}
#cuerpo .status,#cuerpo .meta{white-space:pre-line}
#cuerpo button:disabled,#cuerpo input:disabled,#cuerpo select:disabled{opacity:.55;cursor:wait}
#cuerpo .download{overflow-wrap:anywhere;max-width:100%}
