.toolbar{gap:var(--app-space-2);margin-bottom:var(--app-space-3);flex-wrap:wrap}.toolbar,.toolbar-actions{display:flex;align-items:stretch}.toolbar-actions{gap:var(--app-space-1);flex-shrink:0}.form-control{height:var(--app-control-h);padding:var(--app-space-2) var(--app-space-3);border:1px solid var(--color-border);border-radius:var(--app-radius-md);font-size:var(--app-text-base);background:transparent;color:var(--foreground);-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-control:focus{outline:2px solid var(--color-primary);outline-offset:-1px}.btn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:var(--app-space-1);height:var(--app-control-h);padding:var(--app-space-2) var(--app-space-3);border:1px solid var(--color-border);border-radius:var(--app-radius-md);background:var(--color-surface-raised);color:var(--foreground);font-size:var(--app-text-sm);line-height:1;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s}.btn:hover{background:var(--color-border-subtle);border-color:var(--color-primary-hover)}.btn:active{transform:translateY(1px)}.btn.active{background:var(--color-primary-hover);color:#fff;border-color:var(--color-primary-hover)}.btn.active:hover{background:var(--color-primary)}.btn:disabled{opacity:.35;cursor:default;pointer-events:none}.btn svg{width:.9rem;height:.9rem}.btn-toggle{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--app-space-2);height:var(--app-control-h);padding:var(--app-space-2) var(--app-space-3);border:1px solid var(--color-border);border-radius:var(--app-radius-md);font-size:var(--app-text-sm);line-height:1;cursor:pointer;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn-toggle input[type=checkbox]{margin:0}.btn-ghost{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--app-space-2);color:var(--color-text-muted);font-size:var(--app-text-sm);cursor:pointer;white-space:nowrap;transition:color .15s}.btn-ghost:hover{color:var(--color-primary-hover)}.btn-ghost svg{width:1rem;height:1rem}[data-primary=true]{background:var(--blue);color:#fff;border-color:var(--blue)}[data-primary=true]:hover{background:var(--blueAlt);border-color:var(--blueAlt);color:#fff}[data-primary=true]:active{transform:scale(.97);box-shadow:none}.btn-link{all:unset;box-sizing:border-box;color:var(--buildMode);cursor:pointer;font:600 var(--app-text-base)/1.2 inherit;text-decoration:underline}.btn-link:hover{color:var(--color-primary)}.inline-field{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:var(--app-space-1);font-size:var(--app-text-sm);white-space:nowrap}.inline-field input[type=number]{width:3.5rem;padding:var(--app-space-2);font-size:var(--app-text-sm);border:1px solid var(--color-border);border-radius:var(--app-radius-md);height:36px}