/* Public-page finishing pass. Existing game and account layouts keep their own styles. */
.sz-polish{--sz-reading:#c1c9d3;--sz-gold:#e6c58b;--sz-rule:#ffffff19}
.sz-polish main :is(h1,h2,h3){text-wrap:balance}
.sz-polish main :is(p,li){text-wrap:pretty}
.sz-polish :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #d2ff76;outline-offset:4px}
.sz-polish .sz-context-nav a{padding-block:7px;transition:color .18s ease}
.sz-polish .sz-context-nav a:hover{color:#f2d59f}
.sz-polish .sz-context-nav a[aria-current=page]{color:#f2d59f;text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}
.sz-page-trail{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 26px;font:600 11px/1.6 system-ui;color:#96a4b5;letter-spacing:.03em}
.sz-page-trail a{color:#c5ced9;text-decoration:none}.sz-page-trail a:hover{color:#e6c58b}.sz-page-trail span[aria-hidden]{color:#627082}
.sz-polish .article-main{width:min(1100px,calc(100% - 48px));margin-inline:auto;padding-top:38px}
.sz-polish .article-main>article{max-width:900px;margin-inline:auto}
.sz-polish .article-heading{padding:22px 0 30px;margin-bottom:30px;border-bottom:1px solid var(--sz-rule)}
.sz-polish .article-heading h1{font-size:clamp(36px,5.4vw,66px);line-height:1.08;letter-spacing:-.035em;max-width:19ch;margin:20px 0 0}
.sz-polish .article-heading .sz-intro{color:#c1c9d3;font:17px/1.75 system-ui;max-width:62ch;margin:24px 0 0}
.sz-polish .article-main :is(.prose,.article-body){max-width:72ch;margin-inline:auto;color:var(--sz-reading);font-size:16px;line-height:1.85}
.sz-polish .article-main :is(.prose,.article-body) h2{color:#f5f2e9;font-size:clamp(23px,3vw,31px);line-height:1.25;letter-spacing:-.025em;margin:2.1em 0 .7em;padding-top:.6em;border-top:1px solid var(--sz-rule);scroll-margin-top:32px}
.sz-polish .article-main :is(.prose,.article-body) h2:first-child{margin-top:0;border-top:0}
.sz-polish .article-main :is(.prose,.article-body) p{margin:0 0 1.15em}
.sz-polish .article-main :is(.prose,.article-body) a{color:#e6c58b;text-underline-offset:4px;text-decoration-thickness:1px;overflow-wrap:anywhere}
.sz-reading-nav{display:flex;flex-wrap:wrap;gap:8px 20px;padding:18px 0 24px;margin-bottom:16px;border-bottom:1px solid var(--sz-rule)}
.sz-reading-nav a{font:600 12px/1.6 system-ui;color:#c8d3df;text-decoration:none}.sz-reading-nav a:hover{color:#e6c58b}
.sz-polish.sz-library-page #main{max-width:1440px;margin-inline:auto}
.sz-polish .pl-store-intro{padding:36px 28px 26px}
.sz-polish .pl-store-intro h1{font-size:clamp(34px,4vw,52px);line-height:1.12;letter-spacing:-.035em;margin:12px 0 18px}
.sz-polish .pl-store-intro>p:not(.pl-eyebrow){max-width:66ch;font-size:15px;line-height:1.75;color:#bdc7d2}
.sz-polish .pl-eyebrow,.sz-polish .al-kicker{color:#d4bf96;letter-spacing:.16em;font-size:10px}
.sz-world-path{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 28px 28px;padding:22px 26px;border-block:1px solid #e6c58b30;background:linear-gradient(100deg,#cba8660b,transparent)}
.sz-world-path p{margin:0;color:#b8c3cf;font:13px/1.7 system-ui;max-width:62ch}.sz-world-path strong{display:block;color:#f0dfbd;font:600 20px/1.3 Georgia,serif;margin-bottom:7px}
.sz-world-path nav{display:flex;flex-wrap:wrap;gap:12px 22px;flex-shrink:0}.sz-world-path a{color:#e6c58b;font:650 12px/1.5 system-ui;text-underline-offset:5px}
.sz-polish .al-main{padding-top:36px}.sz-polish .al-main>h1{font-size:clamp(36px,5vw,58px);letter-spacing:-.04em;margin:14px 0}.sz-polish .al-main>p{max-width:65ch;line-height:1.75;color:#c1c9d3}
.sz-polish .al-grid{gap:24px}.sz-polish .al-card{border-color:#ffffff1d;box-shadow:0 12px 32px #0002}.sz-polish .al-body{padding:22px}.sz-polish .al-card h3{line-height:1.25}
.sz-polish>footer{max-width:1440px;margin-inline:auto;padding:36px max(24px,3vw) 26px;border-top:1px solid #ffffff1c}
.sz-polish>footer :is(.footer-links,.footer-bottom){display:flex;flex-wrap:wrap;gap:12px 22px;align-items:center}
.sz-polish>footer .footer-links{padding-block:22px}.sz-polish>footer .footer-bottom{padding-top:22px;border-top:1px solid #ffffff12;font-size:11px;line-height:1.7;color:#93a1b2}
.sz-polish>footer a{color:#bac6d3;text-decoration:none}.sz-polish>footer a:hover{color:#e6c58b}.sz-polish>footer .footer-intro p{color:#a8b5c5;max-width:46ch;line-height:1.7}
@media(max-width:700px){
.sz-polish .article-main{width:calc(100% - 36px);padding-top:24px}.sz-polish .article-heading{padding:12px 0 24px;margin-bottom:24px}.sz-polish .article-heading h1{font-size:38px}.sz-polish .article-heading .sz-intro{font-size:15px;line-height:1.7}
.sz-polish .article-main :is(.prose,.article-body){font-size:15px;line-height:1.8}.sz-reading-nav{gap:10px 18px}.sz-page-trail{margin-bottom:18px}
.sz-polish .pl-store-intro{padding:28px 18px 22px}.sz-world-path{align-items:flex-start;flex-direction:column;margin:0 18px 24px;padding:20px 0;gap:16px}.sz-world-path nav{flex-shrink:1}.sz-polish .al-grid{gap:16px}
.sz-polish>footer{padding:28px 18px 22px}.sz-polish>footer .footer-links{gap:16px 20px}.sz-polish>footer .footer-bottom{gap:12px 18px}
}
@media(prefers-reduced-motion:reduce){.sz-polish .sz-context-nav a{transition:none}}
/* Reset legacy article nav positioning so inline links and account controls stay in flow. */
.sz-polish .sz-reading-nav{position:static;inset:auto;width:auto;min-height:0;z-index:auto;background:transparent;box-shadow:none;transform:none}
.sz-polish .sz-site-header>.sz-account-nav{position:static;inset:auto;width:auto;min-height:0;padding:0;background:transparent;box-shadow:none;transform:none}
.sz-polish .sz-reading-nav a{padding:4px 0;border:0;min-height:0;background:transparent}
.sz-polish .sz-context-nav{position:relative;inset:auto;width:auto;box-shadow:none}
.sz-polish .sz-world-path nav,.sz-polish>footer nav{position:static;inset:auto;display:flex;flex-wrap:wrap;width:auto;min-height:0;gap:12px 20px;padding:0;background:transparent;box-shadow:none;border:0}
.sz-polish .sz-world-path nav a,.sz-polish>footer nav a{padding:4px 0;border:0}

/* Plain-language account policies share the studio palette and reading rhythm. */
.sz-policy-page{background:#090f15;color:#f3f2ed;--sz-reading:#c1c9d3}
.sz-policy-page :is(header,main,footer){max-width:900px}
.sz-policy-page header{align-items:center;border-color:#ffffff20}
.sz-policy-page header>a{display:flex;align-items:center;gap:10px;color:#f3f2ed;font-size:14px;letter-spacing:.04em}
.sz-policy-page header>a img{width:36px;height:36px;object-fit:contain}
.sz-policy-page main{padding-top:38px}.sz-policy-page h1{font-size:clamp(36px,6vw,60px);text-wrap:balance}
.sz-policy-page :is(p,li){color:#c1c9d3;overflow-wrap:anywhere}.sz-policy-page h2{color:#f3f2ed}
.sz-policy-page .eyebrow,.sz-policy-page a{color:#e6c58b}.sz-policy-page .lede{color:#d0d6de}
.sz-policy-page .panel{background:#111b24;border-color:#ffffff24;border-radius:16px}
.sz-policy-page footer{border-color:#ffffff20}.sz-policy-page nav a,.sz-policy-page footer a{padding:8px 0}
.sz-policy-page a:focus-visible{outline:3px solid #d2ff76;outline-offset:4px}
@media(max-width:450px){.sz-policy-page :is(header,main,footer){padding-inline:20px}.sz-policy-page main{padding-top:26px}.sz-policy-page nav{gap:6px 20px}.sz-policy-page .panel{padding:18px}.sz-policy-page h1{font-size:38px}}
