/* RXOPD canonical design tokens and shared production geometry. */
:root{
  --rx-layout-public-max:1180px;
  --rx-layout-admin-max:1440px;
  --rx-gutter-mobile:14px;
  --rx-gutter-tablet:20px;
  --rx-gutter-desktop:24px;
  --rx-control-height:42px;
  --rx-control-touch:44px;
  --rx-button-height:40px;
  --rx-button-touch:44px;
  --rx-sidebar-admin:280px;
  --rx-sidebar-role:272px;
  --rx-header-height:64px;
  --rx-radius-control:8px;
  --rx-radius-card:12px;
  --rx-radius-large:16px;
  --rx-space-1:4px;
  --rx-space-2:8px;
  --rx-space-3:12px;
  --rx-space-4:16px;
  --rx-space-6:24px;
  --rx-space-8:32px;
  --rx-space-12:48px;
  --rx-primary:#2563eb;
  --rx-success:#16a34a;
  --rx-warning:#d97706;
  --rx-danger:#dc2626;
  --rx-text:#111827;
  --rx-muted:#6b7280;
  --rx-border:#e5e7eb;
  --rx-surface:#fff;
  --rx-bg:#f8fafc;
  --rx-shadow-card:0 1px 2px rgb(0 0 0 / .05);
  --rx-shadow-raised:0 4px 12px rgb(0 0 0 / .08);
}
html,body{max-width:100%;}
body.rx-ui-system{overflow-x:hidden;color:var(--rx-text);}
body.rx-ui-system *,body.rx-ui-system *::before,body.rx-ui-system *::after{box-sizing:border-box;}
body.rx-ui-system :is(button,.btn,.button,.rx-btn,input,select,textarea){font-size:max(13px,1em);}
body.rx-ui-system :is(button,.btn,.button,.rx-btn){min-height:var(--rx-button-height);line-height:1.2;touch-action:manipulation;}
body.rx-ui-system :is(input:not([type="checkbox"]):not([type="radio"]),select){min-height:var(--rx-control-height);}
body.rx-ui-system textarea{min-height:88px;}
body.rx-ui-system :is(a,button,input,select,textarea):focus-visible{outline:3px solid rgb(37 99 235 / .25);outline-offset:2px;}
body.rx-ui-system .rx-table-responsive{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;}
body.rx-ui-system .rx-table-responsive>table{width:100%;min-width:max-content;}
body.rx-ui-system table th,body.rx-ui-system table td{vertical-align:middle;}
body.rx-ui-system .rx-role-page-title{min-width:0;max-width:min(44vw,520px);}
body.rx-ui-system .rx-role-page-title strong,body.rx-ui-system .rx-role-page-title small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.rx-ui-system .rx-role-page-title strong{font-size:16px;line-height:1.2;}
body.rx-ui-system .rx-role-page-title small{font-size:12px;line-height:1.2;}
body.rx-ui-system .rx-shell-hamburger{width:44px;min-width:44px;height:44px;min-height:44px;display:inline-grid;place-items:center;touch-action:manipulation;}
body.rx-ui-system .rx-public-drawer-nav a,body.rx-ui-system .rx-public-drawer-form button{min-height:44px;display:flex;align-items:center;justify-content:center;}
body.rx-ui-system .rx-public-drawer-head{display:flex;align-items:center;justify-content:center;min-height:72px;padding:12px 16px;}
body.rx-ui-system .rx-public-drawer-head .rx-logo-brand{margin-inline:auto;}
body.rx-ui-system .rx-public-drawer-head .rx-logo-brand img{display:block;max-width:136px;height:auto;margin:auto;}
body.rx-ui-system .rx-mobile-login-outside{min-height:44px;display:inline-flex;align-items:center;justify-content:center;touch-action:manipulation;transform:none;}
body.rx-ui-system .rx-topbar :is(a,button){transform:none;}
@media(max-width:767px){
  body.rx-ui-system :is(button,.btn,.button,.rx-btn){min-height:var(--rx-button-touch);}
  body.rx-ui-system :is(input:not([type="checkbox"]):not([type="radio"]),select){min-height:var(--rx-control-touch);}
  body.rx-ui-system .rx-role-page-title{max-width:calc(100vw - 164px);}
  body.rx-ui-system .rx-role-page-title strong{font-size:14px;}
  body.rx-ui-system .rx-role-page-title small{font-size:11px;}
}
