.btn-alt.sign-in:hover,.btn-alt.sign-in:hover:before,.btn-alt.sign-in:hover:after{border-color:#1dff3f}.btn-alt.sign-up:hover,.btn-alt.sign-up:hover:before,.btn-alt.sign-up:hover:after{border-color:#00d5ff}.btn-alt.sign-out:hover,.btn-alt.sign-out:hover:before,.btn-alt.sign-out:hover:after{border-color:#f90000}.btn-alt.sign-in{background:#75b389;color:#d5d5d5}.btn-alt.sign-in:hover{background:#00b339}.btn-alt.sign-up{background:#7a9db9;color:#fff}.btn-alt.sign-up:hover{background:#1769aa}.btn-alt.sign-out{background:#c37f7b;color:#fff}.btn-alt.sign-out:hover{background:#b71c1c}.logo-home-btn{position:relative;display:inline-block;padding:0;background:none;border:none;outline:none;cursor:pointer}.logo-home-btn:focus-visible{outline:2px solid #0ff}.logo-home-btn:after,.logo-home-btn:before{content:"";position:absolute;width:100%;height:2px;background:linear-gradient(to right,#c44a03,#290fd1);left:0;transform:scaleX(0);transition:transform .4s cubic-bezier(.4,2,.6,1);pointer-events:none}.logo-home-btn:after{bottom:-5px;transform-origin:right}.logo-home-btn:before{top:-5px;transform-origin:left}.logo-home-btn:hover:after,.logo-home-btn:hover:before,.logo-home-btn:focus-visible:after,.logo-home-btn:focus-visible:before{transform:scaleX(1)}.top-menu{position:fixed;top:0;left:0;width:100vw;z-index:1000;display:flex;align-items:center;justify-content:space-between;background:#23272f;padding:0 1rem;height:68px;min-height:unset;box-shadow:0 2px 8px #00000012;box-sizing:border-box;overflow:hidden}.top-menu>.menu-side,.top-menu>.menu-buttons{flex:1;display:flex;align-items:center}.top-menu>.menu-side{justify-content:flex-start}.top-menu>.menu-buttons{justify-content:flex-end;gap:1rem}.top-menu>.logo{flex:0 0 auto;text-align:center;margin:0 auto}.menu-spacer{height:10px}.logo{display:flex;align-items:center;height:100;font-family:Orbitron,Segoe UI,Arial,sans-serif;font-size:2rem;color:#2196f3;font-weight:700;letter-spacing:1px;line-height:1;white-space:nowrap}.menu-logo-img{display:flex;align-items:left;height:50px;width:50px;object-fit:contain;display:block;margin-top:0;margin-bottom:0;transition:transform .18s cubic-bezier(.4,2,.6,1),box-shadow .18s cubic-bezier(.4,2,.6,1)}.menu-buttons{display:flex;gap:1rem}.menu-btn{font-family:inherit;font-size:1rem;padding:.5rem 1.2rem;border:none;border-radius:4px;cursor:pointer;transition:background .2s,color .2s}.sign-in{background:#fff;color:#23272f}.sign-in:hover{background:#e3e3e3}.sign-up{background:#2196f3;color:#fff}.sign-up:hover{background:#1769aa}.btn-alt{position:relative;border-color:#838383;color:#838383}.btn-alt:before,.btn-alt:after{position:absolute;top:0;left:0;border-color:#9686f1;border-radius:4px;border-style:solid;transition:all .35s;content:"";z-index:1}.btn-alt:before{width:0;height:100%;border-width:1px 0 1px 0}.btn-alt:after{width:100%;height:0;border-width:0 1px 0 1px}.btn-alt:hover{border-color:#3817f0;color:#fff}.btn-alt:hover:before{width:100%;border-width:1px 0 1px 0}.btn-alt:hover:after{height:100%;border-width:0 1px 0 1px}.menu-avatar-link{position:relative;display:inline-block}.menu-avatar-link .menu-avatar-img{transition:opacity .3s}.menu-avatar-link:hover .menu-avatar-img{opacity:.5}.menu-username-scroll{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);opacity:0;background:#282c34f2;color:var(--theme-accent);padding:6px 18px;border-radius:18px;font-weight:700;font-size:1.1rem;box-shadow:0 2px 8px #0002;pointer-events:none;z-index:20;white-space:nowrap;transition:opacity .3s}.menu-avatar-link:hover .menu-username-scroll{opacity:1}:root,body[data-theme=default]{--theme-bg: #23272f;--theme-fg: #fff;--theme-accent: #2196f3;--theme-card-bg: #23272f;--theme-card-fg: #fff;--theme-border: #2196f3}body[data-theme=fantasy]{--theme-bg: #2d1836;--theme-fg: #f8e9ff;--theme-accent: #8e44ad;--theme-card-bg: #3d2352;--theme-card-fg: #f8e9ff;--theme-border: #8e44ad}body[data-theme=scifi]{--theme-bg: #101c2c;--theme-fg: #eaf6ff;--theme-accent: #2980b9;--theme-card-bg: #1a263a;--theme-card-fg: #eaf6ff;--theme-border: #2980b9}body[data-theme=horror]{--theme-bg: #2c1010;--theme-fg: #ffeaea;--theme-accent: #c0392b;--theme-card-bg: #3a1a1a;--theme-card-fg: #ffeaea;--theme-border: #c0392b}body[data-theme=paranormal]{--theme-bg: #102c28;--theme-fg: #eafff8;--theme-accent: #16a085;--theme-card-bg: #1a3a36;--theme-card-fg: #eafff8;--theme-border: #16a085}body[data-theme=custom]{--theme-bg: #2c210f;--theme-fg: #fff7e6;--theme-accent: #f39c12;--theme-card-bg: #3a2a1a;--theme-card-fg: #fff7e6;--theme-border: #f39c12}.container{background:var(--theme-card-bg);color:var(--theme-card-fg);border-radius:12px;box-shadow:0 2px 8px #00000012;padding:1.5rem 2rem;min-width:260px;max-width:350px;flex:1 1 0;border:2px solid var(--theme-border)}.container h2,.section h3{color:var(--theme-accent)}@media (max-width: 600px){.ruleset-options-row{flex-direction:column!important;gap:10px!important;overflow-x:visible!important;padding:0 0 4px!important;align-items:stretch!important}}#main-columns,.main-columns{display:flex;gap:2rem;justify-content:center;align-items:flex-start;margin-top:2rem}.container{background:#23272f;color:#fff;border-radius:12px;box-shadow:0 2px 8px #00000012;padding:1.5rem 2rem;min-width:260px;max-width:350px;flex:1 1 0}.container h2{margin-top:0;color:#2196f3;font-size:1.4rem}.section{margin-bottom:1.5rem}.section h3{margin-bottom:.5rem;color:#90caf9;font-size:1.1rem}#root{width:100%}.logo{height:6em;padding:1.5em;will-change:filter;transition:filter .3s}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}@media (max-width: 900px){.top-menu{display:none!important}.mobile-menu-button{min-height:48px!important;min-width:48px!important}.widget-container{padding:8px!important;margin:4px 0!important}.sidebar-mobile{width:100%!important;position:relative!important;height:auto!important}.mobile-text{font-size:14px!important;line-height:1.4!important}.mobile-button{min-height:44px!important;min-width:44px!important;padding:12px 16px!important}}@media (max-width: 600px){.widget-container{padding:4px!important;margin:2px 0!important}.mobile-text-sm{font-size:12px!important}}:root{--vh: 1vh;--keyboard-visible: 0}.mobile-viewport,.keyboard-adaptive{height:calc(var(--vh, 1vh) * 100);transition:height .3s ease}.hide-on-keyboard{opacity:calc(1 - var(--keyboard-visible));transition:opacity .3s ease;pointer-events:calc(var(--keyboard-visible) * none + (1 - var(--keyboard-visible)) * auto)}.fab-keyboard-adjust{transform:translateY(calc(var(--keyboard-visible) * -60px));transition:transform .3s ease}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;--font-dmixed: "dMixed", system-ui, Avenir, Helvetica, Arial, sans-serif;--font-fallback: system-ui, Avenir, Helvetica, Arial, sans-serif;--font-d4: "dFour", monospace;--font-d6: "dSix", monospace;--font-d8: "dEight", monospace;--font-d10: "dTen", monospace;--font-d12: "dTwelve", monospace;--font-d20: "dTwenty", monospace;--dice-font-mixed: "dMixed", monospace;--dice-font-four: "dFour", monospace;--dice-font-six: "dSix", monospace;--dice-font-eight: "dEight", monospace;--dice-font-ten: "dTen", monospace;--dice-font-twelve: "dTwelve", monospace;--dice-font-twenty: "dTwenty", monospace;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
