
/* LETO v1.1.11.27 — start-of-visit order type + location gate */
body.leto-order-gate-open{overflow:hidden!important}
.leto-order-gate{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:20px}
.leto-order-gate.is-open{display:flex}
.leto-order-gate-backdrop{position:absolute;inset:0;background:rgba(16,34,48,.60);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}
.leto-order-gate-dialog{position:relative;z-index:1;width:min(100%,650px);max-height:calc(100vh - 32px);overflow:auto;background:#fff;border-radius:26px;padding:28px 32px 30px;box-shadow:0 28px 80px rgba(7,34,52,.28);text-align:center;color:var(--leto11-dark,#153a59);outline:none}
.leto-order-gate-brand{display:flex;justify-content:center;margin-bottom:12px}
.leto-order-gate-brand img{display:block;width:112px;max-height:64px;object-fit:contain}
.leto-order-gate h2{margin:8px 0 18px;font-family:'DM Sans',sans-serif;font-size:clamp(24px,4vw,32px);line-height:1.15;font-weight:700;color:var(--leto11-dark,#153a59)}
.leto-order-gate h3{margin:28px 0 14px;font-family:'DM Sans',sans-serif;font-size:20px;line-height:1.25;font-weight:700;color:#2c3338}
.leto-order-type-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:500px;margin:0 auto}
.leto-order-type-tabs button{appearance:none;border:1.5px solid #d8dde2;background:#fff;color:#374151;border-radius:999px;min-height:54px;padding:10px 14px;font:700 17px/1 'DM Sans',sans-serif;cursor:pointer;transition:.18s ease}
.leto-order-type-tabs button:hover{border-color:var(--leto11-dark,#153a59);color:var(--leto11-dark,#153a59)}
.leto-order-type-tabs button.is-active{background:var(--leto11-dark,#153a59);border-color:var(--leto11-dark,#153a59);color:#fff;box-shadow:0 8px 18px rgba(21,58,89,.16)}
.leto-use-current-location{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:52px;border:1.5px solid #d9dee4;background:#f7f8f9;color:#344054;border-radius:999px;padding:10px 24px;font:650 16px/1.2 'DM Sans',sans-serif;cursor:pointer;transition:.18s ease}
.leto-use-current-location:hover{border-color:var(--leto11-dark,#153a59);background:var(--leto11-light-2,#eaf5fb)}
.leto-use-current-location.is-loading{opacity:.65;pointer-events:none}
.leto-location-target{font-size:24px;line-height:1;color:var(--leto11-dark,#153a59)}
.leto-order-location-field{text-align:left;margin-top:22px}
.leto-order-location-field label{display:block;margin:0 0 9px 3px;font:700 15px/1.2 'DM Sans',sans-serif;color:#2c3338}
.leto-order-location-field select{display:block;width:100%;min-height:62px;border:1.5px solid #cfd5dc;border-radius:16px;background:#fff;color:#344054;padding:0 48px 0 18px;font:500 16px/1.25 'DM Sans',sans-serif;box-shadow:none;outline:none;cursor:pointer}
.leto-order-location-field select:focus{border-color:var(--leto11-dark,#153a59);box-shadow:0 0 0 3px rgba(21,58,89,.10)}
.leto-order-gate-status{min-height:22px;margin:10px 0 0;font:600 13px/1.45 'DM Sans',sans-serif;color:#526170}
.leto-order-gate-status.is-error{color:#a12a2a}
.leto-order-gate-status.is-success{color:#1e6a48}
.leto-order-gate-submit{appearance:none;width:100%;min-height:58px;border:0;border-radius:16px;background:var(--leto11-dark,#153a59);color:#fff;font:800 16px/1 'DM Sans',sans-serif;letter-spacing:.03em;cursor:pointer;transition:.18s ease;margin-top:4px}
.leto-order-gate-submit:hover:not(:disabled){background:var(--leto11-dark-2,#0f3049);transform:translateY(-1px)}
.leto-order-gate-submit:disabled{background:#d5d7d9;color:#8a8e92;cursor:not-allowed}
.leto-order-gate-note{margin:12px 8px 0;font:500 12px/1.45 'DM Sans',sans-serif;color:#7a8490}
[data-leto-open-order-panel]{cursor:pointer}
@media(max-width:640px){
 .leto-order-gate{padding:12px}
 .leto-order-gate-dialog{width:100%;border-radius:22px;padding:22px 16px 20px;max-height:calc(100dvh - 24px)}
 .leto-order-gate-brand img{width:96px}
 .leto-order-gate h2{font-size:24px;margin-bottom:15px}
 .leto-order-type-tabs{gap:7px}
 .leto-order-type-tabs button{min-height:47px;padding:8px 8px;font-size:14px}
 .leto-order-gate h3{font-size:18px;margin-top:22px}
 .leto-use-current-location{min-height:48px;font-size:14px;padding:9px 18px}
 .leto-order-location-field{margin-top:17px}
 .leto-order-location-field select{min-height:56px;font-size:14px;padding-left:14px}
 .leto-order-gate-submit{min-height:54px}
}
