:root{--navy:#0C2340;--red:#E4002B;--blue:#2C5697;--bg:#f3f5f9;--ink:#1c2433;--line:#d9dfea;--mut:#5b667a;--lt:#9db4d9}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
.cab{background:#fff;border-top:6px solid var(--navy);border-bottom:3px solid var(--red)}
.cab-in{max-width:920px;margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:16px}
.cab img{height:72px;width:auto;flex:none}
.cab small{color:var(--mut);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}
h1{font:700 1.5rem/1.2 Georgia,"Times New Roman",serif;margin:.15em 0 0;color:var(--navy)}
h2{font:700 1.2rem/1.3 Georgia,serif;color:var(--navy);margin:0 0 .6em}
h3{font:700 1rem system-ui,sans-serif;color:var(--blue);margin:1.2em 0 .4em}
main{max-width:920px;margin:0 auto;padding:12px 16px 32px}
.curso{color:var(--mut);margin:.8em 0 0}
section,.card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px;margin:16px 0}
section>h2[data-s]:before{content:attr(data-s);background:var(--red);color:#fff;border-radius:6px;padding:1px 9px;margin-right:10px;font:700 1rem system-ui}
label{display:block;margin:.7em 0 .2em;font-weight:600}
input[type=text],input[type=email],input[type=password],textarea{width:100%;padding:10px;border:1px solid #aab4c6;border-radius:6px;font:inherit;background:#fff}
input:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:1px}
fieldset.q,.q{border:0;border-top:1px solid var(--line);padding:14px 0 4px;margin:10px 0 0;min-width:0}
fieldset.q legend{padding:0;font-weight:400;float:left;width:100%;margin-bottom:6px}
fieldset.q legend+*{clear:both}
.q.falta{background:#fff4f6;border-left:5px solid var(--red);padding-left:12px;border-radius:4px}
.o{font-weight:400;margin:.25em 0;display:flex;gap:10px;align-items:flex-start;padding:8px 10px;border:1px solid transparent;border-radius:8px;cursor:pointer}
.o:hover{background:#f1f5fb}.o input{margin-top:.35em;accent-color:var(--blue);flex:none}
.o:has(input:checked){background:#e7eefb;border-color:var(--blue)}
.nose{color:var(--mut);font-style:italic}
.prog{position:sticky;top:0;z-index:5;background:var(--navy);color:#fff;padding:7px 14px;border-radius:0 0 8px 8px;font-size:.9rem;font-weight:600;
  background-image:linear-gradient(90deg,var(--red) var(--p,0%),transparent var(--p,0%))}
table{width:100%;border-collapse:collapse}th,td{padding:7px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;font-size:.93rem}
button,.btn{background:var(--red);color:#fff;border:0;border-radius:8px;padding:12px 22px;font:700 1rem system-ui,sans-serif;cursor:pointer;text-decoration:none;display:inline-block}
button:hover,.btn:hover{filter:brightness(1.1)}
.mini{padding:4px 10px;background:#5b667a;font-size:.8rem}
.lnk{margin-left:10px;color:var(--blue);font-weight:600}
.err{background:#fdecef;border:1px solid var(--red);padding:10px 16px;border-radius:8px;margin:12px 0}
.hp{position:absolute;left:-9999px}
.kpi{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}
.kpi div{flex:1;min-width:170px;background:var(--navy);color:#fff;border-radius:10px;padding:14px;font-size:.9rem}
.kpi b{font:700 1.9rem Georgia,serif;display:block}
.row{display:grid;grid-template-columns:minmax(120px,34%) 1fr 56px;gap:10px;align-items:center;margin:6px 0;font-size:.92rem}
.row b{text-align:right}
.row2{display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:10px;align-items:center;margin:10px 0;font-size:.92rem}
.cmp{display:grid;grid-template-columns:1fr 48px;gap:8px;align-items:center;margin:2px 0}.cmp b{text-align:right}
.bar{background:#e8ecf4;border-radius:5px;height:18px;overflow:hidden}.bar i{display:block;height:100%}
.ok{background:var(--blue)}.low{background:var(--red)}.mid{background:#d99a00}.s-d{background:var(--lt)}
.lg span{margin-right:16px;font-size:.85rem}.lg i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:middle;margin-right:5px}
.al{border-left:5px solid var(--red);background:#fff4f6;padding:8px 12px;margin:8px 0;border-radius:4px}
.mut{color:var(--mut);font-size:.88rem;font-weight:400}.det{margin:0 0 10px 2%}
.chip{display:inline-block;border-radius:20px;padding:1px 10px;font-size:.8rem;font-weight:700;color:#fff}
.chip.low{background:var(--red)}.chip.mid{background:#b17d00}.chip.ok{background:var(--blue)}
.pos{color:var(--blue);font-weight:700}.neg{color:var(--red);font-weight:700}
.menu{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
details{margin:8px 0}summary{cursor:pointer;color:var(--blue);font-weight:600}
code{background:#eef1f7;padding:1px 5px;border-radius:4px}
.pie{text-align:center;color:var(--mut);font-size:.8rem;padding:18px}
@media (max-width:560px){.cab img{height:56px;width:auto}h1{font-size:1.2rem}.row{grid-template-columns:1fr 48px}.row>span{grid-column:1/-1}.row .bar{grid-column:1}.row2{grid-template-columns:1fr}}
@media print{.cab img{height:48px}.np,.prog{display:none}section,.card{break-inside:avoid}body{background:#fff}}
