/* DistriApp · geolocalización automática y guiada V2 */
#distriapp-geo-status{position:fixed;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));z-index:2140;display:flex;box-shadow:0 6px 22px rgba(0,0,0,.18);border-radius:999px;background:#fff;overflow:hidden;font:600 13px system-ui,-apple-system,"Segoe UI",sans-serif}
.dgeo-main,.dgeo-end{border:0;background:#fff;padding:9px 12px;display:flex;align-items:center;gap:7px;color:inherit;cursor:pointer}.dgeo-end{border-left:1px solid #eee;color:#b91c1c}.dgeo-active .dgeo-main{color:#198754}.dgeo-warning .dgeo-main{color:#b45309}.dgeo-danger .dgeo-main{color:#dc3545}.dgeo-muted .dgeo-main{color:#6c757d}
#distriapp-geo-banner{position:fixed;left:50%;bottom:max(72px,calc(env(safe-area-inset-bottom) + 72px));transform:translateX(-50%);z-index:2150;width:min(94vw,620px);background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:18px;box-shadow:0 16px 45px rgba(0,0,0,.24);font:14px system-ui,-apple-system,"Segoe UI",sans-serif;color:#212529}
#distriapp-geo-banner h3{font-size:18px;margin:0 0 7px}#distriapp-geo-banner p{color:#5f6368;margin:0 0 14px;line-height:1.45}.dgeo-actions{display:flex;gap:8px;flex-wrap:wrap}
.dgeo-msg{position:fixed;top:16px;left:50%;transform:translateX(-50%);z-index:2400;width:min(92vw,560px);padding:12px 16px;border:1px solid transparent;border-radius:10px;background:#e7f1ff;color:#084298}.dgeo-msg.alert-success{background:#d1e7dd;color:#0f5132;border-color:#badbcc}.dgeo-msg.alert-warning{background:#fff3cd;color:#664d03;border-color:#ffecb5}.dgeo-msg.alert-danger{background:#f8d7da;color:#842029;border-color:#f5c2c7}
#distriapp-geo-banner .btn{border:1px solid transparent;border-radius:8px;padding:.55rem .9rem;font-weight:600;cursor:pointer}#distriapp-geo-banner .btn-primary{background:#0d6efd;color:#fff;border-color:#0d6efd}

html.dgeo-locked,body.dgeo-locked{overflow:hidden!important;overscroll-behavior:none}
#distriapp-geo-gate{position:fixed;inset:0;z-index:2300;display:grid;place-items:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:rgba(15,23,42,.68);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.dgeo-gate-card{width:min(100%,620px);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;border:1px solid rgba(255,255,255,.78);border-radius:26px;padding:clamp(22px,4vw,34px);box-shadow:0 24px 80px rgba(15,23,42,.35);color:#172033;text-align:left}
.dgeo-gate-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:20px;background:#eaf2ff;color:#0d6efd;font-size:32px;margin-bottom:18px}.dgeo-gate-kicker{font-size:12px;font-weight:850;letter-spacing:.12em;color:#0d6efd;margin-bottom:7px}.dgeo-gate-card h2{font-size:clamp(1.45rem,4.6vw,2rem);line-height:1.12;margin:0 0 12px;font-weight:850}.dgeo-gate-text{font-size:clamp(1rem,2.7vw,1.08rem);line-height:1.55;color:#526071;margin:0 0 18px}
.dgeo-gate-steps{margin:0 0 18px;padding-left:24px;display:grid;gap:10px;color:#27364a;line-height:1.45}.dgeo-gate-steps li::marker{font-weight:800;color:#0d6efd}.dgeo-gate-note{border:1px solid #bfdbfe;background:#eff6ff;border-radius:15px;padding:13px 14px;color:#1e3a5f;line-height:1.45;font-size:.94rem;margin-bottom:18px}.dgeo-gate-button{width:100%;border:0;border-radius:15px;background:#0d6efd;color:#fff;padding:15px 18px;font-size:1.04rem;font-weight:850;box-shadow:0 10px 24px rgba(13,110,253,.24);cursor:pointer;touch-action:manipulation}.dgeo-gate-button:active{transform:translateY(1px)}.dgeo-gate-button:focus-visible{outline:4px solid rgba(13,110,253,.24);outline-offset:3px}.dgeo-gate-status{text-align:center;color:#728095;font-size:.86rem;margin-top:13px;line-height:1.35}
.dgeo-gate-loader{height:50px;display:flex;align-items:center;justify-content:center;gap:8px}.dgeo-gate-loader span{width:10px;height:10px;border-radius:50%;background:#0d6efd;animation:dgeoPulse 1.15s infinite ease-in-out}.dgeo-gate-loader span:nth-child(2){animation-delay:.14s}.dgeo-gate-loader span:nth-child(3){animation-delay:.28s}@keyframes dgeoPulse{0%,80%,100%{opacity:.25;transform:scale(.78)}40%{opacity:1;transform:scale(1)}}

@media(max-width:600px){#distriapp-geo-status{bottom:76px}.dgeo-main>span:last-child{display:none}#distriapp-geo-gate{place-items:end center;padding:10px 10px max(10px,env(safe-area-inset-bottom))}.dgeo-gate-card{width:100%;max-height:calc(100dvh - 20px);border-radius:24px;padding:22px 20px}.dgeo-gate-icon{width:56px;height:56px;border-radius:17px;font-size:28px;margin-bottom:15px}.dgeo-gate-note{font-size:.9rem}.dgeo-gate-button{min-height:54px}}
@media(min-width:900px){.dgeo-gate-card{display:grid;grid-template-columns:76px 1fr;column-gap:20px}.dgeo-gate-icon{grid-column:1;grid-row:1/6}.dgeo-gate-kicker,.dgeo-gate-card h2,.dgeo-gate-text,.dgeo-gate-steps,.dgeo-gate-note,.dgeo-gate-button,.dgeo-gate-loader,.dgeo-gate-status{grid-column:2}.dgeo-gate-card h2{margin-top:0}}
@media(prefers-reduced-motion:reduce){.dgeo-gate-loader span{animation:none}.dgeo-gate-button:active{transform:none}}

/* DISTRIAPP_GEO_DRAGGABLE_MOBILE_V11
 * El aspecto y la posición original se mantienen hasta que el usuario arrastra
 * el control. Solo se habilita en pantallas pequeñas.
 */
@media(max-width:767px){
  #distriapp-geo-status[data-dgeo-draggable="1"]{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:grab;will-change:left,top;transition:box-shadow .16s ease,opacity .16s ease}
  #distriapp-geo-status[data-dgeo-draggable="1"] .dgeo-main{touch-action:none}
  #distriapp-geo-status[data-dgeo-dragging="1"]{cursor:grabbing;box-shadow:0 12px 30px rgba(0,0,0,.25);opacity:.96}
  #distriapp-geo-status[data-dgeo-dragging="1"] *{pointer-events:none}
}
