.ap-chrome{background:var(--ss-bg-chrome);border-bottom:1px solid var(--ss-line)}.ap-chrome-meta{font-family:var(--ss-font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ss-fg-4);font-size:10px}.ap-eyebrow{font-family:var(--ss-font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ss-fg-3);font-size:11px}.ap-eyebrow-dot{border-radius:var(--ss-r-sm);background:var(--ss-accent);flex-shrink:0;width:6px;height:6px}.ap-h1{font-family:var(--ss-font-sans);letter-spacing:-.035em;color:var(--ss-fg);font-size:clamp(34px,5.6vw,64px);font-weight:700;line-height:1.03}.ap-h1-em{color:var(--ss-accent);white-space:nowrap;font-style:normal;position:relative}.ap-underline{background:var(--ss-accent);border-radius:var(--ss-r-sm);height:3px;position:absolute;bottom:-2px;left:0;right:0}.ap-lede{font-family:var(--ss-font-serif);color:var(--ss-fg-2);max-width:56ch;font-size:17px;line-height:1.62}.ap-strong{color:var(--ss-fg);font-weight:600}.ap-pull{border-left:2px solid var(--ss-line-strong);color:var(--ss-fg-2);font-family:var(--ss-font-serif);max-width:52ch;padding:2px 0 2px 18px;font-size:17px;font-style:italic;line-height:1.5}.ap-btn{border-radius:var(--ss-r-md);min-height:44px;font-family:var(--ss-font-sans);letter-spacing:-.005em;border:1px solid var(--ss-line-strong);color:var(--ss-fg);white-space:nowrap;transition:background var(--ss-dur) var(--ss-ease), border-color var(--ss-dur) var(--ss-ease);background:0 0;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:14px;font-weight:500;display:inline-flex}.ap-btn:hover{background:var(--ss-bg-elev-2)}.ap-btn--primary{background:var(--ss-accent);border-color:var(--ss-accent);color:var(--ss-on-accent)}.ap-btn--primary:hover{background:var(--ss-accent-2);border-color:var(--ss-accent-2)}.ap-btn--lg{min-height:48px;padding:0 22px;font-size:15px}.ap-proven{font-family:var(--ss-font-mono);color:var(--ss-fg-2);background:var(--ss-bg-elev);border:1px solid var(--ss-line);border-radius:var(--ss-r-sm);padding:7px 12px;font-size:11.5px}.ap-mark{border-radius:var(--ss-r-sm);background:var(--ss-sea);flex-shrink:0;width:7px;height:7px;display:inline-block}.ap-plain-lede{font-family:var(--ss-font-sans);letter-spacing:-.018em;color:var(--ss-fg-2);border-left:2px solid var(--ss-line-strong);max-width:780px;padding-left:18px;font-size:clamp(19px,2.4vw,25px);font-weight:500;line-height:1.38}.ap-section-rule{border-top:1px solid var(--ss-line-strong)}.ap-h2{font-family:var(--ss-font-sans);letter-spacing:-.03em;color:var(--ss-fg);font-size:clamp(26px,4vw,40px);font-weight:700;line-height:1.08}.ap-aside{font-family:var(--ss-font-serif);color:var(--ss-fg-3);max-width:32ch;font-size:14.5px;line-height:1.6}.ap-ratio-32{aspect-ratio:3/2}.ap-ratio-11{aspect-ratio:1}.ap-plate-frame{background:var(--ss-bg-elev);border:1px solid var(--ss-line);border-radius:var(--ss-r-md)}.ap-plate-frame--compact{border:0;border-bottom:1px solid var(--ss-line);border-radius:var(--ss-r-lg) var(--ss-r-lg) 0 0}.ap-fig{font-family:var(--ss-font-mono);color:var(--ss-fg-4);letter-spacing:.02em;font-size:11px}.ap-card{background:var(--ss-bg-elev);border:1px solid var(--ss-line);border-radius:var(--ss-r-lg)}.ap-step-mark{font-family:var(--ss-font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ss-fg-3);font-size:10px}.ap-step-num,.ap-problem-num{font-family:var(--ss-font-mono);font-variant-numeric:tabular-nums;color:var(--ss-fg-4);font-size:20px;font-weight:400;line-height:1}.ap-h3{font-family:var(--ss-font-sans);letter-spacing:-.022em;color:var(--ss-fg);font-size:19px;font-weight:600;line-height:1.18}.ap-h3--sm{font-size:18px}.ap-h3--xs{letter-spacing:-.018em;font-size:17px}.ap-body{font-family:var(--ss-font-serif);color:var(--ss-fg-2);font-size:14.5px;line-height:1.62}.ap-body--sm{font-size:13.5px;line-height:1.58}.ap-kicker{font-family:var(--ss-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ss-fg-3);font-size:10px}.ap-code{font-family:var(--ss-font-mono);background:var(--ss-bg-code);border:1px solid var(--ss-line);border-radius:var(--ss-r-sm);color:var(--ss-fg);padding:1px 6px;font-size:.86em}.ap-moat-col{border-bottom:1px solid var(--ss-line);background:var(--ss-bg-code)}.ap-moat-col:last-child{border-bottom:0}@media (min-width:768px){.ap-moat-col{border-bottom:0;border-right:1px solid var(--ss-line)}.ap-moat-col:last-child{border-right:0}}.ap-moat-col--bound{background:var(--ss-bg-elev)}.ap-moat-label{font-family:var(--ss-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ss-fg-3);font-size:10px}.ap-moat-label--bound{color:var(--ss-fg-2)}.ap-moat-row{font-family:var(--ss-font-serif);font-size:14.5px;line-height:1.5}.ap-moat-row--on{color:var(--ss-fg)}.ap-moat-row--off{color:var(--ss-fg-3)}.ap-tick{border-radius:var(--ss-r-sm);width:18px;height:18px;font-family:var(--ss-font-mono);border:1px solid var(--ss-line-strong);color:var(--ss-fg-4);background:0 0;flex-shrink:0;font-size:11px;font-weight:600;line-height:1}.ap-tick--ok{border-color:var(--ss-sea);color:var(--ss-sea);background:var(--ss-sea-tint);border-radius:50%}.ap-proof-ledger{background:var(--ss-bg-code);border-color:var(--ss-line)}.ap-stat{background:var(--ss-bg-elev);border:1px solid var(--ss-line);border-radius:var(--ss-r-md)}.ap-stat-k{font-family:var(--ss-font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--ss-fg);font-size:17px;font-weight:600}.ap-stat-v{font-family:var(--ss-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ss-fg-4);font-size:10px}.ap-ledger-label{font-family:var(--ss-font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ss-fg-3);font-size:10px}.ap-ledger{font-family:var(--ss-font-mono);font-variant-numeric:tabular-nums;font-size:13px}.ap-ledger-k{color:var(--ss-fg-3);letter-spacing:.04em}.ap-ledger-sub{color:var(--ss-fg-4);font-size:10.5px}.ap-ledger-v{color:var(--ss-fg-2);text-align:right;min-width:68px}.ap-ledger-v--accent{color:var(--ss-change);font-weight:600}.ap-ledger-v--bold{color:var(--ss-fg);font-weight:600}.ap-hair{background:var(--ss-line);border:0;height:1px}.ap-meta-mono{font-family:var(--ss-font-mono);color:var(--ss-fg-3);font-size:11px}.ap-colophon{border-top:1px solid var(--ss-line)}.ap-colophon-meta{font-family:var(--ss-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ss-fg-4);font-size:10px}@media (prefers-reduced-motion:no-preference){.ap-rise{animation:ap-rise .56s var(--ss-ease)}@keyframes ap-rise{0%{transform:translateY(12px)}to{transform:translateY(0)}}}
