/* K7AR-derived WebCluster; NG7M responsive presentation. Desktop defaults are unchanged. */
.responsive-reports,
.responsive-filter-toggle,
.country-picker,
.responsive-refresh {
    display: none;
}
.responsive-propagation > summary {
    display: none;
}
.refresh-status {
    font-size: 12px;
    color: var(--muted);
}
@media (max-width: 1100px) {
    .responsive-ready .responsive-filter-toggle {
        display: block;
        width: 100%;
        min-height: 44px;
        text-align: left;
        padding: 8px 12px;
        margin: 8px 0 0;
        border: 1px solid var(--line);
        border-radius: 8px 8px 0 0;
        background: #e7eff3;
        color: var(--ink);
        font-weight: 650;
    }
    .responsive-ready .source-toolbar:not(.mobile-controls-open) {
        display: none;
    }
    .responsive-ready .source-toolbar.mobile-controls-open {
        display: flex;
        margin-top: 0 !important;
    }
    .responsive-ready .source-toolbar > strong {
        display: none;
    }
    .responsive-ready .source-toolbar > span {
        flex: 1 1 100%;
    }
    .responsive-ready .source-toolbar > span label {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        font-size: 14px;
    }
    .responsive-ready .source-toolbar .page-size-control {
        margin-left: 0 !important;
    }
    .responsive-ready .quick-filter {
        flex: 1 1 40%;
        min-width: 0;
    }
    .responsive-ready .quick-filter summary {
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 9px;
    }
    .responsive-ready .quick-filter-menu {
        position: static;
        width: 100%;
        max-height: 50vh;
    }
    .responsive-ready .quick-filter[open] {
        flex-basis: 100%;
    }
    .responsive-ready .choice-option {
        min-height: 44px;
        align-items: center;
    }
    .responsive-ready .quick-filter-apply,
    .responsive-ready .filter-clear,
    .responsive-ready .filter-actions .btn {
        min-height: 44px;
        padding: 9px 12px;
    }
    .responsive-ready .responsive-dx-table [data-column="Spotter Cty"],
    .responsive-ready .responsive-dx-table [data-column="Spotter Cont"],
    .responsive-ready .responsive-dx-table [data-column="Prefix"],
    .responsive-ready .responsive-dx-table [data-column="State"] {
        display: none !important;
    }
    .responsive-ready .country-picker {
        display: block;
        border: 1px solid var(--line);
        border-radius: 6px;
        padding: 8px;
        margin: 8px 0;
    }
    .responsive-ready .country-picker-original {
        display: none;
    }
    .country-picker summary {
        min-height: 44px;
        cursor: pointer;
    }
    .country-picker input[type="search"] {
        width: 100%;
        min-height: 44px;
        border: 1px solid var(--line);
        padding: 8px;
        margin: 4px 0;
        border-radius: 5px;
        font-size: 16px;
    }
    .country-checkboxes {
        max-height: 40vh;
        overflow-y: auto;
    }
    .country-checkboxes label {
        display: flex;
        gap: 9px;
        min-height: 44px;
        align-items: center;
        font-size: 14px;
        font-weight: 400;
    }
    .country-checkboxes label[hidden] {
        display: none;
    }
    .country-checkboxes input {
        flex-shrink: 0;
        width: 18px;
        height: 18px;
    }
    .responsive-ready .responsive-propagation > summary {
        display: block;
        min-height: 44px;
        padding: 12px;
        color: var(--ink);
        font-weight: 650;
        cursor: pointer;
    }
    .responsive-propagation {
        border-top: 1px solid var(--line);
    }
    .responsive-ready .responsive-refresh {
        display: inline-block;
        min-height: 44px;
        padding: 8px 12px;
        border: 1px solid #567c8a;
        border-radius: 5px;
        color: #173d4c;
        background: #fff;
    }
    .refresh-status:not(:empty) {
        flex-basis: 100%;
    }
    .responsive-ready .active-filters a {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
    }
    .site-nav {
        flex-wrap: wrap;
    }
    .site-nav a {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
    }
    .filter-layout {
        grid-template-columns: 1fr;
    }
    .filter-card,
    .content-card,
    .body-content {
        min-width: 0;
    }
    .filter-group-title {
        overflow-wrap: anywhere;
    }
    .filter-card input[type="text"],
    .search-card input[type="text"] {
        font-size: 16px;
    }
}
@media (max-width: 700px) {
    .responsive-ready .responsive-report-table {
        display: none;
    }
    .responsive-ready .responsive-reports {
        display: grid;
        gap: 6px;
        padding: 7px;
    }
    .responsive-ready .responsive-dx-tools > span,
    .responsive-ready .responsive-dx-tools > button {
        display: none;
    }
    .responsive-ready .responsive-dx-tools {
        padding: 5px 8px;
    }
    .spot-page-controls {
        margin-left: auto;
    }
    .spot-page-controls a,
    .spot-page-controls > span {
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        padding: 7px 10px;
    }
    .column-size-tools:not(.responsive-dx-tools) {
        display: none;
    }
    .spot-card,
    .propagation-card {
        border: 1px solid #c8d8df;
        border-radius: 7px;
        background: #fff;
        color: var(--ink);
        overflow: hidden;
    }
    .spot-card summary,
    .propagation-card summary {
        cursor: pointer;
        padding: 9px;
        list-style: none;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: 6px 10px;
        align-items: center;
        font-family: Consolas, "Courier New", monospace;
        font-size: 15px;
    }
    .spot-card summary::-webkit-details-marker,
    .propagation-card summary::-webkit-details-marker {
        display: none;
    }
    .report-dx-call {
        font-weight: 700;
        overflow-wrap: anywhere;
    }
    .report-dx-call a,
    .report-spotter a {
        display: inline-block;
        padding: 3px 0;
    }
    .report-freq,
    .report-mode,
    .report-time {
        white-space: nowrap;
    }
    .report-spotter {
        grid-column: 1 / 3;
        overflow-wrap: anywhere;
        font-size: 13px;
    }
    .report-time {
        font-size: 13px;
    }
    .report-expand {
        grid-column: 1 / -1;
        font-family: system-ui, sans-serif;
        font-size: 11px;
        color: #356473;
        text-align: right;
    }
    .report-expand::after {
        content: " +";
    }
    details[open] > summary .report-expand::after {
        content: " −";
    }
    .responsive-reports .spot-source-badge {
        padding: 3px 6px;
        border-radius: 4px;
        font-size: 12px;
    }
    .responsive-reports dl {
        display: grid;
        grid-template-columns: minmax(75px, auto) minmax(0, 1fr);
        gap: 6px 10px;
        padding: 9px;
        border-top: 1px solid var(--line);
        margin: 0;
        font-family: Consolas, "Courier New", monospace;
        font-size: 14px;
    }
    .responsive-reports dt {
        color: var(--muted);
        font-size: 12px;
    }
    .responsive-reports dd {
        min-width: 0;
        margin: 0;
        overflow-wrap: anywhere;
        white-space: normal;
    }
    .responsive-reports dd a {
        overflow-wrap: anywhere;
    }
    .propagation-card summary {
        grid-template-columns: 1fr 1fr;
        font-size: 14px;
    }
    .propagation-card .report-time {
        grid-column: 1 / -1;
    }
    .propagation-card summary small {
        font-family: system-ui, sans-serif;
        font-size: 11px;
    }
    .header-layout {
        padding: 9px 0 6px;
        gap: 6px;
    }
    .site-brand strong {
        font-size: 18px;
    }
    .site-brand small {
        font-size: 11px;
    }
    .site-nav {
        gap: 3px;
    }
    .site-nav a {
        padding: 5px 8px;
        font-size: 12px;
    }
    .active-filters {
        gap: 3px 10px;
    }
    .active-filters > strong {
        display: none;
    }
    .active-filters p {
        flex-basis: 100%;
        min-width: 0;
        overflow-wrap: anywhere;
    }
    .active-filters small {
        margin-right: auto;
    }
    .source-toolbar .page-size-control {
        flex: 1 1 100%;
    }
    .shell-width {
        width: calc(100% - 16px);
    }
    .source-toolbar .quick-filter-menu .choice-option {
        min-width: 0;
    }
    .search-card p,
    .content-card p {
        overflow-wrap: anywhere;
    }
    .site-footer {
        font-size: 12px;
    }
    .responsive-reports summary:focus-visible,
    .country-picker summary:focus-visible {
        outline: 2px solid var(--teal);
        outline-offset: -2px;
    }
}
/* Tablet expansion uses the original row; hidden fields remain available by touch. */
.tablet-detail-toggle,
.tablet-detail-row {
    display: none;
}
@media (min-width: 701px) and (max-width: 1100px) {
    .responsive-ready .tablet-detail-toggle {
        display: block;
        margin: 4px auto 0;
        min-height: 36px;
        padding: 4px 8px;
        border: 1px solid #567c8a;
        border-radius: 4px;
        background: #fff;
        color: #173d4c;
        font-size: 12px !important;
        font-family: system-ui, sans-serif;
    }
    .responsive-ready .tablet-detail-row:not([hidden]) {
        display: table-row;
    }
    .responsive-ready .tablet-detail-row td {
        position: static !important;
        white-space: normal !important;
        padding: 12px !important;
    }
    .tablet-detail-row dl {
        display: grid;
        grid-template-columns: 110px minmax(0, 1fr);
        gap: 7px 12px;
        margin: 0;
    }
    .tablet-detail-row dt {
        color: var(--muted);
    }
    .tablet-detail-row dd {
        margin: 0;
        overflow-wrap: anywhere;
    }
}
@media (min-width: 701px) and (max-width: 1100px) {
    .responsive-ready .responsive-dx-table th[data-column="Comment"],
    .responsive-ready .responsive-dx-table td[data-column="Comment"] {
        display: table-cell !important;
    }
}
.tablet-report-time {
    display: none;
}
@media (min-width: 701px) and (max-width: 1100px) {
    .responsive-dx-table .desktop-report-time {
        display: none;
    }
    .responsive-dx-table .tablet-report-time {
        display: inline;
    }
    .responsive-ready .tablet-detail-toggle {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 0 0 5px;
        padding: 2px;
        min-height: 32px;
        width: 32px;
        font-weight: 700;
    }
}
@media (max-width: 1100px) {
    .filter-card .continent-options label,
    .filter-card .band-options label {
        display: inline-flex;
        align-items: center;
        min-height: 44px;
        padding: 2px 6px;
    }
    .filter-card .continent-options input,
    .filter-card .band-options input {
        width: 18px;
        height: 18px;
    }
}
@media (max-width: 1100px) {
    .responsive-ready .responsive-dx-tools > span,
    .responsive-ready .responsive-dx-tools > button,
    .responsive-ready .responsive-dx-table .column-resize-handle {
        display: none;
    }
}

