/* Base & light reset */
* { box-sizing: border-box; }
html { font-size: 16px; font-family: 'Inter', system-ui, sans-serif; }
body { font: inherit; line-height: 1.6; margin: 0; text-align: center; }

/* Ensure form elements inherit the main font */
body, input, select, textarea, button { font: inherit; }

/* Typography for code blocks */
code, pre {
    font-family: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.925rem;
    line-height: 1.5;
}

/* Page container: comfortable line length + fluid padding */
.Root {
    width: min(90%, 80ch);                 /* max ~60 characters per line */
    margin: 40px auto;
    padding: clamp(20px, 2vw + 12px, 40px);
    border-radius: 10px;
    background-color: white;
    text-align: center;
}

.Example {
    margin-top: 30px;
}

/* Prevent inputs/buttons from becoming too small */
input, select, textarea, button {
    font-size: clamp(1rem, 0.95rem + 0.30vw, 1.125rem);
}

input[type=number] {
    width: 120px;
}

/* Optional: cleaner paragraph spacing */
p { margin: 0.6em 0; }

/* Optional: responsive images inside container */
img { max-width: 100%; height: auto; display: block; margin: 0.5em auto; }

table {
    margin: auto;
}
