.bet-detail-report { width:100%; min-width:0; }
html body .panel.bet-detail-panel { width:100%; max-width:none; min-width:0; margin-inline:0; }
.bet-detail-filters { display:flex; flex-wrap:wrap; align-items:end; gap:8px 12px; padding:10px; background:#f1f3f4; border:1px solid #cbd2d7; border-radius:6px 6px 0 0; }
.bet-detail-report label { display:flex; flex:1 1 125px; flex-direction:column; gap:3px; margin:0; color:#223544; font-size:12px; }
.bet-detail-report input,.bet-detail-report select { width:100%; min-width:0; height:32px; margin:0; padding:4px 7px; background:#fff; color:#152733; border:1px solid #b7c4cd; border-radius:3px; }
.bet-detail-filters button { height:32px; padding:4px 18px; }
.bet-detail-caption { font-size:12px; margin:8px 0; }
.bet-detail-frame { max-height:65vh; width:100%; overflow:auto; border:1px solid #aab5bb; overscroll-behavior:contain; }
.bet-detail-frame table { width:100%; min-width:1850px; border-collapse:separate; border-spacing:0; font-size:12px; font-variant-numeric:tabular-nums; }
.detail-kind-pages table { min-width:1200px; }
.detail-kind-shareholder table { min-width:1200px; }
.detail-kind-retained table { min-width:1600px; }
.detail-kind-retained .bet-detail-caption,.detail-kind-shareholder .bet-detail-caption { display:none; }
.allocation-explanation { font-size:12px; margin:8px 0; line-height:1.5; }
.allocation-warning { padding:10px; border:1px solid #a95511; background:#fff2df; color:#743703; overflow-wrap:anywhere; }
.detail-periods { display:flex; flex-wrap:wrap; gap:5px; }
.detail-kind-digits table { min-width:1400px; }
.detail-kind-digits td:nth-child(12) { white-space:normal; min-width:220px; max-width:350px; }
.bet-detail-frame th,.bet-detail-frame td { padding:6px 7px; height:auto; white-space:nowrap; border:0; border-right:1px solid #ccd0d4; border-bottom:1px solid #d9dfe3; text-align:left; }
.bet-detail-frame th { position:sticky; top:0; z-index:2; background:#e3e6e8; color:#18212a; }
.bet-detail-frame .detail-sort { background:none; color:inherit; border:0; padding:0; font-size:inherit; font-weight:700; white-space:nowrap; }
.bet-detail-frame td.amount { text-align:right; }
.bet-detail-frame tfoot { position:sticky; bottom:0; z-index:2; }
.bet-detail-frame tfoot th,.bet-detail-frame tfoot td { position:static; background:#e8edf1; color:#132532; font-weight:700; }
.bet-detail-ledger tbody td { background:#575b60; color:#fff; }
.bet-detail-ledger tbody tr:nth-child(even) td { background:#3e4247; }
.bet-detail-ledger tbody tr:hover td { background:#2c596c; color:#fff; }
.bet-detail-classic tbody td { background:#fff; color:#202e39; }
.bet-detail-classic tbody tr:nth-child(odd) td { background:#fffde6; }
.bet-detail-classic tbody tr:hover td { background:#dceff5; color:#132c36; }
.bet-detail-report .detail-account { display:inline; background:none; color:inherit; border:0; padding:0; font-size:inherit; text-decoration:underline; }
.bet-detail-classic .detail-account { color:#164fc4; }
.bet-detail-frame td.detail-remark { max-width:220px; white-space:normal; overflow-wrap:anywhere; }
.bet-detail-frame td.detail-empty { padding:32px 16px; background:#f4f7f9; color:#344c5a; }
.bet-detail-pagination { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:flex-end; padding:8px; background:#edf0f2; color:#223544; }
.bet-detail-pagination label { flex:0 1 90px; }
.bet-detail-pagination button { padding:5px 12px; min-height:32px; }
@media(max-width:600px) {
  .bet-detail-report input,.bet-detail-report select { font-size:16px; min-height:44px; }
  .bet-detail-filters button,.bet-detail-pagination button { min-height:44px; }
  .bet-detail-filters { gap:8px; }
  .bet-detail-filters label { flex:1 1 calc(50% - 8px); }
  .bet-detail-frame { max-height:60vh; }
  .bet-detail-pagination { justify-content:flex-start; }
}
