/* Product page framing. Shared card and table styles remain in operations.css. */
.products-shell{max-width:1600px;margin:0 auto;padding:24px 32px 20px;min-width:0}
.products-topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
.products-topline .top-status{display:flex;align-items:center;gap:7px;font-size:12px}
.products-shell .page-footer{margin-top:24px}
.products-shell .heading{align-items:flex-start}
.products-shell .heading h1{margin-top:0}
.products-connection{margin-top:22px;scroll-margin-top:20px}
.products-connection summary{cursor:pointer;color:var(--muted);font-size:13px;padding:15px 0;list-style-position:inside}
.products-connection summary:focus-visible{outline:3px solid #f5b694;outline-offset:3px;border-radius:5px}
.products-connection .sales-source-card{margin:0}
.products-shell .sales-login .field{text-align:left}
.products-shell .sales-login p{margin:10px 0}
.products-shell .sales-login .sales-login-error{color:var(--red)}
.products-shell .sales-chart-scroll{max-width:100%}
.products-shell .sales-table{min-width:720px}
.products-shell .sales-header-actions .btn{white-space:nowrap}
body>.toast{left:50%}
@media(max-width:760px){
  .products-shell{padding:18px 16px}
  .products-topline{margin-bottom:18px;gap:10px}
  .products-shell .sales-header-actions{width:100%}
  .products-shell .sales-header-actions .btn{flex:1}
  .products-shell .sales-empty{padding:20px 16px}
  .products-shell .sales-switch{gap:8px}
  .products-shell .sales-switch .field{min-width:104px;flex:1}
  .products-shell .panel-head{flex-wrap:wrap}
  .products-shell .sales-grid>*{min-width:0}
}
