/* Scoped header control; existing navigation and designer styles are unchanged. */
dyo-refresh-frontend { display: inline-flex; min-width: 0; align-items: center; }
.dyo-refresh-control { position: relative; display: flex; min-width: 0; align-items: center; }
.dyo-refresh-button {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px;
    min-height: 40px; padding: 9px 14px; border: 1px solid #e1e5eb; border-radius: 10px;
    background: #fff; color: #192233; font: inherit; font-size: 12px; font-weight: 700;
    line-height: 1.2; white-space: nowrap; cursor: pointer; box-shadow: 0 2px 5px rgba(16,24,40,.03);
    transition: background-color .15s, border-color .15s, color .15s;
}
.dyo-refresh-button:hover:not(:disabled), .dyo-refresh-button:active:not(:disabled) {
    background: #d9232e; border-color: #d9232e; color: #fff;
}
.dyo-refresh-button:focus-visible { outline: 3px solid rgba(217,35,46,.3); outline-offset: 3px; }
.dyo-refresh-button:disabled { opacity: .65; cursor: wait; }
.dyo-refresh-button svg { width: 17px; height: 17px; flex: 0 0 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.dyo-refresh-button[aria-busy="true"] svg { animation: dyo-refresh-turn 1.2s linear infinite; }
.dyo-refresh-status { position: absolute; right: 0; top: calc(100% + 8px); width: max-content; max-width: min(360px, 80vw); padding: 9px 12px; border: 1px solid #d9e8df; border-radius: 9px; background: #f2faf5; color: #22633f; font-size: 12px; font-weight: 500; line-height: 1.45; box-shadow: 0 7px 24px rgba(16,24,40,.09); z-index: 70; white-space: normal; }
.dyo-refresh-status:empty { display: none; }
.dyo-refresh-status.is-error { color: #9e2530; border-color: #f0c9ce; background: #fff3f4; }
@keyframes dyo-refresh-turn { to { transform: rotate(360deg); } }
@media (max-width: 600px) {
    .dyo-admin-shell .dyo-admin-topbar-context > div { display: none; }
    .dyo-refresh-button { min-height: 38px; gap: 6px; padding: 8px 10px; font-size: 11px; }
    .dyo-refresh-button svg { width: 15px; height: 15px; flex-basis: 15px; }
    .dyo-refresh-status { position: fixed; top: 78px; right: 16px; max-width: calc(100vw - 32px); }
}
@media (prefers-reduced-motion: reduce) {
    .dyo-refresh-button { transition: none; }
    .dyo-refresh-button[aria-busy="true"] svg { animation: none; }
}
