/*
 * PPS register listing — scoped, responsive structure for the [ap_pps] shortcode.
 * Loaded only where the shortcode renders (see Shortcode/Pps.php::scripts()).
 * The theme provides the visual system; this file only guarantees structure
 * at small widths.
 */

/*
 * Full page width: pull the table out to the .container gutters so it
 * spans edge to edge. The negative margins mirror the container's own
 * side padding (sass/components/_classes.scss: desktop vw(48) = 2.5vw,
 * tablet 36px, phone 24px), so nothing overflows the page.
 */

/* Horizontal scroll safety net on very narrow screens */
.apc-pps .apc-pps-table-wrap {
    overflow-x: auto;
    max-width: 1200px;
    margin: 0 auto;
}

@media (min-width: 700px) and (max-width: 1024px) and (orientation: portrait),
       (min-width: 1024px) and (max-width: 1249px) and (orientation: landscape) {
    .apc-pps .apc-pps-table-wrap {
        margin-inline: -36px;
        padding-inline: 36px;
    }
}

@media (max-width: 699px) and (orientation: portrait),
       (max-width: 1023px) and (orientation: landscape) {
    .apc-pps .apc-pps-table-wrap {
        margin-inline: -24px;
        padding-inline: 24px;
    }
}

@media (min-width: 700px) {
    .apc-pps td.apc-pps-property { width: 65%; }
}

/* Desktop: three-column table */
.apc-pps table { width: 100%; border-collapse: collapse; }

.apc-pps td {
    padding: .6rem .75rem;
    border-bottom: 1px solid rgba(0,0,0,.08);
    text-align: left;
    vertical-align: top;
}

.apc-pps tr:first-child {
    border-top: 3px solid rgba(0,0,0,.08);
}

.apc-pps td.apc-pps-status-cell {
    min-width: 120px;
}

.apc-pps td.apc-pps-doc {
    white-space: nowrap;
}

.apc-pps .apc-pps-address,
.apc-pps .apc-pps-suburb { font-weight: 600; }

.apc-pps .apc-pps-suburb { white-space: nowrap; }

/* Status renders as plain text, not a badge */
.apc-pps .apc-pps-status { font-weight: 600; }

/* Mobile: stack each row as a labelled card */
@media (max-width: 600px) {
    .apc-pps table,
    .apc-pps tbody,
    .apc-pps tr,
    .apc-pps td { display: block; width: 100%; }

    .apc-pps tr { border-bottom: 1px solid rgba(0,0,0,.08); padding: .75rem 0; }

    .apc-pps td { border: none; padding: .25rem 0; }
}

/* Pagination uses the theme's .global-pagination styles (sass/ap/_pagination.scss). */
.apc-pps .apc-pps-pagination { margin: 2rem 0; }

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}
