/* ================================================= https://www.joshwcomeau.com/css/custom-css-reset/ ================================================= */ /* 1. Use a more-intuitive box-sizing model. */ *, *::before, *::after { box-sizing: border-box; } /* 2. Remove default margin */ * { margin: 0; } /* 3. Allow percentage-based heights in the application */ html, body { height: 100%; } /* Typographic tweaks! 4. Add accessible line-height 5. Improve text rendering */ body { line-height: 1.5; -webkit-font-smoothing: antialiased; } /* 6. Improve media defaults */ img, picture, video, canvas, svg { display: block; max-width: 100%; } /* 7. Remove built-in form typography styles */ input, button, textarea, select { font: inherit; } /* 8. Avoid text overflows */ p, h1, h2, h3, h4, h5, h6 { overflow-wrap: break-word; } /* 9. Create a root stacking context */ #root, #__next { isolation: isolate; } /* ================================================= CUSTOM STYLE ================================================= */ @import url("https://fonts.googleapis.com/css2?family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap"); @import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap"); :root { /* https://materialui.co/colors/ */ --hue-primary: 348.36; --sat-primary: 100.00%; --background: hsl(var(--hue-primary), var(--sat-primary), 96.08%); --background-primary: hsl(var(--hue-primary), var(--sat-primary), 93.33%); --background-secondary: hsl(var(--hue-primary), var(--sat-primary), 90%); --color-primary: hsl(var(--hue-primary), var(--sat-primary), 50%); --text-primary: hsl(var(--hue-primary), var(--sat-primary), 25%); --text-secondary: hsl(var(--hue-primary), var(--sat-primary), 30%); } /* ================================================= https://blog.koley.in/2019/339-bytes-of-responsive-css https://www.swyx.io/css-100-bytes https://gist.github.com/JoeyBurzynski/617fb6201335779f8424ad9528b72c41 ================================================= */ html, body { padding: 0; max-width: 100%; color: var(--text-primary); font-family: "Roboto", Verdana, serif; } body { background-color: var(--background); } main { padding: 1.5rem; margin: auto; background-color: var(--background-primary); min-height: 100%; } table { border-collapse: collapse; width: 100%; font-size: 0.9em; } h1, h2, h3, h4, h5, h6 { margin: 1em 0 0.5em; } p, ul, ol { margin-bottom: 2em; color: var(--text-secondary); } textarea, input, select, .mono { font-family: "Roboto Mono", monospace; } textarea { width: 100%; min-width: 100%; max-width: 100%; } a { color: inherit; } @media only screen and (min-width: 768px) { main { max-width: 42rem; } table { font-size: inherit; } } button.red { --hue-primary: 4.11; --sat-primary: 89.62%; } button.green { --hue-primary: 87.77; --sat-primary: 50.21%; } button.inactive { --sat-primary: 25%; } button:disabled { --sat-primary: 5%; cursor: no-drop; } button { border: 1px solid hsl(var(--hue-primary), var(--sat-primary), 50%); background-color: hsl(var(--hue-primary), var(--sat-primary), 90%); border-radius: 0.5em; cursor: pointer; padding: .25em .5em; } button:hover { background-color: hsl(var(--hue-primary), var(--sat-primary), 92%); } button:active { background-color: hsl(var(--hue-primary), var(--sat-primary), 94%); } .sound-container { display:flex; flex-flow: row wrap; gap: .5em; align-items: stretch; justify-content: center; } .sound-container button { flex-basis: 31%; height: 4em; width: 100%; position:relative; padding: .5em; } .sound-container button::before { content: '🔊'; display: block; position: absolute; top: .25em; left: .25em; font-size: small; } .sound-container button.inactive::before { content: '🔇'; } h3 > a { font-weight: normal; } .start { width: 100%; font-weight: bold; font-size: larger; padding: .5em; } table.config td:first-child { text-align: right; } table.config input, table.config select { width: 100%; } table.config button { width: 100%; margin-top: .5em; }