/* El panel: misma paleta que la landing, más denso. */
.cabecera nav { display: flex; gap: 1.1rem; align-items: center; flex-wrap: wrap; }
.cabecera nav a, .cabecera .enlace { font: 500 .9rem/1 var(--cuerpo); color: var(--tinta); text-decoration: none; }
.cabecera nav a:hover { color: var(--marca); text-decoration: underline; }
.marca-nombre a { color: inherit; text-decoration: none; }
.globo-alertas { display: inline-block; min-width: 1.3rem; padding: .1rem .35rem; border-radius: 1rem; background: var(--marca); color: #fff; font: 700 .75rem/1.3 var(--mono); text-align: center; }
.panel { padding-top: 2rem; padding-bottom: 4rem; }
.panel h1 { font: 800 clamp(1.5rem, 3.5vw, 2.2rem)/1.15 var(--display); letter-spacing: -.02em; margin: 0 0 .8rem; }
.panel h2 { margin-top: 2rem; }
.formulario { max-width: 30rem; margin-top: 1rem; }
.formulario input[type="text"], .formulario input[type="email"], .formulario input[type="password"], .formulario input[type="url"] {
  width: 100%; padding: .7rem .8rem; font: 1rem var(--cuerpo); border: 2px solid var(--tinta); background: var(--blanco); color: var(--tinta); border-radius: 0; }
.en-linea { display: inline; }
.enlace { background: none; border: 0; padding: 0; color: var(--tinta); text-decoration: underline; cursor: pointer; font: inherit; }
.enlace:hover { color: var(--marca); }
.pequeno { padding: .4rem .8rem; font-size: .9rem; }
.acciones form { margin-right: .5rem; }
.botonera { display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; margin: 1rem 0; }
.boton-enlace { display: inline-block; padding: .8rem 1.4rem; border: 2px solid var(--tinta); color: var(--tinta); text-decoration: none; font-weight: 600; }
.boton-enlace:hover { background: var(--marca); border-color: var(--marca); color: var(--papel); }
.aviso-error { border-left: 4px solid var(--marca); background: var(--blanco); padding: .8rem 1rem; }
.aviso-ok { border-left: 4px solid var(--tinta); background: var(--blanco); padding: .8rem 1rem; }
.pagina-informe { margin: 1.5rem 0; }
.pagina-informe h3 { font: 500 .9rem/1.4 var(--mono); word-break: break-all; }
.hallazgos .ref { display: inline-block; margin-top: .4rem; font-size: .9rem; }
.marca-blanca { font: 800 1.1rem/1 var(--display); display: flex; align-items: center; gap: .5rem; margin: 0 0 1rem; }
.declaracion { background: var(--blanco); border: 1px solid var(--linea); padding: 1.5rem; margin: 1rem 0; }
.declaracion h1 { font-size: 1.6rem; }
.declaracion h2 { font-size: 1.15rem; margin-top: 1.4rem; }
pre { overflow-x: auto; background: var(--blanco); border: 1px solid var(--linea); padding: 1rem; font: .8rem/1.5 var(--mono); }
table { font-size: .95rem; }
.hallazgos .prueba { display: block; font-size: .92rem; margin-top: .3rem; }
.grafica { margin: 1rem 0; } .grafica svg { max-width: 100%; height: auto; display: block; }
.grafica figcaption { font-size: .9rem; color: var(--apagado); }
.diff-mal li { border-left: 3px solid var(--marca); padding-left: .6rem; margin-bottom: .3rem; list-style: none; }
.diff-bien li { border-left: 3px solid var(--tinta); padding-left: .6rem; margin-bottom: .3rem; list-style: none; }
.diff-mal, .diff-bien { padding-left: 0; }
.guia { margin: .4rem 0 0; font-size: .95rem; }
.enlace-publico { font: .85rem var(--mono); word-break: break-all; }
.pie-publico { margin-top: 3rem; border-top: 1px solid var(--linea); padding-top: 1rem; }
.panel .captura { margin-top: 1.5rem; }
.panel .aviso { margin-bottom: 1.5rem; }
.plan-actual { border-color: var(--tinta); border-width: 2px; }
.campo-casilla { display: grid; grid-template-columns: auto 1fr; gap: .6rem; align-items: start; }
.campo-casilla input { margin-top: .35rem; width: 1.15rem; height: 1.15rem; }
.campo-casilla label { font-weight: 400; }
.pedido { margin-bottom: 1.5rem; }
.peligro { background: var(--marca); border-color: var(--marca); }
.plan { list-style: none; padding: 0; counter-reset: paso; }
.plan li { position: relative; border-left: 4px solid var(--marca); background: var(--papel); padding: .9rem 1rem .9rem 3.1rem; margin-bottom: .6rem; counter-increment: paso; }
.plan li::before { content: counter(paso); position: absolute; left: .85rem; top: .95rem; width: 1.55rem; height: 1.55rem; background: var(--tinta); color: var(--papel); border-radius: 50%; display: flex; align-items: center; justify-content: center; font: 700 .85rem/1 var(--mono); }
.plan .titulo { display: block; font-weight: 600; } .plan .criterios, .plan .medida { display: block; margin-top: .2rem; }
.regla { margin: 1.4rem 0; padding-bottom: 1rem; border-bottom: 1px solid var(--linea); }
.regla h3 { font: 600 1.05rem/1.35 var(--cuerpo); margin: 0 0 .3rem; }
.regla .impacto { margin-right: .4rem; }
.elementos { margin: .4rem 0; } .elementos summary { cursor: pointer; font: 400 .85rem/1.5 var(--mono); word-break: break-all; }
.elementos ol { padding-left: 1.2rem; margin: .4rem 0; } .elementos li { margin-bottom: .4rem; }
.elementos code { display: block; font: .78rem/1.5 var(--mono); word-break: break-all; white-space: normal; }
.elementos code.html { color: var(--apagado); }
.estado-fallos td:nth-child(4) { color: var(--marca); }
.revisar li { margin-bottom: .4rem; }
.miniaturas { display: flex; gap: .6rem; flex-wrap: wrap; margin-top: .6rem; }
.miniaturas img { max-width: 48%; max-height: 14rem; border: 1px solid var(--linea); background: var(--blanco); object-fit: contain; }
.estado-regla { margin-top: .6rem; } .estado-regla summary { cursor: pointer; font: 500 .8rem/1.4 var(--mono); text-transform: uppercase; letter-spacing: .05em; color: var(--apagado); }
.formulario-corto { display: flex; gap: .5rem; align-items: end; flex-wrap: wrap; margin-top: .5rem; }
.formulario-corto label { font-size: .9rem; flex-basis: 100%; }
.formulario-corto input[type="text"] { flex: 1; min-width: 12rem; padding: .5rem .6rem; border: 2px solid var(--tinta); font: .95rem var(--cuerpo); }
