:root{
  --verde:#24492a;--verde-2:#3d6b35;--salvia:#dfe7d6;--crema:#f6f3ec;--papel:#fbfaf6;
  --tinta:#1b2a1e;--gris:#5e6b60;--linea:#e3e0d6;--ambar:#c98a2b;--ambar-claro:#f6ead2;
  --serif:"Libre Caslon Text",Georgia,serif;--sans:"Figtree",system-ui,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--crema);color:var(--tinta);font:17px/1.6 var(--sans)}
a{color:var(--verde-2)}
:focus-visible{outline:3px solid var(--ambar);outline-offset:2px}
.cab{background:var(--papel);border-bottom:1px solid var(--linea)}
.cab div{max-width:1080px;margin:0 auto;padding:16px 24px;display:flex;align-items:center;gap:16px}
.cab b{font:700 1.3rem var(--serif);color:var(--verde)}
.cab a{margin-left:auto;font-size:.92rem}
main{max-width:1080px;margin:0 auto;padding:40px 24px 64px}
h1{font:400 clamp(2rem,4.4vw,3rem)/1.1 var(--serif);margin:0 0 10px}
.intro{font:400 1.15rem/1.55 var(--serif);color:var(--gris);max-width:62ch;margin:0 0 32px}
.panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
form{background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:26px}
fieldset{border:0;padding:0;margin:0 0 22px}
legend,label.t{font-weight:600;display:block;margin-bottom:8px}
.ayuda{font-size:.85rem;color:var(--gris);margin:4px 0 0}
.opciones{display:flex;flex-direction:column;gap:8px}
.opciones label{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1.5px solid var(--linea);border-radius:10px;background:#fff;cursor:pointer;font-size:.95rem;line-height:1.35}
.opciones label:has(input:checked){border-color:var(--verde-2);background:var(--salvia)}
.opciones input{margin-top:3px;accent-color:var(--verde)}
.opciones small{display:block;color:var(--gris)}
select,input[type=number]{width:100%;font:inherit;padding:10px 12px;border:1.5px solid var(--linea);border-radius:10px;background:#fff}
.fila{display:flex;gap:10px}
.fila>*{flex:1}
.check{display:flex;gap:10px;align-items:flex-start;font-size:.95rem}
.check input{margin-top:5px;accent-color:var(--verde)}
.res{position:sticky;top:20px}
.vacio{border:1.5px dashed var(--linea);border-radius:12px;padding:30px;color:var(--gris);text-align:center}
.cifra{background:var(--verde);color:#fff;border-radius:12px 12px 0 0;padding:22px 26px}
.cifra strong{font:700 3rem/1 var(--serif);display:block}
.cifra span{opacity:.9}
.datos{background:var(--papel);border:1px solid var(--linea);border-top:0;border-radius:0 0 12px 12px;padding:6px 26px 22px}
.dato{padding:14px 0;border-bottom:1px solid var(--linea)}
.dato:last-child{border-bottom:0}
.dato h3{font:700 .98rem var(--sans);margin:0 0 4px}
.dato p{margin:0;color:var(--gris);font-size:.95rem}
.ahora{display:inline-block;font-size:.78rem;font-weight:600;padding:2px 9px;border-radius:99px;margin-left:6px}
.ahora.si{background:var(--salvia);color:var(--verde)}
.ahora.no{background:var(--ambar-claro);color:#7a5414}
.aviso{background:var(--ambar-claro);border-radius:10px;padding:12px 16px;font-size:.92rem;margin-top:14px}
.btn{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:12px 22px;font:600 .95rem var(--sans);text-decoration:none;background:var(--verde);color:#fff;margin-top:16px}
.btn:hover{background:var(--verde-2)}
.fuentes{margin-top:44px;font-size:.88rem;color:var(--gris);border-top:1px solid var(--linea);padding-top:18px}
.fuentes h2{font:700 1rem var(--sans);color:var(--tinta);margin:0 0 6px}
.diag{background:var(--papel);border:1px solid var(--linea);border-radius:12px;padding:20px 24px;margin-bottom:14px}
.diag.top{border:2px solid var(--verde-2)}
.diag h3{font:400 1.35rem var(--serif);margin:0 0 4px}
.diag .prob{font-size:.82rem;font-weight:600;color:var(--verde-2)}
.diag p{margin:8px 0 0;color:var(--gris);font-size:.95rem}
.diag ul{margin:8px 0 0;padding-left:20px;color:var(--gris);font-size:.95rem}
@media (max-width:860px){.panel{grid-template-columns:1fr}.res{position:static}}
