/* Selection is shown by a whole surface and text, never a one-edge colour bar. */
.portal-topnav .portal-nav-item,
.portal-topnav .portal-nav-item.active,
.portal-mobile-nav .portal-nav-item,
.portal-mobile-nav .portal-nav-item.active { border: 0; border-radius: 8px; }
.portal-topnav .portal-nav-item { min-height: 44px; padding-inline: 10px; }
.portal-topnav .portal-nav-item.active,
.portal-mobile-nav .portal-nav-item.active { color: var(--portal-ink); background: var(--portal-surface-soft); font-weight: 650; }
.catalog__categories button,
.catalog__categories button.is-active,
.profile-page__tabs button,
.profile-page__tabs button.is-active,
.portal-skills-tab,
.portal-skills-tab.is-active,
.leaderboard-page__tabs button,
.leaderboard-page__tabs button.is-active,
.app-metrics__views button,
.app-metrics__views button.is-active { border: 0; border-radius: 8px; }
.catalog__categories button.is-active,
.profile-page__tabs button.is-active,
.portal-skills-tab.is-active,
.leaderboard-page__tabs button.is-active,
.app-metrics__views button.is-active { color: var(--portal-ink); background: var(--portal-surface-soft); font-weight: 650; }
.portal-skill-tab.active::after { display: none; }
.portal-skill-tab.active { border-radius: 8px; color: var(--portal-ink); background: var(--portal-surface-soft); }
.portal-more--mobile .portal-more__panel { border-left: 0; padding-left: 10px; }

/* Clear field boundaries and an immediate keyboard-focus indicator. */
:root { --ink-field-border: #7b847e; }
.catalog__search { border-color: var(--ink-field-border); }
.catalog__search input:focus-visible { outline: 2px solid var(--portal-accent); outline-offset: 2px; border-radius: 3px; }
.profile-page__fields :is(input, select, textarea),
.portal-auth-field :is(input, select),
.app-metrics__table-tools input { border-color: var(--ink-field-border); }
.profile-page__fields :is(input, select, textarea):focus-visible { outline: 2px solid var(--portal-accent); outline-offset: 2px; }
.catalog__search input { transition-property: none !important; }

/* Keyboard focus must be visible in the first frame. */
.portal-auth-field :is(input, select):focus-visible { outline: 2px solid var(--portal-accent); outline-offset: 2px; }
.portal-legal-footer { font-size: 12px !important; }
