/* coti · sistema de marca de ENDE (references/brand-system.md del skill ende-proposal).
   Los valores son los oficiales, no aproximaciones. Móvil primero: JD revisa en el celular. */
:root{
  --tinta:#111111; --crema:#f4f2ec; --papel:#ffffff; --naranja:#F39325;
  --gris:#555555; --gris-claro:#888888; --linea:#d8d4c8;
  --verde:#3AAA35; --rojo:#d62828;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --sans:'DM Sans',system-ui,sans-serif;
}
*{box-sizing:border-box}
body{margin:0;font-family:var(--sans);background:var(--crema);
     color:var(--tinta);font-size:15px;line-height:1.45}
a{color:inherit}
h1,h2,h3{margin:0 0 .5rem}
.marca{display:flex;align-items:center;gap:.5rem;text-decoration:none}
.marca img{height:13px;width:auto;display:block}
.marca span{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
     color:var(--crema);opacity:.7}

/* barra */
.barra{display:flex;align-items:center;gap:1rem;padding:.7rem 1rem;background:var(--tinta);
       color:var(--crema);flex-wrap:wrap;position:sticky;top:0;z-index:5}
.barra .marca{color:var(--naranja)}
.barra nav{display:flex;gap:1rem;flex:1}
.barra nav a{text-decoration:none;opacity:.75;font-size:.9rem}
.barra nav a.on,.barra nav a:hover{opacity:1;border-bottom:2px solid var(--naranja)}
.quien{font-size:.8rem;opacity:.65}
main{padding:1rem;max-width:1180px;margin:0 auto}

/* piezas */
.tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:10px;padding:1.1rem;
         margin-bottom:1rem}
.angosta{max-width:420px}
.centrado{display:grid;place-items:center;min-height:100vh}
.entrada{width:min(360px,92vw);text-align:center}
.entrada img.logo{height:26px;width:auto;margin:0 auto .6rem;display:block}
.sub{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;
   color:var(--gris);margin:0 0 .4rem}
