.local-badge>span:first-child{
  position:relative;
  flex:none;
  background:#239b45;
  box-shadow:0 0 0 2px #cbe5cf;
}
.local-badge>span:first-child::before,
.local-badge>span:first-child::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}
.local-badge>span:first-child::before{
  inset:0;
  background:#55e577;
  opacity:.25;
  animation:online-light 2s ease-in-out infinite;
}
.local-badge>span:first-child::after{
  inset:-3px;
  border:1px solid #239b4580;
  opacity:.55;
  transform:scale(.75);
  animation:online-halo 2s ease-in-out infinite;
}
@keyframes online-light{
  0%,100%{opacity:.25}
  45%,60%{opacity:1}
}
@keyframes online-halo{
  0%{transform:scale(.75);opacity:.55}
  75%,100%{transform:scale(1.55);opacity:0}
}
@media(prefers-reduced-motion:reduce){
  .local-badge>span:first-child::before{animation:none;opacity:.65}
  .local-badge>span:first-child::after{animation:none;opacity:.25;transform:none}
}
.activation-dialog{width:min(480px,calc(100% - 32px));padding:3px;color:var(--text);background:var(--surface);border:0;max-height:calc(100dvh - 40px);overflow:auto}
.activation-dialog::backdrop{background:#00181899}
.dialog-body{padding:22px 20px 20px}
.dialog-body h2{font-size:21px;margin:0 0 16px}
.dialog-body>p{line-height:1.7;margin:12px 0;overflow-wrap:anywhere}
#dialog-email{background:#fff;padding:14px;font-size:18px;font-weight:700}
.dialog-body .hint{font-size:14px}
.dialog-body .actions{grid-template-columns:minmax(85px,.8fr) minmax(0,1.8fr)}
.progress-actions{display:grid;gap:12px;margin-top:24px}
.progress-actions button{min-height:46px;padding:12px;margin:0;overflow-wrap:anywhere}
.progress-pane.failed .screen{background:#571e1e;color:#ffd8d2}
.progress-pane.failed .progress-meter span.filled{background:#9b241d}
/* Win98: a grey recessed track and narrow, solid rectangular segments.
   Existing phase spans only mask the unfilled area; activation progress and
   ARIA values remain driven by the engine, never by a decorative timer. */
.progress-meter{
  --progress-ink:#000080;
  height:28px;
  padding:3px;
  gap:0;
  background-color:#c0c0c0;
  background-image:repeating-linear-gradient(90deg,var(--progress-ink) 0 11px,transparent 11px 14px);
  background-origin:content-box;
  background-clip:content-box;
  border:0;
  border-radius:0;
  box-shadow:inset 1px 1px #808080,inset -1px -1px #fff,inset 2px 2px #9b9b9b,inset -2px -2px #dfdfdf;
}
.progress-meter>span{min-width:0;background:#c0c0c0}
.progress-pane .progress-meter>span.filled,
.progress-pane.uncertain .progress-meter>span.filled,
.progress-pane.failed .progress-meter>span.filled{background:transparent}
.progress-pane.uncertain .progress-meter{--progress-ink:#9b7e3d}
.progress-pane.failed .progress-meter{--progress-ink:#9b241d}
.process-list .failed{color:#9b241d}
.process-list .failed .process-dot{background:#f4dfd8}
.process-list b{white-space:normal;text-align:right;max-width:40%}
.process-list>li>span:nth-child(2){min-width:0;overflow-wrap:anywhere}
.brand[aria-disabled=true]{cursor:not-allowed;opacity:.65}
#account-form[aria-busy=true],#code-form[aria-busy=true]{cursor:progress}
#account-instructions{font-size:14px;line-height:1.8}
#session-hint{font-size:13px}
.result-details{overflow-wrap:anywhere}
.footer-note{margin:8px 0 0}
.footer-actions{display:grid;grid-template-columns:repeat(2,minmax(0,196px));justify-content:center;gap:12px;margin-top:18px}
.footer-purchase,.footer-contact{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;margin:0;padding:10px 16px;font-size:14px;line-height:24px}
.footer-purchase{color:var(--navy);font-weight:700;text-decoration:none}
.footer-purchase svg{width:18px;height:18px}
.footer-purchase .footer-external{width:13px;height:13px}
.footer-purchase:hover{background:var(--light)}
.footer-purchase:active{box-shadow:inset -1px -1px var(--hi),inset 1px 1px var(--deep),inset -2px -2px var(--light),inset 2px 2px var(--shadow)}
.footer-contact{color:var(--text)}
.footer-contact strong{font:700 16px/1.5 "Courier New",monospace;user-select:all}
@media(max-width:440px){.footer-actions{grid-template-columns:minmax(0,280px);gap:10px}}
@media(max-width:440px){.dialog-body{padding:18px 15px}.dialog-body .actions{grid-template-columns:1fr}#dialog-email{font-size:16px}.dialog-body .actions>button{min-height:46px}.hero h1>span[data-i]{font-size:32px}.process-list{gap:16px}}
