/* Keep navigation and controls visible; only the opinion rows scroll. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.product-shell{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.product-shell>.topbar{height:44px;min-height:44px;padding:0 18px!important}
.product-shell .topbar-title{display:none}
.product-shell>.content{padding:8px 16px 12px!important;width:100%;max-width:none;flex:1;min-height:0;overflow:hidden}
.product-workspace{height:100%;display:flex;flex-direction:column;min-height:0}
.product-workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:0 0 8px;flex-shrink:0}
.product-navigation{display:flex;align-items:center;gap:18px;min-width:0}
.product-navigation .back-link{margin:0;white-space:nowrap}
.product-navigation .product-tabs{margin:0;border:0;display:flex;gap:20px;white-space:nowrap}
.product-navigation .product-tab{padding:10px 0;font-size:13px}
.product-workspace-toolbar>.actions{gap:8px;flex-wrap:wrap}
.product-tab-content{flex:1;min-height:0;overflow:auto}
.opinion-tab-content{display:flex;flex-direction:column;overflow:hidden}
.product-workspace .opinions-panel{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden}
.opinion-controls{flex-shrink:0;max-height:50dvh;overflow:auto}
.opinion-controls [hidden]{display:none}
.opinion-controls .opinion-list-filters{padding:10px 14px;gap:10px}
.opinion-controls .opinion-list-filters label:first-child{min-width:150px;flex:1}
.opinion-controls .status-options{padding:8px 14px;gap:8px 12px}
.opinion-controls .opinion-batch-actions{padding:8px 14px;gap:8px}
.opinion-batch-actions #opinion-query{width:220px;min-width:120px;flex:1;max-width:340px}
.opinion-batch-actions #bulk-status{width:130px}
.opinion-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
.opinion-scroll th{position:sticky;top:0;z-index:2;background:var(--surface-tint)}
.opinion-table th,.opinion-table td{padding:11px 12px}
.opinion-table .opinion-content{min-width:240px;max-width:520px;white-space:normal}
.column-sort{border:0;background:transparent;color:inherit;font:inherit;font-size:12px;padding:4px 0;cursor:pointer;text-align:left}
.column-sort span{color:var(--accent);margin-left:3px}
.column-sort:hover,.column-sort:focus-visible{color:var(--accent)}
th[aria-sort] .column-sort{font-weight:600}
.opinion-code-copy{cursor:copy;white-space:normal;text-align:left;overflow-wrap:anywhere;max-width:200px;border:0;border-radius:4px;background:var(--soft);color:var(--accent);padding:4px 7px;font:11px/1.5 Consolas,monospace}
.opinion-sort-hint{flex-shrink:0;padding:6px 14px;margin:0;border-top:1px solid var(--line)}
.statistics-view{display:grid;gap:16px;padding-bottom:12px}
.statistics-range{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding:10px 0}
.statistics-range label{display:grid;gap:6px;font-size:12px}
.statistics-range input{width:155px}
.statistics-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.statistics-card{padding:16px;display:grid;gap:10px}
.statistics-card span{font-size:12px;color:var(--muted);overflow-wrap:anywhere}
.statistics-card strong{font-size:26px;font-weight:600;color:var(--accent)}
.statistics-heading{padding:16px 20px 10px}
.statistics-heading h2{font-size:15px;margin-bottom:8px}
.statistics-table th,.statistics-table td{padding:12px 16px;font-size:12px;text-align:right}
.statistics-table th:first-child{text-align:left}
.statistics-table tbody th{font-weight:400;background:transparent}
.statistics-table small{display:block;font-weight:400;color:var(--muted);margin-top:4px}
.stat-entered{color:#187654}.stat-left{color:var(--muted)}
.statistics-warning{font-size:12px;color:#986415}
@media(max-width:800px){
  .product-shell>.content{padding:6px 8px 8px!important}
  .product-navigation{gap:12px;flex:1}
  .product-navigation .product-tabs{gap:16px}
  .product-workspace-toolbar{gap:6px;padding-bottom:6px}
  .product-workspace-toolbar>.actions{width:100%}
  .product-workspace-toolbar>.actions>.page-code{margin-left:auto}
  .opinion-controls .opinion-list-filters label:first-child{min-width:120px}
  .opinion-controls .opinion-batch-actions{padding:8px;gap:6px}
  .opinion-batch-actions #opinion-query{max-width:none;min-width:160px}
  .opinion-scroll .opinion-table .opinion-content{min-width:230px}
  .statistics-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .statistics-range{gap:8px}
  .statistics-range input{width:145px}
}
