/* Homepage: signed-out entry only. */
body.isSignedOut{--home-cyan:#80eaff}
body.isSignedOut header.topbar{max-width:1360px!important;inset:20px 32px auto!important;width:calc(100% - 64px)!important;height:76px!important;padding:0 26px!important;background:#0d192beF!important;border-color:#30445d!important;border-radius:22px!important;box-shadow:0 12px 40px #0002!important}
body.isSignedOut .publicNav{display:flex!important;align-items:center;gap:10px!important;flex-wrap:nowrap!important}
body.isSignedOut .publicNav a,body.isSignedOut .publicNav button{min-height:44px!important;padding:10px 15px!important;font-size:14px!important;font-weight:700!important;border-radius:11px!important;text-decoration:none!important;white-space:nowrap;color:#eaf4ff!important}
body.isSignedOut .publicNav .homeAbout{color:#aebed3!important}
body.isSignedOut .publicNav .homeSignIn{border:1px solid #47627e!important;background:#192d44!important}
body.isSignedOut .publicNav #publicCreateNav{background:#80eaff!important;color:#062234!important;border:1px solid #80eaff!important}
body.isSignedOut #auth.publicLanding{grid-template-columns:minmax(0,1fr) minmax(350px,390px)!important;padding:160px max(5vw,32px) 70px!important;gap:clamp(32px,7vw,140px)!important;min-height:100svh!important;align-items:center!important}
body.isSignedOut .publicWorldVignette{background:linear-gradient(90deg,#071220f2 0%,#071220c9 33%,#07122050 58%,#07122080 100%),linear-gradient(0deg,#071220eb,transparent 60%)!important}
body.isSignedOut .publicHero{max-width:620px!important}
body.isSignedOut .publicLive{color:var(--home-cyan)!important;font-size:12px!important;letter-spacing:.16em!important;margin-bottom:22px!important}
body.isSignedOut .publicHero h1{max-width:620px!important;font-size:clamp(38px,4.2vw,65px)!important;line-height:1.08!important;letter-spacing:-.045em!important;margin-bottom:24px!important;text-wrap:initial!important}
body.isSignedOut .publicHero h1 em{color:var(--home-cyan)!important}
body.isSignedOut .publicHero>p{max-width:420px!important;font-size:18px!important;line-height:1.65!important;color:#c4d2e2!important;font-weight:450!important}
body.isSignedOut .nizurSeoLinks{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:30px!important}
body.isSignedOut .nizurSeoLinks a{min-height:52px!important;padding:14px 20px!important;font-size:15px!important;border-radius:12px!important;box-shadow:none!important;justify-content:center;gap:18px!important}
body.isSignedOut .nizurSeoLinks .homeExplore{background:var(--home-cyan)!important;color:#082334!important;border-color:var(--home-cyan)!important}
body.isSignedOut .nizurSeoLinks .homeLearn{background:#12243ad9!important;border-color:#45627e!important;color:#e8f3ff!important}
body.isSignedOut .publicFeatureRow{display:flex!important;flex-direction:column!important;gap:15px!important;margin-top:36px!important}
body.isSignedOut .publicFeatureRow>span{display:flex!important;gap:12px!important;align-items:center!important}
body.isSignedOut .publicFeatureRow i{display:grid;place-items:center;width:28px;height:28px;border:1px solid #42637e;border-radius:50%;font:600 12px system-ui;color:#80eaff;background:#10263b}
body.isSignedOut .publicFeatureRow b{font-size:14px!important;font-weight:550!important;color:#d3dfed!important}
body.isSignedOut .publicOnlineCard{margin-top:30px!important;padding:0!important;border:0!important;background:none!important;gap:24px!important}
body.isSignedOut .publicOnlineCard>div:not([hidden]){display:flex!important;flex-direction:row!important;align-items:baseline;gap:6px!important}
body.isSignedOut .publicOnlineCard strong{font-size:14px!important;font-weight:700!important}
body.isSignedOut .publicOnlineCard small{font-size:12px!important;color:#a7b9cd!important}
body.isSignedOut .publicAuthStack{max-width:390px!important;align-self:center!important}
body.isSignedOut #auth .authCard{padding:28px!important;border-radius:24px!important;border:1px solid #3b526e!important;background:#101e32f7!important;box-shadow:0 24px 70px #0004!important}
body.isSignedOut #auth .authCard .homeAccountLabel{font-size:10px!important;letter-spacing:.13em!important;color:#94abc5!important;margin:0 0 18px!important;font-weight:700!important}
body.isSignedOut #auth .authTabs{border:0!important;background:#081426!important;padding:4px!important;border-radius:12px!important}
body.isSignedOut #auth .authTabs button{font-size:14px!important;min-height:42px!important}
body.isSignedOut #auth .authTabs button.active{background:#214a69!important;color:#ecfaff!important}
body.isSignedOut #auth .authCard h2{font-size:26px!important;margin:24px 0 8px!important;line-height:1.2!important}
body.isSignedOut #auth .authCard>p:not(.homeAccountLabel){font-size:14px!important;margin-bottom:20px!important}
body.isSignedOut #auth .authCard label{font-size:13px!important;margin-top:18px!important}
body.isSignedOut #auth .authInput{min-height:50px!important;margin-top:8px!important;border-color:#435a75!important;border-radius:10px!important;background:#0b1728!important}
body.isSignedOut #auth .authInput input{min-height:48px!important;font-size:16px!important}
body.isSignedOut #auth .authGo{min-height:52px!important;margin-top:24px!important;border-radius:11px!important;background:linear-gradient(120deg,#0b94c8,#2564df)!important;font-size:16px!important;box-shadow:none!important}
body.isSignedOut #auth .authCard .safeTip{margin:20px 0 0!important;font-size:11px!important;color:#9eb1c8!important}
body.isSignedOut .homeBrowse{display:block;text-align:center;padding-top:18px;margin-top:18px;border-top:1px solid #30425a;color:#8cddfa!important;font-size:12px;text-decoration:none}
body.isSignedOut a:focus-visible,body.isSignedOut button:focus-visible{outline:3px solid #80eaff!important;outline-offset:4px!important}
@media(max-width:1000px){body.isSignedOut #auth.publicLanding{gap:30px!important;padding-inline:32px!important}body.isSignedOut .publicHero h1{font-size:42px!important}body.isSignedOut .publicNav .homeAbout{display:none!important}}
@media(max-width:760px){
 body.isSignedOut header.topbar{position:relative!important;inset:auto!important;width:calc(100% - 24px)!important;margin:12px!important;height:64px!important;min-height:64px!important;padding:0 12px!important;gap:8px!important;border-radius:16px!important}
 body.isSignedOut header.topbar .brand{width:100px!important;min-width:0!important;flex:0 1 100px!important;margin-right:auto!important;padding:0!important}
 body.isSignedOut header.topbar .nizurBrandLogo{width:100px!important;height:auto!important}
 body.isSignedOut .publicNav{gap:4px!important}
 body.isSignedOut .publicNav a,body.isSignedOut .publicNav button{font-size:12px!important;padding:8px!important}
 body.isSignedOut .publicNav>a{display:none!important}
 body.isSignedOut #auth.publicLanding{display:flex!important;flex-direction:column!important;padding:34px 20px 40px!important;min-height:0!important;gap:32px!important;overflow:hidden!important}
 body.isSignedOut .publicHero{width:100%!important;max-width:520px!important;text-align:left!important;padding:0!important}
 body.isSignedOut .publicLive{font-size:10px!important;margin-bottom:16px!important}
 body.isSignedOut .publicHero h1{font-size:clamp(34px,8vw,46px)!important;margin-bottom:18px!important;line-height:1.1!important}
 body.isSignedOut .publicHero>p{font-size:16px!important;max-width:440px!important;margin:0!important}
 body.isSignedOut .nizurSeoLinks{margin-top:22px!important;gap:10px!important}
 body.isSignedOut .nizurSeoLinks a{font-size:13px!important;padding:12px 14px!important;min-height:48px!important;flex:1 1 140px!important}
 body.isSignedOut .publicFeatureRow{display:none!important}
 body.isSignedOut .publicOnlineCard{margin-top:22px!important;gap:18px!important}
 body.isSignedOut .publicAuthStack{width:100%!important;max-width:520px!important;align-self:center!important}
 body.isSignedOut #auth .authCard{padding:24px!important;border-radius:20px!important}
 body.isSignedOut .publicWorldVignette{height:100%!important;background:linear-gradient(180deg,#071220c9,#071220ef 40%,#071220 85%)!important}
 body.isSignedOut #publicWorldCanvas,body.isSignedOut .publicWorldFallback{height:520px!important;opacity:.45!important}
}
@media(prefers-reduced-motion:reduce){body.isSignedOut *,body.isSignedOut *::before{scroll-behavior:auto!important;transition:none!important}}
/* Live Three.js landing page; cards use static CSS light instead of postprocessing. */
html body.isSignedOut{background:#04101f!important;padding-bottom:0!important;font-family:system-ui,-apple-system,"Segoe UI",sans-serif!important}
html body.isSignedOut>main{max-width:none!important;width:100%!important;margin:0!important;padding:0!important}
html body.isSignedOut header.topbar{position:absolute!important;box-sizing:border-box;inset:14px auto auto 50%!important;transform:translateX(-50%)!important;width:calc(100% - 64px)!important;max-width:1480px!important;height:76px!important;border:1px solid #286084!important;border-radius:18px!important;background:linear-gradient(110deg,#041528ee,#071e36f5)!important;box-shadow:0 0 24px #0075c020!important;z-index:20!important}
html body.isSignedOut #auth.publicLanding{position:relative;isolation:isolate;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(340px,390px)!important;grid-template-rows:minmax(500px,1fr) auto auto;gap:24px 48px!important;padding:140px max(calc((100vw - 1480px)/2),5vw) 24px!important;min-height:100svh!important;box-sizing:border-box;overflow:hidden;background:#06182a!important}
html body.isSignedOut #publicWorldCanvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:-3!important;pointer-events:none;opacity:1!important}
html body.isSignedOut .publicWorldFallback{position:absolute;inset:0;z-index:-4;background:radial-gradient(ellipse at 60% 30%,#154f78,#04101e)}
html body.isSignedOut .worldFallbackOnly .publicWorldFallback{background:center/cover url('/assets/nizur-camp-20261026-desktop.webp')}
html body.isSignedOut .worldFallbackOnly #publicWorldCanvas{opacity:0!important}
html body.isSignedOut .publicWorldVignette{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#03111fe8,#04152890 35%,#05162c15 65%,#05142680),linear-gradient(0deg,#04101f,transparent 42%)!important}
html body.isSignedOut .publicHero{max-width:660px!important;align-self:center;min-width:0}
html body.isSignedOut .publicHero h1{font-family:system-ui,sans-serif!important;font-size:clamp(44px,4.6vw,76px)!important;line-height:1.04!important;letter-spacing:-.045em!important;color:#f1faff!important;margin:24px 0!important;text-shadow:0 3px 20px #0005}
html body.isSignedOut .publicHero h1 em{display:block;font-style:normal;background:linear-gradient(100deg,#5ee8ff,#00baf3,#3684ff);background-clip:text;-webkit-text-fill-color:transparent!important}
html body.isSignedOut .publicHero>p{font-size:18px!important;line-height:1.65!important;max-width:560px!important;color:#c1def0!important}
html body.isSignedOut .publicLive{color:#53e2ff!important;font-size:12px!important;letter-spacing:.2em!important}
html body.isSignedOut .nizurSeoLinks{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0!important}
html body.isSignedOut .nizurSeoLinks a{display:inline-flex;align-items:center;gap:10px;box-sizing:border-box;min-height:52px!important;background:#061c33e6!important;color:#e7f7ff!important;border:1px solid #2b648b!important;border-radius:12px!important;padding:12px 18px!important;text-decoration:none;font-size:14px!important;box-shadow:0 0 20px #00afff12!important}
html body.isSignedOut .nizurSeoLinks a:first-child,html body.isSignedOut #auth#auth .authCard .authGo,html body.isSignedOut .publicNav #publicCreateNav{background:linear-gradient(115deg,#00bdec,#086aff)!important;color:#fff!important;border:1px solid #69ddff!important;box-shadow:0 0 22px #0aa9ff35,inset 0 1px #b2edff55!important}
html body.isSignedOut .publicAuthStack{min-width:0;align-self:center;width:100%!important}
html body.isSignedOut #auth#auth .authCard{padding:28px!important;background:linear-gradient(145deg,#09253eea,#051529f5)!important;border:1px solid #4ccfff!important;box-shadow:0 0 0 1px #0699ee44,0 0 30px #168cff25!important;border-radius:20px!important}
html body.isSignedOut #auth#auth .authCard h2{font-size:30px!important;line-height:1.2!important;color:#f0faff!important;margin:22px 0 10px!important}.authCard label{font-size:13px}
html body.isSignedOut #auth#auth .authCard .authTabs{display:flex!important;gap:4px;padding:4px!important;border:1px solid #234f77!important;background:#031324!important;border-radius:13px!important}
html body.isSignedOut #auth#auth .authCard .authTabs button{width:50%!important;min-height:44px!important;background:transparent!important;color:#bfd5eb!important;border-radius:10px!important}
html body.isSignedOut #auth#auth .authCard .authTabs button.active{background:linear-gradient(110deg,#0cbbe7,#0864f7)!important;border:1px solid #59cfff!important;color:#fff!important;box-shadow:0 0 14px #158cff4d!important}
html body.isSignedOut #auth#auth .authCard .authInput{min-width:0;box-sizing:border-box;display:flex;align-items:center;background:#071b30!important;border:1px solid #326187!important;border-radius:11px!important;padding:0 12px!important;min-height:48px!important;box-shadow:none!important}
html body.isSignedOut #auth#auth .authCard .authInput input{background:transparent!important;box-shadow:none!important;border:0!important;outline:none!important;border-radius:0!important;min-width:0!important;width:100%!important;padding:0!important;margin:0!important;height:46px!important;color:#e2f7ff!important;font-size:15px!important}
html body.isSignedOut #auth#auth .authCard .authInput:focus-within{border-color:#58ceff!important;box-shadow:0 0 0 3px #28bfff25!important}
html body.isSignedOut #auth#auth .authCard .authGo{min-height:54px!important;border-radius:12px!important}.authCard .safeTip{border-top:1px solid #254f72;padding-top:16px}
html body.isSignedOut #auth>.publicFeatureRow{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;margin:0!important;width:100%!important}
html body.isSignedOut .publicFeatureRow>a{display:flex;align-items:center;gap:18px;min-width:0;padding:20px 22px;text-decoration:none;color:#eaf8ff;border:1px solid #225b82;border-radius:17px;background:linear-gradient(135deg,#061c31eb,#041222ed);box-shadow:0 0 14px #008cff0c}
.publicFeatureRow>a>span{display:grid;place-items:center;flex:0 0 58px;height:58px;background:linear-gradient(#043b66,#052242);border:1px solid #14b2f3;border-radius:17px;font-size:28px;color:#55dfff}.publicFeatureRow>a>div{min-width:0}.publicFeatureRow strong{font-size:20px;color:#effaff}.publicFeatureRow>a p{font-size:13px!important;line-height:1.55!important;color:#aacbe2!important;margin:8px 0 0!important}
html body.isSignedOut #auth>.publicOnlineCard{grid-column:1/-1;display:flex!important;justify-content:center;align-items:center;gap:60px!important;width:min(680px,100%)!important;justify-self:center;margin:0!important;padding:16px!important;background:#061a30ed!important;border:1px solid #275a82!important;border-radius:16px!important}.publicOnlineCard>div{display:flex;flex-direction:column;gap:4px}.publicOnlineCard strong{color:#effaff!important;font-size:24px!important}.publicOnlineCard small{color:#a8cae5!important;font-size:12px!important}
html body.nizurDashboard #account .accountTitle{display:flex;justify-content:flex-end;margin:0 0 12px}html body.nizurDashboard #account .accountTitle>:not(#myProfile){display:none!important}
@media(max-width:1100px){html body.isSignedOut #auth.publicLanding{gap:24px!important;padding:130px 24px 24px!important;grid-template-columns:minmax(0,1fr) 340px!important}.publicFeatureRow>a{padding:16px!important;gap:12px!important}.publicFeatureRow>a>span{flex-basis:44px;height:44px}}
@media(max-width:800px){html body.isSignedOut header.topbar{width:calc(100% - 24px)!important;inset:12px auto auto 50%!important;padding:0 14px!important;height:68px!important}html body.isSignedOut .publicNav .homeAbout{display:none!important}html body.isSignedOut .publicNav a,html body.isSignedOut .publicNav button{padding:8px!important;font-size:12px!important}html body.isSignedOut #auth.publicLanding{grid-template-columns:1fr!important;grid-template-rows:auto!important;padding:124px 18px 24px!important;gap:24px!important}html body.isSignedOut .publicHero{max-width:600px!important}html body.isSignedOut .publicHero h1{font-size:clamp(38px,7vw,56px)!important}.publicHero>p{font-size:16px!important}html body.isSignedOut .publicAuthStack{max-width:480px!important;justify-self:center}html body.isSignedOut #auth>.publicFeatureRow{grid-template-columns:1fr!important}html body.isSignedOut #auth>.publicOnlineCard{gap:30px!important}.publicWorldVignette{background:linear-gradient(90deg,#041426bb,#04142650),linear-gradient(0deg,#04101f,transparent)!important}html body.isSignedOut .worldFallbackOnly .publicWorldFallback{background-image:url('/assets/nizur-camp-20261026-mobile.webp')}.publicFeatureRow>a p{font-size:13px!important}html body.isSignedOut #auth#auth .authCard{padding:22px!important}}
@media(prefers-reduced-motion:reduce){.publicLanding *{scroll-behavior:auto!important;transition:none!important}}

html body.isSignedOut #auth.worldFallbackOnly .publicWorldFallback{opacity:1!important;z-index:-2!important}

/* Reference composition: keep the live campsite visible between the text and login. */
html body.isSignedOut header.topbar{width:88%!important;max-width:1480px!important;height:74px!important;padding:0 26px!important}
html body.isSignedOut header.topbar .brand{flex:0 0 auto!important}
html body.isSignedOut .publicNav{flex:1!important;min-width:0!important;justify-content:flex-end!important;gap:18px!important}
.homeReferenceMenu{display:flex;align-items:center;gap:22px;margin-right:auto;margin-left:35px;height:74px}
html body.isSignedOut .homeReferenceMenu a{position:relative;padding:24px 8px!important;background:transparent!important;border:0!important}
html body.isSignedOut .homeReferenceMenu a[aria-current]{color:#75e9ff!important}
.homeReferenceMenu a[aria-current]:after{content:'';position:absolute;bottom:8px;left:0;right:0;height:2px;background:#27d8f8;box-shadow:0 0 14px #27d8f8}
html body.isSignedOut #auth.publicLanding{padding-left:6%!important;padding-right:6%!important;grid-template-rows:minmax(520px,1fr) auto auto!important;gap:20px 40px!important}
html body.isSignedOut .publicHero h1{font-size:clamp(50px,4.55vw,76px)!important;line-height:1.04!important;font-weight:900!important;letter-spacing:-.045em!important}
html body.isSignedOut .publicHero h1 em.homeInline{display:inline!important}
html body.isSignedOut .publicHero{max-width:690px!important}
html body.isSignedOut .publicWorldVignette{background:linear-gradient(90deg,#020e1bd9,#03152966 35%,#05162c00 65%,#0413254d),linear-gradient(0deg,#030e1df5,transparent 45%)!important}
html body.isSignedOut .publicFeatureRow>a{min-height:112px;box-sizing:border-box;position:relative;padding-right:36px!important;transition:transform .18s,border-color .18s,box-shadow .18s}
.publicFeatureRow>a:after{content:'›';position:absolute;right:18px;top:22px;font-size:24px;color:#c6e4fa}
.publicFeatureRow>a>span svg{width:34px;height:34px}
html body.isSignedOut .publicFeatureRow>a:nth-child(2)>span{background:linear-gradient(#24225c,#12132c);border-color:#7466ff;color:#9a8bff}
html body.isSignedOut .publicFeatureRow>a:nth-child(3)>span{background:linear-gradient(#064c4d,#06262d);border-color:#00d9bc;color:#00e5c0}
html body.isSignedOut .publicFeatureRow>a p{font-size:15px!important}
html body.isSignedOut .publicFeatureRow strong{font-size:23px!important}
html body.isSignedOut #auth>.publicOnlineCard{min-height:74px!important;width:min(720px,100%)!important;gap:0!important;padding:12px 24px!important}
html body.isSignedOut #auth>.publicOnlineCard>div:not([hidden]){position:relative;flex:1;padding-left:52px!important;box-sizing:border-box}
.publicOnlineCard>div:first-child:before{content:'♟';position:absolute;left:12px;top:0;font-size:32px;color:#169bff}
.publicOnlineCard>div:nth-child(2):before{content:'';position:absolute;left:22px;top:14px;width:14px;height:14px;background:#00d995;border-radius:50%;box-shadow:0 0 14px #00d99544}
.publicOnlineCard>div:nth-child(2){border-left:1px solid #24476d}
.nizurSeoLinks svg{width:23px;height:23px;flex-shrink:0}
@media(hover:hover){html body.isSignedOut .publicFeatureRow>a:hover{transform:translateY(-3px);border-color:#40cfff;box-shadow:0 0 22px #00bfff22}}
@media(max-width:1200px){.homeReferenceMenu{gap:5px;margin-left:8px}.homeReferenceMenu a{font-size:12px!important}html body.isSignedOut .publicNav{gap:6px!important}html body.isSignedOut #auth.publicLanding{gap:20px!important}html body.isSignedOut .publicHero h1{font-size:54px!important}}
@media(max-width:1000px){.homeReferenceMenu{display:none}html body.isSignedOut #auth.publicLanding{padding:120px 24px 24px!important;grid-template-columns:minmax(0,1fr) 340px!important}html body.isSignedOut .publicHero h1{font-size:46px!important}.publicFeatureRow>a p{font-size:13px!important}}
@media(max-width:800px){html body.isSignedOut header.topbar{width:calc(100% - 24px)!important;padding:0 14px!important}html body.isSignedOut #auth.publicLanding{grid-template-columns:1fr!important;grid-template-rows:auto!important;padding:118px 18px 24px!important}html body.isSignedOut .publicHero h1{font-size:clamp(38px,8vw,58px)!important}html body.isSignedOut .publicAuthStack{width:100%!important}.publicOnlineCard small{font-size:11px!important}html body.isSignedOut #auth>.publicOnlineCard{padding:12px 4px!important}}
@media(prefers-reduced-motion:reduce){html body.isSignedOut .publicFeatureRow>a{transition:none;transform:none!important}}

html body.isSignedOut .publicWorldVignette{background:linear-gradient(90deg,#020c19ef,#03152999 31%,#05162c00 52%,#04132533),linear-gradient(0deg,#030e1df5,transparent 48%)!important}html body.isSignedOut .publicOnlineCard>div:not([hidden]){display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important}html body.isSignedOut .publicOnlineCard strong{font-size:24px!important}html body.isSignedOut .publicOnlineCard small{font-size:14px!important}

html body.isSignedOut .authInput>svg{width:21px;height:21px;flex:0 0 21px;color:#9ab6d6;margin-right:12px}html body.isSignedOut #showPass{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;min-width:44px!important;padding:10px!important;background:transparent!important;border:0!important;color:#a6c8e8!important}html body.isSignedOut #showPass:before,html body.isSignedOut #showPass:after{content:none!important}#showPass svg{width:22px;height:22px}.authGo svg{width:22px;height:22px;vertical-align:middle;margin-right:12px}.safeTip svg{width:17px;height:17px;vertical-align:middle;margin-right:8px;color:#29c3ff}

/* Signed-out navigation must never inherit dashboard search layout. */
html body.isSignedOut header.topbar .globalSearch,html body.isSignedOut header.topbar .headerActions,html body.isSignedOut header.topbar .mainNav{display:none!important}
html body.isSignedOut header.topbar{display:flex!important}
html body.isSignedOut .publicHero h1{max-width:none!important}
html body.isSignedOut .publicHero h1 em.homeInline{display:inline!important}
html body.isSignedOut .publicFeatureRow>a>span{color:#55dfff!important}
