.zd-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);height:32px;padding:0 var(--space-md);border:1px solid transparent;border-radius:var(--radius-base);font-family:var(--font-sans);font-size:var(--text-navigation);font-weight:var(--font-weight-navigation);line-height:var(--leading-navigation);white-space:nowrap;cursor:pointer;text-decoration:none;transition:background-color var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),color var(--motion-fast) var(--ease-default)}.zd-btn .material-symbols-outlined{font-size:var(--icon-sm)}.zd-btn-icon .material-symbols-outlined{font-size:var(--icon-md)}.zd-btn:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.zd-btn-primary{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.zd-btn-primary:not(:disabled):hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.zd-btn-primary:not(:disabled):active{background:var(--color-primary-active);border-color:var(--color-primary-active)}.zd-btn-ai{background:var(--color-ai);color:var(--color-ai-text);border-color:var(--color-ai)}.zd-btn-ai:not(:disabled):hover{background:var(--color-ai-hover);border-color:var(--color-ai-hover)}.zd-btn-ai:not(:disabled):active{background:var(--color-ai-active);border-color:var(--color-ai-active)}.zd-btn-ai:focus-visible{outline-color:var(--color-ai)}.zd-btn-brand{background:var(--color-brand);color:var(--color-brand-text);border-color:var(--color-brand)}.zd-btn-brand:not(:disabled):hover{background:var(--color-brand-hover);border-color:var(--color-brand-hover)}.zd-btn-brand:not(:disabled):active{background:var(--color-brand-active);border-color:var(--color-brand-active)}.zd-btn-brand:focus-visible{outline-color:var(--color-ink)}.zd-btn-primary-tinted{background:var(--color-primary-bg);color:var(--color-primary);border-color:transparent}.zd-btn-primary-tinted:not(:disabled):hover{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary)}.zd-btn-primary-tinted:not(:disabled):active{background:var(--color-primary-active);color:var(--color-primary-text);border-color:var(--color-primary-active)}.zd-btn-ai-tinted{background:var(--color-ai-bg);color:var(--color-ai);border-color:transparent}.zd-btn-ai-tinted:not(:disabled):hover{background:var(--color-ai);color:var(--color-ai-text);border-color:var(--color-ai)}.zd-btn-ai-tinted:not(:disabled):active{background:var(--color-ai-active);color:var(--color-ai-text);border-color:var(--color-ai-active)}.zd-btn-ai-tinted:focus-visible{outline-color:var(--color-ai)}.zd-btn-subtle{background:var(--color-surface-muted);color:var(--color-ink);border-color:transparent}.zd-btn-subtle:not(:disabled):hover{background:var(--color-primary-bg);color:var(--color-primary)}.zd-btn-subtle:not(:disabled):active{background:var(--color-surface-secondary)}.zd-btn-outline{background:transparent;color:var(--color-ink);border-color:var(--color-border-strong)}.zd-btn-outline:not(:disabled):hover{background:var(--color-surface-muted)}.zd-btn-outline:not(:disabled):active{background:var(--color-surface-pressed)}.zd-btn-ghost{background:transparent;color:var(--color-ink);border-color:transparent}.zd-btn-ghost:not(:disabled):hover{background:var(--color-surface-muted)}.zd-btn-ghost:not(:disabled):active{background:var(--color-surface-pressed)}.zd-btn-danger{background:var(--color-danger-solid);color:var(--color-on-danger);border-color:var(--color-danger-solid)}.zd-btn-danger:not(:disabled):hover{background:var(--color-danger-solid-hover);border-color:var(--color-danger-solid-hover)}.zd-btn-danger:not(:disabled):active{background:var(--color-danger-solid-active);border-color:var(--color-danger-solid-active)}.zd-btn-danger:focus-visible{outline-color:var(--color-danger)}.zd-btn-danger-subtle{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:transparent}.zd-btn-danger-subtle:not(:disabled):hover{background:var(--color-danger-solid);color:var(--color-on-danger);border-color:var(--color-danger-solid)}.zd-btn-danger-subtle:not(:disabled):active{background:var(--color-danger-solid-active);color:var(--color-on-danger);border-color:var(--color-danger-solid-active)}.zd-btn-danger-subtle:focus-visible{outline-color:var(--color-danger)}.zd-btn-link{background:transparent;color:var(--color-primary);border-color:transparent;padding:0;text-decoration:underline;text-underline-offset:4px}.zd-btn-link:not(:disabled):hover{opacity:.75;text-decoration:none}.zd-btn-icon{width:32px;height:32px;padding:0;background:transparent;color:var(--color-ink);border-color:transparent}.zd-btn-icon:not(:disabled):hover{background:var(--color-surface-muted)}.zd-btn-icon:not(:disabled):active{background:var(--color-surface-pressed)}.zd-btn:disabled,.zd-btn[disabled]{background:var(--color-disabled-bg);color:var(--color-disabled-text);border-color:var(--color-disabled-border);cursor:not-allowed}.zd-btn-icon:disabled,.zd-btn-icon[disabled]{background:transparent;border-color:transparent}.zd-btn-link:disabled,.zd-btn-link[disabled]{background:transparent;border-color:transparent;opacity:.5;text-decoration:none;pointer-events:none}.zd-fab{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--color-primary);color:var(--color-primary-text);border:1px solid var(--color-primary);border-radius:var(--radius-full);box-shadow:var(--shadow-overlay);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-default),border-color var(--motion-fast) var(--ease-default),box-shadow var(--motion-fast) var(--ease-default)}.zd-fab .material-symbols-outlined{font-size:var(--icon-lg)}.zd-fab-sm{width:32px;height:32px}.zd-fab-sm .material-symbols-outlined{font-size:var(--icon-md)}.zd-fab-lg{width:48px;height:48px}.zd-fab-lg .material-symbols-outlined{font-size:var(--icon-xl)}.zd-fab:not(:disabled):hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-overlay)}.zd-fab:not(:disabled):active{background:var(--color-primary-active);border-color:var(--color-primary-active);box-shadow:var(--shadow-overlay)}.zd-fab:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}.zd-fab:disabled{background:var(--color-disabled-bg);color:var(--color-disabled-text);border-color:var(--color-disabled-border);box-shadow:none;cursor:not-allowed}[data-theme=accessibility] .zd-btn-ai,[data-theme=accessibility] .zd-btn-brand,[data-theme=accessibility] .zd-btn-primary-tinted,[data-theme=accessibility] .zd-btn-ai-tinted,[data-theme=accessibility] .zd-btn-subtle,[data-theme=accessibility] .zd-btn-danger,[data-theme=accessibility] .zd-btn-danger-subtle{background:var(--color-surface-card);color:var(--color-ink);border-color:var(--color-component-border-color)}[data-theme=accessibility] .zd-btn-ai:not(:disabled):hover,[data-theme=accessibility] .zd-btn-brand:not(:disabled):hover,[data-theme=accessibility] .zd-btn-primary-tinted:not(:disabled):hover,[data-theme=accessibility] .zd-btn-ai-tinted:not(:disabled):hover,[data-theme=accessibility] .zd-btn-subtle:not(:disabled):hover,[data-theme=accessibility] .zd-btn-outline:not(:disabled):hover,[data-theme=accessibility] .zd-btn-ghost:not(:disabled):hover,[data-theme=accessibility] .zd-btn-icon:not(:disabled):hover,[data-theme=accessibility] .zd-btn-danger:not(:disabled):hover,[data-theme=accessibility] .zd-btn-danger-subtle:not(:disabled):hover{background:var(--color-hover-bg);color:var(--color-hover-text);border-color:var(--color-hover-bg)}[data-theme=accessibility] .zd-btn-danger:before{font-family:Material Symbols Outlined;font-feature-settings:"liga";font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24;content:"error";font-size:var(--icon-sm);line-height:1}.zd-btn-row{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}
