.keyword-input-wrap { display: flex; align-items: center; gap: 8px; }
[data-keyword-media-error]:empty { display: none; }
.keyword-input-wrap input { flex: 1; min-width: 0; }
.keyword-suggest-button { flex: 0 0 44px; width: 44px; height: 44px; padding: 10px; }
.keyword-suggest-button svg { display: block; width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.keyword-suggest-button svg.is-spinning { animation: keyword-spin .8s linear infinite; }
.keyword-suggest-button:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@keyframes keyword-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .keyword-suggest-button svg.is-spinning { animation: none; } }
