:root{--bs-body-bg:#0b1220;--bs-body-color:#dce5f4;--bs-border-color:#26334b}body{min-height:100vh;background:radial-gradient(circle at 90% -10%,#1a3154 0,transparent 32%),#0b1220}.navbar,.card,.metric{background:#121d30!important}.navbar-brand{letter-spacing:.02em}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:#3875f6;color:white;width:31px;height:31px;border-radius:8px;margin-right:6px}.card{border:1px solid #26334b;border-radius:12px;overflow:hidden}.card-header{background:#17243a;border-bottom:1px solid #26334b;font-weight:600}.metric{border:1px solid #26334b;border-radius:12px;padding:20px;height:100%}.metric-value{font-size:2rem;font-weight:700;margin-top:8px}.metric-value small{font-size:1rem;color:#889ab8}.table{--bs-table-bg:transparent;--bs-table-hover-bg:#1c2c44}.table thead th{font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;color:#90a4c5;white-space:nowrap;padding:16px}.table tbody td{padding:14px 16px}.release-link{color:#c4d8ff;text-decoration:none;font-weight:600;overflow-wrap:anywhere}.release-link:hover{color:#8cb2ff}.filename{overflow-wrap:anywhere;font-family:ui-monospace,monospace;font-size:.89rem}.progress{height:8px;background:#29384f}.badge{font-weight:600}
/* Compact release search: results stay above the fold on mobile. */
.release-filters{overflow:visible}.release-filters .form-label{font-size:.82rem;margin-bottom:.25rem;color:#aabbd5}
@media(max-width:767.98px){main.container-fluid{padding:1rem!important}.release-filters{padding:.75rem!important;margin-bottom:.75rem!important}.release-filters .form-control,.release-filters .form-select{min-height:40px}.table tbody td{padding:10px 12px}.table thead th{padding:10px 12px}}

/* Responsive catalogue cards: desktop remains a real data table. */
.nx-container{max-width:1680px;margin-inline:auto}.nx-main{min-width:0}.release-link,.filename{overflow-wrap:anywhere;word-break:break-word}.metric-value{overflow-wrap:anywhere}.release-detail-header .filename{font-size:clamp(1.15rem,3vw,1.75rem)}
@media(max-width:767.98px){
  body{overflow-x:hidden}.nx-container{padding-inline:12px!important}.nx-main{padding-top:18px!important}
  .navbar-brand{font-size:1.15rem}.release-filters{padding:12px!important}.release-filters .row{--bs-gutter-x:.5rem}
  .release-results{border:0;background:transparent!important;overflow:visible}.release-results .table-responsive,.release-files .table-responsive{overflow:visible}
  .mobile-card-table{display:block;background:transparent}.mobile-card-table thead{display:none}.mobile-card-table tbody{display:grid;gap:12px}.mobile-card-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px 12px;background:#121d30;border:1px solid #2a3a55;border-radius:12px;padding:14px;min-width:0}.mobile-card-table tbody td{display:block;border:0;padding:0!important;min-width:0;font-size:.9rem;white-space:normal!important;text-align:left!important}.mobile-card-table tbody td:before{content:attr(data-label);display:block;color:#90a4c5;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px}.mobile-card-table tbody td:first-child{grid-column:1/-1;padding-bottom:8px!important;border-bottom:1px solid #293a54}.mobile-card-table tbody td:first-child:before{display:none}.mobile-card-table tbody td:last-child{text-align:right!important}.mobile-card-table tbody td:last-child .btn{min-width:80px}.mobile-card-table tbody td .small{overflow-wrap:anywhere;font-size:.77rem}.mobile-card-table .release-link{font-size:1rem;line-height:1.35}.release-files .card-header{border-bottom:0}.release-files .mobile-card-table tbody{padding:12px}.release-files .mobile-card-table tbody td:first-child:before{display:block}.release-files .mobile-card-table tbody td:first-child{font-size:.82rem}.release-detail-header .btn{width:100%}.metric{padding:14px}.metric-value{font-size:1.45rem}.metric-value.fs-5{font-size:.98rem!important}.nx-footer{font-size:.75rem}.nx-footer .float-end{float:none!important;display:block}
}
@media(max-width:390px){.mobile-card-table tbody tr{gap:8px}.mobile-card-table tbody td{font-size:.83rem}.release-filters .btn{padding-inline:8px}}
