/* YardMuster — web. Pensada para un teléfono, con guantes, a las 6 AM, con mala señal. */
:root{
  /* Paleta de ADEP como tema del cliente: negro #0A0C09, verdes #43AD12/#4CB81A, boton #2A7A0B, oscuro #1E6B05.
     Texto blanco sobre #1E6B05 = 6.65:1 (el color anterior daba 5.75:1): el contraste NO baja. */
  --negro:#0A0C09; --verde:#1E6B05; --verde-osc:#1E6B05; --verde-btn:#2A7A0B; --verde-vivo:#43AD12; --sobre-verde:#fff;
  --fondo:#F4F6F2; --papel:#fff; --tinta:#101410; --gris:#566052; --linea:#DCE2D8;
  --ok:#1E6B05; --alerta:#8A5600; --alerta-f:#FFF4E0; --malo:#9A2B22; --malo-f:#FDECEA;
  --radio:12px;
}
@media (prefers-color-scheme:dark){
  :root{ --verde:#4CB81A; --verde-osc:#6FD43A; --verde-btn:#4CB81A; --sobre-verde:#0A0C09;
    --fondo:#0E120D; --papel:#161C15; --tinta:#E8EEE5; --gris:#9BA896; --linea:#2A3326;
    --ok:#6FD43A; --alerta:#DEA84B; --alerta-f:#2A2214; --malo:#E88178; --malo-f:#2C1917; }
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%}
body{
  background:var(--fondo); color:var(--tinta);
  font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
  padding-env:0; padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);
}
#app{max-width:30rem;margin:0 auto;min-height:100%;display:flex;flex-direction:column}
.marca{
  background:var(--negro);padding:.2rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:.75rem;
}
.marca .m-ym{height:26px;width:auto;display:block}
.marca button{background:none;border:0;color:#fff;font:inherit;opacity:.9;padding:0 .5rem;min-height:32px;cursor:pointer}
.barra{
  background:var(--negro);color:#fff;padding:.4rem 1rem .45rem;border-top:1px solid #20271d;border-bottom:3px solid var(--verde-vivo);
  display:flex;justify-content:space-between;align-items:center;gap:.5rem;
  position:sticky;top:0;z-index:5;
}
.barra h1{font-size:1.0625rem;line-height:1.25;margin:0;font-weight:600}
.barra .m-adep{height:16px;width:auto;display:block;opacity:.92}  /* la empresa: aparte y mas chica que YardMuster */
.cuerpo{padding:1rem;display:flex;flex-direction:column;gap:1rem;flex:1}
label{display:block;font-size:.8125rem;color:var(--gris);margin-bottom:.3rem;font-weight:500}
input{
  width:100%;padding:.9rem;font-size:1.25rem;border:1px solid var(--linea);
  border-radius:var(--radio);background:var(--papel);color:var(--tinta);
  font-variant-numeric:tabular-nums;
}
input:focus{outline:2px solid var(--verde-btn);outline-offset:1px;border-color:var(--verde-btn)}
button.b{
  width:100%;padding:1rem;font-size:1.0625rem;font-weight:700;border:0;
  border-radius:var(--radio);background:var(--verde);color:var(--sobre-verde);cursor:pointer;
}
button.b:disabled{opacity:.5}
button.b.gigante{padding:1.7rem 1rem;font-size:1.5rem;letter-spacing:.06em}
button.b.fantasma{background:transparent;color:var(--verde-osc);border:1.5px solid var(--verde-btn);font-weight:600}
button.b.ok{background:var(--ok);color:var(--sobre-verde)}
.tarjeta{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:1rem}
.fila{display:flex;justify-content:space-between;align-items:baseline;padding:.55rem 0;border-bottom:1px solid var(--linea)}
.fila:last-child{border-bottom:0}
.fila .v{font-variant-numeric:tabular-nums;font-weight:600}
.fila.total{border-top:2px solid var(--linea);border-bottom:0;margin-top:.2rem;padding-top:.7rem}
.proy{
  width:100%;text-align:left;background:var(--papel);border:1.5px solid var(--linea);
  border-radius:var(--radio);padding:.9rem;display:flex;justify-content:space-between;
  gap:.75rem;align-items:center;font:inherit;color:inherit;cursor:pointer;
}
.proy[aria-pressed="true"]{border-color:var(--verde-btn);background:color-mix(in srgb,var(--verde-btn) 10%,transparent)}
.proy .m{font-variant-numeric:tabular-nums;color:var(--gris);font-size:.875rem;white-space:nowrap}
.aviso{background:var(--alerta-f);color:var(--tinta);border-left:4px solid var(--alerta);padding:.75rem .9rem;border-radius:0 8px 8px 0;font-size:.9375rem}
.error{background:var(--malo-f);color:var(--tinta);border-left:4px solid var(--malo);padding:.75rem .9rem;border-radius:0 8px 8px 0;font-size:.9375rem}
.reloj{font-size:3rem;font-weight:300;text-align:center;font-variant-numeric:tabular-nums;letter-spacing:-.02em;margin:.5rem 0}
.mini{font-size:.875rem;color:var(--gris)}
.foto{width:100%;border-radius:var(--radio);display:block;background:var(--linea);aspect-ratio:3/4;object-fit:cover}
.centro{text-align:center}
.marca-ok{font-size:3.5rem;color:var(--ok);text-align:center;line-height:1}
.cargando{text-align:center;color:var(--gris);padding:2rem}
.oculto{display:none!important}
/* Pantalla de ubicación obligatoria: pasos para dar el permiso */
details.ayuda{background:var(--papel);border:1px solid var(--linea);border-radius:var(--radio);padding:.2rem .9rem}
details.ayuda summary{cursor:pointer;font-weight:600;padding:.7rem 0;color:var(--verde-osc);list-style-position:inside}
.pasos{margin:.2rem 0 .6rem;padding-left:1.2rem}.pasos li{margin:.35rem 0}
