:root {
  color-scheme: dark;
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", sans-serif;
  --ink: #10161d;
  --ink-2: #151d25;
  --ink-3: #1b252f;
  --line: rgba(255,255,255,.1);
  --muted: #a9b7c0;
  --cyan: #1fc1c9;
  --cyan-bright: #64e2e1;
  --violet: #785cef;
  --coral: #ef6357;
  --mint: #5cc296;
  --amber: #e7a151;
  --ease: cubic-bezier(.16,1,.3,1);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { min-height: 100vh; margin: 0; color: #edf4f6; background: radial-gradient(circle at 72% 0, rgba(120,92,239,.14), transparent 30%), radial-gradient(circle at 22% 12%, rgba(31,193,201,.08), transparent 25%), var(--ink); line-height: 1.65; -webkit-font-smoothing: antialiased; }
body::before { content: ""; position: fixed; z-index: -1; inset: 0; background: repeating-radial-gradient(ellipse at 50% -20%, transparent 0 85px, rgba(31,193,201,.025) 86px 87px, transparent 88px 135px); pointer-events: none; }
a { color: inherit; }
.shell { width: min(980px, calc(100% - 48px)); margin-inline: auto; }
.site-header { position: sticky; z-index: 20; top: 0; border-bottom: 1px solid var(--line); background: rgba(10,15,20,.82); backdrop-filter: saturate(140%) blur(20px); }
.nav { min-height: 72px; display: flex; align-items: center; gap: 24px; }
.brand { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; font-size: 17px; font-weight: 800; letter-spacing: -.02em; text-decoration: none; }
.brand img { width: 35px; height: 35px; border-radius: 10px; box-shadow: 0 8px 22px rgba(0,0,0,.25); }
.nav nav { display: flex; gap: 24px; margin-left: auto; }
.nav nav a { color: #aab7bf; font-size: 12px; font-weight: 640; text-decoration: none; transition: color 180ms; }
.nav nav a:hover { color: #fff; }
main { min-height: calc(100vh - 174px); padding-block: 88px 120px; }
.eyebrow { margin: 0 0 18px; color: var(--cyan-bright); font-size: 11px; font-weight: 820; letter-spacing: .16em; text-transform: uppercase; }
h1 { max-width: 850px; margin: 0; font-size: clamp(50px, 8vw, 82px); line-height: .94; letter-spacing: -.06em; }
h2 { margin: 0 0 12px; font-size: 29px; line-height: 1.05; letter-spacing: -.035em; }
h3 { margin: 0 0 7px; letter-spacing: -.02em; }
.lede { max-width: 760px; margin: 27px 0 0; color: var(--muted); font-size: 18px; }
.actions { display: flex; flex-wrap: wrap; gap: 12px; margin: 35px 0; }
.button { min-height: 47px; display: inline-flex; align-items: center; justify-content: center; padding: 0 18px; border: 1px solid var(--line); border-radius: 12px; color: #fff; background: rgba(255,255,255,.035); font-weight: 760; text-decoration: none; transition: transform 180ms var(--ease), border-color 180ms, background 180ms; }
.button:hover { border-color: rgba(100,226,225,.3); background: rgba(31,193,201,.07); transform: translateY(-2px); }
.button.primary { border: 0; color: #071316; background: linear-gradient(120deg,#73f0e6,#25c5cc 48%,#7c68ed 122%); box-shadow: 0 13px 34px rgba(31,193,201,.16); }
.status { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 35px; padding: 7px 12px; border: 1px solid rgba(231,161,81,.25); border-radius: 99px; color: #f0cf9e; background: rgba(231,161,81,.07); font-size: 11px; font-weight: 650; }
.status i { width: 7px; height: 7px; border-radius: 50%; background: var(--amber); box-shadow: 0 0 0 4px rgba(231,161,81,.1); }
.panel { position: relative; margin-top: 58px; padding: 33px; border: 1px solid var(--line); border-radius: 20px; background: linear-gradient(145deg, rgba(255,255,255,.04), rgba(255,255,255,.018)); box-shadow: 0 28px 70px rgba(0,0,0,.17); overflow: hidden; }
.panel::before { content: ""; position: absolute; inset: 0 0 auto; height: 2px; background: linear-gradient(90deg,var(--cyan),var(--violet),var(--coral)); opacity: .72; }
.grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 13px; margin-top: 24px; }
.card { padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: rgba(5,9,13,.18); }
.card p, .panel > p, .content p, .content li { color: var(--muted); }
.card strong { display: block; margin-bottom: 7px; }
.checklist { padding: 0; list-style: none; }
.checklist li { position: relative; padding: 16px 0 16px 34px; border-bottom: 1px solid var(--line); color: #c8d2d7; }
.checklist li::before { content: "✓"; position: absolute; left: 4px; color: var(--mint); font-weight: 900; }
.checklist li.pending::before { content: "○"; color: #f0b278; }
.checklist li.pending { color: #abb7bd; }
.callout { margin: 30px 0; padding: 22px; border: 1px solid rgba(120,92,239,.18); border-left: 3px solid var(--violet); border-radius: 0 12px 12px 0; color: #cbd3db; background: rgba(120,92,239,.06); }
.content { max-width: 790px; }
.content section { padding: 38px 0; border-bottom: 1px solid var(--line); }
.content code { padding: 2px 6px; border-radius: 5px; color: #c9f5ed; background: #202b35; }
.content a:not(.button) { color: #8de6e2; }
.doc-index { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 42px 0; }
.doc-index a { padding: 22px; border: 1px solid var(--line); border-radius: 13px; background: rgba(255,255,255,.025); text-decoration: none; transition: transform 180ms var(--ease), border-color 180ms, background 180ms; }
.doc-index a:hover { border-color: rgba(100,226,225,.24); background: rgba(31,193,201,.045); transform: translateY(-2px); }
.doc-index strong { display: block; }
.doc-index span { color: var(--muted); font-size: 12px; }
.form-panel { max-width: 700px; margin-top: 42px; padding: 29px; border: 1px solid var(--line); border-radius: 19px; background: linear-gradient(145deg,rgba(255,255,255,.04),rgba(255,255,255,.018)); box-shadow: 0 28px 70px rgba(0,0,0,.16); }
.form-panel form, .form-panel label { display: grid; gap: 8px; }
.form-panel label { margin-bottom: 18px; color: #d3dbe0; font-weight: 700; }
.form-panel input { width: 100%; min-height: 50px; padding: 10px 13px; border: 1px solid #3a4652; border-radius: 11px; color: #fff; background: #0c1218; font: inherit; transition: border-color 180ms, box-shadow 180ms; }
.form-panel input:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(31,193,201,.12); outline: 0; }
.form-panel button, .device-row button { min-height: 47px; padding: 0 18px; border: 0; border-radius: 11px; color: #071316; background: linear-gradient(120deg,#73f0e6,#25c5cc 48%,#7c68ed 122%); font: inherit; font-weight: 800; cursor: pointer; }
.form-panel button:disabled, .device-row button:disabled { cursor: wait; opacity: .62; }
.form-panel [role="status"] { min-height: 28px; color: #a7ded8; }
.device-row { display: grid; grid-template-columns: 1fr auto; gap: 4px 20px; padding: 18px 0; border-bottom: 1px solid var(--line); }
.device-row span { color: var(--muted); font-size: 13px; }
.device-row button { grid-column: 2; grid-row: 1 / 3; }
.footer { display: flex; justify-content: space-between; padding-block: 28px 48px; border-top: 1px solid var(--line); color: #7f8c95; font-size: 11px; }
:focus-visible { outline: 3px solid var(--cyan-bright); outline-offset: 4px; }
::selection { color: #fff; background: #6952d7; }
@media (max-width: 680px) {
  .shell { width: calc(100% - 30px); }
  .nav { align-items: center; flex-wrap: wrap; gap: 8px; padding-block: 10px; }
  .nav nav { width: 100%; gap: 9px; margin-left: 0; padding: 7px 0 2px; border-top: 1px solid var(--line); overflow-x: auto; }
  .nav nav a { flex: 0 0 auto; min-height: 38px; display: inline-flex; align-items: center; padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; }
  main { padding-block: 65px 90px; }
  h1 { font-size: 48px; }
  .lede { font-size: 16px; }
  .grid, .doc-index { grid-template-columns: 1fr; }
  .panel, .form-panel { padding: 22px; }
  .actions { flex-direction: column; }
  .actions .button { width: 100%; }
  .device-row { grid-template-columns: 1fr; }
  .device-row button { grid-column: 1; grid-row: auto; margin-top: 8px; }
  .footer { align-items: flex-start; flex-direction: column; gap: 5px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }
