:root{--btn-shine-color:var(--white-shine);--gradient-accent:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);--radius-pill:28px}.app-modal-btn-danger,.app-modal-btn-primary,.btn-shine,.pill-btn,.pill-save-btn,.pill-toggle-btn,.settings-btn-primary,.settings-btn-secondary.filled{overflow:hidden;position:relative;&:before{background:linear-gradient(90deg,transparent,var(--btn-shine-color),transparent);content:"";height:100%;left:0;position:absolute;top:0;transform:translateX(-100%);transition:transform .5s;width:100%}&:hover:before{transform:translateX(100%)}}.btn-shine--accent{--btn-shine-color:var(--accent-shadow-light)}.action-btn.disabled,.action-btn:disabled,.app-modal-btn-danger-outline.disabled,.app-modal-btn-danger-outline:disabled,.app-modal-btn-danger.disabled,.app-modal-btn-danger:disabled,.app-modal-btn-primary.disabled,.app-modal-btn-primary:disabled,.app-modal-btn-secondary.disabled,.app-modal-btn-secondary:disabled,.compact-btn.disabled,.compact-btn:disabled,.mobile-control-btn.disabled,.mobile-control-btn:disabled,.pill-action-btn.danger.disabled,.pill-action-btn.danger:disabled,.pill-action-btn.disabled,.pill-action-btn:disabled,.pill-btn.disabled,.pill-btn:disabled,.pill-save-btn.disabled,.pill-save-btn:disabled,.pill-toggle-btn.disabled,.pill-toggle-btn:disabled,.settings-btn-primary.disabled,.settings-btn-primary:disabled,.settings-btn-secondary.disabled,.settings-btn-secondary.filled.disabled,.settings-btn-secondary.filled:disabled,.settings-btn-secondary:disabled,.stack-btn.disabled,.stack-btn:disabled{background:var(--disabled);border-color:var(--disabled);box-shadow:none;color:var(--text-muted);cursor:not-allowed;opacity:.55;pointer-events:none;&:before{content:none}&:active,&:focus,&:hover{background:var(--disabled);border-color:var(--disabled);box-shadow:none;color:var(--text-muted);opacity:.55}& i{color:inherit;transform:none}}.action-btn{align-items:center;background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 100%);border:none;border-radius:var(--radius-pill);box-shadow:0 3px 10px var(--accent-border),0 1px 3px var(--shadow-card);color:var(--text-on-accent);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:13px;font-weight:600;height:38px;justify-content:center;padding:0 20px;text-align:center;transition:background-color var(--transition-medium),color var(--transition-medium),box-shadow var(--transition-medium),transform var(--transition-medium);white-space:nowrap;&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);box-shadow:0 5px 15px var(--accent-shadow-soft),0 2px 5px var(--shadow-card);color:var(--text-on-accent);text-decoration:none}&.action-btn-pressed,&:is(.is-pressed,:focus-visible:active){box-shadow:inset 0 2px 4px var(--shadow-stronger),0 1px 2px var(--shadow-card);opacity:.9;outline:none}&:is(.is-pressed,:focus-visible:active){background:linear-gradient(135deg,var(--accent-shade) 0,var(--accent-shade-2) 100%)}&:focus{background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 100%);box-shadow:0 3px 10px var(--accent-border),0 0 0 3px var(--accent-border);outline:none}&.btn-outline-danger,&:focus{color:var(--text-on-accent)}&.btn-outline-danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);border:none;box-shadow:0 3px 10px var(--danger-shadow),0 1px 3px var(--shadow-card);&:hover{background:linear-gradient(135deg,var(--danger-hover) 0,var(--danger) 100%);box-shadow:0 5px 15px var(--danger-shadow),0 2px 5px var(--shadow-card)}&:is(.is-pressed,:focus-visible:active){background:linear-gradient(135deg,var(--danger-darker) 0,var(--danger-darkest) 100%)}&:focus{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);box-shadow:0 3px 10px var(--danger-shadow),0 0 0 3px var(--danger-shadow);outline:none}}&.action-btn-loading{background:linear-gradient(135deg,var(--accent) 0,var(--accent-dark) 100%)!important;border:none!important;box-shadow:0 3px 10px var(--accent-border),0 1px 3px var(--shadow-card)!important;color:var(--color-light)!important;cursor:default;opacity:.9;outline:none!important;pointer-events:none;.action-btn-spinner{margin-left:.5em}&.btn-outline-danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%)!important;box-shadow:0 3px 10px var(--danger-shadow),0 1px 3px var(--shadow-card)!important}}}.app-modal-btn-danger,.app-modal-btn-primary,.pill-btn,.pill-save-btn,.pill-toggle-btn,.settings-btn-primary{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:14px;font-weight:600;gap:6px;justify-content:center;touch-action:manipulation;& i{transition:transform .3s ease}}.pill-btn{background:var(--gradient-accent);border:none;box-shadow:0 4px 12px var(--accent-shadow-soft),0 2px 4px var(--shadow-card);color:var(--text-on-accent);height:42px;padding:0 24px;text-decoration:none;white-space:nowrap;&:active,&:focus,&:focus-visible,&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);box-shadow:0 6px 20px var(--accent-shadow-focus),0 4px 8px var(--shadow-strong);color:var(--text-on-accent);text-decoration:none}&:focus{box-shadow:0 4px 12px var(--accent-shadow-soft),0 0 0 3px var(--accent-border);outline:none}&.danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);&:hover{background:linear-gradient(135deg,var(--danger-hover) 0,var(--danger) 100%);box-shadow:0 6px 20px var(--danger-shadow),0 4px 8px var(--shadow-strong);color:var(--text-on-accent)}&:focus{box-shadow:0 4px 12px var(--danger-shadow),0 0 0 3px var(--danger-shadow)}}}.btn-group .pill-btn.dropdown-toggle:not(.dropdown-toggle-split),.btn-group .pill-btn:first-child{border-radius:var(--radius-pill)}.btn-group .pill-btn:only-child{border-radius:var(--radius-pill)!important}.btn-group .pill-btn.dropdown-toggle:not(.dropdown-toggle-split){min-width:220px;padding-right:36px;width:220px}.btn-group .pill-btn .pill-btn-caret{position:absolute;right:14px;transition:transform .2s ease}.btn-group .pill-btn[aria-expanded=true] .pill-btn-caret,.btn-group.show .pill-btn .pill-btn-caret{transform:rotate(180deg)}.btn-group .pill-btn.dropdown-toggle:after{display:none!important}.btn-group .pill-btn.dropdown-toggle-split{border-left:1px solid var(--white-overlay);border-radius:0 var(--radius-pill) var(--radius-pill) 0;padding:0 14px;&:focus,&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);border-left-color:var(--white-overlay)}}.app-dropdown:not(.topbar-account-menu) .pill-btn{background:var(--field-bg);border:1px solid var(--border-color);box-shadow:none;color:var(--text-color);gap:8px;padding:0 36px 0 24px;&:before{display:none}&:hover{background:var(--field-bg);border-color:var(--accent);box-shadow:none;color:var(--accent)}}.pill-action-btn--inline{justify-content:center;margin-bottom:0;text-align:center;width:auto}.pill-action-btn{align-items:center;background:var(--field-bg);border:1px solid var(--border-color);border-radius:var(--radius-pill);color:var(--text-color);cursor:pointer;display:flex;font-family:var(--font-sans);font-size:14px;justify-content:flex-start;margin-bottom:8px;padding:10px 20px;text-align:left;text-decoration:none;width:100%;& i{margin-right:8px}& i,&:hover{color:var(--accent)}&:hover{border-color:var(--accent);text-decoration:none}&.danger{color:var(--danger);& i,&:hover{color:var(--danger)}&:hover{border-color:var(--danger)}}}.pill-save-btn{background:var(--gradient-accent);border:none;box-shadow:0 4px 12px var(--accent-shadow-soft),0 2px 4px var(--shadow-card);color:var(--text-on-accent);gap:6px;height:40px;max-width:100%;min-width:0;padding:0 12px;text-overflow:ellipsis;white-space:nowrap;& i{flex-shrink:0;font-size:14px}& span{flex-shrink:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);box-shadow:0 6px 20px var(--accent-shadow-focus),0 4px 8px var(--shadow-strong)}&:is(.is-pressed,:focus-visible:active){background:linear-gradient(135deg,var(--accent-shade) 0,var(--accent-shade-2) 100%);box-shadow:inset 0 2px 4px var(--shadow-stronger),0 1px 2px var(--shadow-card);opacity:.9}&:focus{box-shadow:0 4px 12px var(--accent-shadow-soft),0 0 0 3px var(--accent-border);outline:none}&.saving{cursor:not-allowed;opacity:.7;pointer-events:none;& i{animation:spin 1s linear infinite}}}.pill-toggle-btn{background:var(--gradient-accent);border:none;border-radius:50%;box-shadow:0 4px 12px var(--accent-shadow-soft),0 2px 4px var(--shadow-card);color:var(--text-on-accent);font-size:14px;height:36px;padding:8px;width:36px;&:hover{box-shadow:0 4px 12px var(--accent-shadow-soft)}&:is(.is-pressed,:focus-visible:active){background:linear-gradient(135deg,var(--accent-shade) 0,var(--accent-shade-2) 100%);box-shadow:inset 0 2px 4px var(--shadow-stronger),0 1px 2px var(--shadow-card);opacity:.9}}.app-modal-btn-danger,.app-modal-btn-danger-outline,.app-modal-btn-primary,.app-modal-btn-secondary{align-items:center;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:10px 20px;& i{transition:transform .3s ease}}.app-modal-btn-primary{background:var(--gradient-accent);border:none;box-shadow:0 4px 12px var(--accent-shadow-soft),0 2px 4px var(--shadow-card);color:var(--text-on-accent);&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);box-shadow:0 6px 20px var(--accent-shadow-soft),0 4px 8px var(--shadow-card);& i{transform:translateX(-2px)}}&:focus-visible{box-shadow:0 4px 12px var(--accent-shadow-soft),0 0 0 2px var(--color-light,var(--field-bg)),0 0 0 4px var(--accent);outline:none}&:is(.is-pressed,:focus-visible:active){box-shadow:inset 0 2px 4px var(--shadow-strong),0 1px 2px var(--shadow-card);opacity:.95}}.app-modal-btn-secondary,.settings-btn-secondary{background:var(--field-bg);border:1px solid var(--border-color);color:var(--text-color);text-decoration:none;transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast);&:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}&:focus-visible{border-color:var(--accent);box-shadow:0 0 0 2px var(--color-light,var(--field-bg)),0 0 0 4px var(--accent);outline:none}}.app-modal-btn-secondary.app-modal-btn-sm{font-size:13px;min-height:32px;padding:6px 14px}.app-modal-btn-danger{background:linear-gradient(135deg,var(--danger) 0,var(--danger-hover) 100%);border:none;color:var(--text-on-accent);&:hover{background:linear-gradient(135deg,var(--danger-hover) 0,var(--danger) 100%);box-shadow:0 6px 20px var(--danger-shadow-strong),0 4px 8px var(--shadow-card);& i{transform:translateX(-2px)}}&:is(.is-pressed,:focus-visible:active){box-shadow:inset 0 2px 4px var(--shadow-stronger),0 1px 2px var(--shadow-card);opacity:.95}}.app-modal-btn-danger-outline{background:var(--field-bg);border:1px solid var(--danger);color:var(--danger);transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast);&:hover{border-color:var(--danger-hover);color:var(--danger-hover)}}.settings-btn-primary{background:var(--gradient-accent);border:none;box-shadow:0 4px 12px var(--accent-shadow-soft),0 2px 4px var(--shadow-card);color:var(--text-on-accent);gap:8px;padding:12px 24px;&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);box-shadow:0 6px 20px var(--accent-shadow-soft),0 4px 8px var(--shadow-card)}}.settings-btn-secondary{-webkit-tap-highlight-color:transparent;align-items:center;border-radius:var(--radius-pill);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;touch-action:manipulation}.settings-btn-secondary.filled{background:var(--gradient-accent);border-color:transparent;color:var(--text-on-accent);&:hover{background:linear-gradient(135deg,var(--accent-dark) 0,var(--accent) 100%);border-color:transparent;color:var(--text-on-accent)}}.settings-comm-history-btn,.settings-upload-btn{align-items:center;background:var(--field-bg);border:1px solid var(--accent);border-radius:var(--radius-pill);color:var(--text-color);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:14px;font-weight:600;gap:8px;height:40px;padding:0 16px;transition:border-color var(--transition-fast),color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast);&:hover{background:var(--accent-tint-subtle);border-color:var(--accent);color:var(--accent)}}.settings-upload-btn{color:var(--accent);padding:10px 18px;&:hover{background:linear-gradient(135deg,var(--accent-tint-start) 0,var(--accent-tint-light) 100%)}&.loading{opacity:.9;pointer-events:none}}.settings-remove-btn{align-items:center;background:var(--danger);border:none;border-radius:50%;color:var(--text-on-accent);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:background .2s ease;width:32px;&:hover{background:var(--danger-hover)}& i{font-size:14px}}.recent-pledges-view-all.pill-action-btn{flex-shrink:0;font-size:12px;line-height:1.4;margin-bottom:0;margin-left:12px;padding:4px 10px;text-align:center;text-decoration:none;width:auto;&:focus,&:hover{box-shadow:none;outline:none;text-decoration:none}&:focus-visible{box-shadow:none;outline:none}& i{margin-right:4px}}.sidebar-content .pill-action-btn,.sidebar-content .pill-save-btn{font-size:clamp(11px,4.5cqw,14px);min-width:0;white-space:nowrap}.sidebar-content .pill-action-btn span,.sidebar-content .pill-save-btn span{min-width:0;overflow:hidden;text-overflow:ellipsis}.compact-btn{--compact-btn-h:1.75rem;--press-feedback-radius-rest:0.45rem;--press-feedback-radius-pressed:0.7rem;-webkit-tap-highlight-color:transparent;align-items:center;border:none;border-radius:var(--press-feedback-radius-rest);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:.75rem;font-weight:600;gap:.3rem;height:var(--compact-btn-h);justify-content:center;line-height:1;margin:0;padding:0 .7rem;touch-action:manipulation;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);white-space:nowrap;& i{font-size:.65rem;line-height:1}}.compact-btn--accent{background:var(--accent);color:var(--text-on-accent);&:hover{background:var(--accent-dark)}&:focus-visible{box-shadow:0 0 0 3px var(--accent-border);outline:none}}.compact-btn--quiet{background:color-mix(in srgb,var(--accent) 10%,var(--field-bg));color:var(--accent);&:hover{background:color-mix(in srgb,var(--accent) 16%,var(--field-bg))}&:focus-visible{box-shadow:0 0 0 3px var(--accent-border);outline:none}}.compact-btn--text{background:transparent;color:var(--gray-500);padding-inline:.45rem;&:hover{background:color-mix(in srgb,var(--accent) 8%,transparent);color:var(--accent)}&:focus-visible{box-shadow:0 0 0 3px var(--accent-border);outline:none}&.is-active{background:color-mix(in srgb,var(--accent) 10%,transparent);color:var(--accent)}}@media (prefers-reduced-motion:reduce){.compact-btn,.stack-btn{transition:none}}.stack-btn{--press-feedback-radius-rest:14px;--press-feedback-radius-pressed:24px;--press-feedback-active-radius:var(--press-feedback-radius-pressed);--press-feedback-active-transform:none;--press-feedback-active-shadow:none;--stack-btn-icon-color:var(--accent);-webkit-tap-highlight-color:transparent;align-items:center;background:var(--gray-bg);border:1px solid transparent;border-radius:var(--press-feedback-radius-rest);box-shadow:none;color:var(--text-color);cursor:pointer;display:flex;font-family:var(--font-sans);font-size:14px;font-weight:600;gap:12px;line-height:1.3;margin:0;min-height:48px;padding:13px 16px;text-align:left;text-decoration:none;touch-action:manipulation;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast);width:100%;&:focus-visible,&:hover{background:var(--bg-checked);border-color:transparent;color:var(--accent-dark);outline:none;text-decoration:none}&:is(.is-pressed,:focus-visible:active){border-color:transparent}.stack-btn__icon{align-items:center;color:var(--stack-btn-icon-color);display:inline-flex;flex-shrink:0;justify-content:center;width:1.25em;i{color:inherit;font-size:15px;width:auto}}.stack-btn__label{flex:1;min-width:0}}.stack-btn-accent{--stack-btn-icon-color:var(--text-on-accent);background:var(--accent);border-color:transparent;box-shadow:0 4px 12px var(--accent-shadow-soft);color:var(--text-on-accent);font-weight:700;&:focus-visible,&:hover{background:var(--accent-dark);border-color:transparent;color:var(--text-on-accent)}&:is(.is-pressed,:focus-visible:active){border-color:transparent}}.stack-btn-danger{--stack-btn-icon-color:var(--danger);background:var(--danger-bg);border-color:transparent;color:var(--danger-dark);&:focus-visible,&:hover{background:color-mix(in srgb,var(--danger) 14%,var(--color-light));border-color:transparent;color:var(--danger-darker)}&:is(.is-pressed,:focus-visible:active){border-color:transparent}}.accent-arrow-pill{--accent-arrow-pill-mix-a:12%;--accent-arrow-pill-mix-b:4%;--accent-arrow-pill-mix-c:0%;--accent-arrow-pill-border:42%;--accent-arrow-pill-shadow:12%;--accent-arrow-pill-hover-a:18%;--accent-arrow-pill-hover-b:7%;--accent-arrow-pill-hover-c:0%;--accent-arrow-pill-hover-border:70%;--accent-arrow-pill-hover-shadow:22%;--accent-arrow-pill-arrow-size:1.55rem;--accent-arrow-pill-arrow-font:0.65rem;align-items:center;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:linear-gradient(105deg,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-mix-a),var(--field-bg)) 0,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-mix-b),var(--field-bg)) 55%,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-mix-c),var(--field-bg)) 100%);border:1px solid color-mix(in srgb,var(--accent) var(--accent-arrow-pill-border),var(--border-color));border-radius:999px;box-shadow:inset 0 1px 0 var(--shadow-highlight),0 1px 2px color-mix(in srgb,var(--accent) var(--accent-arrow-pill-shadow),transparent);color:var(--accent-on-surface);cursor:pointer;display:inline-flex;font-family:var(--font-sans);font-size:.75rem;font-weight:700;gap:.55rem;letter-spacing:.01em;line-height:1.2;padding:.28rem .3rem .28rem .85rem;text-decoration:none;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease,transform .16s ease;white-space:nowrap;&:focus,&:hover{background:linear-gradient(105deg,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-hover-a),var(--field-bg)) 0,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-hover-b),var(--field-bg)) 55%,color-mix(in srgb,var(--accent) var(--accent-arrow-pill-hover-c),var(--field-bg)) 100%);border-color:color-mix(in srgb,var(--accent) var(--accent-arrow-pill-hover-border),var(--border-color));box-shadow:inset 0 1px 0 var(--shadow-highlight),0 3px 10px color-mix(in srgb,var(--accent) var(--accent-arrow-pill-hover-shadow),transparent);color:var(--accent-on-surface);outline:none;text-decoration:none;transform:translateY(-1px)}&:focus .accent-arrow-pill__arrow,&:hover .accent-arrow-pill__arrow{background:var(--accent-dark);box-shadow:0 2px 6px color-mix(in srgb,var(--accent) 40%,transparent);transform:translateX(2px)}&:focus-visible{outline:2px solid var(--accent);outline-offset:2px}&:active{transform:translateY(0)}&.disabled,&[aria-disabled=true]{opacity:.55;pointer-events:none;transform:none}}.accent-arrow-pill__arrow{align-items:center;background:var(--accent);border-radius:999px;box-shadow:0 1px 3px color-mix(in srgb,var(--accent) 35%,transparent);color:var(--text-on-accent);display:inline-flex;font-size:var(--accent-arrow-pill-arrow-font);height:var(--accent-arrow-pill-arrow-size);justify-content:center;transition:background .16s ease,transform .16s ease,box-shadow .16s ease;width:var(--accent-arrow-pill-arrow-size)}

/*# sourceMappingURL=btn.css.map*/