/* Añadidos de SkyDock sobre el diseño del prototipo */
body.booting .app, body.booting .login{visibility:hidden}

/* Acceso */
.login{position:fixed;inset:0;display:grid;place-items:center;background:var(--side);padding:16px;z-index:50}
.login[hidden]{display:none}
.lbox{background:var(--surface);color:var(--fg);width:min(400px,100%);padding:32px 30px;box-shadow:var(--shadow)}
.lbrand{margin-bottom:24px}
.lbrand .wm{font:500 34px/1 var(--display);text-transform:uppercase;color:var(--primary)}
.lbrand .sub{font:600 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-2);margin-top:6px}
.lbox .fld{display:grid;gap:6px;margin-bottom:14px}
.lbox input{border:1.5px solid var(--line-2);background:var(--surface);padding:11px 12px;border-radius:0}
.lbox input:focus{border-color:var(--primary);outline:none}
.lerr{color:var(--err-ink);font-weight:600;min-height:1.5em;margin:12px 0 0}

/* Ocho bandejas (se añade «Retenido») */
.trays{grid-template-columns:repeat(8,minmax(0,1fr))}
@media (max-width:1560px){.trays{grid-template-columns:repeat(4,minmax(0,1fr))}.tray{border-bottom:1px solid var(--line)}.tray:nth-child(4n){border-right:0}}
@media (max-width:640px){.trays{grid-template-columns:repeat(2,minmax(0,1fr))}.tray:nth-child(2n){border-right:0}}
.frow[hidden]{display:none}
.tray.crit .num{color:var(--err)}
.tray.crit{box-shadow:inset 0 4px 0 var(--err)}

/* Aviso de pedidos nuevos (como en Shopify) */
.newbar{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--primary);color:var(--on-primary);font-weight:600;padding:10px 16px;margin:0 0 16px;position:sticky;top:8px;z-index:5;box-shadow:var(--shadow)}
.newbar[hidden]{display:none}
.newbar:hover{background:var(--primary-hover)}
.newbar .go{text-decoration:underline;text-underline-offset:3px}

/* Alertas críticas (fraude) */
.alert.crit{border-color:var(--err);background:var(--err-tint);color:var(--err-ink)}
.alert.crit .ic{background:var(--err)}

/* Retenido */
.st.retenido{background:var(--err-tint);color:var(--err-ink)}
.holdbox{border:1.5px solid var(--err);background:var(--err-tint);color:var(--err-ink);padding:16px 18px;margin-bottom:14px}
.holdbox.soft{border-color:var(--orange);background:var(--orange-3);color:var(--orange-ink)}
.holdbox h3{font-size:18px;margin-bottom:6px}
.holdbox p{margin:6px 0}
.holdbox ul{margin:6px 0 0;padding-left:18px}
.holdbox textarea{width:100%;min-height:70px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--fg);padding:8px 10px;margin:8px 0}
.holdbox .acts{display:flex;gap:10px;flex-wrap:wrap}
.flag.risk{background:var(--orange-3);color:var(--orange-ink)}

/* Búsqueda en todo el histórico */
.searchall{margin-top:10px;font-size:13px}
.searchall[hidden]{display:none}

/* Monitor */
.mon{display:grid;gap:16px}
.mon table{width:100%;border-collapse:collapse;background:var(--surface)}
.mon th,.mon td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:top}
.mon th{font:600 11px/1.3 var(--sans);text-transform:uppercase;letter-spacing:.1em;color:var(--fg-2)}
.okdot,.kodot{display:inline-block;width:9px;height:9px;margin-right:6px}
.okdot{background:var(--green)}.kodot{background:var(--err)}
.s-retenido{--stc:var(--err)}
