* {
    box-sizing: border-box;
}

html {
    height: 100%;
    background: #f2f2f2;
    font-size: 12px; /* Root font size for 320px width screens */
    font-family:
        "Segoe UI",
        -apple-system,
        BlinkMacSystemFont,
        "Roboto",
        "Oxygen",
        "Ubuntu",
        "Cantarell",
        "Fira Sans",
        "Droid Sans",
        "Helvetica Neue",
        sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
}

#root {
    height: 100%;
}

@media (min-width: 480px) {
    html {
        font-size: 13px; /* Slightly larger font size for larger phones */
    }
}

@media (min-width: 600px) {
    html {
        font-size: 14px; /* Adjust for small tablets and large phones in landscape */
    }
}

@media (min-width: 768px) {
    html {
        font-size: 15px; /* Suitable for medium tablets */
    }
}

@media (min-width: 992px) {
    html {
        font-size: 16px; /* Standard size for desktops */
    }
}