label{display:block;text-align:left;margin:.7rem 0;font-family:var(--mono);font-size:10px;
   letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
input,select,textarea{width:100%;padding:.55rem .65rem;border:1px solid var(--linea);
      border-radius:7px;font:inherit;background:var(--papel);color:var(--tinta);margin-top:.25rem}
textarea{min-height:5.5rem;resize:vertical}
button,.boton{background:var(--tinta);color:var(--crema);border:0;border-radius:7px;
      padding:.6rem 1.1rem;font:inherit;font-weight:500;cursor:pointer;text-decoration:none;
      display:inline-block}
button:hover,.boton:hover{background:var(--naranja);color:var(--tinta)}
.boton.suave{background:transparent;color:var(--tinta);border:1px solid var(--linea)}
.error{color:var(--rojo);font-size:.85rem}
.aviso{color:var(--verde);font-size:.85rem}

/* filtros y listas */
.filtros{display:flex;gap:.6rem;flex-wrap:wrap;align-items:flex-end}
.filtros label{margin:0;flex:1 1 130px}
.filtros button{margin-top:.25rem}
table{width:100%;border-collapse:collapse;font-size:.88rem}
th{text-align:left;font-family:var(--mono);font-size:10px;text-transform:uppercase;
   letter-spacing:.16em;color:var(--gris);border-bottom:1px solid var(--linea);
   padding:.5rem .4rem;font-weight:500}
td{padding:.5rem .4rem;border-bottom:1px solid var(--linea);vertical-align:top}
tbody tr:hover{background:var(--crema)}
.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pastilla{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.14em;
   padding:.2rem .5rem;border-radius:20px;border:1px solid var(--linea);white-space:nowrap}
.e-aceptada{background:#EAF5E9;border-color:#C2E2C0;color:#2E8A2A}
.e-rechazada{background:#FBEAEA;border-color:#F0C9C9;color:var(--rojo)}
.e-enviada{background:#FDF0DE;border-color:#F6D9AE;color:#9A5B10}
.e-borrador{color:var(--gris-claro)}
.totales{display:flex;gap:1.4rem;flex-wrap:wrap;margin:.2rem 0 1rem;font-size:.85rem;color:var(--gris)}
.totales b{font-weight:700;font-size:1.35rem;color:var(--tinta);display:block;
   letter-spacing:-.04em;margin-top:.15rem}

/* editor */
.dos{display:grid;grid-template-columns:1fr;gap:1rem}
@media(min-width:960px){.dos{grid-template-columns:1fr 340px}}
.linea{border:1px solid var(--linea);border-radius:9px;padding:.8rem;margin-bottom:.7rem;
   background:var(--papel)}
.linea .fila{display:flex;gap:.6rem;flex-wrap:wrap}
.linea .fila label{flex:1 1 110px;margin:.35rem 0}
.quitar{background:transparent;color:var(--rojo);border:0;padding:.2rem;cursor:pointer;font-size:.8rem}
.cierre{display:flex;justify-content:flex-end;gap:1.6rem;font-size:.9rem;padding:.6rem 0}
.cierre b{font-weight:700;font-size:1.4rem;letter-spacing:-.04em}
.precedentes{font-size:.82rem}
.precedentes .p{border-bottom:1px solid var(--linea);padding:.5rem 0}
.precedentes .p small{color:var(--gris)}
.pegajoso{position:sticky;top:4.2rem}

/* PDF */
@media print{
  .barra,.noimp{display:none!important}
  body{background:#fff;font-size:11pt}
  main{padding:0;max-width:none}
  .tarjeta{border:0;padding:0}
}

/* hoja imprimible */
.hoja{background:var(--crema)}
.acciones{max-width:820px;margin:1rem auto;padding:0 1rem;display:flex;gap:.6rem}
.doc{max-width:820px;margin:0 auto 3rem;background:var(--papel);padding:2rem;
     border:1px solid var(--linea);border-radius:10px}
.doc-top{display:flex;justify-content:space-between;align-items:flex-start;
     border-bottom:2px solid var(--tinta);padding-bottom:.8rem;margin-bottom:1.2rem}
.doc-top img.logo{height:18px;width:auto;display:block;margin-bottom:.35rem}
.doc-top .der{text-align:right}
.datos{width:100%;margin-bottom:1.4rem;font-size:.9rem}
.datos th{width:120px;font-family:var(--mono);font-size:10px;letter-spacing:.16em;
     text-transform:uppercase;color:var(--gris);font-weight:500;border:0;padding:.3rem 0}
.datos td{border:0;padding:.2rem 0}
.items th{border-bottom:1px solid var(--tinta)}
.items .desc{color:var(--gris);font-size:.85rem;margin-top:.3rem;white-space:pre-line}
.items tfoot th{border:0;border-top:1px solid var(--linea);text-transform:none;letter-spacing:0;
     font-size:.9rem;color:var(--tinta);font-weight:500}
.items tfoot td{border:0;border-top:1px solid var(--linea);font-weight:500}
.items tfoot .gran th,.items tfoot .gran td{font-weight:700;font-size:1.2rem;
     letter-spacing:-.03em;border-top:2px solid var(--tinta)}
.nota{font-size:.85rem;color:var(--gris);margin-top:1.2rem;white-space:pre-line}
.firma{margin-top:2.4rem;padding-top:.8rem;border-top:1px solid var(--linea);
     font-size:.82rem;color:var(--gris);line-height:1.7}
.firma .cargo{font-style:italic;color:var(--naranja)}
.doc-top .der{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.doc-top .der b{font-size:12px;letter-spacing:.14em}
@media print{.doc{border:0;padding:0;margin:0;max-width:none}.hoja{background:#fff}}

/* aviso mientras Zoho siga siendo la fuente */
.zoho{border-left:3px solid var(--naranja);font-size:.88rem;padding:.8rem 1rem;margin-bottom:1rem}
