/* BN588 - phone readability fixes (measured at 390px). */
/* Dashboard (Booth at a glance): grid columns may shrink below their content */
.gl .gl-grid>*,.gl .gl-kpis>*,.gl .gl-q>*{min-width:0}
@media (max-width:900px){.gl .gl-grid{grid-template-columns:minmax(0,1fr)}.gl .gl-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){
  .gl .gl-q{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gl .gl-chart{grid-template-columns:repeat(12,minmax(0,1fr));gap:3px}
  .gl .gl-bar span{font-size:11px}
  .gl .gl-bar:nth-child(odd):not(.cur) span{visibility:hidden}
}
.gl h2,.gl h3,.gl p,.gl a,.gl li{overflow-wrap:anywhere}

@media (max-width:700px){
  /* Item page: price tool links spaced and wrapping, Visual Price Check placed as a button */
  .bn-card-title{flex-wrap:wrap;gap:8px}
  .bn-card-title .actions.compact{display:flex;flex-wrap:wrap;gap:8px 16px;width:100%}
  .bn-visual-price-check{display:inline-flex!important;margin:14px 0 6px!important}
  /* Slide-out menu small controls */
  .bn-sidebar-mode-toggle,.bn-sidebar-favorites__pin-current,.bn-live-badge{font-size:12px!important}
  /* Wide tables become stacked cards (class added by bn588-mobile.js only when a table does not fit) */
  table.bn588-stack,table.bn588-stack tbody,table.bn588-stack tr,table.bn588-stack td{display:block;width:100%!important;max-width:100%}
  table.bn588-stack thead,table.bn588-stack tr.bn588-head{display:none}
  table.bn588-stack tr{border:1px solid #e5e7eb;border-radius:12px;padding:8px 12px;margin:0 0 10px;background:#fff;box-sizing:border-box}
  table.bn588-stack td{display:grid;grid-template-columns:minmax(84px,36%) minmax(0,1fr);gap:10px;padding:6px 0!important;border:0!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere;min-height:0}
  table.bn588-stack td::before{content:attr(data-label);font-weight:600;color:#64748b;font-size:.85rem}
  table.bn588-stack td.bn588-nolabel{grid-template-columns:minmax(0,1fr)}
  table.bn588-stack td.bn588-nolabel::before{display:none}
  /* Images and embeds never wider than the screen */
  .bn-content img,.bn-main img,main img{max-width:100%;height:auto}
}

/* BN589: checkboxes and radios keep their natural size (a general full-width input rule stretched "Trust this device" on the login page) */
input[type=checkbox],input[type=radio]{width:auto!important;max-width:none;flex:none}
.bn-trust-device-card input[type=checkbox]{width:22px!important;height:22px!important}
@media (max-width:700px){html,body{max-width:100%}}
