@media (min-width: 960px) {
    .grid.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .grid.cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 1279px) {
    body[data-page-id="ADM-001"] .journal-settings-page .grid.cols-2,
    body[data-page-id="ADM-001"] .journal-role-line {
        grid-template-columns: minmax(0, 1fr);
    }
    body[data-page-id="ADM-001"] .journal-meta-row {
        flex-wrap: wrap;
        overflow-x: visible;
    }
    body[data-page-id="ADM-001"] .rule-row-list {
        max-width: 100%;
    }
    body[data-page-id="ADM-001"] .rule-row {
        grid-template-columns: minmax(0, 1fr);
        align-items: start;
    }
    body[data-page-id="ADM-001"] :is(
        .rule-row .rule-label,
        .rule-row .rule-check,
        .rule-auto-flag
    ) {
        white-space: normal;
    }
}

/* A desktop navigation shell still leaves dashboard cards with tablet-sized
   content space at this boundary. Stack only the priority cards so their
   intrinsic labels cannot widen the document. */
@media (min-width: 960px) and (max-width: 1023px) {
    body[data-page-id="COM-002"] .dashboard-priority-grid {
        grid-template-columns: minmax(0, 1fr);
        min-width: 0;
        max-width: 100%;
    }
    body[data-page-id="COM-002"] :is(
        .dashboard-priority-card,
        .dashboard-priority-list,
        .dashboard-priority-item,
        .dashboard-priority-item-head,
        .dashboard-priority-footer
    ) {
        min-width: 0;
        max-width: 100%;
    }
}

