:root { font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; line-height: 1.5; font-weight: 400; color-scheme: light dark; color: rgba(255, 255, 255, 0.87); background-color: #242424; font-synthesis: none; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } * { box-sizing: border-box; } body { margin: 0; padding: 0; width: 100vw; height: 100vh; overflow: hidden; } #app { width: 100%; height: 100%; margin: 0; padding: 0; overflow: hidden; } /* Button styles */ button { border-radius: 8px; border: 1px solid transparent; padding: 0.6em 1.2em; font-size: 1em; font-weight: 500; font-family: inherit; background-color: #1a1a1a; color: inherit; cursor: pointer; transition: border-color 0.25s; outline: none; } button:hover { border-color: #646cff; } button:focus, button:focus-visible { outline: 2px solid #646cff; outline-offset: 2px; } button:disabled { opacity: 0.6; cursor: not-allowed; } /* Input styles */ input, textarea { border-radius: 8px; border: 1px solid #3a3a3a; padding: 0.6em 1.2em; font-size: 1em; font-family: inherit; background-color: #2a2a2a; color: inherit; outline: none; } input:focus, textarea:focus { border-color: #646cff; outline: 2px solid #646cff; outline-offset: 2px; } /* List styles */ ul { list-style: none; padding: 0; margin: 0; } /* Accessibility helpers */ .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } /* Focus indicators */ .focus-visible { outline: 2px solid #646cff; outline-offset: 2px; } /* Light mode */ @media (prefers-color-scheme: light) { :root { color: #213547; background-color: #ffffff; } button { background-color: #f9f9f9; } input, textarea { background-color: #ffffff; border-color: #d1d5db; } }