
/* Location trigger + popup */
	.location-nav{display:flex;align-items:center;margin-left:auto;margin-right:.5rem;}
	.location-trigger{display:inline-flex;align-items:center;gap:.4rem;max-width:180px;padding:.45rem .75rem;border-radius:999px;border:1px solid #e5e7eb;background:#fff;color:#1a1a1a;font-size:.82rem;font-weight:600;line-height:1.2;transition:background .2s,border-color .2s,box-shadow .2s;-webkit-tap-highlight-color:transparent;touch-action:manipulation;position:relative;z-index:2;}
	.location-trigger:hover{background:#f3f4f6;border-color:#d1d5db;}
	.location-trigger svg{width:18px;height:18px;flex-shrink:0;color:#3b82f6;}
	.location-trigger-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
	.location-popup{position:fixed;inset:0;z-index:10050;display:grid;place-items:center;padding:20px;}
	.location-popup[hidden]{display:none!important;}
	.location-popup__backdrop{position:absolute;inset:0;background:rgba(248, 250, 255, 0.45);backdrop-filter:blur(10px) saturate(2.5);}
	.location-popup__card{position:relative;z-index:1;width:100%;max-width:400px;max-height:calc(100vh - 40px);overflow-y:auto;background:#fff;border-radius:16px;padding:28px 24px 22px;box-shadow:0 20px 50px rgba(0,0,0,.25);}
	.location-popup__close{position:absolute;top:10px;right:12px;border:0;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:#6b7280;padding:8px;}
	.location-popup__card h3{font-size:1.25rem;margin:0 0 .4rem;color:#111827;}
	.location-popup__sub{font-size:.9rem;color:#6b7280;margin:0 0 1.1rem;}
	.location-popup__gps{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1rem;border-radius:12px;border:1px solid #dbeafe;background:linear-gradient(135deg,#eff6ff 0%,#f5f3ff 100%);color:#1d4ed8;font-weight:600;font-size:.95rem;transition:transform .15s,box-shadow .15s;}
	.location-popup__gps:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(59,130,246,.18);}
	.location-popup__gps:disabled,.location-popup__submit:disabled{opacity:.65;cursor:not-allowed;transform:none;}
	.location-popup__gps svg{width:20px;height:20px;}
	.location-popup__divider{display:flex;align-items:center;gap:.75rem;margin:1rem 0;color:#9ca3af;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;}
	.location-popup__divider::before,.location-popup__divider::after{content:"";flex:1;height:1px;background:#e5e7eb;}
	.location-popup__form label{display:block;font-size:.85rem;font-weight:600;color:#374151;margin-bottom:.45rem;}
	.location-popup__row{display:flex;gap:.5rem;}
	.location-popup__row input{flex:1;min-width:0;padding:.75rem .9rem;border:1px solid #d1d5db;border-radius:10px;background:#fff;font-size:1rem;color:#111827;}
	.location-popup__row input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px rgba(59,130,246,.15);outline:none;}
	.location-popup__submit{padding:.75rem 1.1rem;border-radius:10px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff;font-weight:600;font-size:.95rem;white-space:nowrap;}
	.location-popup__status{min-height:1.2em;margin:.85rem 0 0;font-size:.85rem;color:#4b5563;}
	.location-popup__status.is-error{color:#dc2626;}
	.location-popup__status.is-success{color:#059669;}
	.location-popup__perm{margin:.6rem 0 0;font-size:.82rem;color:#dc2626;}
	.location-popup__perm.hide{display:none!important;}

	/* Dark — premium glass location control (homepage / header) */
	body.dark .location-trigger{
		background:linear-gradient(145deg,rgba(67,56,202,.35) 0%,rgba(30,58,138,.45) 55%,rgba(15,23,42,.9) 100%);
		border-color:rgba(148,163,184,.2);
		color:#e2e8f0;
		box-shadow:0 6px 18px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.08);
	}
	body.dark .location-trigger:hover{
		background:linear-gradient(145deg,rgba(79,70,229,.42) 0%,rgba(37,99,235,.4) 55%,rgba(15,23,42,.95) 100%);
		border-color:rgba(147,197,253,.28);
		box-shadow:0 10px 24px rgba(0,0,0,.4),inset 0 1px 0 rgba(255,255,255,.1);
	}
	body.dark .location-trigger svg,
	body.dark .header-location.location-trigger svg,
	body.dark .header-mobile-bar .location-trigger svg{color:#93c5fd;}
	body.dark .location-popup__backdrop{background:rgba(2,11,33,.62);backdrop-filter:blur(14px) saturate(1.4);}
	body.dark .location-popup__card{
		background:linear-gradient(165deg,rgba(22,30,48,.98) 0%,rgba(12,18,36,.99) 100%);
		color:#e2e8f0;
		border:1px solid rgba(148,163,184,.14);
		box-shadow:0 28px 64px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.06);
	}
	body.dark .location-popup__card h3{color:#f8fafc;}
	body.dark .location-popup__sub,body.dark .location-popup__status{color:#94a3b8;}
	body.dark .location-popup__close{color:#94a3b8;}
	body.dark .location-popup__gps{
		background:linear-gradient(135deg,rgba(30,58,138,.45) 0%,rgba(49,46,129,.4) 100%);
		border-color:rgba(147,197,253,.22);
		color:#bfdbfe;
	}
	body.dark .location-popup__gps:hover{box-shadow:0 10px 24px rgba(59,130,246,.22);}
	body.dark .location-popup__divider{color:#64748b;}
	body.dark .location-popup__divider::before,body.dark .location-popup__divider::after{background:rgba(148,163,184,.2);}
	body.dark .location-popup__form label{color:#cbd5e1;}
	body.dark .location-popup__row input{
		background:rgba(8,12,24,.9);
		border-color:rgba(148,163,184,.2);
		color:#f1f5f9;
	}
	body.dark .location-popup__row input:focus{
		border-color:rgba(147,197,253,.45);
		box-shadow:0 0 0 3px rgba(59,130,246,.2);
	}
	body.dark .location-popup__submit{box-shadow:0 8px 22px rgba(59,130,246,.3);}
    
@media (max-width:768px){
    .header-content{gap:.4rem;}
    .location-nav--header{margin-right:.25rem;flex-shrink:1;min-width:0;}
    .location-trigger{max-width:118px;padding:.4rem .6rem;font-size:.75rem;}
    .location-popup{padding:12px;align-items:flex-end;}
    .location-popup__card{max-width:100%;border-radius:16px 16px 12px 12px;padding:24px 18px 18px;}
}