@media (max-width: 959px) {
    .jx-header { min-height: 56px; padding-block: 6px; }
    .jx-header__desktop, .jx-header__tools > .jx-desktop-only { display: none !important; }
    .jx-header__mobile { min-width: 0; flex: 1 1 auto; display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
    .jx-main { padding: 24px; }
    .workspace-layout, .layout-two-column { grid-template-columns: minmax(0, 1fr) !important; }
    .workspace-sidebar, .layout-sidebar { display: none !important; }
}

@media (max-width: 767px) {
    body[data-page-id="AUT-002"] .aut-file-upload-fields {
        grid-template-columns: minmax(0, 1fr);
    }
    .jx-main { padding: 20px 16px; }
    .card { padding: 16px; margin-bottom: 12px; }
    .actions { gap: 8px; }
    body:is(
        [data-page-id="AUT-001"],
        [data-page-id="AUT-002"],
        [data-page-id="REV-002"],
        [data-page-id="ED-002"],
        [data-page-id="ED-004"],
        [data-page-id="ED-005"],
        [data-page-id="ED-006"],
        [data-page-id="EIC-003"],
        [data-page-id="ADM-001"],
        [data-page-id="SYS-001"]
    ) .workspace-content form > .actions:last-child,
    .jx-sticky-actions {
        position: sticky;
        z-index: 80;
        inset-block-end: 0;
        margin: 20px -16px -16px;
        padding: 12px 16px max(12px, env(safe-area-inset-bottom));
        border-top: 1px solid var(--jx-border);
        background: color-mix(in srgb, var(--jx-bg-surface) 96%, transparent);
        backdrop-filter: blur(12px);
    }
    table.jx-task-table, .jx-task-table thead, .jx-task-table tbody, .jx-task-table tr, .jx-task-table th, .jx-task-table td { display: block; max-width: 100%; min-width: 0; }
    .jx-task-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
    .jx-task-table tbody { display: grid; gap: 12px; }
    .jx-task-table tr { padding: 16px; border: 1px solid var(--jx-border); border-radius: var(--jx-radius-card); background: var(--jx-bg-surface); }
    .jx-task-table td { display: grid; grid-template-columns: minmax(88px, 32%) 1fr; gap: 8px; padding: 8px 0; border: 0; text-align: start; white-space: normal; }
    .jx-task-table td::before { content: attr(data-label); color: var(--jx-text-muted); font-size: 12px; font-weight: 600; }
    .jx-task-table td[data-primary="true"] { display: block; font-size: 16px; line-height: 24px; font-weight: 600; }
    .jx-task-table td[data-primary="true"]::before { display: none; }
    .jx-task-table input[type="checkbox"],
    .jx-task-table input[type="radio"] {
        width: 18px;
        height: 18px;
        min-height: 18px;
        padding: 0;
    }
    .jx-task-table :is(.jx-status, .status-chip, .list-guidance-badge) {
        max-width: 100%;
        white-space: normal;
    }
    .jx-task-table td[data-type="action"] { display: flex; justify-content: stretch; }
    .jx-task-table td[data-type="action"] > * { width: 100%; }
    .jx-task-table td[data-type="action"] .jx-table-actions { width: 100%; }
    .jx-task-table td[data-type="action"] .jx-table-actions > * { width: 100%; }
    .jx-task-table .button.small,
    .jx-task-table .jx-table-action {
        min-height: var(--jx-touch-target);
        padding: 9px 16px;
    }
    .jx-task-table .button.small::after,
    .jx-task-table .jx-table-action::after {
        width: 100%;
        height: 100%;
    }
    .jx-task-table :is(
        .jx-col--status,
        .jx-cell--status,
        .status-col,
        .status-cell,
        .jx-col--stage,
        .jx-cell--stage,
        .stage-col,
        .stage-cell,
        .jx-col--guidance,
        .jx-cell--guidance,
        .guidance-col,
        .guidance-cell,
        .jx-col--action,
        .jx-cell--action,
        .actions-col,
        .actions-cell,
        .title-col,
        .title-cell,
        .journal-col,
        .journal-cell,
        .decision-col,
        .decision-cell,
        .date-col,
        .date-cell
    ) { min-width: 0; }
    .jx-table-scroll:has(.jx-task-table) { overflow: visible; }
    .jx-task-table.jx-table--dense, .jx-task-table.jx-table--eic-overview { min-width: 0; }
}

@media (max-width: 639px) {
    .data-list { grid-template-columns: minmax(0, 1fr); gap: 4px; }
    .data-list dd { margin-block-end: 12px; }
    input, select, textarea { font-size: 16px !important; }
    .page-heading { font-size: 22px; line-height: 30px; }
    .jx-signup-card { margin-block: 0; }
    .jx-signup-verification-row,
    .jx-signup-phone-row,
    .jx-signup-phone-row--optional { grid-template-columns: minmax(0, 1fr); }
    .jx-signup-verification-row > .button,
    .jx-signup-phone-send { width: 100%; }
    .modal-backdrop, .reminder-modal-backdrop, .dashboard-modal, .withdraw-modal { align-items: end; padding: 0; }
    .modal-card, .reminder-modal-card, .dashboard-modal-dialog, .withdraw-modal-panel {
        width: 100%;
        max-width: none;
        max-height: 90dvh;
        padding: 20px 16px max(20px, env(safe-area-inset-bottom));
        border-radius: 16px 16px 0 0;
    }
}

@media (max-width: 1439px) {
    body[data-page-id="AUT-004"] .author-filter-form { flex-wrap: wrap; }
    body[data-page-id="AUT-004"] .author-filter-form :is(.filter-status, .filter-date-range, .filter-keyword) {
        flex: 1 1 240px;
        min-width: 0;
    }
}

@media (max-width: 639px) {
    body[data-page-id="AUT-004"] .author-filter-form :is(.filter-status, .filter-date-range, .filter-keyword, .filter-actions) {
        width: 100%;
        flex-basis: 100%;
        min-width: 0;
    }
    body[data-page-id="AUT-004"] .author-filter-form .filter-date-range {
        flex-direction: column;
        inline-size: 100%;
        min-inline-size: 0;
        max-inline-size: 100%;
    }
    body[data-page-id="AUT-004"] .author-filter-form .filter-date-range .field {
        width: 100%;
        min-width: 0;
        max-width: 100%;
    }
    body[data-page-id="AUT-004"] .author-filter-form .filter-actions > * { flex: 1 1 0; }
}

/* Mobile task cards must not inherit desktop table column widths. */
@media (max-width: 767px) {
    .jx-task-table td {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        box-sizing: border-box;
        text-align: start !important;
    }
    .jx-task-table td::before {
        min-width: 0;
        white-space: nowrap;
        word-break: keep-all;
    }
    .jx-task-table td > * {
        min-width: 0;
        max-width: 100%;
    }
    .jx-task-table :is(.status-badge-stack, .jx-table-actions) {
        margin-inline: 0;
    }
    .jx-task-table :is(.jx-status, .status-chip, .list-guidance-badge) {
        width: fit-content;
        max-width: 100%;
        word-break: keep-all;
        overflow-wrap: normal;
    }

    body[data-page-id="AUT-004"] .author-filter-form :is(
        .filter-date-range,
        .filter-date-range .field,
        .filter-date-range .flatpickr-wrapper,
        .filter-date-range input
    ) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    body[data-page-id="AUT-004"] .jx-task-table :is(
        .status-cell,
        .jx-cell--status,
        .guidance-cell,
        .jx-cell--guidance,
        .actions-cell,
        .jx-cell--action
    ) {
        display: block;
    }
    body[data-page-id="AUT-004"] .jx-task-table :is(
        .status-cell,
        .jx-cell--status,
        .guidance-cell,
        .jx-cell--guidance,
        .actions-cell,
        .jx-cell--action
    )::before {
        display: block;
        margin-bottom: 8px;
    }
    body[data-page-id="AUT-004"] .status-badge-stack,
    body[data-page-id="AUT-004"] .list-guidance-summary {
        width: 100%;
    }
    body[data-page-id="AUT-004"] .list-guidance-summary {
        word-break: keep-all;
        overflow-wrap: break-word;
    }
    body[data-page-id="AUT-004"] .jx-table-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
        width: 100%;
        align-items: start;
    }
    body[data-page-id="REV-001"] .jx-task-table :is(
        .status-cell,
        .jx-cell--status,
        .guidance-cell,
        .jx-cell--guidance,
        .actions-cell,
        .jx-cell--action
    ) {
        display: block;
    }
    body[data-page-id="REV-001"] .jx-task-table :is(
        .status-cell,
        .jx-cell--status,
        .guidance-cell,
        .jx-cell--guidance,
        .actions-cell,
        .jx-cell--action
    )::before {
        display: block;
        margin-bottom: 8px;
    }
    body[data-page-id="REV-001"] :is(
        .status-badge-stack,
        .list-guidance-summary,
        .jx-table-actions
    ) {
        width: 100%;
    }
    body[data-page-id="REV-001"] .list-guidance-summary {
        word-break: keep-all;
        overflow-wrap: break-word;
    }
    body[data-page-id="REV-001"] .jx-table-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }
    body[data-page-id="AUT-004"] .jx-table-actions > * {
        width: 100%;
        min-width: 0;
        min-height: var(--jx-touch-target);
        margin: 0;
        align-self: start;
        justify-self: stretch;
        box-sizing: border-box;
    }

    body[data-page-id="COM-002"] .dashboard-table.jx-task-table td,
    body[data-page-id="COM-004"] .jx-notification-table.jx-task-table td {
        display: block;
    }
    body[data-page-id="COM-002"] .dashboard-table.jx-task-table td::before,
    body[data-page-id="COM-004"] .jx-notification-table.jx-task-table td::before {
        display: block;
        margin-bottom: 6px;
    }
    body[data-page-id="COM-002"] .dashboard-table.jx-task-table td[data-primary="true"]::before {
        display: none;
    }
    body[data-page-id="COM-002"] .dashboard-table.jx-task-table :is(.status-chip, .button),
    body[data-page-id="COM-004"] .jx-notification-table.jx-task-table :is(.status-chip, .button) {
        word-break: keep-all;
    }
    body[data-page-id="COM-002"] .dashboard-table.jx-task-table td[data-type="action"] .button,
    body[data-page-id="COM-004"] .jx-notification-table.jx-task-table td[data-type="action"] .button {
        width: 100%;
        min-height: var(--jx-touch-target);
    }
    body[data-page-id="COM-002"] .dashboard-link-gap {
        margin: 8px 0 0;
    }
    body[data-page-id="COM-004"] .jx-notification-copy {
        display: grid;
        gap: 5px;
        width: 100%;
        min-width: 0;
        overflow-wrap: break-word;
    }

    body[data-page-id="AUT-005"] :is(.jx-table--similarity-files, .jx-table--files) > :is(thead, tbody, tfoot) > tr > :is(th, td) {
        padding-inline: 6px;
    }
    body[data-page-id="AUT-005"] .jx-table--similarity-files {
        min-width: 478px;
        table-layout: fixed;
    }
    body[data-page-id="AUT-005"] .jx-table--similarity-files :is(.jx-col--file-name, .jx-cell--file-name) {
        width: 220px;
        min-width: 220px;
        overflow-wrap: anywhere;
    }
    body[data-page-id="AUT-005"] .jx-table--similarity-files :is(.jx-col--file-uploaded, .jx-cell--file-uploaded) {
        width: 136px;
        min-width: 136px;
        white-space: normal;
    }
    body[data-page-id="AUT-005"] :is(.jx-table--similarity-files, .jx-table--files) :is(.jx-col--action, .jx-cell--action) {
        min-width: 98px;
        text-align: start;
        white-space: nowrap;
    }
    body[data-page-id="AUT-005"] :is(.jx-table--similarity-files, .jx-table--files) .button {
        white-space: nowrap;
        word-break: keep-all;
    }

    /* EIC summary tables are read-only summaries, not inferred task/action tables. */
    body[data-page-id="EIC-001"] .eic-summary-table {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: auto;
    }
    body[data-page-id="EIC-001"] .eic-summary-table tbody,
    body[data-page-id="EIC-001"] .eic-summary-table .eic-summary-row {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
    }
    body[data-page-id="EIC-001"] .eic-summary-table .eic-summary-row {
        padding: 12px;
    }
    body[data-page-id="EIC-001"] .eic-summary-table .eic-summary-row > td {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        padding: 6px 0;
        text-align: start !important;
        overflow-wrap: anywhere;
        box-sizing: border-box;
    }
    body[data-page-id="EIC-001"] .eic-summary-table .eic-summary-row > td::before {
        display: block;
        margin-bottom: 4px;
    }
    body[data-page-id="EIC-001"] .eic-summary-table .eic-summary-row > td[data-primary="true"]::before {
        display: none;
    }
    body[data-page-id="EIC-001"] .eic-summary-table .eic-journal-link {
        display: inline-block;
        max-width: 100%;
        text-align: start;
        overflow-wrap: anywhere;
    }

    /* Reset legacy desktop dashboard table minimums only for mobile cards. */
    body[data-page-id="COM-002"] .dashboard-table-wrap {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        overflow-x: visible;
    }
    body[data-page-id="COM-002"] :is(#dashboard-authored-table, #dashboard-review-table).jx-task-table {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        table-layout: auto;
    }
    body[data-page-id="COM-002"] :is(#dashboard-authored-table, #dashboard-review-table).jx-task-table :is(tbody, tr) {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    body[data-page-id="COM-002"] :is(#dashboard-authored-table, #dashboard-review-table) .dashboard-mobile-task-row > td {
        min-width: 0 !important;
        max-width: 100% !important;
        overflow-wrap: anywhere;
        box-sizing: border-box;
    }
    body[data-page-id="COM-002"] :is(#dashboard-authored-table, #dashboard-review-table) td[data-type="action"] {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }
    body[data-page-id="COM-002"] :is(#dashboard-authored-table, #dashboard-review-table) td[data-type="action"] .button {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        min-height: var(--jx-touch-target);
        box-sizing: border-box;
        white-space: normal;
        word-break: keep-all;
        overflow-wrap: normal;
        text-align: center;
    }
}

