:root{
  --tuco-black:#111111;
  --tuco-white:#ffffff;
  --tuco-bg:#f6f6f6;
  --tuco-red:#e20d2c;
  --tuco-yellow:#ffde00;
  --tuco-pink:#ff4f87;
  --tuco-muted:#6b7280;
  --tuco-card:#ffffff;
  --tuco-border:rgba(17,17,17,.14);
  --radius:22px;
  --shadow:0 14px 40px rgba(17,17,17,.12);
}

*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  background:var(--tuco-bg);
  color:var(--tuco-black);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
}

.container{max-width:980px;margin:0 auto;padding:0 18px}

.topbar{
  background:var(--tuco-black);
  color:var(--tuco-white);
  font-size:13px;
  letter-spacing:.2px;
}
.topbar-inner{
  max-width:980px;margin:0 auto;padding:10px 18px;
  display:flex;gap:10px;align-items:center;flex-wrap:wrap;
}
.topbar-badge{
  background:var(--tuco-yellow);
  color:var(--tuco-black);
  padding:4px 10px;
  border-radius:999px;
  font-weight:800;
  letter-spacing:.8px;
  text-transform:uppercase;
}
.topbar-text{opacity:.92}

.header{
  background:linear-gradient(135deg, rgba(226,13,44,.08), rgba(255,79,135,.08));
  border-bottom:1px solid var(--tuco-border);
}
.header-inner{
  max-width:980px;margin:0 auto;padding:22px 18px;
  display:flex;align-items:flex-end;justify-content:space-between;gap:14px;flex-wrap:wrap;
}
.brand-logo{
  font-weight:900;
  font-size:44px;
  letter-spacing:-1px;
  color:var(--tuco-red);
  line-height:1;
  text-transform:lowercase;
}
.brand-tagline{
  margin-top:6px;
  font-size:12px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:rgba(17,17,17,.72);
}
.header-pill{
  padding:10px 14px;
  border-radius:999px;
  border:2px solid var(--tuco-black);
  font-weight:800;
  letter-spacing:.6px;
  text-transform:uppercase;
  background:var(--tuco-white);
}

.main{padding:22px 0 44px}

.hero{padding:10px 0 10px}
.hero-title{
  margin:0;
  font-size:34px;
  letter-spacing:-.4px;
}

.card{
  background:var(--tuco-card);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:18px;
  border:1px solid var(--tuco-border);
}

.form{margin:0}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
@media (max-width:760px){
  .form-grid{grid-template-columns:1fr}
}

.field{display:flex;flex-direction:column;gap:8px}
.label{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.7px;
  font-size:12px;
}
.input{
  height:48px;
  border-radius:16px;
  border:2px solid var(--tuco-black);
  padding:0 14px;
  font-size:16px;
  outline:none;
  background:var(--tuco-white);
}
.input:focus{
  border-color:var(--tuco-red);
  box-shadow:0 0 0 4px rgba(226,13,44,.12);
}

.actions{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-top:14px;
}
.btn{
  height:48px;
  padding:0 18px;
  border-radius:999px;
  border:0;
  cursor:pointer;
  background:var(--tuco-red);
  color:var(--tuco-white);
  font-weight:900;
  letter-spacing:.6px;
  text-transform:uppercase;
  box-shadow:0 10px 24px rgba(226,13,44,.25);
}
.btn:hover{filter:brightness(.95)}

.alert{
  margin:14px 0 0;
  border-radius:18px;
  padding:14px;
  border:1px solid var(--tuco-border);
  background:rgba(17,17,17,.03);
}
.alert-title{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.6px;
  margin-bottom:6px;
}
.alert ul{margin:0;padding-left:18px}
.alert-error{
  background:rgba(226,13,44,.06);
  border-color:rgba(226,13,44,.18);
}
.alert-body{color:rgba(17,17,17,.72);line-height:1.4}

/* Honeypot SIEMPRE oculto */
.tuco-honeypot{
  position:absolute !important;
  left:-10000px !important;
  top:-10000px !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Captcha */
.captcha-box{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  align-items:center;
  padding:10px;
  border-radius:18px;
  border:1px solid var(--tuco-border);
  background:linear-gradient(135deg, rgba(255,222,0,.14), rgba(255,79,135,.08));
}
.captcha-q{
  font-size:14px;
  color:rgba(17,17,17,.78);
}
.captcha-input{
  width:170px;
}

/* Zona resultados */
.results-zone{ margin-top:18px; }

.result-card{
  margin-top:16px;
  background:var(--tuco-white);
  border-radius:var(--radius);
  border:1px solid var(--tuco-border);
  box-shadow:var(--shadow);
  padding:18px;
}
.result-card:first-child{ margin-top:0; }

.result-title{
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.8px;
  margin-bottom:10px;
}

.order-list{
  border-radius:18px;
  border:1px solid var(--tuco-border);
  overflow:hidden;
  background:rgba(17,17,17,.02);
}
.order-head{
  display:grid;
  grid-template-columns:120px 170px 1fr 110px 210px;
  padding:12px;
  background:rgba(17,17,17,.05);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.6px;
  font-weight:900;
}
.order-row{
  display:grid;
  grid-template-columns:120px 170px 1fr 110px 210px;
  padding:12px;
  border-top:1px solid var(--tuco-border);
  align-items:center;
  background:linear-gradient(135deg, rgba(226,13,44,.04), rgba(255,79,135,.03));
}
.order-row:nth-child(even){
  background:linear-gradient(135deg, rgba(17,17,17,.02), rgba(255,222,0,.06));
}
.cell{min-width:0}
.cell-desc{color:rgba(17,17,17,.82);line-height:1.25}
.cell-cant{text-align:center}
@media (max-width:860px){
  .order-head{display:none}
  .order-row{
    grid-template-columns:1fr;
    gap:10px;
    padding:14px;
  }
  .cell-cant{text-align:left}
}

.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace}
.strong{font-weight:900}

.badge{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  border:2px solid var(--tuco-black);
  font-weight:900;
  font-size:12px;
  letter-spacing:.5px;
  background:var(--tuco-white);
}
.pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(226,13,44,.10);
  border:1px solid rgba(226,13,44,.22);
  font-weight:900;
}

/* Semana del... (contorno redondeado) */
.week{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(255,222,0,.20);
  border:2px solid var(--tuco-black);
  font-weight:900;
  color:rgba(17,17,17,.86);
  box-shadow:0 6px 18px rgba(17,17,17,.10);
}

.json-pre{
  margin:10px 0 0;
  padding:14px;
  border-radius:16px;
  background:rgba(17,17,17,.06);
  border:1px solid var(--tuco-border);
  overflow:auto;
  font-size:13px;
  line-height:1.45;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
}

.footer{
  border-top:1px solid var(--tuco-border);
  padding:18px 0;
  background:var(--tuco-white);
}
.footer-inner{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  color:rgba(17,17,17,.65);
  font-size:13px;
}
.footer-dot{opacity:.4}
