.reports-page { max-width: 1080px; margin-inline: auto; min-width: 0; }
.portal-shell .reports-dialog { position:fixed; inset:0; width:calc(100% - 2rem); max-width:580px; max-height:calc(100dvh - 2rem); padding:0; margin:auto; border:1px solid #dce4ee; border-radius:1.35rem; background:#fff; color:#1b304c; box-shadow:0 30px 100px #04162c30; overflow-y:auto; overscroll-behavior:contain; }
.reports-dialog::backdrop { background:#08152685; backdrop-filter:blur(5px); }
body:has(.reports-dialog[open]) { overflow:hidden; }
.portal-shell .reports-dialog-header { position:sticky; top:0; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.15rem 1.5rem; border-bottom:1px solid #e4eaf1; background:#fff; }
.portal-shell .reports-dialog-header h2 { font-size:1rem; font-weight:600; margin:0; }
.portal-shell .reports-dialog-header p { font-size:.75rem; color:#687b92; margin:.2rem 0 0; }
.portal-shell .reports-close { display:grid; place-content:center; width:2.75rem; height:2.75rem; border-radius:50%; color:#64768a; font-size:1.5rem; text-decoration:none; flex-shrink:0; }
.reports-close:hover { background:#f0f5fc; }
.reports-close:focus-visible { outline:2px solid #054fa4; outline-offset:2px; }
.reports-dialog-body { padding:1.5rem; }
.reports-form { min-width:0; }
.reports-description { color:#687b92; font-size:.75rem; line-height:1.65; margin:12px 0 24px; }
.portal-shell .reports-dialog .portal-field { margin:0; }
.portal-shell .reports-dialog .portal-field__label-row > span { display:none; }
.portal-shell .reports-dialog .reports-form :is(label,legend) { font-size:.8rem; font-weight:500; }
.portal-shell .reports-dialog .reports-form :is(input,select) { font-size:.8rem; }
.portal-shell .reports-dialog .btn { font-size:.75rem; border-radius:99px; }
.reports-period { min-width: 0; }
.reports-presets { display: flex; flex-wrap: wrap; gap: 8px; }
.reports-presets[hidden], .reports-form [hidden] { display: none !important; }
.reports-presets .btn { min-height: 36px; white-space: nowrap; }
.reports-presets .btn[aria-pressed="true"] { background: #e7f0fc; border-color: #054fa4; color: #054fa4; }
.reports-filters { border-top: 1px solid #dde5ec; border-bottom: 1px solid #dde5ec; margin-top: 24px; padding-block: 18px; }
.reports-filters summary, .reports-methodology summary { cursor: pointer; font-weight: 600; }
.reports-submit { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 24px; }
.reports-submit p { max-width: 57ch; }
.reports-dialog .reports-submit p { font-size:.7rem; color:#687b92; }
.reports-submit .btn { flex-shrink: 0; white-space: nowrap; min-height: 44px; }
.reports-history { margin-top: 32px; min-width: 0; }
.reports-history summary { cursor:pointer; font-size:.8rem; color:#536b86; margin-bottom:12px; }
.reports-dialog .reports-history .table { font-size:.7rem; }
.reports-filters summary { font-size:.8rem; color:#536b86; font-weight:500; }
.reports-filters summary span { font-weight:400; font-size:.7rem; }
.reports-history .table-responsive { max-width: 100%; }
.reports-history th, .reports-history td { white-space: nowrap; }
.reports-empty { padding: 18px 20px; border: 1px dashed #c8d5e1; border-radius: 12px; color: #526574; }
.reports-methodology { margin-top: 24px; font-size: .875rem; }
.reports-form input[type="date"], .reports-form select { min-width: 0; max-width: 100%; }
@media (min-width: 360px) {
  .reports-dialog .reports-period .row > div { width:50%; }
}
@media (max-width: 575px) {
  .reports-dialog-body { padding:1.1rem; }
  .portal-shell .reports-dialog-header { padding:.9rem 1.1rem; }
  .reports-submit { flex-direction: column-reverse; align-items: stretch; gap: 12px; }
  .reports-filters summary span { display: block; padding-top: 4px; }
  .reports-history table, .reports-history tbody { display: block; min-width: 0; }
  .reports-history thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .reports-history tr { display: grid; grid-template-columns: 1fr 1fr; padding: 14px 16px; gap: 6px 12px; border-bottom: 1px solid #dde5ec; }
  .reports-history tr:last-child { border-bottom: 0; }
  .reports-history td { display: block; padding: 0; white-space: normal; border: 0; overflow-wrap: anywhere; }
  .reports-history .portal-table tbody td { padding: 0; background: transparent; box-shadow: none; border: 0; }
  .reports-history td:nth-child(2) { grid-area: 1 / 1 / 2 / 3; font-weight: 600; }
  .reports-history td:first-child { grid-area: 2 / 1 / 3 / 3; font-size: .8125rem; color: #526574; }
  .reports-history td:nth-child(3) { grid-area: 3 / 1; font-size: .8125rem; }
  .reports-history td:nth-child(4) { grid-area: 3 / 2; text-align: right; font-size: .8125rem; }
  .reports-history td:nth-child(5) { grid-area: 4 / 1 / 5 / 3; }
  .reports-history td a { display: inline-flex; align-items: center; min-height: 44px; }
}
