        /* ── Change Location modal: visual glow-up ─────────────────────────── */
        /* Softer backdrop for Change Location modal — blur removed per request */
        #changeGridModalBackdrop {
            -webkit-backdrop-filter: none !important;
            backdrop-filter: none !important;
        }
        /* Smooth entrance: fade + gentle rise into the shared vertical position */
        @keyframes clGlowUpIn {
            0%   { opacity: 0; transform: translateY(calc(var(--modal-translate) + 20px)) scale(0.975); }
            100% { opacity: 1; transform: translateY(var(--modal-translate)) scale(1); }
        }
        #changeGridModal.open {
            animation: clGlowUpIn .28s cubic-bezier(.2,.8,.25,1) both;
            box-shadow: 0 30px 80px rgba(2,6,23,0.30) !important;
        }

        /* Intro header inside the modal body */
        /* Add extra breathing room above and below the header */
        #changeGridModal .cl-intro { display:flex; align-items:center; gap:8px; margin:12px 0 18px; }
        #changeGridModal .cl-intro .cl-globe { font-size:22px; line-height:1; flex-shrink:0; }
        #changeGridModal .cl-intro .cl-title { font-size:15px; font-weight:700; color:#0f172a; line-height:1.2; }
        #changeGridModal .cl-intro .cl-sub { font-size:12px; color:#6b7280 !important; margin-top:1px; }

        /* Search field: leading icon + focus glow */
        #changeGridModal .change-grid-form .refine-input {
            padding-left: 42px;
            transition: border-color .15s ease, box-shadow .15s ease;
        }
        #changeGridModal .change-grid-form .refine-input:focus {
            outline: 2px solid #ffffff !important;
            outline-offset: 0 !important;
            border-color: #ffffff !important;
            box-shadow: 0 0 0 4px rgba(255,255,255,0.85) !important;
        }
        #changeGridModal .cl-search-icon {
            position:absolute; left:14px; top:50%; transform:translateY(-50%);
            width:18px; height:18px; color:#9ca3af; pointer-events:none; z-index:5;
            transition: color .15s ease;
        }
        #changeGridModal .change-grid-form .refine-input:focus ~ .cl-search-icon { color:#3b82f6; }

        /* Buttons: subtle lift + smoother feedback (colors unchanged) */
        #changeGridModal .change-grid-actions .btn-apply,
        #changeGridModal .change-grid-actions .btn-cancel {
            transition: transform .12s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease;
        }
        #changeGridModal .change-grid-actions .btn-apply:hover,
        #changeGridModal .change-grid-actions .btn-cancel:hover { transform: translateY(-1px); }
        #changeGridModal .change-grid-actions .btn-cancel:hover { border-color:#9ca3af; }

        /* The dropdown sanitizer adds `dropdown-unified` (which carries a 1px grey
           border) to every node inside the modal, framing the intro text and the
           structural wrappers. Strip those stray frames — keep the search input,
           the globe badge, and the suggestions dropdown. */
        #changeGridModal .modal-body,
        #changeGridModal .cl-intro,
        #changeGridModal .cl-intro > div,
        #changeGridModal .cl-title,
        #changeGridModal .cl-sub,
        #changeGridModal .change-grid-form,
        #changeGridModal .cl-search-wrap,
        #changeGridModal .change-grid-actions,
        #changeGridModal .change-grid-actions .btn-label,
        #changeGridModal .change-grid-actions .btn-apply *,
        #changeGridModal .change-grid-actions .btn-cancel * {
            border: 0 !important;
            box-shadow: none !important;
        }

        @media (prefers-reduced-motion: reduce) {
            #changeGridModal.open { animation: none; }
        }
