.activation-header { display: flex; justify-content: space-between; align-items: center; gap: 12px; min-width: 0; padding: 14px clamp(12px, 4vw, 44px); background: #0b3b66; color: #fff; }
.brand-link { display: inline-flex; min-width: 0; align-items: center; gap: 10px; color: #fff; font-weight: 800; text-decoration: none; }
.brand-link > span:last-child { min-width: 0; line-height: 1.15; }
.activation-header .version-badge { color: #0b3b66; }
.activation-main { width: min(640px, calc(100% - 24px)); margin: 0 auto; padding: 28px 0 64px; }
.activation-hero { margin-bottom: 18px; }
.activation-hero h1 { margin: 0 0 10px; color: #0b3b66; font-size: clamp(2rem, 10vw, 3.25rem); line-height: 1.02; }
.activation-hero > p { margin: 0 0 12px; color: #355568; font-size: 1.03rem; }
.activation-trust { padding-left: 1.6rem; color: #0f6b6d !important; font-weight: 800; }
.activation-trust::before { content: "✓"; display: inline-block; width: 1.35rem; margin-left: -1.6rem; }
.activation-card h2, .recovery-panel h2 { margin: 0; color: #0b3b66; }
.activation-form { padding-top: .25rem; }
.activation-card > .security-check { margin-top: -.25rem; }
.activation-secondary { border-top: 1px solid #d9e5ed; }
.activation-secondary > summary { min-height: 48px; padding: .9rem 0; color: #0b3b66; font-weight: 800; cursor: pointer; }
.activation-secondary[open] > summary { margin-bottom: .5rem; }
.recovery-panel { margin-top: 18px; padding: .4rem 1rem 1rem; }
.recovery-content { padding: .25rem 0 .25rem; }
.recovery-panel .file-button { justify-self: start; }
form[aria-busy="true"] { opacity: .65; pointer-events: none; }

@media (max-width: 390px) {
  .activation-header { align-items: flex-start; }
  .brand-mark { width: 40px; height: 40px; }
  .activation-header .version-badge { font-size: .68rem; }
  .activation-main { padding-top: 22px; }
}
