/* Fase 400 — cuenta de cliente (Ingresar / Crear cuenta / Mi cuenta). Usa las variables de la portada (--cb-acc, --card, --sup, --tx…). */
.cu-nav{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.cb-nav .cu-nav{margin-left:0}
.cu-dr{position:fixed;inset:0;z-index:85;display:flex;align-items:flex-end;justify-content:center}
.cu-dr[hidden]{display:none}
.cu-bg{position:absolute;inset:0;background:rgba(0,0,0,.72)}
.cu-box{position:relative;background:var(--card);color:var(--tx);width:min(100%,520px);max-height:92vh;overflow:auto;border-radius:22px 22px 0 0;padding:24px 18px calc(24px + env(safe-area-inset-bottom));border:1px solid rgba(255,255,255,.1);box-sizing:border-box}
.cu-box h3{font-family:var(--ft);font-size:32px;text-transform:uppercase;margin:0 0 6px}
.cu-box h4{font-family:var(--ft);font-size:16px;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2);margin:16px 0 4px}
.cu-x{position:absolute;top:8px;right:12px;background:none;border:0;color:var(--tx2);font-size:32px;line-height:1;cursor:pointer;padding:6px 10px}
.cu-mut{color:var(--tx2);font-size:14px;line-height:1.45;margin:6px 0 12px}.cu-sub{margin-top:14px;font-size:13px}.cu-sub a{color:var(--cb-acc)}
.cu-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:var(--sup);border-radius:12px;padding:5px;margin:4px 0 14px}
.cu-tabs button{background:none;border:0;color:var(--tx2);font-family:var(--ft);font-weight:800;font-size:16px;letter-spacing:.08em;text-transform:uppercase;padding:11px 6px;border-radius:9px;cursor:pointer}
.cu-tabs button.on{background:var(--cb-acc);color:var(--btn-tx)}
.cu-g{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:14px}
.cu-o{width:100%;display:flex;align-items:center;gap:10px;color:var(--tx2);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.cu-o:before,.cu-o:after{content:"";flex:1;height:1px;background:rgba(255,255,255,.14)}
.cu-form{display:flex;flex-direction:column;gap:12px}
.cu-form label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--tx2)}
.cu-form input{background:var(--sup);border:1.5px solid rgba(255,255,255,.12);color:var(--tx);border-radius:10px;padding:13px 12px;font-size:16px;font-family:inherit;width:100%;box-sizing:border-box}
.cu-form input:focus{border-color:var(--cb-acc);outline:0}
.cu-hp{position:absolute!important;left:-9999px;opacity:0;width:1px;height:1px}
.cu-go{width:100%;text-align:center;margin-top:2px}
.cu-err{background:rgba(255,93,93,.12);color:#ff8a8a;border:1px solid rgba(255,93,93,.35);border-radius:10px;padding:10px 12px;font-size:14px}.cu-err[hidden]{display:none}
.cu-lista{min-height:90px}
.cu-carga{color:var(--tx2);padding:18px 0;text-align:center}
.cu-it{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;border-bottom:1px dashed rgba(255,255,255,.12)}
.cu-it b{font-family:var(--ft);font-size:20px;letter-spacing:.02em}
.cu-it small{display:block;color:var(--tx2);font-size:13px;margin-top:2px}
.cu-st{color:var(--acc2,#FFC53D)!important;font-weight:700}.cu-st.st-confirmada,.cu-st.st-listo,.cu-st.st-entregado{color:#38D27A!important}.cu-st.st-cancelada,.cu-st.st-cancelado,.cu-st.st-no_vino{color:#ff8a8a!important}
.cu-lnk{background:none;border:0;color:var(--tx2);text-decoration:underline;cursor:pointer;font-size:14px;padding:4px 0;font-family:inherit;white-space:nowrap}.cu-lnk:hover{color:#ff8a8a}
.cu-salir{display:block;margin:22px auto 0;background:none;border:1.5px solid rgba(255,255,255,.25);color:var(--tx);border-radius:10px;padding:10px 18px;font-family:inherit;font-size:14px;cursor:pointer}
.cu-salir:hover{border-color:var(--cb-acc)}
.cu-lista .cb-btn{margin-top:6px}
/* aviso dentro del turnero / pedido para invitados */
.cu-hint{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:var(--tx2);background:var(--sup);border-radius:10px;padding:10px 12px}
.cu-hint button{background:none;border:0;color:var(--cb-acc);font-weight:700;text-decoration:underline;cursor:pointer;font-size:13px;padding:0;font-family:inherit}
.cu-hint.ok{color:#38D27A}
@media (min-width:700px){.cu-dr{align-items:center}.cu-box{border-radius:22px}}
@media (max-width:820px){.cb-nav .cu-nav{padding:8px 10px;font-size:13px;margin-left:0}}
@media (prefers-reduced-motion:reduce){.cu-tabs button{transition:none}}
/* Fase 404 — turnos: seña, comprobante, cambiar horario */
.cu-it-col{flex-direction:column;align-items:stretch;gap:8px}.cu-it-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.cu-pago{background:rgba(255,197,61,.1);border-radius:10px;padding:10px 12px;font-size:14px;color:var(--tx)}.cu-vence{color:var(--acc2,#FFC53D)!important}
.cu-acc{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}.cu-acc .cu-lnk{color:var(--acc2,#FFC53D)}
.cu-file{cursor:pointer;color:var(--acc2,#FFC53D)}
.cu-rep{background:var(--sup);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px}
.cu-rep label{display:flex;flex-direction:column;gap:5px;font-size:13px;color:var(--tx2)}
.cu-rep input[type=date]{background:var(--card);border:1.5px solid rgba(255,255,255,.12);color:var(--tx);border-radius:10px;padding:11px 12px;font-size:16px;font-family:inherit}
.cu-slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(86px,1fr));gap:8px}
.cu-slot{background:var(--card);border:2px solid transparent;color:var(--tx);border-radius:10px;padding:10px 6px;font-weight:800;font-size:16px;cursor:pointer;font-family:inherit}
.cu-slot small{display:block;font-weight:500;font-size:11px;color:var(--tx2);margin-top:2px}.cu-slot:hover,.cu-slot:focus{border-color:var(--cb-acc);outline:0}

