/* t31_look 1.1.58: button scale + spacing tokens. Pure CSS: sizes, padding, radius, alignment. No layout-flow or behavior changes. */
:root{--t31-btn-h:36px;--t31-btn-h-sm:30px;--t31-btn-h-lg:44px;--t31-btn-px:14px;--t31-btn-px-sm:10px;--t31-btn-fs:13.5px;--t31-btn-fs-sm:12.5px;--t31-btn-r:8px;--t31-btn-gap:6px;--t31-sp-1:4px;--t31-sp-2:8px;--t31-sp-3:12px;--t31-sp-4:16px}
html.t31x .btn:not(.btn-link):not(.btn-icon):not([class*="t31x-tab"]),html.t31c .btn:not(.btn-link):not(.btn-icon){min-height:var(--t31-btn-h);padding-top:0;padding-bottom:0;padding-left:var(--t31-btn-px);padding-right:var(--t31-btn-px);font-size:var(--t31-btn-fs);line-height:1.2;border-radius:var(--t31-btn-r);display:inline-flex;align-items:center;justify-content:center;gap:var(--t31-btn-gap);white-space:nowrap;vertical-align:middle;font-weight:600}
html.t31x .btn.btn-sm,html.t31x .btn.btn-xs,html.t31c .btn.btn-sm,html.t31c .btn.btn-xs{min-height:var(--t31-btn-h-sm);padding-left:var(--t31-btn-px-sm);padding-right:var(--t31-btn-px-sm);font-size:var(--t31-btn-fs-sm)}
html.t31x .btn.btn-lg,html.t31c .btn.btn-lg{min-height:var(--t31-btn-h-lg)}
html.t31x .btn > i,html.t31x .btn > svg,html.t31x .btn > .fa,html.t31c .btn > i,html.t31c .btn > svg{margin:0;line-height:1;flex:none}
html.t31x .btn-group > .btn,html.t31x .input-group-btn > .btn{display:inline-flex}
html.t31x .btn-group > .btn + .btn,html.t31x .btn-group > .btn + .dropdown-toggle{margin-left:-1px}
html.t31x .btn-group > .btn:not(:first-child):not(:last-child){border-radius:0}
html.t31x .btn-group > .btn:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}
html.t31x .btn-group > .btn:last-child:not(:first-child),html.t31x .btn-group > .dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}
/* consistent gaps between neighbouring buttons in toolbars and modal footers */
html.t31x .modal-footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--t31-sp-2);padding:var(--t31-sp-3) var(--t31-sp-4)}
html.t31x .modal-footer > .btn + .btn{margin-left:0}
html.t31x .modal-header,html.t31x .modal-body{padding-left:var(--t31-sp-4);padding-right:var(--t31-sp-4)}
/* secondary (default/white) buttons share primary's box so pairs line up */
html.t31x .btn-default,html.t31x .btn-secondary,html.t31x .btn-white{border-width:1px}
html.t31x .btn-primary,html.t31x .btn-info,html.t31x .btn-success,html.t31x .btn-danger{border-width:1px}
/* touch: keep 44px targets on phone and iPad (1.1.49) */
@media (pointer:coarse),(max-width:1024px){html.t31x .btn:not(.btn-link):not(.btn-icon):not([class*="t31x-tab"]),html.t31x .btn.btn-sm,html.t31x .btn.btn-xs,html.t31c .btn:not(.btn-link):not(.btn-icon){min-height:44px}}
@media (max-width:767px){html.t31x .modal-footer{justify-content:stretch}html.t31x .modal-footer > .btn{flex:1 1 auto}}
/* stock .btn inside module pages that pinned their own 32px/10px (Mail, Settings): bring onto the scale */
html.t31x body .btn:not(.btn-link):not(.btn-icon):not(.btn-sm):not(.btn-xs){min-height:var(--t31-btn-h)!important;border-radius:var(--t31-btn-r)!important;font-size:var(--t31-btn-fs)!important}
/* module buttons onto the same scale (desktop; touch keeps its 44px rules) */
@media (min-width:1025px) and (pointer:fine){
html.t31x .t31x-btn.t31x-btn-primary,html.t31x .t31x-btn.t31x-btn-ivory,html.t31x .t31a-btn,html.t31x .t31ai-btn,html.t31x .cx-btn,html.t31x .t31-ws-more-btn,html.t31x .t31a-btn-secondary{min-height:var(--t31-btn-h)!important;height:auto;padding-top:0!important;padding-bottom:0!important;font-size:var(--t31-btn-fs)!important;border-radius:var(--t31-btn-r)!important;display:inline-flex;align-items:center;justify-content:center;gap:var(--t31-btn-gap)}
html.t31x .cx-btn.is-small,html.t31x .t31a-btn-quiet,html.t31x .t31a-td-btn,html.t31x .t31a-ck-btn,html.t31x .t31-companies-layout-btn,html.t31x .t31x-btn:not(.t31x-btn-primary):not(.t31x-btn-ivory){min-height:var(--t31-btn-h-sm)!important;height:auto;padding-top:0!important;padding-bottom:0!important;font-size:var(--t31-btn-fs-sm)!important;border-radius:var(--t31-btn-r)!important;display:inline-flex;align-items:center;justify-content:center;gap:var(--t31-btn-gap)}
html.t31x .t31-ws-mp-btn{min-height:var(--t31-btn-h-sm);padding-top:0;padding-bottom:0;font-size:var(--t31-btn-fs-sm);display:inline-flex;align-items:center}
}
