/* Shared actions: size to the label, center the group, and keep a useful tap
   area. Navigation, odds rows and player-selection rows keep their own layout. */
:is(.button:not(.refresh-button),.hero-button,.view-all,.download-ticket,.home-find,.home-use,.home-save){
 display:flex;align-items:center;justify-content:center;gap:8px;
 width:fit-content;max-width:100%;min-width:0;min-height:44px;
 flex:0 0 auto;align-self:center;justify-self:center;
 margin-inline:auto;padding:11px 18px;
 text-align:center;white-space:normal;line-height:1.4;
}
:is(.button,.hero-button,.view-all,.download-ticket)>.icon{flex-shrink:0;margin-inline:0}
.save-ticket>.icon:first-child,.save-ticket>.icon:last-child{margin-inline:0}
.ticket-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px;margin-top:14px}
.ticket-actions>.button{margin:0}
.ticket-actions>.download-ticket{font-size:11px}
.saved-ticket>.button,.suggestion-card>.button,.quote-card>.button{margin-inline:auto;justify-self:center;align-self:center}
.mobile-lab-action>.button>.icon{position:static;inset:auto}
.empty-state>.icon{grid-row:span 2}
.empty-state>.button{grid-column:1/-1;justify-self:center}
.lab-empty{display:grid;grid-template-columns:28px minmax(0,1fr)}
.lab-empty>.button{grid-column:1/-1;justify-self:center;margin-inline:auto}
.saved-section>.section-title{justify-content:center}
.saved-section>.section-title>.text-button{min-height:44px}
.action-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.action-row>.button{margin-inline:0}
.market-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}
.market-controls>label{min-width:0}
.market-controls>label:only-of-type,.market-controls>.button,.market-controls>.action-row{grid-column:1/-1;justify-self:center}
.market-controls>label:only-of-type{justify-self:stretch}
.football-report-controls>label:only-of-type{width:min(100%,360px);justify-self:center}
.football-import{display:grid;grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center}
.football-import input{margin-inline:auto}
.detail-empty>div{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px}
.detail-empty>div>.button{margin-inline:0}
.detail-empty>div>.text-button{min-height:44px;padding:10px 12px;white-space:normal;text-align:center}
.modal>.button,.modal>div>.button{margin-inline:auto}
.home-find{justify-self:center}
.home-combination-heading{flex-wrap:wrap}
.home-combination-heading>.home-slip-actions{width:100%;justify-content:center}
.home-slip-actions>button{margin-inline:0}
.home-source-row{justify-content:center}
.home-source-row button:last-child{margin-left:0}
.home-edit-footer{flex-direction:column;justify-content:center;gap:8px}
.home-edit-footer>span{max-width:none;text-align:center}
.home-edit-footer>.home-use{margin-inline:auto}
.home-detail-form>.home-edit-reset{display:block;width:fit-content;max-width:100%;margin:8px auto 0;text-align:center;min-height:44px}
.home-player-source{justify-content:center}
.home-swap-modal>.home-save{align-self:center}
.extra-event-bottom{flex-wrap:wrap;justify-content:center;text-align:center}
.extra-event-bottom>span{width:100%}
.extra-event-bottom>button{width:fit-content;max-width:100%;min-height:44px;padding:10px 14px;text-align:center}
.segmented{width:fit-content;max-width:100%;flex-wrap:wrap;justify-content:center;margin-inline:auto}
.segmented>button{flex:0 0 auto;min-height:40px;padding:8px 12px;text-align:center}
.news-filter-bar{justify-content:center}
.news-section[aria-label="Live alert inbox"]>.filter-toolbar{flex-wrap:wrap;justify-content:center}
.news-section[aria-label="Live alert inbox"]>.filter-toolbar>.text-button{min-height:44px}
@media(max-width:640px){
 .market-controls{grid-template-columns:minmax(0,1fr)}
 .ticket-pager{grid-template-columns:max-content minmax(0,auto) max-content;justify-content:center}
 .ticket-pager>button{width:fit-content;padding-inline:12px}
 .ticket-actions{gap:9px}
 .ticket-actions>.button{padding-inline:14px}
 .home-combination-heading>.home-slip-actions{justify-content:center}
 .home-combination-heading>.home-slip-actions>button{flex:0 0 auto}
 .segmented>button{min-height:44px}
}
