/* ==========================================================================
   poseidon_pedidos · Modal de pedido y botón flotante
   ========================================================================== */
.order-dialog{position:fixed;inset:0;margin:auto;background:#0b2533;color:var(--white);border:1px solid #486675;padding:40px 44px;width:min(570px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 25px 100px #0006}
.order-dialog::backdrop{background:#03111ddd;backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px)}
.order-dialog[open]{animation:p-dialog .4s var(--ease)}
@keyframes p-dialog{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.dialog-close{position:absolute;right:18px;top:18px;display:grid;place-items:center;width:34px;height:34px;border:1px solid #486472;border-radius:50%;transition:background .3s}
.dialog-close:hover{background:#17394a}
.dialog-close .p-icon{width:17px;height:17px}
.dialog-brand{display:flex;align-items:center;gap:10px;margin-bottom:38px;font-size:var(--fs-text);letter-spacing:1.8px;color:var(--aqua)}
.dialog-brand>span:last-child{font-size:var(--fs-text);margin-left:auto;letter-spacing:1.2px;padding-right:18px;color:var(--muted)}
.dialog-brand .p-icon{width:18px;height:18px}
.order-dialog .eyebrow{font-size:var(--fs-text);letter-spacing:1.8px;color:var(--aqua);margin-bottom:16px}
.order-dialog h2{font-size:var(--fs-h3);line-height:1;letter-spacing:-1.8px}
.order-dialog h2 span:focus{outline:none}
.dialog-description{font-size:var(--fs-text);line-height:1.9;color:var(--muted);margin:20px 0 24px}
.order-dialog form{display:flex;flex-direction:column;gap:16px}
.order-dialog label{display:flex;flex-direction:column;gap:7px;font-size:var(--fs-text);color:#d5e3e6}
.order-dialog input,.order-dialog select{display:block;width:100%;min-width:0;border:1px solid #496777;background:#09202e;color:var(--white);border-radius:0;padding:11px 12px;font-size:var(--fs-text);min-height:43px;color-scheme:dark}
.order-dialog input::placeholder{color:#97afb9}
.order-dialog select{cursor:pointer}
.order-dialog .form-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.order-dialog .form-note{font-size:var(--fs-text);color:#a2bac5;line-height:1.9;text-align:center}
.order-dialog .field-error{color:#ffbcb4;font-size:var(--fs-text);margin-top:-11px}
.order-dialog [aria-invalid="true"]{border-color:#efa79f}
.order-dialog form>.button{width:100%;margin-top:5px}
.order-summary{margin:27px 0;border-top:1px solid var(--line)}
.order-summary>div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:15px;padding:13px 0;border-bottom:1px solid var(--line);font-size:var(--fs-text)}
.order-summary dt{color:var(--muted)}
.order-summary dd{margin:0;text-align:right;overflow-wrap:anywhere}
.whatsapp-submit{display:flex;width:100%}
.edit-order{display:block;margin:20px auto;font-size:var(--fs-text);text-decoration:underline;text-underline-offset:4px}
.summary-view>.form-note{margin-top:22px}

/* Botón flotante ------------------------------------------------------------- */
.whatsapp-float{position:fixed;bottom:max(22px,env(safe-area-inset-bottom));left:22px;z-index:40;width:52px;height:52px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:#f0fffd;background:#185b52;border:1px solid #7ca89b;box-shadow:0 5px 25px #00141e40;transition:background .3s,transform .3s}
.whatsapp-float>.p-icon{width:29px;height:29px}
.whatsapp-float>span{position:absolute;left:65px;background:#102d36;white-space:nowrap;padding:8px 13px;font-size:var(--fs-text);border:1px solid #477176;border-radius:4px;opacity:0;visibility:hidden;transform:translateX(-5px);transition:opacity .3s,transform .3s}
.whatsapp-float:hover,.whatsapp-float:focus-visible{background:#22776a;transform:translateY(-3px)}
.whatsapp-float:hover>span,.whatsapp-float:focus-visible>span{opacity:1;visibility:visible;transform:none}
.whatsapp-float>i{position:absolute;right:1px;top:1px;width:9px;height:9px;background:#b1e7b9;border:2px solid #173a34;border-radius:50%}
.whatsapp-float.on-right{right:22px;left:auto}
.whatsapp-float.on-right>span{right:65px;left:auto}

@media(max-width:520px){
  .order-dialog{padding:30px 24px;max-height:calc(100svh - 24px)}
  .dialog-brand{margin-bottom:30px}
  .dialog-brand>span:last-child{display:none}
  .order-dialog .form-row{gap:12px}
  .order-dialog input,.order-dialog select{font-size:16px;padding:10px 8px}
  .order-summary>div{grid-template-columns:90px minmax(0,1fr)}
  .dialog-close{top:16px;right:16px}
  .whatsapp-float{width:49px;height:49px;left:17px;bottom:max(17px,env(safe-area-inset-bottom))}
  .whatsapp-float.on-right{right:17px;left:auto}
}
