html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}
html, body {
    max-width: 100%;
    overflow-x: hidden;
}
img, video, canvas, svg {
    max-width: 100%;
    height: auto;
}
input, select, textarea {
    max-width: 100%;
    font-size: 16px;
}
.table-wrap, .table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
}

@supports (padding: env(safe-area-inset-bottom)) {
    body {
        padding-left: env(safe-area-inset-left);
        padding-right: env(safe-area-inset-right);
        padding-bottom: env(safe-area-inset-bottom);
    }
}

@media (max-width: 640px) {
    .search { width: min(42vw, 140px) !important; }
}
@media (max-width: 420px) {
    .search-wrap { display: none; }
}
