/* Status dot rendered after the "Globaliser" label in the WP admin bar.
   meta.class in add_menu() applies to the wrapping <li>, not the inner
   <a class="ab-item">, so target the LI and style the child ab-item. */
#wp-admin-bar-globaliser-topnav.globaliser-toolbar-status > .ab-item {
    position: relative;
    padding-right: 28px;
}
#wp-admin-bar-globaliser-topnav.globaliser-toolbar-status > .ab-item::after {
    content: "";
    position: absolute;
    right: 8px;
    top: 50%;
    margin-top: -7px;
    width: 14px;
    height: 14px;
    padding: 0;
    font: 0/0 a;
    border-radius: 50%;
    background: #888;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.15);
    box-sizing: content-box;
    color: inherit;
}

#wp-admin-bar-globaliser-topnav.globaliser-toolbar-status-syncing > .ab-item::after {
    background: transparent;
    border: 2px solid #ff8c00;
    border-top-color: transparent;
    box-sizing: border-box;
    box-shadow: none;
    -webkit-animation: globaliser-toolbar-spin 0.9s linear infinite;
            animation: globaliser-toolbar-spin 0.9s linear infinite;
}
#wp-admin-bar-globaliser-topnav.globaliser-toolbar-status-synced > .ab-item::after  { background: #46b450; }

/* Click feedback: pulsing dot while an update-cache request is in flight */
#wp-admin-bar-globaliser-topnav.globaliser-toolbar-busy .ab-item::after {
    -webkit-animation: globaliser-toolbar-pulse 0.7s ease-in-out infinite;
            animation: globaliser-toolbar-pulse 0.7s ease-in-out infinite;
}

/* Disabled submenu item while in-flight to block multi-click */
#wp-admin-bar-globaliser-topnav.globaliser-toolbar-busy .globaliser-topnav-clear-cache {
    opacity: 0.5;
    pointer-events: none;
    cursor: progress;
}

@-webkit-keyframes globaliser-toolbar-pulse {
    0%, 100% { opacity: 1;   transform: scale(1); }
    50%      { opacity: 0.3; transform: scale(0.7); }
}
@keyframes globaliser-toolbar-pulse {
    0%, 100% { opacity: 1;   transform: scale(1); }
    50%      { opacity: 0.3; transform: scale(0.7); }
}
@-webkit-keyframes globaliser-toolbar-spin { to { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@keyframes         globaliser-toolbar-spin { to { transform: rotate(360deg); } }

/* Default (desktop): show the full word, hide the short "G". */
#wp-admin-bar-globaliser-topnav .globaliser-tn-g    { display: none; }
#wp-admin-bar-globaliser-topnav .globaliser-tn-full { display: inline; }

/* Mobile: WP hides non-essential admin-bar menus below 783px. Force ours back
   on and swap to the compact "G" label. */
@media screen and (max-width: 782px) {
    #wpadminbar li#wp-admin-bar-globaliser-topnav { display: block !important; }

    #wp-admin-bar-globaliser-topnav .globaliser-tn-full { display: none; }
    #wp-admin-bar-globaliser-topnav .globaliser-tn-g {
        display: inline-block;
        font-weight: 700;
        font-size: 24px;
        line-height: 1;
        vertical-align: middle;
    }
}
