@layer primitives{.button{--button-text:15px;--button-weight:700;--button-pad-y:17px;--button-pad-x:25px;--button-gap:26px;--button-focus-offset:5px;--button-small-pad-y:11px;--button-small-pad-x:16px;--button-small-gap:10px;--button-radius:var(--radius-control);--button-min-height:44px;--button-shadow:none;--button-bg:var(--accent);--button-ink:var(--ink-on-accent);--button-border:var(--accent);justify-content:center;align-items:center;gap:var(--button-gap);min-height:var(--button-min-height);padding:var(--button-pad-y) var(--button-pad-x);border:1px solid var(--button-border);border-radius:var(--button-radius);background:var(--button-bg);color:var(--button-ink);box-shadow:var(--button-shadow);font-family:inherit;line-height:inherit;font-size:var(--button-text);font-weight:var(--button-weight);text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background-color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);margin:0;display:inline-flex;position:relative}.button:hover{--button-bg:var(--accent-hover);--button-border:var(--accent-hover)}.button:active{--button-bg:var(--accent-pressed);--button-border:var(--accent-pressed);transition-duration:var(--dur-press);transform:scale(.98)}.button:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:var(--button-focus-offset)}.button>svg{flex:none}.button.secondary{--button-bg:var(--btn-secondary-bg);--button-ink:var(--accent);--button-border:var(--btn-secondary-border)}.button.secondary:hover{--button-bg:var(--accent-soft)}.button.secondary:active{--button-bg:var(--accent-soft);--button-border:var(--accent-pressed)}.surface-inverse .button.secondary{--button-bg:transparent;--button-border:var(--line-control)}.surface-inverse .button.secondary:hover,.surface-inverse .button.secondary:active{--button-bg:color-mix(in srgb,var(--accent) 16%,transparent)}.button.quiet{--button-bg:transparent;--button-ink:var(--accent);--button-border:transparent;text-underline-offset:5px;transition:text-decoration-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);padding-inline:4px;text-decoration-line:underline}.button.quiet:hover,.button.quiet:active{--button-bg:transparent;--button-border:transparent;text-decoration-thickness:2px}.button.danger{--button-bg:var(--danger);--button-ink:var(--ink-on-accent);--button-border:var(--danger)}.button.danger:hover,.button.danger:active{--button-bg:var(--danger-hover);--button-border:var(--danger-hover)}.button.lime{--button-bg:var(--highlight);--button-ink:var(--ink-on-highlight);--button-border:var(--highlight)}.button.lime:hover{--button-bg:var(--highlight-hover);--button-border:var(--highlight-hover)}.button.small{padding:var(--button-small-pad-y) var(--button-small-pad-x);gap:var(--button-small-gap)}.button.large{--button-min-height:52px;padding-inline:var(--space-6);font-size:var(--text-md)}.button:disabled,.button[aria-disabled=true]{--button-bg:var(--btn-disabled-bg,var(--surface-sunken));--button-ink:var(--btn-disabled-ink,var(--ink-subtle));--button-border:var(--btn-disabled-border,var(--line-strong));opacity:1;cursor:not-allowed;transform:none}.button.quiet:disabled,.button.quiet[aria-disabled=true]{--button-bg:transparent;--button-border:transparent;text-decoration:none}.button[aria-busy=true]{cursor:progress;pointer-events:none;animation:button-label-out var(--dur-fast) var(--ease-out) .15s both;transform:none}.button[aria-busy=true]:after{content:"";box-sizing:border-box;border:2px solid;border-color:color-mix(in srgb,var(--button-ink) 30%,transparent);border-top-color:var(--button-ink);border-radius:var(--radius-round);width:16px;height:16px;animation:button-reveal var(--dur-fast) var(--ease-out) .15s both,button-spin .7s linear infinite;margin:auto;position:absolute;inset:0}.button-busy-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.button[data-state=done]{--button-bg:var(--success);--button-ink:var(--ink-on-accent);--button-border:var(--success)}.button[data-state=done]>.button-held{align-items:center;gap:var(--space-2);visibility:hidden;display:inline-flex}.button-done{justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-2);white-space:nowrap;display:flex;position:absolute;inset:0}.button-check{flex:none;width:16px;height:16px}.button-check path{stroke-dasharray:1;stroke-dashoffset:1px;animation:button-check-draw var(--dur-base) var(--ease-out) forwards}@keyframes button-label-out{to{color:#0000}}@keyframes button-reveal{0%{opacity:0}to{opacity:1}}@keyframes button-spin{to{transform:rotate(1turn)}}@keyframes button-check-draw{to{stroke-dashoffset:0}}.icon-button{--icon-button-size:44px;--icon-button-pad:0;--icon-button-radius:var(--radius-control);--icon-button-focus-offset:var(--focus-offset);min-width:var(--icon-button-size);min-height:var(--icon-button-size);padding:var(--icon-button-pad);border-radius:var(--icon-button-radius);color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;justify-content:center;align-items:center;margin:0;display:inline-flex}.icon-button:hover{background:var(--icon-button-hover,var(--accent-soft))}.surface-inverse .icon-button:hover{background:color-mix(in srgb,var(--accent) 16%,transparent)}.icon-button:active{transition-duration:var(--dur-press);transform:scale(.94)}.icon-button:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:var(--icon-button-focus-offset)}.icon-button:disabled,.icon-button[aria-disabled=true]{color:var(--ink-subtle);cursor:not-allowed;background:0 0;transform:none}@media (prefers-reduced-motion:reduce){.button:active,.icon-button:active{transform:none}.button[aria-busy=true]:after{animation:button-reveal var(--dur-fast) var(--ease-out) .15s both}.button[aria-busy=true]:has(.button-busy-label):after{content:none}.button[aria-busy=true] .button-busy-label{clip-path:none;justify-content:center;align-items:center;gap:var(--space-2);width:auto;height:auto;color:var(--button-ink);animation:button-reveal var(--dur-fast) var(--ease-out) .15s both;display:flex;position:absolute;inset:0}.button[aria-busy=true] .button-busy-label:before{content:"";box-sizing:border-box;border:2px solid;border-color:color-mix(in srgb,var(--button-ink) 30%,transparent);border-top-color:var(--button-ink);border-radius:var(--radius-round);width:12px;height:12px}}}
@layer primitives{.text-link{--text-link-text:16px;--text-link-focus-offset:5px;--text-link-offset:.34em;--text-link-hover-offset:.24em;--text-link-gap:.45em;--text-link-min-height:auto;--text-link-line:1px;--text-link-line-hover:2px;--text-link-line-colour:color-mix(in srgb,currentColor 40%,transparent);align-items:center;gap:var(--text-link-gap);min-height:var(--text-link-min-height);color:var(--text-link-ink,inherit);font-size:var(--text-link-text);font-weight:var(--weight-strong);line-height:var(--text-link-leading,inherit);-webkit-text-decoration:underline var(--text-link-line) var(--text-link-line-colour);text-decoration:underline var(--text-link-line) var(--text-link-line-colour);text-underline-offset:var(--text-link-offset);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--dur-fast) var(--ease-out),text-decoration-color var(--dur-fast) var(--ease-out),text-underline-offset var(--dur-fast) var(--ease-out);display:inline-flex}.text-link:hover,.text-link:focus-visible{text-decoration-color:currentColor;text-decoration-thickness:var(--text-link-line-hover);text-underline-offset:var(--text-link-hover-offset)}.text-link:focus-visible{outline:var(--focus-width) solid var(--focus);outline-offset:var(--text-link-focus-offset)}.text-link>svg{flex:none}button.text-link{color:inherit;font-family:inherit;font-style:inherit;font-weight:inherit;line-height:inherit;background:0 0;border:0;margin:0;padding:6px 0}.text-link.inline{min-height:0;font-size:inherit;padding:0;display:inline}.text-link:disabled,.text-link[aria-disabled=true]{color:var(--ink-subtle);cursor:not-allowed;text-decoration-color:currentColor}@media (max-width:800px){.text-link:not(.inline){--text-link-min-height:44px}}}
@layer primitives{.eyebrow{--eyebrow-text:var(--text-sm);--eyebrow-weight:var(--weight-strong);--eyebrow-tracking:0;--eyebrow-leading:var(--leading-body);--eyebrow-ink:var(--ink-muted);font-size:var(--eyebrow-text);font-weight:var(--eyebrow-weight);line-height:var(--eyebrow-leading);letter-spacing:var(--eyebrow-tracking);text-transform:none;color:var(--eyebrow-ink);margin:0;display:block}:is(.section-header,.section-heading){--section-header-gap:var(--space-5);--section-header-space:var(--space-5);--section-header-title:var(--text-3xl);justify-content:space-between;align-items:flex-end;gap:var(--section-header-gap);margin-bottom:var(--section-header-space);display:flex}:is(.section-header,.section-heading) .eyebrow{margin-bottom:var(--space-2)}:is(.section-heading h2,.section-header-title){font-size:var(--section-header-title);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.section-header-text{flex-direction:column;min-width:0;display:flex}.section-header-title{margin:0}.section-header[data-level="3"] .section-header-title{font-size:var(--text-xl);line-height:var(--leading-snug)}.section-header-lead{margin:var(--space-3) 0 0;color:var(--ink-muted);font-size:var(--text-md);line-height:var(--leading-body);max-width:60ch}.section-header-action{align-items:center;gap:var(--space-3);flex-wrap:wrap;flex:none;display:flex}.section-heading>.text-link,.section-header-action{padding-bottom:5px}.section-heading>.muted{font-size:var(--text-sm);padding-bottom:6px}@media (max-width:800px){:is(.section-header,.section-heading){--section-header-gap:var(--space-4);align-items:flex-start}.section-heading>.text-link{white-space:nowrap;align-self:flex-end}.section-heading>.muted{display:none}}@media (max-width:480px){:is(.section-header,.section-heading){--section-header-gap:var(--space-3);flex-direction:column}.section-heading>.text-link{align-self:flex-start}}}
