:root { color-scheme: dark; font: 16px/1.5 Georgia, serif; background: #541d20; color: #f4e3bc; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100svh; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at 14% 3%, #eaa13138, transparent 40%), #541d20; }
main { width: min(100%, 360px); text-align: center; }
p { font: 15px/1.6 system-ui, sans-serif; margin: 20px 0 24px; }
#access-spinner { width: 36px; height: 36px; border: 3px solid #a56a3b; border-top-color: #f4d38a; border-radius: 50%; margin: auto; animation: spin .85s linear infinite; }
button, a { display: inline-block; font: 600 15px/1.4 system-ui, sans-serif; background: #f4e3bc; color: #541d20; border: 1px solid #c89b56; border-radius: 12px; padding: 13px 22px; text-decoration: none; cursor: pointer; }
:focus-visible { outline: 3px solid #f4d38a; outline-offset: 5px; }
[hidden] { display: none !important; }
@keyframes spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { #access-spinner { animation: none; } }
