/* Diferenciación visual de los pasos de Nueva orden. */
#nueva .order-step,
#nueva .step-payment {
  position: relative;
  overflow: hidden;
  border-width: 1px 1px 1px 5px;
  box-shadow: 0 8px 22px rgba(30, 64, 175, .07);
}

#nueva .order-step::before,
#nueva .step-payment::before {
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
}

#nueva .order-step h2,
#nueva .step-payment h2 {
  display: flex;
  align-items: center;
  min-height: 37px;
  margin: -5px -5px 17px;
  padding: 9px 13px;
  border-radius: 9px;
  font-size: 17px;
  font-weight: 800;
}

#nueva .step-client {
  border-color: #60a5fa;
  background: linear-gradient(135deg, #eff6ff 0, #fff 36%);
}
#nueva .step-client::before { background: #3b82f6; }
#nueva .step-client h2 { background: #dbeafe; color: #1e40af; }

#nueva .step-items {
  border-color: #34d399;
  background: linear-gradient(135deg, #ecfdf5 0, #fff 36%);
}
#nueva .step-items::before { background: #10b981; }
#nueva .step-items h2 { background: #d1fae5; color: #065f46; }
#nueva .step-items #addItem { background: #059669; }
#nueva .step-items #addItem:hover { background: #047857; }

#nueva .step-delivery {
  border-color: #fbbf24;
  background: linear-gradient(135deg, #fffbeb 0, #fff 36%);
}
#nueva .step-delivery::before { background: #f59e0b; }
#nueva .step-delivery h2 { background: #fef3c7; color: #92400e; }

#nueva .step-payment {
  border-color: #a78bfa;
  background: linear-gradient(160deg, #f5f3ff 0, #fff 48%);
}
#nueva .step-payment::before { background: #7c3aed; }
#nueva .step-payment h2 { background: #ede9fe; color: #5b21b6; }
#nueva .step-payment .total {
  margin-top: 16px;
  padding: 15px 12px 4px;
  color: #5b21b6;
}
#nueva .step-payment .big {
  background: linear-gradient(135deg, #7c3aed, #2563eb);
  box-shadow: 0 7px 17px rgba(79, 70, 229, .25);
}
#nueva .step-payment .big:hover {
  background: linear-gradient(135deg, #6d28d9, #1d4ed8);
}

#nueva input:focus,
#nueva select:focus,
#nueva textarea:focus {
  background: #fff;
}

@media (max-width: 650px) {
  #nueva .order-step h2,
  #nueva .step-payment h2 { font-size: 16px; }
}

