/* Shared public page header. The homepage does not load this stylesheet. */
.nstyle-page-header{display:block;position:static;inset:auto;z-index:auto;width:100%;max-width:none;margin:0;padding:0;background:#000;color:#eab308;border:0;border-bottom:1px solid #27303d;box-shadow:none;text-align:left;font-family:system-ui,-apple-system,"Noto Sans JP",sans-serif}
.nstyle-page-header__inner{box-sizing:border-box;display:grid;grid-template-columns:120px minmax(0,1fr) 120px;align-items:center;gap:12px;width:100%;max-width:1280px;min-height:64px;margin:0 auto;padding:8px 24px}
.nstyle-page-header .nstyle-page-logo{display:inline-flex;align-items:center;justify-content:flex-start;width:fit-content;min-height:48px;margin:0;padding:0;border:0;background:transparent;text-decoration:none;border-radius:4px;line-height:1}
.nstyle-page-header .nstyle-page-logo img{display:block;width:auto;max-width:114px;height:48px;margin:0;padding:0;border:0;border-radius:0;object-fit:contain;box-shadow:none;transform:none;transition:transform 180ms ease}
.nstyle-page-header .nstyle-page-title{grid-column:2;min-width:0;margin:0;padding:0;border:0;color:#eab308;font-family:inherit;font-size:20px;font-weight:900;line-height:1.4;letter-spacing:.025em;text-align:center;text-transform:none;overflow-wrap:anywhere}
.nstyle-page-header .nstyle-page-logo:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(hover:hover) and (pointer:fine){.nstyle-page-header .nstyle-page-logo:hover img{transform:scale(1.05)}}
.nstyle-page-header .nstyle-page-logo:focus-visible img{transform:scale(1.05)}
.nstyle-page-header + .container,.nstyle-page-header + .manager-container,.nstyle-page-header + .nstyle-page-content,.nstyle-page-header + main .nstyle-page-content{padding-top:24px}
.nstyle-page-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 20px;box-sizing:border-box;margin:0;padding:6px 12px;background:#101722;border-bottom:1px solid #344154;font:13px/1.7 system-ui,sans-serif}
.nstyle-page-links a{display:inline-flex;align-items:center;min-height:28px;color:#e3eaf2;text-decoration:none}
.nstyle-page-links a:focus-visible{outline:2px solid #eab308;outline-offset:2px}
.nstyle-page-meta{margin:0 0 20px;font-size:14px}
.nstyle-page-meta p{margin:0}
.nstyle-article-content{box-sizing:border-box;max-width:840px;margin:auto;padding:24px 20px}
@media(max-width:639px){
 .nstyle-page-header__inner{grid-template-columns:86px minmax(0,1fr);gap:8px;min-height:56px;padding:6px 12px}
 .nstyle-page-header .nstyle-page-logo{min-height:44px}
 .nstyle-page-header .nstyle-page-logo img{max-width:86px;height:36px}
 .nstyle-page-header .nstyle-page-title{font-size:16px;letter-spacing:0;line-height:1.4}
 .nstyle-page-header + .container,.nstyle-page-header + .manager-container,.nstyle-page-header + .nstyle-page-content,.nstyle-page-header + main .nstyle-page-content{padding-top:18px}
}
@media(prefers-reduced-motion:reduce){.nstyle-page-header .nstyle-page-logo img{transition:none}.nstyle-page-header .nstyle-page-logo:hover img,.nstyle-page-header .nstyle-page-logo:focus-visible img{transform:none}}

/* Compact return links for interactive public pages. */
.nstyle-page-header .nstyle-page-back{grid-column:3;justify-self:end;display:inline-flex;align-items:center;justify-content:center;gap:5px;box-sizing:border-box;min-width:44px;min-height:44px;max-width:120px;margin:0;padding:4px;color:#eee;border:0;background:transparent;font:12px/1.4 system-ui,sans-serif;text-decoration:none;text-align:center}
.nstyle-page-back b{font-size:22px;font-weight:400}.nstyle-page-back:focus-visible{outline:2px solid #fff;outline-offset:2px}
.nstyle-play-page #lobby>.hero{padding:16px 0 20px;gap:20px}.nstyle-play-page #lobby>.hero .road{width:160px;height:auto}.nstyle-play-page #lobby>.hero .eyebrow{margin-top:0}
.nstyle-quiz-page main{padding-top:20px}.nstyle-quiz-lead{margin:8px 0;font-size:18px;line-height:1.5}
body.nstyle-vote-page{padding:0 0 40px}.nstyle-vote-page>main.npp-page{box-sizing:border-box;padding:20px 18px 0}
@media(max-width:639px){.nstyle-page-header__inner--with-back{grid-template-columns:86px minmax(0,1fr) 44px}.nstyle-page-header .nstyle-page-back{padding:0;width:44px}.nstyle-page-back span{display:none}}
