/* bp3.css · Nudy World polish bp3 (Oct 19 2026) */
/* MENU FIX (Ki 11:34 PM Oct 18: "the menu showed all white, couldn't read the words"). The page never declared a colour scheme, so phones that
   auto-darken pages (Android WebView inside WhatsApp/IG in dark mode, Samsung Internet, Chrome "darken websites") re-painted it. Declare dark only,
   and give the phone menu its own solid panel + high-contrast text that does not depend on era variables or color-mix(). */
:root{color-scheme:dark only}
html,body{background-color:#000}
@media (max-width:760px){
 .bar nav{background:#070a07!important;background-image:linear-gradient(180deg,#0b120b,#050605)!important;border-bottom:2px solid #39ff14!important;box-shadow:0 22px 40px -10px #000!important}
 .bar nav a,.bar nav a[href="#links"],.bar nav a[href="#countdown"],html[data-era] .bar nav a,html[data-era="rich-shooter"] .bar nav a{color:#f4fff0!important;-webkit-text-fill-color:#f4fff0!important;background:transparent!important;background-image:none!important;text-shadow:none!important;opacity:1!important;filter:none!important}
 .bar nav a:active,.bar nav a:focus-visible{background:rgba(57,255,20,.16)!important}
 .bar nav a.on,.bar nav a[aria-current]{color:#39ff14!important;-webkit-text-fill-color:#39ff14!important}
 .bar .nwmenu-btn,html[data-era] .bar .nwmenu-btn{background:#050605!important;color:#b6ff8a!important;border-color:#39ff14!important}
}

/* ===== bp3 components ===== */
.nw3{max-width:1180px;margin:0 auto;padding:12px 14px 70px;color:#f4fff0}
.nw3-back{display:inline-flex;align-items:center;min-height:44px;color:#b6ff8a;text-decoration:none;font:15px var(--ui);letter-spacing:1px}
.nw3-h{text-align:center;padding:10px 0 18px}
.nw3-k{font:13px var(--ui);letter-spacing:3px;color:#39ff14;margin:0 0 6px}
.nw3-t{font:400 clamp(40px,11vw,92px)/.92 var(--ui);letter-spacing:1px;margin:0;color:#fff;text-shadow:0 0 18px rgba(57,255,20,.35)}
.nw3-t span{display:block;color:#39ff14}
.nw3-sub{max-width:620px;margin:12px auto 0;color:#d6e9d0;font-size:16px}
.nw3-card{max-width:560px;margin:0 auto;background:linear-gradient(180deg,#0c150c,#060906);border:1px solid #1f4a14;border-radius:22px;padding:18px 16px 20px;box-shadow:0 20px 60px -20px rgba(57,255,20,.25)}
.nw3-l{display:block;font:14px var(--ui);letter-spacing:1.5px;color:#b6ff8a;margin:14px 0 6px}
.nw3-l small{font:12px system-ui;letter-spacing:0;color:#8fa58a;margin-left:6px}
.nw3 input:not([type=checkbox]),.nw3 select{width:100%;min-height:50px;border-radius:14px;border:1.5px solid #2b5a1f;background:#020402;color:#fff;font:17px system-ui;padding:10px 14px;outline:none;-webkit-appearance:none;appearance:none}
.nw3 select{background-image:linear-gradient(45deg,transparent 50%,#39ff14 50%),linear-gradient(135deg,#39ff14 50%,transparent 50%);background-position:calc(100% - 20px) 22px,calc(100% - 14px) 22px;background-size:6px 6px;background-repeat:no-repeat}
.nw3 input:focus,.nw3 select:focus{border-color:#39ff14;box-shadow:0 0 0 3px rgba(57,255,20,.25)}
.nw3 input.nw3-bad{border-color:#ff3b3b;box-shadow:0 0 0 3px rgba(255,59,59,.25)}
.nw3-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:420px){.nw3-two{grid-template-columns:1fr}}
.nw3-soc{display:flex;gap:8px}
.nw3-seg{display:flex;border:1.5px solid #2b5a1f;border-radius:14px;overflow:hidden;flex:none}
.nw3-seg button{min-height:50px;min-width:58px;padding:0 10px;background:#020402;color:#b6ff8a;border:0;font:15px var(--ui);letter-spacing:1px;cursor:pointer}
.nw3-seg button.on{background:#39ff14;color:#041004}
.nw3-at{position:relative;flex:1;min-width:0}.nw3-at span{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#7cff3a;font:17px system-ui}.nw3-at input{padding-left:32px!important}
.nw3-ck{display:flex;gap:12px;align-items:flex-start;margin:14px 0 0;font-size:15px;line-height:1.35;color:#e8f6e2;cursor:pointer}
.nw3-ck input{flex:none;width:24px;height:24px;margin:1px 0 0;accent-color:#39ff14}
.nw3-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
.nw3-priv{font-size:13px;color:#9fb59a;margin:14px 0 0}
.nw3-err{color:#ff7070;font-weight:700;min-height:1.2em;margin:10px 0 0}
.nw3-go{display:flex;align-items:center;justify-content:center;width:100%;min-height:56px;margin-top:12px;border:0;border-radius:999px;background:#39ff14;color:#031003;font:22px var(--ui);letter-spacing:1.5px;text-decoration:none;cursor:pointer;box-shadow:0 0 24px rgba(57,255,20,.45)}
.nw3-go:disabled{opacity:.6}
.nw3-ghost{display:flex;align-items:center;justify-content:center;min-height:50px;border-radius:999px;border:1.5px solid #39ff14;color:#d8ffc8;text-decoration:none;font:17px var(--ui);letter-spacing:1px}
.nw3-thx{text-align:center;position:relative;overflow:hidden}
.nw3-thx .nw3-t{font-size:clamp(34px,10vw,70px)}
.nw3-acts{display:grid;gap:10px;margin-top:16px}
.nw3-burst{position:absolute;inset:-40%;background:conic-gradient(from 0deg,rgba(57,255,20,.0),rgba(57,255,20,.18),rgba(57,255,20,0) 30%);animation:nw3spin 8s linear infinite;pointer-events:none}
@keyframes nw3spin{to{transform:rotate(1turn)}}
.nw3-note{max-width:760px;margin:30px auto 0;text-align:center;font-size:13px;color:#93a88e}
.nw3-glow{outline:3px solid #39ff14!important;box-shadow:0 0 24px #39ff14!important;transition:outline .3s}

/* TV room */
.tv-h .nw3-t{font-family:'Creepster',var(--ui);letter-spacing:3px}
html.nw-hal .tv-h .nw3-t span{color:#ff7a1a;text-shadow:0 0 22px rgba(255,122,26,.6)}
.tvchips{position:sticky;top:56px;z-index:5;display:flex;gap:8px;overflow-x:auto;padding:8px 2px 10px;margin:0 -14px;padding-left:14px;padding-right:14px;background:linear-gradient(#000 70%,transparent);scrollbar-width:none}
.tvchips::-webkit-scrollbar{display:none}
.tvchips a{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;border:1.5px solid #2f6a1d;color:#e6ffdc;text-decoration:none;font:16px var(--ui);letter-spacing:1px;background:#050805}
.tvchips a[data-shelf=hal]{border-color:#ff7a1a;color:#ffd2ad}
.tvpick{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px;align-items:center;background:#070b07;border:1px solid #1f4a14;border-radius:22px;padding:14px;margin:8px 0 6px}
html.nw-hal .tvpick{border-color:#7a3a0a;background:linear-gradient(135deg,#120803,#060906)}
.tvpick h2{font:400 34px/1 var(--ui);margin:4px 0;letter-spacing:1px}
.tvpi img,.tvi img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;background:#111}
@media (max-width:640px){.tvpick{grid-template-columns:1fr}}
.tvshelf{margin:26px 0 0}
.tvsh h2{font:400 clamp(26px,6.4vw,40px)/1 var(--ui);letter-spacing:1px;margin:0;color:#fff}
#shelf-hal .tvsh h2{color:#ff8a2a;font-family:'Creepster',var(--ui);letter-spacing:2px}
.tvsh p{margin:4px 0 0;color:#9fb59a;font-size:14px}
.tvrow{list-style:none;margin:10px -14px 0;padding:4px 14px 12px;display:grid;grid-auto-flow:column;grid-auto-columns:min(74vw,290px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}
.tvc{scroll-snap-align:start;background:#070a07;border:1px solid #173d10;border-radius:18px;padding:10px;display:flex;flex-direction:column;transition:box-shadow .3s,border-color .3s}
.tvc.glow{border-color:#39ff14;box-shadow:0 0 0 2px #39ff14,0 0 30px rgba(57,255,20,.5)}
.tvi{position:relative}
.tvtag{position:absolute;left:8px;top:8px;background:rgba(0,0,0,.78);color:#b6ff8a;font:12px var(--ui);letter-spacing:1px;padding:4px 8px;border-radius:999px}
.tvplay{position:absolute;right:10px;bottom:10px;width:48px;height:48px;border-radius:50%;border:0;background:rgba(0,0,0,.72);color:#39ff14;display:flex;align-items:center;justify-content:center;cursor:pointer}
.tvplay svg{width:22px;height:22px}
.tvc h3{font:400 21px/1.1 var(--ui);letter-spacing:.5px;margin:10px 0 2px;color:#fff}
.tvy{margin:0;color:#7cff3a;font:13px var(--ui);letter-spacing:1px}
.tvd{margin:6px 0 10px;color:#cfe0ca;font-size:14px;line-height:1.35;flex:1}
.tva{display:flex;gap:8px;flex-wrap:wrap}
.tvb{flex:1;display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 12px;border-radius:999px;font:15px var(--ui);letter-spacing:1px;text-decoration:none;cursor:pointer;white-space:nowrap}
.tvb.tr{background:#39ff14;color:#031003;border:0}
.tvb.wn{background:transparent;color:#e6ffdc;border:1.5px solid #39ff14}
.tvx{position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:12px}
.tvx-in{width:min(100%,1000px)}
.tvx-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#fff;font:18px var(--ui);letter-spacing:1px;margin-bottom:8px}
.tvx-x{width:48px;height:48px;border-radius:50%;border:1.5px solid #39ff14;background:#000;color:#fff;font-size:20px;cursor:pointer;flex:none}
.tvx-v{position:relative;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden}
.tvx-v iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
body.tvx-on,body.nws-on{overflow:hidden}

/* Latest + socials + PDE */
.nw3-socs{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:4px 0 8px}
.nw3-socs a{display:flex;flex-direction:column;justify-content:center;min-height:52px;min-width:128px;padding:6px 16px;border-radius:16px;border:1.5px solid #2b6a1a;background:#060a06;color:#fff;text-decoration:none}
.nw3-socs a b{font:16px var(--ui);letter-spacing:1px}.nw3-socs a small{color:#8fbf80;font-size:12px}
.lt-sec,.pde-sec{margin:28px 0 0}
.lt-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font:400 30px/1 var(--ui);letter-spacing:1px;margin:0 0 12px}
.lt-h a{font:15px var(--ui);color:#7cff3a;text-decoration:none}
.lt-ig{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}
.lt-ig a{display:block;color:#fff;text-decoration:none;background:#070a07;border:1px solid #173d10;border-radius:16px;overflow:hidden}
.lt-im{position:relative;display:block;background:#000;aspect-ratio:1/1;overflow:hidden}
.lt-im img{width:100%;height:100%;object-fit:contain}
.lt-ty{display:block;font:12px var(--ui);letter-spacing:1px;color:#7cff3a;padding:8px 10px 0}
.lt-c{display:block;font-size:13px;color:#d6e6d0;padding:2px 10px 10px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.lt-yt{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.lt-yt li{background:#070a07;border:1px solid #173d10;border-radius:16px;overflow:hidden;display:flex;flex-direction:column}
.lt-v{display:block;width:100%;text-align:left;background:none;border:0;color:#fff;padding:0;cursor:pointer}
.lt-v .lt-im{aspect-ratio:16/9}.lt-v .lt-im img{object-fit:cover}
.lt-v i{position:absolute;inset:auto 10px 10px auto;width:46px;height:46px;border-radius:50%;background:rgba(0,0,0,.75);color:#39ff14;display:flex;align-items:center;justify-content:center}
.lt-v i svg{width:20px;height:20px}
.lt-v b{display:block;font:400 17px/1.15 var(--ui);letter-spacing:.5px;padding:10px 12px 0}
.lt-v small{display:block;color:#8fbf80;font-size:12px;padding:2px 12px 0}
.lt-yl{margin:8px 12px 12px;align-self:flex-start;display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid #39ff14;color:#e6ffdc;text-decoration:none;font:14px var(--ui);letter-spacing:1px}
.pde-h .nw3-t{font-size:clamp(70px,22vw,170px);letter-spacing:6px;color:#fff;text-shadow:0 0 22px rgba(15,163,163,.6)}
.pde-h .nw3-t span{display:inline;color:#0fd3c8}
.pde-facts{margin:0;padding:0 0 0 18px;color:#dfeee0;font-size:16px;line-height:1.5}.pde-facts li{margin:0 0 8px}.pde-facts a{color:#7cff3a}
.pde-door{max-width:420px;margin:30px auto 0}

/* search */
.nw3-sbtn{display:inline-flex;align-items:center;gap:6px;min-height:44px;min-width:44px;padding:0 12px;border-radius:12px;border:1px solid rgba(124,255,58,.55);background:#050605;color:#d8ffc8;font:15px var(--ui);letter-spacing:1px;cursor:pointer;flex:none}
.nw3-sbtn svg{width:20px;height:20px}
@media (max-width:760px){.nw3-sbtn{padding:0;justify-content:center;width:44px}.nw3-sbtn span{display:none}}
.nws{position:fixed;inset:0;z-index:9998;background:rgba(0,0,0,.86);display:flex;justify-content:center;align-items:flex-start;padding:max(10px,env(safe-area-inset-top)) 10px 10px}
.nws-in{width:min(100%,720px);max-height:calc(100dvh - 20px);display:flex;flex-direction:column;background:#060906;border:1.5px solid #2b6a1a;border-radius:20px;overflow:hidden;box-shadow:0 30px 80px -20px rgba(57,255,20,.35)}
.nws-top{display:flex;align-items:center;gap:8px;padding:10px 10px 10px 14px;border-bottom:1px solid #173d10;color:#39ff14}
.nws-top svg{width:22px;height:22px;flex:none}
.nws-top input{flex:1;min-width:0;min-height:48px;background:transparent;border:0;color:#fff;font:18px system-ui;outline:none}
.nws-x{width:44px;height:44px;border-radius:50%;border:1px solid #2b6a1a;background:#000;color:#fff;font-size:18px;cursor:pointer;flex:none}
.nws-chips{display:flex;gap:6px;overflow-x:auto;padding:10px 12px;scrollbar-width:none}
.nws-chips button{flex:none;min-height:36px;padding:0 12px;border-radius:999px;border:1px solid #2b6a1a;background:#000;color:#cfeec4;font:14px var(--ui);letter-spacing:1px;cursor:pointer}
.nws-r{list-style:none;margin:0;padding:4px 6px 10px;overflow-y:auto}
.nws-r li{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;padding:10px;border-radius:12px;cursor:pointer;color:#fff}
.nws-r li[aria-selected=true],.nws-r li:hover{background:#0f1f0b}
.nws-t{grid-row:1/3;align-self:center;font:11px var(--ui);letter-spacing:1px;color:#031003;background:#39ff14;border-radius:999px;padding:4px 8px;min-width:64px;text-align:center}
.nws-r b{font-weight:700;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nws-r small{color:#93a88e;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nws-r li.nws-e{display:block;color:#93a88e;cursor:default}

/* home: emblem row, join block, rooms */
.nw3-emb{display:flex;gap:10px;overflow-x:auto;padding:6px 14px 14px;scroll-snap-type:x proximity;scrollbar-width:none;max-width:1180px;margin:0 auto;justify-content:flex-start}
.nw3-emb::-webkit-scrollbar{display:none}
@media (min-width:1100px){.nw3-emb{justify-content:center;flex-wrap:wrap}}
.nw3-emb a{flex:none;width:76px;display:flex;flex-direction:column;align-items:center;gap:5px;text-decoration:none;color:#d8ffc8;scroll-snap-align:start}
.nw3-emb img,.nw3-emb canvas{width:64px;height:64px;border-radius:16px;object-fit:cover;border:2px solid #1f4a14;background:#050805;box-shadow:0 0 12px rgba(57,255,20,.18);transition:transform .2s,border-color .2s}
.nw3-emb .emb-ea img{object-fit:contain;padding:3px}
.nw3-emb a:hover img,.nw3-emb a:focus-visible img{transform:translateY(-3px);border-color:#39ff14}
.nw3-emb small{font:10.5px/1.1 var(--ui);letter-spacing:.6px;text-align:center;max-width:76px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.nw3-jblk{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:22px 0;padding:18px;border-radius:22px;border:1.5px solid #2b6a1a;background:radial-gradient(120% 140% at 0% 0%,#15330c,#050805 60%)}
.nw3-jblk h2{font:400 clamp(28px,7vw,44px)/1 var(--ui);margin:2px 0 4px;letter-spacing:1px}.nw3-jblk h2 span{color:#39ff14}
.nw3-jblk p{margin:0;color:#d6e9d0}
.nw3-jblk .nw3-go{width:auto;min-width:200px;padding:0 26px;margin:0}
@media (max-width:520px){.nw3-jblk .nw3-go{width:100%}}
.nw3-rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:22px 0}
@media (max-width:760px){.nw3-rooms{grid-template-columns:1fr 1fr}}
.nw3-rooms .rm{display:flex;flex-direction:column;justify-content:flex-end;min-height:110px;padding:14px;border-radius:20px;text-decoration:none;color:#fff;border:1.5px solid #234d16;background:#060906;position:relative;overflow:hidden}
.nw3-rooms .rm b{font:400 26px/1 var(--ui);letter-spacing:1px;position:relative}.nw3-rooms .rm small{color:#cfe0ca;position:relative}
.rm-tv{background:linear-gradient(160deg,#1a0a02,#050605 70%)!important;border-color:#7a3a0a!important}
.rm-tv::before{content:"";position:absolute;inset:10px 10px auto auto;width:54px;height:40px;border:3px solid #ff8a2a;border-radius:8px;opacity:.7}
.rm-lt{background:linear-gradient(160deg,#0d2a07,#050605 70%)!important}
.rm-pde{background:linear-gradient(160deg,#033a3c,#050605 70%)!important;border-color:#0f7a74!important}
.rm-ft{background:linear-gradient(160deg,#2a0606,#050605 70%)!important;border-color:#6a1212!important}

/* Halloween mode (auto-off Nov 1 2026): orange glow + fog + bats, home only, behind content, no faces touched */
.hal-fx{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}
html:not(.nw-hal) .hal-fx{display:none}
.hal-fx .fog{position:absolute;left:-30%;width:160%;height:38vh;bottom:-6vh;background:radial-gradient(closest-side,rgba(200,210,200,.10),transparent);filter:blur(8px);animation:halfog 26s linear infinite}
.hal-fx .f2{bottom:auto;top:30vh;opacity:.6;animation-duration:38s;animation-direction:reverse}
@keyframes halfog{from{transform:translateX(-12%)}to{transform:translateX(12%)}}
.hal-fx .bat{position:absolute;top:12vh;left:-60px;width:34px;height:14px;opacity:.55;background:radial-gradient(circle at 50% 60%,#000 35%,transparent 36%),conic-gradient(from 200deg at 50% 100%,transparent 0 10%,#000 10% 40%,transparent 40% 60%,#000 60% 90%,transparent 90%);animation:halbat 18s linear infinite}
.hal-fx .bat:nth-child(4){top:22vh;animation-delay:-6s;transform:scale(.7)}.hal-fx .bat:nth-child(5){top:8vh;animation-delay:-11s}.hal-fx .bat:nth-child(6){top:30vh;animation-delay:-3s}.hal-fx .bat:nth-child(7){top:16vh;animation-delay:-14s}.hal-fx .bat:nth-child(8){top:26vh;animation-delay:-9s}
@keyframes halbat{0%{transform:translateX(0) translateY(0)}25%{transform:translateX(28vw) translateY(-3vh)}50%{transform:translateX(55vw) translateY(2vh)}75%{transform:translateX(82vw) translateY(-2vh)}100%{transform:translateX(115vw) translateY(0)}}
html.nw-hal header.hero .logo{filter:drop-shadow(0 0 22px rgba(255,122,26,.45))}
html.nw-hal .ribbon{box-shadow:0 0 18px rgba(255,122,26,.35)}
html.nw-hal #app,html.nw-hal footer{position:relative;z-index:1}
@media (prefers-reduced-motion:reduce){.hal-fx .bat,.hal-fx .fog,.nw3-burst{animation:none}.hal-fx .bat{display:none}}

/* CONTRAST (Ki 11:46 PM "Blue cause can't see white"): no white/neon text on light surfaces; every era checked by script at 393 (ratio >= 4.5 body, >= 3 big headings) */
.world.era-slimerre .w-sec:not(.bp-pack) > h3.dfont,.world.era-slimerre .wrap > h3.dfont,.world.era-slimerre .play-row .wgame b,.world.era-slimerre .wgame b.dfont{color:#1238b8!important;-webkit-text-fill-color:#1238b8!important;text-shadow:0 1px 0 #fff,0 0 10px rgba(255,255,255,.85)!important}
.world.era-slimerre .wgame small{color:#0a2463!important}
.world.era-slimerre .bp-h,.world.era-slimerre h4{color:#0a2463!important;text-shadow:0 0 8px rgba(255,255,255,.8)}

.world.era-paradise .w-hero .w-quote,.world.era-paradise .w-hero .w-quote p,.world.era-paradise .w-hero .w-quote cite,.world.era-paradise .w-hero .w-quote a,.world.era-paradise .w-sec > .vhint{color:#032a2b!important;text-shadow:none!important}
.world.era-paradise .play-row b.dfont{color:#fff!important}
.world.era-paradise button.ktrk{color:#032a2b!important;background:rgba(255,255,255,.55)!important;border-color:#063b3d!important}
.world.era-paradise .chip{color:#fff!important}
.world.era-nudy-land .bp-h{color:#f0b46a!important}
.world.era-just-doin-me .bp-h{color:#fff!important}
