.button {
  display: inline-block;
  text-align: center;
  text-decoration: none;
}
.nav-link { text-decoration: none; }
.nav-link[aria-current="page"] { color: var(--ink); text-decoration: underline; text-decoration-color: var(--accent); text-underline-offset: 6px; }
.tab { text-decoration: none; }
.wizard-nav li a { display: flex; gap: 16px; align-items: center; color: inherit; text-decoration: none; width: 100%; }

.button:disabled {
  cursor: wait;
  opacity: .62;
}

.loading-view {
  min-height: calc(100vh - 76px);
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 14px;
  color: var(--muted);
}

.loading-mark {
  height: 58px;
  width: 58px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  display: grid;
  place-items: center;
  font: italic 1.8rem Georgia, serif;
  animation: loading-pulse 1.1s ease-in-out infinite;
}

.loading-view p { margin: 0; font-size: .82rem; letter-spacing: .08em; }
.extension-callout { margin-top: 24px; padding: 20px; border: 1px solid var(--line); background: var(--panel); display: flex; gap: 24px; align-items: center; justify-content: space-between; }
.extension-callout div { display: grid; gap: 5px; }
.extension-callout strong { font: 400 1.25rem Georgia, serif; }
.extension-kicker { font-size: .65rem; letter-spacing: .16em; color: var(--accent); font-weight: 800; }
.extension-view { max-width: 1250px; }
.extension-view .lead { max-width: 850px; }
.extension-demo { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); margin: 34px 0; }
.extension-demo div { display: grid; gap: 8px; padding: 22px; background: var(--panel); }
.extension-demo strong { font: 400 1.2rem Georgia,serif; }
.extension-demo span { color: var(--muted); line-height: 1.45; font-size: .85rem; }
.extension-install-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin: 40px 0; }
.install-card { background: var(--panel); border: 1px solid var(--line); padding: 28px; }
.install-card > span { font-size: .68rem; letter-spacing: .14em; color: var(--accent); font-weight: 800; }
.install-card h2 { font: 400 1.8rem Georgia, serif; margin: 18px 0 10px; }
.install-card p { color: var(--muted); line-height: 1.55; min-height: 72px; }
.install-card code { font-size: .85em; }
.noscript { position: fixed; inset: 76px 0 0; display: grid; place-content: center; background: var(--paper); z-index: 100; }
.extension-gate{display:grid;grid-template-columns:130px 1fr;gap:34px;align-items:center;max-width:900px;padding:34px;border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow)}.extension-gate-icon{width:112px;height:112px;border-radius:28px;background:var(--ink);color:#fff;display:grid;place-items:center;position:relative}.extension-gate-icon span{font:italic 3.3rem Georgia,serif}.extension-gate-icon i{position:absolute;right:-5px;bottom:-5px;width:28px;height:28px;border:6px solid var(--panel);border-radius:50%;background:#d69134}.extension-gate h2{font:400 2rem Georgia,serif;margin:0 0 14px}.extension-gate ol{margin:0 0 22px;padding-left:20px;color:var(--muted);line-height:1.65}.extension-gate-actions{display:flex;gap:10px;flex-wrap:wrap}.extension-privacy{max-width:900px;display:grid;grid-template-columns:auto 1fr;gap:16px;margin-top:16px;padding:16px 18px;background:#e9e6dd;color:var(--muted);font-size:.84rem;line-height:1.5}.extension-privacy strong{color:var(--ink)}.import-source-card{display:flex;justify-content:space-between;align-items:center;gap:24px;max-width:900px;padding:18px 20px;margin:28px 0 4px;border-left:4px solid var(--accent);background:var(--panel);box-shadow:0 8px 30px rgba(20,23,20,.06)}.import-source-card div{display:grid;gap:5px}.import-source-card span,.auth-import-context span{font-size:.64rem;letter-spacing:.14em;font-weight:800;color:var(--accent)}.import-source-card strong{font:400 1.25rem Georgia,serif}.import-source-card a{color:var(--ink);font-weight:750;white-space:nowrap}.auth-import-context{display:grid;gap:6px;margin:-12px 0 28px;padding:15px 17px;border-left:3px solid var(--accent);background:#eee9df}.auth-import-context strong{font:400 1.15rem Georgia,serif}.install-section{padding:90px 6vw;background:#e9e6dd;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.install-section .section-heading{align-items:end}.install-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:36px;background:var(--line);border:1px solid var(--line)}.install-grid article{padding:30px;background:var(--panel)}.install-grid article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ink);color:#fff;font-weight:800}.install-grid h3{font:400 1.45rem Georgia,serif;margin:18px 0 8px}.install-grid p{margin:0;color:var(--muted);line-height:1.55}.install-assurance{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 22px;background:var(--ink);color:#fff}.install-assurance span{color:#d8d8d2;font-size:.78rem}.install-assurance span:before{content:"✓";margin-right:7px;color:#e0a76c}

@keyframes loading-pulse { 50% { transform: scale(.92); opacity: .55; } }
@media (prefers-reduced-motion: reduce) { .loading-mark { animation: none; } }
@media (max-width: 820px) {
  .extension-gate{grid-template-columns:1fr;padding:24px}.extension-gate-icon{width:72px;height:72px;border-radius:18px}.extension-gate-icon span{font-size:2.2rem}.extension-privacy{grid-template-columns:1fr}.import-source-card{align-items:flex-start;flex-direction:column}.install-section{padding:60px 18px}.install-grid{grid-template-columns:1fr}.install-assurance{align-items:flex-start;flex-direction:column}.auth-import-context{margin-top:0}
  .extension-callout { align-items: stretch; flex-direction: column; }
  .extension-install-grid { grid-template-columns: 1fr; }
  .extension-demo { grid-template-columns: 1fr; }
  .install-card p { min-height: 0; }
  #nav-register { padding: 9px 10px; font-size: .72rem; }
}
