:root{--ui-ink:#142bae;--ui-blue:#123afa;--ui-muted:#5566b1;--ui-paper:#fafbfe;--ui-surface:#fff;--ui-line:#e4e9f7;--ui-soft:#edf0ff;--ui-shadow:0 3px 12px #29387e0b;--ui-gold:#ffe2a1;--ui-font:Arial,"Segoe UI",sans-serif;--ui-serif:"Palatino Linotype","Book Antiqua",Georgia,serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ui-paper);color:var(--ui-ink);font-family:var(--ui-font);line-height:1.55}a{color:var(--ui-blue)}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}h1,h2,h3{font-family:var(--ui-serif);color:var(--ui-ink)}.ui-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid var(--ui-blue);outline-offset:4px}.ui-container{width:min(1200px,calc(100% - 80px));margin:auto}.ui-skip{position:fixed;left:20px;top:-100px;background:var(--ui-surface);padding:12px;z-index:100}.ui-skip:focus{top:8px}.ui-header{position:absolute;top:18px;left:0;right:0;z-index:40}.ui-bar{width:min(1200px,calc(100% - 80px));margin:auto;display:flex;align-items:center;gap:14px;min-height:64px;padding:10px 20px;border:1px solid #fff8;border-radius:14px;background:#fffffff0;box-shadow:0 4px 24px #214b9b0c;backdrop-filter:blur(12px);color:#1331bc}.ui-brand{display:flex;gap:16px;align-items:center;text-decoration:none;color:var(--ui-ink)!important;flex-shrink:0}.ui-brand strong{font:bold 38px/1 var(--ui-serif);letter-spacing:-.04em}.ui-brand span{font:12px/1.3 var(--ui-font);color:#2549d0;max-width:110px}.ui-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font:14px/1.3 var(--ui-font)}.ui-nav>a{padding:10px 0;text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent}.ui-nav>a[aria-current]{border-color:var(--ui-blue);font-weight:600}.ui-nav>a:hover{border-color:#b4bfff}.ui-more{position:relative}.ui-more summary{cursor:pointer;list-style:none;white-space:nowrap;padding:10px 0;color:var(--ui-blue)}.ui-more summary::-webkit-details-marker{display:none}.ui-more>div{position:absolute;top:100%;right:0;min-width:220px;padding:10px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-surface);box-shadow:0 10px 30px #142b7130}.ui-more a{display:block;padding:9px 12px;text-decoration:none;border-radius:7px}.ui-more a:hover{background:var(--ui-soft)}.ui-search{margin-left:10px;background:var(--ui-surface);display:flex;width:205px;min-width:0;border:1px solid var(--ui-line);border-radius:14px;box-shadow:var(--ui-shadow);height:40px}.ui-search input{min-width:0;width:100%;border:0;background:none;color:var(--ui-ink);padding:10px 5px 10px 14px;font:12px var(--ui-font);border-radius:14px}.ui-search input::placeholder{color:var(--ui-muted)}.ui-search button{border:0;background:none;color:var(--ui-blue);padding:8px;display:flex;align-items:center}.ui-theme,.ui-profile,.ui-menu-toggle{border:0;border-radius:50%;background:var(--ui-surface);color:var(--ui-blue);width:36px;height:36px;display:grid;place-items:center;flex:none}.ui-gold{display:inline-flex;align-items:center;justify-content:center;gap:14px;color:#34304b!important;background:linear-gradient(115deg,#ffe9b7,#ffdb91);border:1px solid #ffe6ad;border-radius:11px;box-shadow:0 3px 14px #ebba6333;text-decoration:none;font-weight:500}.ui-gold:hover{background:#ffdc95;box-shadow:0 4px 14px #deb06755}.ui-cabinet{font:14px var(--ui-font);padding:12px 22px;white-space:nowrap}.ui-menu-toggle{display:none}.ui-footer{padding:28px 0 32px;background:var(--ui-surface);border-top:1px solid var(--ui-line)}.ui-footer>.ui-container{display:flex;gap:30px;align-items:center;justify-content:space-between}.ui-footer .ui-brand strong{font-size:34px}.ui-footer nav{display:flex;flex-wrap:wrap;gap:16px;font:12px var(--ui-font)}.ui-footer nav a{text-decoration:none}.ui-footer small{font:11px/1.5 var(--ui-font);color:var(--ui-muted);white-space:nowrap}.ui-page-hero{height:330px;background-position:center;background-size:cover;position:relative;border-bottom:1px solid var(--ui-line)}.ui-page-hero .ui-container{height:100%;display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:60px;position:relative}.ui-page-hero h1{font:bold clamp(36px,4.4vw,60px)/1.15 var(--ui-serif);margin:0;text-shadow:0 2px 20px #fff}.ui-slogan{font:italic 28px/1.3 var(--ui-serif);transform:rotate(-8deg);margin:0 18% 35px 0;text-align:center;color:#1631c5;text-shadow:0 1px 8px #fff}.ui-hero-forum{background-image:url('design/forum-hero.webp?v=full-20261002')}.ui-hero-account{background-image:url('design/account-hero.webp?v=full-20261002')}.ui-hero-generic{background-image:linear-gradient(90deg,#ffffff70,transparent),url('design/forum-hero.webp?v=full-20261002')}.ui-landscape{height:120px;background:url('design/forum-footer.webp?v=full-20261002') center/cover}.ui-panel{background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:12px;box-shadow:var(--ui-shadow)}.ui-discord{padding:24px 20px;color:#fff;background:linear-gradient(90deg,#0b246fcc,#13389633),url('design/discord-960.webp') center/cover;border:1px solid #173bbc30;border-radius:12px;min-height:185px}.ui-discord h2{font:bold 27px var(--ui-serif);color:white;margin:0 0 14px}.ui-discord p{font:13px/1.55 var(--ui-font);color:#fff;margin:0 0 15px;max-width:240px}.ui-discord .ui-gold{padding:10px 15px;font-size:13px}.ui-discord small{display:block;color:#fff;max-width:240px;font-size:12px;background:#172e785c;padding:6px 9px;border-radius:7px}.ui-empty{font:14px/1.7 var(--ui-font);color:var(--ui-muted);padding:20px 0}.ui-hero-account{background-position:center 42%}
html[data-ui-theme=dark]{--ui-ink:#dbe2ff;--ui-blue:#a7b8ff;--ui-muted:#a7b3d9;--ui-paper:#101b39;--ui-surface:#1a274b;--ui-line:#33436b;--ui-soft:#2b3c67;color-scheme:dark}html[data-ui-theme=dark] .ui-bar{background:#16274ded;border-color:#6374a660}html[data-ui-theme=dark] .ui-brand span{color:#b9c7ff}html[data-ui-theme=dark] .ui-page-hero h1,html[data-ui-theme=dark] .ui-slogan{color:#152b9f}html[data-ui-theme=dark] .ui-gold{color:#34304b!important}
@media(max-width:1250px){.ui-nav{gap:16px;font-size:13px}.ui-bar{gap:10px}.ui-brand strong{font-size:33px}.ui-brand{gap:10px}.ui-brand span{font-size:11px}.ui-search{width:180px}.ui-cabinet{padding:12px 18px}.ui-footer>.ui-container{flex-wrap:wrap}}
@media(max-width:1080px){.ui-menu-toggle{display:grid;margin-left:auto}.ui-nav{display:none;position:absolute;left:40px;right:40px;top:78px;background:var(--ui-surface);border:1px solid var(--ui-line);padding:16px;border-radius:12px;box-shadow:0 12px 30px #142b7130;flex-wrap:wrap;margin:0}.ui-nav.is-open{display:flex}.ui-more>div{right:auto;left:0}.ui-search{margin-left:auto;width:230px}.ui-footer nav{gap:12px}.ui-slogan{margin-right:15%;font-size:24px}}
@media(max-width:700px){.ui-container,.ui-bar{width:calc(100% - 32px)}.ui-header{top:12px}.ui-bar{padding:10px 12px;gap:8px;min-height:59px;border-radius:12px}.ui-brand strong{font-size:30px}.ui-brand span{display:none}.ui-search{display:none}.ui-profile{display:none}.ui-theme{margin-left:auto;width:32px;height:32px}.ui-cabinet{padding:11px 14px;font-size:12px}.ui-menu-toggle{margin:0;width:32px;height:32px}.ui-nav{left:16px;right:16px;top:72px;gap:10px 20px}.ui-nav>a{padding:8px 0;font-size:14px}.ui-more{width:100%}.ui-more>div{position:static;box-shadow:none;border:0;display:grid;grid-template-columns:1fr 1fr;padding:0;min-width:0}.ui-footer>.ui-container{gap:24px}.ui-footer nav{gap:14px 20px}.ui-footer small{white-space:normal}.ui-footer .ui-brand span{display:block}.ui-page-hero{height:290px;background-position:60% center}.ui-page-hero .ui-container{padding-bottom:32px;align-items:flex-end}.ui-page-hero h1{font-size:36px;max-width:280px;background:#ffffffb3;border-radius:9px;padding:8px 12px;text-shadow:none}.ui-slogan{display:none}.ui-landscape{height:80px}.ui-discord{min-height:200px;background-position:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

.ui-hero-forum{background-image:linear-gradient(90deg,#ffffffb3,transparent 52%),url('design/home-hero-1983.webp?v=review20261003');background-position:center 35%}.ui-discord{background-image:linear-gradient(90deg,#173778f5,#173778b3 48%,#17377822),url('design/discord-1920.webp');background-position:75% center;min-height:245px}.ui-discord p,.ui-discord small{max-width:185px}

/* Keep banner lettering clear of the characters. */
.ui-page-hero h1{font-weight:normal;font-size:clamp(36px,3.5vw,46px)}
.ui-hero-account{background-image:linear-gradient(90deg,#ffffffad,transparent 65%),url('design/account-hero.webp?v=full-20261002')}
.ui-hero-forum .ui-container{padding-bottom:78px}
.ui-hero-forum .ui-slogan{position:absolute;left:0;bottom:26px;margin:0;transform:none;text-align:left;font:italic 22px/1.4 var(--ui-serif)}
.ui-hero-forum .ui-slogan br{display:none}
@media(max-width:700px){.ui-page-hero h1{font-size:34px}.ui-hero-forum .ui-container{padding-bottom:32px}}

/* Compact mobile navigation and page banners. */
@media(max-width:700px){
 .ui-nav{padding:12px 16px;gap:4px 16px;align-items:center}
 .ui-more{width:auto;position:static}
 .ui-more summary{font-size:14px;padding:8px 0}
 .ui-more>div{position:absolute;top:100%;left:0;right:0;padding:10px;min-width:0;border:1px solid var(--ui-line);background:var(--ui-surface);box-shadow:0 10px 30px #142b7130}
 .ui-page-hero{height:200px}
 .ui-page-hero .ui-container,.ui-page-hero.ui-hero-forum .ui-container,.ui-page-hero.ui-hero-account .ui-container{padding-bottom:24px}
 .ui-page-hero h1{font-size:28px;line-height:1.15;max-width:100%;padding:6px 10px}
}
@media(max-width:360px){.ui-nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:4px 12px}}

/* Navigation has its own row so it cannot cover the banner characters. */
.ui-header{position:relative;top:auto;padding:18px 0;background:linear-gradient(120deg,#e5eeff,#f4f0ff 65%,#e9f1ff)}
html[data-ui-theme=dark] .ui-header{background:linear-gradient(120deg,#17264b,#28264b 65%,#182c4a)}
.ui-page-hero{height:clamp(230px,12.5vw,300px);max-width:2400px;margin-inline:auto}
.ui-page-hero.ui-hero-forum,.ui-page-hero.ui-hero-account,.ui-page-hero.ui-hero-generic{background-position:center top}
@media(max-width:700px){
 .ui-header{top:auto;padding:12px 0}
 .ui-page-hero{height:117px}
 .ui-page-hero.ui-hero-forum,.ui-page-hero.ui-hero-account,.ui-page-hero.ui-hero-generic{background-position:65% top}
}

/* Full-width forum and cabinet banners, half their previous height. */
.ui-page-hero.ui-hero-forum,.ui-page-hero.ui-hero-account{
 height:min(20vw,320px);width:100%;aspect-ratio:auto;max-width:none;
 background-size:cover;background-position:center;background-repeat:no-repeat;
}
.ui-page-hero.ui-hero-forum{background-image:url('/assets/design/pwfs-forum-header-527a4f59cfc4.png')}
.ui-page-hero.ui-hero-account{background-image:url('/assets/design/pwfs-account-header-210b928e523b.png')}
.ui-page-hero.ui-hero-forum .ui-container,.ui-page-hero.ui-hero-account .ui-container{
 padding:0;flex-direction:column;align-items:flex-start;justify-content:center;gap:16px;
}
.ui-page-hero.ui-hero-forum h1,.ui-page-hero.ui-hero-account h1{
 text-shadow:0 1px 1px #fff,0 0 10px #fff,0 0 28px #fffffff0;
}
.ui-page-hero.ui-hero-forum .ui-slogan,.ui-page-hero.ui-hero-account .ui-slogan{
 position:static;margin:0;transform:none;text-align:left;
 text-shadow:0 1px 1px #fff,0 0 10px #fff,0 0 28px #fffffff0;
}
@media(max-width:700px){
 .ui-page-hero.ui-hero-forum .ui-container,.ui-page-hero.ui-hero-account .ui-container{
  justify-content:flex-end;padding-bottom:12px;gap:0;
 }
}

/* Preserve proportions and place the character faces within the shorter frame. */
.ui-page-hero.ui-hero-forum{background-position:center 35%}
.ui-page-hero.ui-hero-account{background-position:center 55%}
@media(min-width:1600px){.ui-page-hero.ui-hero-forum{background-position:center 40%}}
@media(min-width:2400px){
 .ui-page-hero.ui-hero-forum{background-position:center 37%}
 .ui-page-hero.ui-hero-account{background-position:center 45%}
}
@media(max-width:700px){
 .ui-page-hero.ui-hero-forum h1,.ui-page-hero.ui-hero-account h1{font-size:clamp(20px,5.6vw,24px);line-height:1.15;padding:5px 9px}
}

/* Shared dropdowns for the site, forum and account. */
.ui-account-menu{position:relative;flex:none;gap:0}.ui-account-menu>.ui-cabinet{display:flex;align-items:center;gap:8px;padding:12px 7px 12px 16px;color:inherit;text-decoration:none}.ui-account-menu>.ui-cabinet:hover{color:inherit;text-decoration:none}.ui-account-disclosure{position:static}.ui-account-disclosure>summary{display:grid;place-items:center;cursor:pointer;list-style:none;padding:12px 12px 12px 5px;min-width:32px;line-height:18px;border-radius:0 11px 11px 0}.ui-account-disclosure>summary::-webkit-details-marker{display:none}.ui-account-menu .ui-icon{width:18px;height:18px}.ui-account-dropdown,.ui-more>div{position:absolute;right:0;left:auto;top:calc(100% + 5px);width:248px;min-width:0;max-width:calc(100vw - 32px);padding:8px;background:var(--ui-surface);border:1px solid var(--ui-line);border-radius:12px;box-shadow:0 12px 32px #15285826;display:flex;flex-direction:column;gap:2px}.ui-account-dropdown::before,.ui-more>div::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.ui-account-dropdown a,.ui-more>div a{display:block;padding:9px 12px;color:var(--ui-ink);text-decoration:none;border-radius:7px;font:14px/1.4 var(--ui-font)}.ui-account-dropdown a:hover,.ui-account-dropdown a:focus-visible,.ui-more>div a:hover,.ui-more>div a:focus-visible{background:var(--ui-soft);color:var(--ui-blue)}
@media(max-width:700px){.ui-account-menu>.ui-cabinet{padding:10px 5px 10px 10px;gap:5px}.ui-account-disclosure>summary{padding:10px 10px 10px 4px;line-height:16px;min-width:28px}.ui-account-menu .ui-icon{width:16px;height:16px}.ui-account-dropdown a,.ui-more>div a{font-size:14px;padding:10px 12px}}

/* Dark theme readability audit, 2026-10-15. Light-theme rules stay unchanged. */
html[data-ui-theme=dark]{--ui-control-line:#7184b4}
html[data-ui-theme=dark] .button-outline{background:var(--ui-surface);color:var(--ui-blue);border-color:var(--ui-control-line)}
html[data-ui-theme=dark] .tag{background:var(--ui-soft);color:var(--ui-ink)}
html[data-ui-theme=dark] .empty-state{background:var(--ui-surface);border-color:var(--ui-control-line)}
html[data-ui-theme=dark] .callout{background:#34304b;color:#ffe2a1}
html[data-ui-theme=dark] .callout p,html[data-ui-theme=dark] .callout li{color:inherit}
html[data-ui-theme=dark] .preview-notice{background:#34304b;color:#ffe2a1;border-color:#8d7542}
html[data-ui-theme=dark] .preview-notice p{color:inherit}
html[data-ui-theme=dark] input:is([type=text],[type=email],[type=password],[type=number],[type=search],[type=url],[type=tel],[type=date]),
html[data-ui-theme=dark] textarea,html[data-ui-theme=dark] select{background-color:#111d3c!important;color:var(--ui-ink);border-color:var(--ui-control-line)!important}
html[data-ui-theme=dark] input::placeholder,html[data-ui-theme=dark] textarea::placeholder{color:#bac6e7;opacity:1}
html[data-ui-theme=dark] input:focus,html[data-ui-theme=dark] textarea:focus,html[data-ui-theme=dark] select:focus{border-color:#c6d2ff!important}
html[data-ui-theme=dark] .ui-search input,html[data-ui-theme=dark] .pw-toolbar input{background:transparent!important}
html[data-ui-theme=dark] #phpbb .postprofile,html[data-ui-theme=dark] #phpbb .postprofile strong,
html[data-ui-theme=dark] #phpbb #viewprofile dt,
html[data-ui-theme=dark] #phpbb .signature,html[data-ui-theme=dark] #phpbb #viewprofile .signature.standalone,
html[data-ui-theme=dark] #phpbb fieldset,html[data-ui-theme=dark] #phpbb fieldset label,
html[data-ui-theme=dark] #phpbb fieldset dt,html[data-ui-theme=dark] #phpbb fieldset dd,
html[data-ui-theme=dark] #phpbb .panel p,html[data-ui-theme=dark] #phpbb .panel h2,
html[data-ui-theme=dark] #phpbb .panel h3,html[data-ui-theme=dark] #phpbb .panel kbd,
html[data-ui-theme=dark] #phpbb .panel samp{color:var(--ui-ink)}
html[data-ui-theme=dark] #phpbb .postprofile dd,
html[data-ui-theme=dark] #phpbb #viewprofile dd,html[data-ui-theme=dark] #phpbb #viewprofile dd>span{color:var(--ui-muted)}
html[data-ui-theme=dark] #phpbb .signature{border-color:var(--ui-line)}
html[data-ui-theme=dark] #phpbb .username-coloured[style*="#aa0000" i]{color:#ff9caa!important}
html[data-ui-theme=dark] #phpbb .username-coloured[style*="#00aa00" i],
html[data-ui-theme=dark] #phpbb .username-coloured[style*="#009900" i]{color:#8ae6b5!important}
html[data-ui-theme=dark] #phpbb .username-coloured[style*="#9e8da7" i]{color:#d0c2df!important}
html[data-ui-theme=dark] #phpbb a:not(.button):not(.button1):not(.button2):not(.ui-gold):hover{color:#d7e0ff}
html[data-ui-theme=dark] #phpbb blockquote,html[data-ui-theme=dark] #phpbb blockquote cite{background-color:var(--ui-soft);color:var(--ui-ink);border-color:var(--ui-line)}
html[data-ui-theme=dark] #phpbb .codebox{background:#111d3c;border-color:var(--ui-control-line)}
html[data-ui-theme=dark] #phpbb .codebox dt,html[data-ui-theme=dark] #phpbb .codebox p{color:var(--ui-muted);border-color:var(--ui-line)}
html[data-ui-theme=dark] #phpbb .codebox code{color:#90e3ba}
html[data-ui-theme=dark] #phpbb .pagination li.active span{color:#101b39}
html[data-ui-theme=dark] #phpbb .error,html[data-ui-theme=dark] #phpbb p.error{color:#ff9caa}
html[data-ui-theme=dark] #phpbb .success,html[data-ui-theme=dark] #phpbb .pw-online h2>span{color:#8ae6b5}