/* Módulo de comprobantes */
.docs-filters { display:grid; grid-template-columns:minmax(240px,1.4fr) 160px 190px 155px 155px; gap:10px; padding:14px; margin-bottom:12px; }
.docs-notice { margin:0 0 12px; padding:10px 13px; border-radius:9px; background:#eff6ff; color:#1e40af; }
.docs-notice:empty { display:none; }
.docs-table td { vertical-align:top; }
.doc-type { display:inline-block; min-width:68px; padding:5px 9px; border-radius:20px; font-size:11px; font-weight:800; text-align:center; }
.doc-type.ticket { background:#ede9fe; color:#6d28d9; }
.doc-type.boleta { background:#dcfce7; color:#15803d; }
.doc-type.factura { background:#fef3c7; color:#a16207; }
.doc-actions { display:flex; flex-wrap:wrap; gap:6px; max-width:470px; }
.doc-actions a,.doc-actions button { padding:7px 9px; border-radius:7px; font-size:11px; text-decoration:none; }
.doc-actions .xml { background:#e0f2fe; color:#075985; }
.doc-actions .signed { background:#dcfce7; color:#166534; }
.doc-actions .cdr { background:#fef3c7; color:#92400e; }
.doc-actions .wa { background:#dcfce7; color:#166534; }
.doc-actions .mail { background:#ede9fe; color:#5b21b6; }
@media(max-width:900px){.docs-filters{grid-template-columns:1fr 1fr}.docs-stats{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.docs-filters{grid-template-columns:1fr}}
.config-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.config-actions a{text-decoration:none}.backup-config-card{border-left:5px solid #7c3aed;background:linear-gradient(135deg,#f5f3ff,#fff 55%)}
#emitOverlay{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;background:rgba(15,23,42,.68);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:.2s}#emitOverlay.show{opacity:1;visibility:visible}.emit-card{width:min(390px,90vw);padding:30px 27px;text-align:center;background:#fff;border-radius:20px;box-shadow:0 25px 70px rgba(15,23,42,.32);transform:translateY(12px) scale(.97);transition:.25s}#emitOverlay.show .emit-card{transform:none}.emit-icon{font-size:38px;animation:emitFloat 1.3s ease-in-out infinite}.emit-spinner{width:54px;height:54px;margin:14px auto;border:5px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:emitSpin .8s linear infinite}.emit-card h2{margin:10px 0 7px;color:#172554}.emit-card p{margin:0 0 8px;color:#475569}.emit-card small{color:#94a3b8}.emit-progress{height:5px;margin-top:20px;overflow:hidden;border-radius:10px;background:#e2e8f0}.emit-progress i{display:block;width:45%;height:100%;border-radius:10px;background:linear-gradient(90deg,#2563eb,#7c3aed);animation:emitProgress 1.25s ease-in-out infinite}@keyframes emitSpin{to{transform:rotate(360deg)}}@keyframes emitFloat{50%{transform:translateY(-5px)}}@keyframes emitProgress{0%{transform:translateX(-110%)}100%{transform:translateX(245%)}}

.order-billing-status{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px;margin:14px 0 10px;padding:10px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px}.order-billing-status .soft{text-align:center;text-decoration:none}.order-billing-status small{grid-column:1/-1;color:#64748b;text-align:center}.detail-actions [data-close]{order:10}.detail-actions #printLabel{order:2}.detail-actions #sendWa{order:3}.detail-actions #readyWa{order:1}.detail-actions #scheduleDelivery{order:4}@media(max-width:520px){.order-billing-status{grid-template-columns:1fr}.order-billing-status small{grid-column:auto}}

#orderItems [data-remove-item]{width:32px;height:32px;padding:0;border:1px solid #dc2626;border-radius:7px;background:#ef4444;color:#fff;font-size:17px;font-weight:800;line-height:1;box-shadow:0 2px 6px rgba(220,38,38,.22);transition:.18s}#orderItems [data-remove-item]:hover{background:#b91c1c;border-color:#991b1b;transform:scale(1.06)}#orderItems [data-remove-item]:focus{outline:3px solid rgba(239,68,68,.2)}

.docs-top-actions{display:flex;gap:9px;align-items:center}.doc-actions .doc-view,.doc-actions .doc-pdf{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border:0;border-radius:8px;font-weight:750;text-decoration:none;white-space:nowrap}.doc-actions .doc-view{background:#dbeafe;color:#1d4ed8}.doc-actions .doc-view:hover{background:#bfdbfe}.doc-actions .doc-pdf{background:#fee2e2;color:#b91c1c}.doc-actions .doc-pdf:hover{background:#fecaca}.ticket-series-setting{grid-column:1/-1!important;padding:15px!important;border:2px solid #a78bfa!important;border-radius:12px!important;background:#f5f3ff!important}.ticket-series-setting b{font-size:16px;color:#5b21b6}.ticket-series-setting span{font-weight:700;color:#334155}.ticket-series-setting small{color:#6d28d9}@media(max-width:650px){.docs-top-actions{width:100%;justify-content:flex-end;flex-wrap:wrap}}

body>aside,.app{transition:transform .24s ease,margin-left .24s ease}.app>header{position:sticky}.app>header #menu{display:grid;width:38px;height:38px;margin-right:14px;padding:0;place-items:center;border:1px solid #dbe3ef;border-radius:9px;background:#f8fafc;color:#334155;font-size:20px}.top-orders{position:absolute;left:50%;transform:translateX(-50%);min-width:180px;padding:11px 24px;border:0;border-radius:9px;background:#21324c;color:#fff;font-size:15px;font-weight:800;box-shadow:0 3px 10px rgba(15,23,42,.14)}.top-orders:hover{background:#14233b}.sidebar-hidden>aside{transform:translateX(-100%)}.sidebar-hidden .app{margin-left:0}@media(max-width:650px){.top-orders{min-width:auto;padding:9px 13px;font-size:13px}.app>header>div:first-of-type{display:none}.app>header #menu{margin-right:6px}.sidebar-hidden>aside{transform:translateX(-100%)}}
.client-search-grid{display:grid;grid-template-columns:minmax(180px,230px) minmax(260px,1fr) auto;gap:10px;align-items:end}.client-search-grid label{margin:0}.client-search-grid button{min-height:43px}@media(max-width:760px){.client-search-grid{grid-template-columns:1fr}.client-search-grid button{width:100%}}
.mysql-status{display:inline-flex;align-items:center;padding:7px 11px;border-radius:18px;font-size:11px;font-weight:800;margin-left:8px}.mysql-status.loading,.mysql-status.saving{background:#fef3c7;color:#92400e}.mysql-status.ok{background:#dcfce7;color:#166534}.mysql-status.error{background:#fee2e2;color:#991b1b}#mysqlGuard{position:fixed;inset:0;z-index:99999;background:rgba(241,245,249,.96);display:grid;place-items:center;text-align:center}#mysqlGuard>div{display:grid;gap:10px;justify-items:center;background:#fff;border:1px solid #dbe3ef;border-radius:16px;padding:25px;box-shadow:0 18px 50px rgba(15,23,42,.14);min-width:280px}#mysqlGuard small{color:#64748b}.mysql-spinner{width:34px;height:34px;border:4px solid #bfdbfe;border-top-color:#2563eb;border-radius:50%;animation:mysqlSpin .75s linear infinite}.mysql-error button{border:0;border-radius:9px;background:#2563eb;color:#fff;padding:9px 14px;font-weight:800}@keyframes mysqlSpin{to{transform:rotate(360deg)}}
.manual-system-refresh{border:0;border-radius:9px;background:#e2e8f0;color:#334155;padding:8px 11px;margin-left:7px;font-size:11px;font-weight:800;cursor:pointer}.manual-system-refresh:hover{background:#cbd5e1}.manual-system-refresh:disabled{opacity:.65;cursor:wait}@media(max-width:760px){.mysql-status{display:none}.manual-system-refresh{padding:8px;font-size:0}.manual-system-refresh::first-letter{font-size:14px}}

.ticket-series-setting{display:none!important}
