/* Shared soul accents. Gold primary actions and semantic/game colours remain owned by their components. */
:root {
  --gb-soul-petrol: #087f8c;
  --gb-soul-light: #95e5df;
  --gb-soul-surface: #102e30;
  --gb-soul-edge: #438e90;
}
.gn-header .gn-submenu a:is(:hover,:focus-visible),
.gn-header [data-guild-entry][aria-current=page] {
  color: var(--gb-soul-light);
  border-color: var(--gb-soul-edge);
  background-color: var(--gb-soul-surface);
}
.gp-guild-frame .gp-guild-tabs>a:is(:hover,[aria-current=page],[aria-current=location]),
.gw-page>.gw-guild-frame .gp-guild-tabs>a:is(:hover,[aria-current=page],[aria-current=location]),
.fth-planner-page .fth-planner-nav a:is(:hover,[aria-current=page]) {
  background: var(--gb-soul-surface);
  border-color: var(--gb-soul-edge);
  color: var(--gb-soul-light);
}
.gp-guild-frame .gp-guild-tabs>a:is([aria-current=page],[aria-current=location]),
.fth-planner-page .fth-planner-nav a[aria-current=page] {
  box-shadow: inset 0 -2px var(--gb-soul-light);
}
/* Explicit safe secondary actions; leave, revoke, cancel-run and destructive actions are excluded. */
.gw-page :is(#gw-copy-invite,#gw-close-create,#gw-retry):not(:disabled),
.fth-design .button.secondary:not(.primary):not(.danger):not(:disabled) {
  background: var(--gb-soul-surface);
  border-color: var(--gb-soul-edge);
  color: var(--gb-soul-light);
}
.gw-page :is(#gw-copy-invite,#gw-close-create,#gw-retry):not(:disabled):hover,
.fth-design .button.secondary:not(.primary):not(.danger):not(:disabled):hover {
  background: #153b3d;
  border-color: var(--gb-soul-light);
}
.gw-page :is(a,button,input,select,textarea,summary):focus-visible,
.fth-planner-page :is(a,button,input,select,textarea,summary):focus-visible,
.gn-header :is(.gn-toggle,.gn-burger,.gn-settings):focus-visible,
.gn-header .gn-submenu a:focus-visible,
.gp-guild-frame .gp-guild-tabs>a:focus-visible {
  outline: 3px solid var(--gb-soul-light);
  outline-offset: 3px;
}
/* Keep focus inside horizontally scrolling guild navigation. */
.gp-guild-frame .gp-guild-tabs>a:focus-visible { outline-offset: -3px; }
@media(prefers-reduced-motion:no-preference) {
  .gw-page :is(#gw-copy-invite,#gw-close-create,#gw-retry),
  .gp-guild-frame .gp-guild-tabs>a {
    transition: color .16s, border-color .16s, background-color .16s;
  }
}