/* NG7M compact report rows: leave filter touch controls roomy; tighten data rows only. */
@media (min-width:701px) and (max-width:1100px) {
 html body.webcluster-shell .spot-data-grid td,
 html body.webcluster-shell .spot-data-grid td * { font-size:12px!important; line-height:1.2!important; }
 html body.webcluster-shell .spot-data-grid > tbody > tr > td:not([colspan]) { padding:2px 4px!important; height:auto!important; }
 .responsive-ready .tablet-detail-toggle { width:20px; min-width:20px; height:20px; min-height:20px; padding:0; margin:0 0 0 3px; border-radius:3px; }
 html body.webcluster-shell .spot-data-grid .tablet-detail-toggle { font-size:11px!important; line-height:18px!important; }
 .responsive-ready .tablet-detail-row td { padding:6px!important; }
 .tablet-detail-row dl { gap:3px 8px; }
}
@media (max-width:700px) {
 .responsive-ready .responsive-reports { gap:2px; padding:3px; }
 .spot-card,.propagation-card { border-radius:3px; }
 .spot-card summary { grid-template-columns:minmax(0,1fr) auto auto 16px; grid-template-rows:auto auto; gap:1px 5px; padding:3px 5px; font-size:12px; line-height:1.2; }
 .report-dx-call { grid-column:1; grid-row:1; }
 .report-freq { grid-column:2; grid-row:1; }
 .report-mode { grid-column:3; grid-row:1; }
 .spot-card .report-spotter { grid-column:1 / 3; grid-row:2; font-size:11px; line-height:1.2; }
 .spot-card .report-time { grid-column:3; grid-row:2; text-align:right; font-size:11px; }
 .report-dx-call a,.report-spotter a { padding:0; }
 .report-expand { grid-column:4; grid-row:1 / 3; font-size:12px; width:16px; text-align:center; align-self:center; line-height:16px; color:var(--teal); }
 .report-expand::after { content:"+"; }
 details[open]>summary .report-expand::after { content:"−"; }
 .responsive-reports .spot-source-badge { padding:0 3px; font-size:10px; line-height:1.3; }
 .responsive-reports dl { gap:3px 7px; padding:5px; font-size:12px; }
 .responsive-reports dt { font-size:10px; }
 .propagation-card summary { grid-template-columns:1fr 1fr 16px; gap:1px 5px; padding:3px 5px; font-size:12px; line-height:1.2; }
 .propagation-card .report-time { grid-column:1 / 3; font-size:11px; }
 .propagation-card .report-expand { grid-column:3; grid-row:1 / 4; }
 .propagation-card summary small { font-size:10px; }
}