@media (min-width: 360px) and (max-width: 767px) {
    body[data-page-id="AUT-004"] .jx-table-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    body[data-page-id="AUT-004"] .jx-table-actions > :only-child {
        grid-column: 1 / -1;
    }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

@media (max-width: 959px) {
    .jx-landing-shell {
        grid-template-columns: minmax(0, 1fr);
        gap: 48px;
        padding: 48px 24px 64px;
    }
    .jx-marketing-hero { max-width: 760px; padding-top: 0; }
    .jx-inquiry-card { width: min(100%, 720px); }
}

@media (max-width: 639px) {
    .jx-public-header__inner { padding-inline: 16px; }
    .jx-public-language button { padding-inline: 9px; }
    .jx-landing-shell { gap: 36px; padding: 36px 16px 48px; }
    .jx-marketing-hero h1 { font-size: 38px; line-height: 44px; }
    .jx-marketing-lead { font-size: 19px; line-height: 28px; }
    .jx-marketing-description { font-size: 16px; line-height: 27px; }
    .jx-marketing-values { margin-top: 32px; }
    .jx-inquiry-card { padding: 20px 16px; }
    .jx-inquiry-form { grid-template-columns: minmax(0, 1fr); }
    .jx-inquiry-field--full { grid-column: auto; }
    .jx-inquiry-verification-row { grid-template-columns: minmax(0, 1fr); }
    .jx-inquiry-verification-row .button { width: 100%; }
    .jx-public-footer { align-items: flex-start; flex-direction: column; padding: 20px 16px; }
}
