.ui-btn--loading{cursor:progress;pointer-events:none;position:relative}.ui-btn__spinner{position:absolute;top:50%;left:50%;margin:-.5em 0 0 -.5em;width:1em;height:1em;border:2px solid;border-right:2px solid transparent;border-radius:var(--r-pill);opacity:.9;animation:ui-spin .62s linear infinite}@keyframes ui-spin{to{transform:rotate(1turn)}}.ui-btn__label--hidden{visibility:hidden}.ui-btn--block{width:100%}.ui-field{display:flex;flex-direction:column;gap:var(--s-2)}.ui-field__label{font:var(--t-ui);font-weight:600;color:var(--fg-1)}.ui-field__optional{font-weight:400;color:var(--fg-3);margin-left:var(--s-1)}.ui-field__hint{font:var(--t-sm);color:var(--fg-3)}.ui-field__error{display:flex;align-items:center;gap:var(--s-2);font:var(--t-sm);font-weight:500;color:var(--danger-fg)}.ui-field__error:before{content:"";width:6px;height:6px;flex:0 0 auto;border-radius:var(--r-pill);background:var(--danger)}.ui-chip--button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;cursor:pointer;font:600 14px/1 var(--font-sans);transition:background-color var(--t-med) var(--ease),border-color var(--t-med) var(--ease),color var(--t-med) var(--ease),box-shadow var(--t-fast) var(--ease)}.ui-chip--button:focus-visible{outline:none;box-shadow:var(--sh-focus)}.ui-chip--selectable[aria-pressed=false]{background:var(--sand-150);color:var(--fg-2)}.ui-chip--selectable[aria-pressed=false]:hover{background:var(--sand-200)}.ui-chip--selectable[aria-pressed=true]{background:var(--clay-50);color:var(--clay-700);border-color:var(--clay-500)}.ui-chip__check{flex:0 0 auto}.ui-chip__remove{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-right:-4px;flex:0 0 auto;border:0;border-radius:var(--r-pill);background:transparent;color:inherit;cursor:pointer;opacity:.7;transition:opacity var(--t-fast) var(--ease),background-color var(--t-fast) var(--ease)}.ui-chip__remove:hover{opacity:1;background:var(--clay-100)}.ui-chip__remove:focus-visible{outline:none;opacity:1;box-shadow:var(--sh-focus)}.ui-loop{display:block;overflow:visible}.ui-loop__ring{fill:none;stroke:currentColor;stroke-linecap:round}.ui-loop__arrow,.ui-loop__node{fill:currentColor}.ui-loop__label{font-family:var(--font-mono);font-size:3.2px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;fill:var(--fg-3)}.ui-loop--animate .ui-loop__ring{stroke-dasharray:100;stroke-dashoffset:100;animation:ui-loop-draw var(--arc-ms) linear forwards;animation-delay:var(--nodes-ms)}.ui-loop--animate .ui-loop__node{opacity:0;transform-box:fill-box;transform-origin:center;animation:ui-loop-pop .22s var(--ease) forwards;animation-delay:calc(var(--i) * 80ms)}.ui-loop--animate .ui-loop__arrow,.ui-loop--animate .ui-loop__labels{opacity:0;animation:ui-loop-fade .2s var(--ease) forwards;animation-delay:var(--total-ms)}.ui-loop--animate .ui-loop__group{transform-box:fill-box;transform-origin:center;animation:ui-loop-pulse .32s var(--ease);animation-delay:calc(var(--nodes-ms) + var(--arc-ms))}@keyframes ui-loop-draw{to{stroke-dashoffset:0}}@keyframes ui-loop-pop{0%{opacity:0;transform:scale(.4)}to{opacity:1;transform:scale(1)}}@keyframes ui-loop-fade{to{opacity:1}}@keyframes ui-loop-pulse{0%{transform:scale(1)}50%{transform:scale(1.04)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ui-loop--animate .ui-loop__arrow,.ui-loop--animate .ui-loop__group,.ui-loop--animate .ui-loop__labels,.ui-loop--animate .ui-loop__node,.ui-loop--animate .ui-loop__ring{animation:none;opacity:1;stroke-dashoffset:0;transform:none}.ui-btn__spinner{animation-duration:1.6s}}