.ab-page{min-height:calc(100dvh - 64px);padding:clamp(56px, 9vw, 128px) var(--s-5,24px);justify-content:center;align-items:center;display:flex}.ab-shell{width:100%;max-width:720px}.ab-kicker{align-items:center;gap:var(--s-3,12px);flex-wrap:wrap;margin:0;display:flex}.ab-eyebrow{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:.75rem;font-weight:500}.ab-h1{font-family:var(--font-display,var(--font-sans));letter-spacing:-.03em;color:var(--ink);text-wrap:balance;margin:clamp(16px,2.4vw,24px) 0 0;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:600;line-height:1.06}.ab-lede{color:var(--ink-dim);max-width:62ch;margin:var(--s-5,24px) 0 0;font-size:1.125rem;line-height:1.65}.ab-rule{border:0;border-top:1px solid var(--line-soft);margin:clamp(36px,6vw,64px) 0}.ab-notify{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start;gap:clamp(24px,4vw,40px);display:grid}.ab-h2{font-family:var(--font-display,var(--font-sans));letter-spacing:-.02em;color:var(--ink);margin:0;font-size:clamp(1.5rem,2.6vw,1.875rem);font-weight:600;line-height:1.15}.ab-notify-lede{color:var(--ink-dim);max-width:44ch;margin:var(--s-4,16px) 0 0;font-size:1rem;line-height:1.65}.ab-notify-fine{color:var(--ink-faint);max-width:40ch;margin:var(--s-4,16px) 0 0;font-size:.8125rem;line-height:1.55}.ab-notify-panel{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:clamp(20px,3vw,28px)}.ab-aside{color:var(--ink-faint);border-top:1px solid var(--line-soft);margin:clamp(36px,6vw,64px) 0 0;padding-top:clamp(20px,3vw,28px);font-size:.9375rem;line-height:1.65}.ab-link{color:var(--accent-hover,var(--accent));text-underline-offset:2px;text-decoration:underline}.ab-link:hover{color:var(--accent)}.ab-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.ab-notify-form{gap:var(--s-4,16px);flex-direction:column;display:flex}.ab-field{gap:var(--s-2,8px);flex-direction:column;display:flex}.ab-label{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);font-size:.6875rem;font-weight:500}.ab-input{font-family:var(--font-sans);color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--r,10px);width:100%;transition:border-color var(--dur-fast,.15s) var(--ease,ease-out);padding:.75em .9em;font-size:1rem;line-height:1.4}.ab-input::placeholder{color:var(--ink-ghost)}.ab-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--accent)}.ab-input[aria-invalid=true]{border-color:var(--bad)}.ab-input:disabled{opacity:.55;cursor:not-allowed}.ab-select{appearance:none;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 1.1em) 55%,calc(100% - .75em) 55%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;padding-right:2.25em}.ab-btn{font-family:var(--font-sans);letter-spacing:-.005em;border-radius:var(--r-md,12px);cursor:pointer;text-align:center;transition:background var(--dur-fast,.15s) var(--ease,ease-out), color var(--dur-fast,.15s) var(--ease,ease-out), border-color var(--dur-fast,.15s) var(--ease,ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:.5em;padding:.85em 1.35em;font-size:.9375rem;font-weight:500;line-height:1.2;display:inline-flex}.ab-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.ab-btn-primary{background:var(--accent);color:var(--accent-ink,#fff);border-color:var(--accent)}.ab-btn-primary:hover:not(:disabled){background:var(--accent-hover,var(--accent));border-color:var(--accent-hover,var(--accent))}.ab-btn-primary:disabled{opacity:.45;cursor:not-allowed}.ab-notify-submit{align-self:flex-start}.ab-notify-error{color:var(--bad);margin:0;font-size:.875rem}.ab-notify-done{padding:var(--s-2,8px) 0}.ab-notify-done-head{font-family:var(--font-display,var(--font-sans));letter-spacing:-.015em;color:var(--ink);margin:0 0 var(--s-3,12px);font-size:1.25rem;font-weight:600}.ab-notify-done-body{color:var(--ink-dim);margin:0;font-size:.9375rem;line-height:1.65}@media (max-width:640px){.ab-page{align-items:flex-start;min-height:0}.ab-btn-primary{width:100%}.ab-notify-submit{align-self:stretch}}@media (prefers-reduced-motion:reduce){.ab-btn,.ab-input{transition:none}}
