/* Shared auth layout: consistent header/footer and focused authentication form. */
body.auth-page, body.admin-auth-page { background:#f5f8fc!important; }
body.auth-page .spw-wireframe-header, body.admin-auth-page .spw-wireframe-header { background:#fff; }
body.auth-page .auth-fixed-main, body.auth-page .staff-auth,
body.admin-auth-page main { min-height:calc(100vh - 220px); padding:32px 18px 42px!important; }
body.auth-page .auth-fixed-grid, body.auth-page .staff-auth-grid { display:flex!important; justify-content:center; max-width:100%!important; margin:0 auto; }
body.auth-page .auth-intro, body.auth-page .staff-intro { display:none!important; }
body.auth-page .auth-fixed-card, body.auth-page .staff-card,
body.admin-auth-page .admin-auth-card, body.admin-auth-page .auth-card {
  width:min(100%,520px); box-sizing:border-box; margin:0 auto;
  border:1px solid #dce7f2; border-radius:20px; background:#fff;
  box-shadow:0 18px 48px rgba(20,55,95,.09);
}
body.auth-page .auth-fixed-card, body.auth-page .staff-card { padding:28px; }
body.auth-page .spw-auth-footer, body.admin-auth-page .spw-auth-footer {
  width:min(calc(100% - 36px),1100px); margin:0 auto 22px; padding:18px 22px;
  border-radius:16px; background:linear-gradient(110deg,#06182e,#0b4d91);
  color:#fff; display:flex; align-items:center; justify-content:space-between; gap:18px;
}
body.auth-page .spw-auth-footer p, body.admin-auth-page .spw-auth-footer p { margin:4px 0 0;color:#c5d9ef;font-size:13px; }
body.auth-page .spw-auth-footer a, body.admin-auth-page .spw-auth-footer a { display:inline-flex;padding:11px 16px;border-radius:9px;background:#1685f8;color:#fff;text-decoration:none;font-weight:800;white-space:nowrap; }
@media(max-width:600px){body.auth-page .auth-fixed-card,body.auth-page .staff-card{padding:20px}body.auth-page .spw-auth-footer,body.admin-auth-page .spw-auth-footer{align-items:flex-start;flex-direction:column}}

/* 2026-10-09 requested navigation/auth polish */
.spw-desktop-nav>a:not(.spw-join-btn){
  min-height:48px!important; padding:10px 13px!important; margin:0 2px;
  border:1px solid #1769c2!important; border-radius:10px!important;
  background:linear-gradient(135deg,#1257a6 0%,#087fbd 58%,#0c9b9a 100%)!important;
  color:#fff!important; font-weight:850!important; text-shadow:0 1px 1px rgba(0,0,0,.15);
  box-shadow:0 4px 12px rgba(8,75,145,.13);
}
.spw-desktop-nav>a:not(.spw-join-btn):hover,
.spw-desktop-nav>a:not(.spw-join-btn):focus-visible{
  background:linear-gradient(135deg,#0d478c 0%,#066da7 58%,#087f7e 100%)!important;
  color:#fff!important; transform:translateY(-1px); outline:2px solid #8bd8ff; outline-offset:2px;
}
.spw-desktop-nav .spw-nav-home{border-radius:12px!important;color:#fff!important}
.spw-desktop-nav .spw-ico{display:none!important}
.spw-join-btn{color:#fff!important;font-weight:900!important;background:linear-gradient(135deg,#1257a6,#087fbd 58%,#0c9b9a)!important}
.spw-mobile-menu a{background:linear-gradient(135deg,#1257a6,#087fbd 58%,#0c9b9a)!important;color:#fff!important;border-color:#1769c2!important}
.spw-mobile-menu a:hover{background:linear-gradient(135deg,#0d478c,#066da7 58%,#087f7e)!important;color:#fff!important}
.spw-mobile-menu .mobile-join{color:#fff!important}
/* Authentication pages intentionally have no promotional footer. */
body.auth-page .spw-auth-footer,body.admin-auth-page .spw-auth-footer{display:none!important}
@media(max-width:980px){.spw-desktop-nav>a:not(.spw-join-btn){min-height:44px!important;padding:9px 12px!important}}
