/* One action system: primary violet, secondary neutral, destructive red. */
body .btn,body .button{min-height:44px;border-radius:12px;padding:11px 16px;font:600 14px/1.4 Inter,system-ui,sans-serif;letter-spacing:normal;text-transform:none;white-space:normal;max-width:100%;gap:8px}body .btn:hover,body .button:hover{transform:none}
:root{--action-primary:#6950cf;--action-primary-hover:#563bb8;--action-secondary:#f0edf7;--action-secondary-ink:#33294b;--action-border:#d8d1e7;--action-danger:#ae2449;--action-danger-hover:#8e1939;--action-radius:12px;--action-gap:12px}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(button,.button,.btn):not(.event-option,.password-eye,.icon-button,.sort-column,.merch-thumbnail,.day,[data-delete-dj],.admin-main-section-tab__handle,.admin-main-section-tab__delete){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:11px 16px;border:1px solid transparent;border-radius:var(--action-radius);font:600 14px/1.4 Inter,system-ui,sans-serif;letter-spacing:normal;text-transform:none;text-align:center;text-decoration:none;white-space:normal;overflow-wrap:anywhere;background:var(--action-primary);color:#fff;box-shadow:none;cursor:pointer;transition:background-color .15s,border-color .15s,box-shadow .15s}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(.btn,.secondary,button[type=button]):not(.btn--primary,.danger,.btn--danger,.icon-button,.sort-column,.merch-thumbnail,.day,.password-eye){background:var(--action-secondary);color:var(--action-secondary-ink);border-color:var(--action-border)}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(.btn--primary,.button--primary){background:var(--action-primary);color:#fff;border-color:var(--action-primary)}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(.danger,.btn--danger){background:var(--action-danger);color:#fff;border-color:var(--action-danger)}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(button,.button,.btn):not(.sort-column,.merch-thumbnail,.day,.password-eye):hover{filter:none;box-shadow:0 0 0 2px #6950cf15}
body :is(.backstage-main,.login,.shop,.ticket,.staff-prompt) :is(.danger,.btn--danger):hover{background:var(--action-danger-hover);border-color:var(--action-danger-hover)}
body :is(button,.button,.btn):focus-visible{outline:3px solid #b7a6f0;outline-offset:3px}
body :is(button,.button,.btn):disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.backstage-main :is(.actions,.inline-actions,.statusCard__actions,.refunds-email-actions,.sl-actions,.range__actions){display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:var(--action-gap);margin-top:16px;margin-bottom:12px}
.backstage-main :is(.actions,.inline-actions,.statusCard__actions,.sl-actions)>form{margin:0;min-width:0;max-width:100%}
.backstage-main :is(.actions,.inline-actions,.statusCard__actions,.sl-actions) :is(button,.btn){margin:0}
.backstage-main form>button,.backstage-main form>.button{margin-top:14px;margin-right:8px;margin-bottom:6px}
.backstage-main .statusCard__actions form>button{margin:0}.backstage-main .statusCard__hint{margin-top:10px;margin-bottom:14px}.backstage-main form+form{margin-top:14px}.backstage-main .statusCard__actions form+form{margin-top:0}
body .backstage-main .stats-links{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0 24px;padding:0;position:static}
body .backstage-main .stats-links a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;background:var(--action-secondary);color:var(--action-secondary-ink);border:1px solid var(--action-border);border-radius:var(--action-radius);font:600 14px/1.4 Inter,system-ui,sans-serif;text-decoration:none;white-space:normal}
body .backstage-main .stats-links a[aria-current=page],body .backstage-main .stats-tab.is-active{background:var(--action-primary);color:white;border-color:var(--action-primary)}
body .backstage-main .sl-filterform{display:grid;gap:14px;align-items:start}.backstage-main .sl-filterform>select{margin:0}.backstage-main .sl-filterform>button{justify-self:start;margin:0}
body .backstage-main .range__input{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px 16px;width:100%;min-height:48px;padding:12px 14px;background:#fbfafc!important;color:var(--action-secondary-ink)!important;border:1px solid var(--action-border)!important;font-size:14px;text-align:left}
.backstage-main .range__label{font-size:12px;font-weight:500;color:var(--muted)}.backstage-main .range__value{font-size:14px;font-weight:650;overflow-wrap:anywhere}.backstage-main .range__value:after{content:'⌄';margin-left:10px}.backstage-main .stats-filters .range{min-width:0}
body .top button.secondary,body .reception-menu summary{background:#ffffff13;color:#fff;border:1px solid #ffffff40;border-radius:var(--action-radius)}
body .top .header-icon{margin:0;padding:10px}body .reception-menu button{width:100%}.reception-menu form{margin-top:12px}.reception-menu>div>a{margin-bottom:8px}
body .merch-page .btn{border-radius:var(--action-radius);min-height:44px;font-size:14px;padding:11px 16px;line-height:1.4;letter-spacing:normal;text-transform:none;margin:0;white-space:normal;box-shadow:none}
body .merch-page .btn--danger{background:#ae2449;color:white;border-color:#ae2449}body .merch-page .btn--danger:hover{background:#8e1939;color:white;border-color:#8e1939}
.merch-page .merch-top,.merch-page .merch-pagination{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.merch-page form .btn{margin-top:12px;margin-right:8px}.merch-page form .btn+.btn{margin-left:0}.merch-page .merch-cart-row form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.merch-page .merch-cart-row form .btn{margin:0}.merch-page .merch-cart-row form label{margin:0}.merch-page .merch-summary form{margin:14px 0}.merch-page .merch-summary form .btn{margin:0}
@media(max-width:480px){.backstage-main .statusCard__actions{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.backstage-main .statusCard__actions form button{width:100%}.backstage-main .stats-links a{flex:1 1 140px}.backstage-main .range__input{flex-direction:column;align-items:flex-start}.merch-page .merch-cart-row form label{flex-basis:100%}.merch-page .merch-summary .btn{width:100%;margin-right:0}}
@media(prefers-reduced-motion:reduce){body :is(button,.button,.btn){transition:none}}

/* File pickers share the same action style as all other controls. */
body :is(.backstage-main,.login,.shop) input[type=file]{width:100%;max-width:100%;min-width:0;min-height:60px;padding:8px;border:1px dashed var(--action-border);border-radius:var(--action-radius);background:#faf9fd;color:#665c77;font:400 13px/1.5 Inter,system-ui,sans-serif;overflow:hidden}
body :is(.backstage-main,.login,.shop) input[type=file]::file-selector-button{min-height:44px;margin:0 12px 0 0;padding:11px 16px;border:1px solid var(--action-border);border-radius:var(--action-radius);background:var(--action-secondary);color:var(--action-secondary-ink);font:600 14px/1.4 Inter,system-ui,sans-serif;cursor:pointer}
body input[type=file]::file-selector-button:hover{background:#e5def4}
@media(max-width:480px){body :is(.backstage-main,.login,.shop) input[type=file]::file-selector-button{display:block;width:100%;margin:0 0 8px}}
a,a:hover,a:focus,a:active,a:visited{text-decoration:none!important}a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
