
    .geo-helper-bar {
        display:flex;
        align-items:center;
        gap:8px;
        flex-wrap:wrap;
        margin:8px 0 8px;
    }
    .geo-locate-btn {
        width:auto !important;
        min-height:38px !important;
        padding:8px 12px !important;
        border-radius:12px !important;
        font-size:.78rem !important;
        font-weight:800 !important;
    }
    .geo-status {
        display:flex;
        align-items:center;
        gap:8px;
        padding:8px 10px;
        border-radius:12px;
        font-size:.76rem;
        font-weight:700;
        border:1px solid #dbe3ef;
        background:#f8fafc;
        color:#475467;
    }
    .geo-status.loading {
        background:#eff8ff;
        border-color:#b2ddff;
        color:#175cd3;
    }
    .geo-status.success {
        background:#ecfdf3;
        border-color:#abefc6;
        color:#067647;
    }
    .geo-status.error {
        background:#fef3f2;
        border-color:#fecdca;
        color:#b42318;
    }
    .geo-spinner {
        width:14px;
        height:14px;
        border:2px solid rgba(23,92,211,.2);
        border-top-color:#175cd3;
        border-radius:50%;
        display:inline-block;
        animation: geoSpin .8s linear infinite;
        flex:0 0 auto;
    }
    .geo-status.success .geo-spinner,
    .geo-status.error .geo-spinner {
        display:none;
    }
    @keyframes geoSpin { to { transform: rotate(360deg); } }
    @media (max-width: 640px) {
        .geo-helper-bar {
            gap:6px;
            margin:7px 0 7px;
        }
        .geo-locate-btn {
            min-height:34px !important;
            padding:7px 10px !important;
            font-size:.72rem !important;
        }
        .geo-status {
            font-size:.72rem;
            padding:7px 9px;
        }
    }
