/* Shared interaction polish. Keep semantic colors and existing form actions. */
:where(button,[role="button"],a.btn,a.button,summary){touch-action:manipulation}
:where(button,[role="button"],a.btn,a.button):not(:disabled):not([aria-disabled="true"]){cursor:pointer}
:where(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #69cfff;outline-offset:4px}
:where(button,[role="button"]):disabled{cursor:not-allowed;opacity:.55;box-shadow:none}
:where(button,.btn,.button)::before,:where(button,.btn,.button)::after{pointer-events:none}
.admin-content :is(.btn,button),.player-site :is(.button,.btn){transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,filter .18s ease;min-height:40px}
.admin-content .btn.primary{border:1px solid #53a4ff;background:linear-gradient(125deg,#147eb5,#4a59c3);color:#fff;box-shadow:inset 0 1px #ffffff30,0 5px 14px #07172955}
.admin-content .btn.danger{background:linear-gradient(125deg,#96384e,#702a43);border:1px solid #c96277;color:#fff}
.admin-content .btn.ghost{background:linear-gradient(135deg,#172e46,#122035);border:1px solid #3a5473;color:#dceaff}
.player-site .button:not(.ghost):not(.secondary){background:linear-gradient(120deg,#097fad,#155fba);border-color:#117dab;color:#fff;box-shadow:inset 0 1px #ffffff40,0 6px 16px #126da329}
@media(hover:hover){
 .admin-content :is(.btn,button):not(:disabled):hover,.player-site :is(.button,.btn):not(:disabled):hover{filter:brightness(1.1)}
}
/* Invisible package inputs must not extend beyond their own label. */
.combined-topup .balance-package.selectable{position:relative;isolation:isolate;transition:border-color .18s,box-shadow .18s}
.combined-topup .balance-package.selectable>input[type="checkbox"]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;opacity:0;z-index:1;cursor:pointer}
.combined-topup .balance-package.selectable:focus-within{outline:3px solid #1688c5;outline-offset:4px}
.combined-topup .combined-checkout{position:relative;isolation:isolate;border:1px solid #375872;border-radius:18px;background:linear-gradient(120deg,#122a3d,#101d30);box-shadow:0 10px 26px #09233819;gap:22px}
.combined-topup .combined-checkout select{min-height:48px;border-radius:11px;border-color:#476681;cursor:pointer}
.combined-topup .combined-checkout .invoice-create{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:56px;width:100%;padding:15px 18px;border:1px solid #45b7e7;border-radius:12px;background:linear-gradient(115deg,#077ba7,#1856b0);box-shadow:inset 0 1px #ffffff45,0 8px 20px #0074b536;color:#fff;font:800 14px/1.4 ui-sans-serif,system-ui,sans-serif;cursor:pointer;transition:box-shadow .2s,filter .2s}
.combined-checkout .invoice-create span{display:inline;color:inherit;font-size:14px;font-weight:800;line-height:1.4}
.combined-checkout .invoice-create svg{width:22px;height:22px;flex:none;pointer-events:none}
.combined-checkout .invoice-create .invoice-arrow{font-size:21px;line-height:1}
.combined-checkout .invoice-create:hover{filter:brightness(1.12);box-shadow:inset 0 1px #ffffff55,0 9px 24px #0074b552}
.combined-checkout .invoice-create:active{box-shadow:inset 0 2px 5px #001e4738}
@media(pointer:coarse){.admin-content :is(.btn,button),.player-site :is(.button,.btn){min-height:44px}}
@media(prefers-reduced-motion:reduce){.admin-content :is(.btn,button),.player-site :is(.button,.btn),.invoice-create{transition:none!important}}

/* Secondary actions override legacy white!important text on pale backgrounds. */
.player-site .button.secondary,.player-site .button.secondary:visited{background:linear-gradient(135deg,#f2fbff,#dcecf7);color:#173e5b!important;border:1px solid #a8cbe0;text-shadow:none;box-shadow:inset 0 1px #fff,0 5px 14px #082e4a20}
@media(hover:hover){.player-site .button.secondary:hover{background:linear-gradient(135deg,#e4f5ff,#cbe4f5);color:#10334e!important;border-color:#73afcf}}
.player-site .button.secondary:active{background:#cbe4f5;color:#10334e!important;box-shadow:inset 0 2px 4px #123f5f1a}
