/* Qwizmo V34 shared visual system. Game logic and status colors stay intact. */
:root{--qz-accent:#6659df;--qz-radius:18px;--qz-focus:#f2aa55;--qz-page:#f3f7ff;--qz-surface:#fff;--qz-ink:#1a2850;--qz-sub:#516481;--qz-border:#d7e3f5;--qz-shadow:0 12px 28px #1d3e7514}
body.qz-theme-light{--qz-page:#f3f7ff;--qz-surface:#fff;--qz-ink:#1a2850;--qz-sub:#516481;--qz-border:#d7e3f5;--qz-shadow:0 12px 28px #1d3e7514}
body.qz-theme-dark{--qz-page:#0e172e;--qz-surface:#1c2a48;--qz-ink:#f3f6ff;--qz-sub:#c3cee4;--qz-border:#41577d;--qz-shadow:0 12px 30px #0005}
body.qz-theme-light,body.qz-theme-dark{background:var(--qz-page)!important;color:var(--qz-ink)!important}
body.qz-theme-light main,body.qz-theme-dark main{color:var(--qz-ink)}
body.qz-theme-light main .panel,body.qz-theme-light main .card,body.qz-theme-light main .box,body.qz-theme-light main .notice,body.qz-theme-light main .lobby{background:var(--qz-surface)!important;color:var(--qz-ink)!important;border-color:var(--qz-border)!important;box-shadow:var(--qz-shadow)!important}
body.qz-theme-dark main .panel,body.qz-theme-dark main .card,body.qz-theme-dark main .box,body.qz-theme-dark main .notice,body.qz-theme-dark main .lobby{background:var(--qz-surface)!important;color:var(--qz-ink)!important;border-color:var(--qz-border)!important;box-shadow:var(--qz-shadow)!important}
body.qz-theme-light main p,body.qz-theme-light main .muted,body.qz-theme-light main .sub,body.qz-theme-light main .hint{color:var(--qz-sub)!important}
body.qz-theme-dark main p,body.qz-theme-dark main .muted,body.qz-theme-dark main .sub,body.qz-theme-dark main .hint{color:var(--qz-sub)!important}
body.qz-theme-light main input,body.qz-theme-light main select,body.qz-theme-light main textarea{background:#f8faff;color:#1a2850;border-color:#b8cbe8}
body.qz-theme-dark main input,body.qz-theme-dark main select,body.qz-theme-dark main textarea{background:#101e37;color:#f3f6ff;border-color:#59709a}
body.qz-theme-light main a:not([class]),body.qz-theme-dark main a:not([class]){color:var(--qz-accent)}
body.qz-theme-light main .hero{border-radius:24px;border-color:#b3bff8;box-shadow:var(--qz-shadow)}
body.qz-theme-dark main .hero{border-radius:24px;border-color:#6175c7;box-shadow:var(--qz-shadow)}
body.qz-theme-light main .hero p,body.qz-theme-dark main .hero p{color:inherit!important}
body.qz-theme-light main .hero{background:linear-gradient(120deg,#dce8ff,#f8e6f5)!important;color:#172957!important}
body.qz-theme-dark main .hero{background:linear-gradient(120deg,#243967,#282458)!important;color:#f7f8ff!important}
body.qz-theme-light main .hero h1,body.qz-theme-light main .hero h2{color:#182956!important;text-shadow:none!important}
body.qz-theme-dark main .hero h1,body.qz-theme-dark main .hero h2{color:#fff!important}
body.qz-theme-light main .hero em{color:#6659df!important}
body.qz-theme-dark main .hero em{color:#ffe08a!important}
body.qz-theme-light main button.secondary,body.qz-theme-light main button.alt{background:#e9eeff;color:#27385f;border-color:#b9c7e9}
body.qz-theme-dark main button.secondary,body.qz-theme-dark main button.alt{background:#30476e;color:#f5f7ff;border-color:#5973a3}
body.qz-theme-light main .panel h1,body.qz-theme-light main .panel h2,body.qz-theme-light main .panel h3{color:#1a2850}
body.qz-theme-dark main .panel h1,body.qz-theme-dark main .panel h2,body.qz-theme-dark main .panel h3{color:#f3f6ff}
body.qz-theme-light main .ux-hint,body.qz-theme-light main .hint,body.qz-theme-light main .muted{color:#516481!important}
body.qz-theme-dark main .ux-hint,body.qz-theme-dark main .hint,body.qz-theme-dark main .muted{color:#c3cee4!important}
body.qz-theme-light :focus-visible,body.qz-theme-dark :focus-visible{outline:3px solid var(--qz-focus)!important;outline-offset:3px}
#qwn-bar{background:var(--qz-surface)!important;color:var(--qz-ink)!important;border-bottom:1px solid var(--qz-border)!important;box-shadow:0 2px 14px #0001!important}
#qwn-bar a,#qwn-bar button{color:var(--qz-ink)!important}
#qwn-bar a:hover,#qwn-bar button:hover{background:var(--qz-page)!important}
#qwn-menu{background:var(--qz-surface)!important;color:var(--qz-ink)!important;border:1px solid var(--qz-border)}
#qwn-menu a{color:var(--qz-ink)!important}
#qwn-menu a[aria-current="page"]{background:var(--qz-page)!important}
#qwn-theme{font-size:14px!important;white-space:nowrap}
@media(max-width:620px){#qwn-theme .qwn-theme-label{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}}
