/* Single action-button contract for hotel PMS, platform admin and dialogs. */
html.pms-button-system { --pms-action-blue:#246bba; --pms-action-blue-hover:#195b9f; --pms-action-red:#a64242; --pms-action-border:#cbd8e5; --pms-action-radius:4px; }
html.pms-button-system body :is(.btn,.od-button,.dashboard-date-apply,.payment-view-key,.kp-text-button,.pms-confirmation button) {
 box-sizing:border-box; min-height:38px!important; height:auto!important; border-radius:var(--pms-action-radius)!important; padding:8px 14px!important;
 border:1px solid var(--pms-action-border); background:#fff; color:#36516b;
 font-family:inherit!important; font-size:13px!important; font-weight:500!important; line-height:20px!important;
 box-shadow:none!important; text-shadow:none!important; vertical-align:middle; cursor:pointer;
}
html.pms-button-system body :is(.btn-primary,.od-button--primary,.dashboard-date-apply,.pms-confirmation__accept) { background:var(--pms-action-blue)!important; border-color:var(--pms-action-blue)!important; color:#fff!important; }
html.pms-button-system body :is(.btn-primary,.od-button--primary,.dashboard-date-apply,.pms-confirmation__accept):hover { background:var(--pms-action-blue-hover)!important; border-color:var(--pms-action-blue-hover)!important; }
html.pms-button-system body :is(.btn-default,.btn-secondary,.btn-light,.od-button--secondary,.kp-text-button,.payment-view-key) { background:#fff!important; border-color:var(--pms-action-border)!important; color:#36516b!important; }
html.pms-button-system body :is(.btn-outline-primary,.od-button--edit,.od-button--view),
html.pms-button-system body .table :is(.btn-primary,.btn-info) { background:#fff!important; border-color:#bdd1e8!important; color:var(--pms-action-blue)!important; }
html.pms-button-system body :is(.btn-outline-primary,.od-button--edit,.od-button--view):hover,
html.pms-button-system body .table :is(.btn-primary,.btn-info):hover { background:#edf4fc!important; border-color:var(--pms-action-blue)!important; }
html.pms-button-system body :is(.btn-danger,.btn-outline-danger,.od-button--danger,.od-button--void) { background:#fff!important; border-color:#e4c3c3!important; color:var(--pms-action-red)!important; }
html.pms-button-system body :is(.btn-danger,.btn-outline-danger,.od-button--danger,.od-button--void):hover { background:#fff3f2!important; border-color:var(--pms-action-red)!important; }
html.pms-button-system body :is(.btn-success,.btn-outline-success) { background:#fff!important; border-color:#abcfc6!important; color:#176552!important; }
html.pms-button-system body :is(.btn-warning,.btn-outline-warning) { background:#fff!important; border-color:#dfc594!important; color:#795419!important; }
html.pms-button-system body :is(.btn-info,.btn-outline-info) { background:#fff!important; border-color:#bdd1e8!important; color:var(--pms-action-blue)!important; }
html.pms-button-system body :is(.btn,.od-button,.dashboard-date-apply,.payment-view-key,.kp-text-button,.pms-confirmation button):focus-visible { outline:2px solid var(--pms-action-blue)!important; outline-offset:3px; }
html.pms-button-system body :is(.btn,.od-button):is(:disabled,.disabled,[aria-disabled="true"]) { opacity:.55; cursor:not-allowed; }
html.pms-button-system body .table td .btn { min-height:36px!important; min-width:56px; padding:7px 12px!important; margin:4px 10px 4px 0!important; white-space:nowrap; }
html.pms-button-system body .table :is(.settings-table-actions,.settings-room-actions) { gap:12px; }
html.pms-button-system body .table :is(.settings-table-actions,.settings-room-actions) .btn { margin:0!important; }
html.pms-button-system body :is(.modal-footer,.pms-confirmation>div) { gap:12px; }
html.pms-button-system body .modal-footer .btn { margin:0!important; }
/* Paired search fields share an edge; other buttons retain their corner shape. */
html.pms-button-system body .input-group :is(.input-group-append,.input-group-btn) .btn { border-top-left-radius:0!important; border-bottom-left-radius:0!important; }
@media(max-width:800px) { html.pms-button-system body :is(.btn,.od-button,.dashboard-date-apply,.payment-view-key,.kp-text-button,.pms-confirmation button) { min-height:44px!important; } }
