.pui-banner{box-sizing:border-box;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-alt);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);margin:0;line-height:1.6;display:flex}.pui-banner--warning{border-color:var(--color-warning)}.pui-banner--error{border-color:var(--color-error)}.pui-banner__icon{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;color:var(--color-accent);flex:none;margin-top:2px}.pui-banner--warning .pui-banner__icon{color:var(--color-warning)}.pui-banner--error .pui-banner__icon{color:var(--color-error)}.pui-banner__body{gap:var(--space-2);overflow-wrap:anywhere;flex:1;min-width:0;display:grid}.pui-banner__heading{font-weight:600}.pui-banner__actions{margin-top:var(--space-1);display:flex}.pui-banner__dismiss{margin:calc(var(--space-2) * -1) calc(var(--space-2) * -1) 0 0}.pui-chip{box-sizing:border-box;align-items:center;gap:var(--space-2);min-width:44px;min-height:44px;padding:var(--space-2) var(--space-3);appearance:none;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);text-align:start;cursor:pointer;transition:background var(--motion-fast) var(--ease-out), border-color var(--motion-fast) var(--ease-out);justify-content:center;margin:0;font-weight:400;line-height:1.4;display:inline-flex}.pui-chip__icon{color:var(--color-accent);flex:none;display:inline-flex}.pui-chip--selected{border-color:var(--color-primary);background:var(--color-surface-alt);font-weight:600}.pui-chip:disabled{opacity:.65;cursor:not-allowed}.pui-chip:focus-visible,.pui-chip[data-pui-force=focus]{outline:3px solid var(--color-focus);outline-offset:4px}.pui-chip[data-pui-force=hover]{border-color:var(--color-accent);background:var(--color-surface-alt)}@media (hover:hover){.pui-chip:hover:not(:disabled){border-color:var(--color-accent);background:var(--color-surface-alt)}}@media (prefers-reduced-motion:reduce){.pui-chip{transition:none}}.pui-badge{box-sizing:border-box;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-muted);font-family:var(--font-mono);font-size:var(--text-xs);margin:0;font-weight:400;line-height:1.5;display:inline-flex}.pui-badge--assumed{background:var(--color-surface-alt);color:color-mix(in srgb, var(--color-warning) 80%, var(--color-text))}.pui-badge--ok{background:color-mix(in srgb, var(--color-ok) 12%, var(--color-surface));color:color-mix(in srgb, var(--color-ok) 80%, var(--color-text))}.pui-badge--warning{background:color-mix(in srgb, var(--color-warning) 12%, var(--color-surface));color:color-mix(in srgb, var(--color-warning) 80%, var(--color-text))}.pui-stepper{box-sizing:border-box;align-items:center;gap:var(--space-2);margin:0;display:inline-flex}.pui-stepper__value{min-width:24px;color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-base);font-variant-numeric:tabular-nums;text-align:center;line-height:1.5;display:block}.pui-eyebrow{box-sizing:border-box;color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:var(--eyebrow-tracking);text-transform:uppercase;margin:0;font-weight:500;line-height:1.5}.pui-field{box-sizing:border-box;gap:var(--space-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);margin:0;line-height:1.6;display:grid}.pui-field__label{font-size:var(--text-sm);font-weight:600}.pui-field__control{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:var(--space-3);appearance:none;border:1px solid var(--color-field-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:max(16px, var(--text-base));resize:vertical;margin:0;line-height:1.6;display:block}.pui-field__control::placeholder{color:var(--color-muted);opacity:1}.pui-field__control:disabled{opacity:.65;cursor:not-allowed}.pui-field__control[aria-invalid=true]{border-color:var(--color-error)}.pui-field__control:focus-visible,[data-pui-force=focus] .pui-field__control{border-color:var(--color-focus);outline:3px solid var(--color-focus);outline-offset:4px}.pui-field__hint,.pui-field__error{font-size:var(--text-sm);margin:0}.pui-field__hint{color:var(--color-muted)}.pui-field__error{color:var(--color-error)}.pui-select{box-sizing:border-box;gap:var(--space-2);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);margin:0;line-height:1.6;display:grid}.pui-select__label{font-size:var(--text-sm);font-weight:600}.pui-select__wrap{display:block;position:relative}.pui-select__control{box-sizing:border-box;width:100%;min-width:0;min-height:48px;padding:var(--space-3) calc(var(--space-3) * 2 + 20px) var(--space-3) var(--space-3);appearance:none;border:1px solid var(--color-field-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:max(16px, var(--text-base));text-overflow:ellipsis;cursor:pointer;margin:0;line-height:1.6;display:block}.pui-select__control option{background:var(--color-surface);color:var(--color-text)}.pui-select__arrow{top:50%;right:var(--space-3);fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:20px;height:20px;position:absolute;translate:0 -50%}.pui-select__control:disabled{opacity:.65;cursor:not-allowed}.pui-select__control:disabled+.pui-select__arrow{opacity:.65}.pui-select__control[aria-invalid=true]{border-color:var(--color-error)}.pui-select__control:focus-visible,[data-pui-force=focus] .pui-select__control{border-color:var(--color-focus);outline:3px solid var(--color-focus);outline-offset:4px}.pui-select__hint,.pui-select__error{font-size:var(--text-sm);margin:0}.pui-select__hint{color:var(--color-muted)}.pui-select__error{color:var(--color-error)}.pui-skeleton{box-sizing:border-box;width:var(--pui-skeleton-width,100%);max-width:100%;height:var(--pui-skeleton-height,24px);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface-alt);margin:0;animation:1.2s ease-in-out infinite alternate pui-skeleton-pulse;display:block}.pui-skeleton--block{height:var(--pui-skeleton-height,80px)}@keyframes pui-skeleton-pulse{0%{opacity:.4}to{opacity:1}}@media (prefers-reduced-motion:reduce){.pui-skeleton{animation:none}}
