/*
 * QMetrix Site Deployer - Responsive Overrides
 * Auto-injected into crawled pages for cross-device compatibility.
 */

*, *::before, *::after {
    box-sizing: border-box;
}

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
    overflow-x: hidden;
    min-width: 0 !important;
}

img, video, canvas, svg {
    max-width: 100%;
    height: auto;
}

iframe {
    max-width: 100%;
}

.responsive-table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

table {
    max-width: 100%;
}

h1, h2, h3, h4, h5, h6, p, li, td, th, span, a {
    overflow-wrap: break-word;
    word-wrap: break-word;
}

pre, code {
    white-space: pre-wrap;
    word-wrap: break-word;
    overflow-x: auto;
    max-width: 100%;
}

div, section, article, aside, nav, main, header, footer {
    max-width: 100%;
}

@media screen and (max-width: 1024px) {
    body { font-size: 16px; }
    [style*="width:"] { max-width: 100% !important; }
}

@media screen and (max-width: 768px) {
    body { padding: 0; }
    .flex-row, [style*="flex-direction: row"] {
        flex-direction: column !important;
    }
    input, textarea, select, button { max-width: 100%; }
}

@media screen and (max-width: 480px) {
    h1 { font-size: 1.5rem; }
    h2 { font-size: 1.3rem; }
    h3 { font-size: 1.15rem; }
}

@media print {
    body { font-size: 12pt; }
    nav, .no-print { display: none !important; }
}
