
/* Immersive World 20-feature expansion */
:root{--iw-gold:#d7b46a;--iw-cream:#fff7e8;--iw-panel:rgba(20,13,22,.92);--iw-blue:#8aa6c4;--iw-rose:#b96f68}
body.iw-morning{--iw-sky:linear-gradient(135deg,#2b1b24,#5b3e3f 48%,#d7b46a22)}
body.iw-afternoon{--iw-sky:linear-gradient(135deg,#101828,#24324b 60%,#d7b46a18)}
body.iw-evening{--iw-sky:linear-gradient(135deg,#130c18,#321826 55%,#d7b46a20)}
body.iw-night{--iw-sky:linear-gradient(135deg,#070b16,#12182b 70%,#4b3b7022)}
body{background:var(--iw-sky,inherit)}
.iw-dock{position:fixed;left:14px;bottom:14px;z-index:99998;display:grid;gap:8px;max-width:340px;font-family:Georgia,serif;color:var(--iw-cream)}
.iw-toggle{border:1px solid rgba(215,180,106,.45);background:rgba(13,10,15,.92);color:var(--iw-gold);border-radius:999px;padding:10px 14px;cursor:pointer;box-shadow:0 14px 40px rgba(0,0,0,.36)}
.iw-panel{display:none;border:1px solid rgba(215,180,106,.35);border-radius:22px;background:var(--iw-panel);backdrop-filter:blur(14px);padding:16px;box-shadow:0 24px 80px rgba(0,0,0,.45)}
.iw-panel.open{display:block}.iw-panel h3{margin:0 0 8px;color:var(--iw-gold)}.iw-panel p,.iw-panel li{line-height:1.48;color:rgba(255,247,232,.82);font-size:13px}.iw-grid-mini{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iw-pill{border:1px solid rgba(215,180,106,.25);border-radius:14px;padding:8px;background:rgba(255,247,232,.055);font-size:12px}.iw-link{display:inline-block;margin:4px 4px 0 0;border:1px solid rgba(215,180,106,.35);border-radius:999px;padding:7px 10px;color:var(--iw-gold);text-decoration:none;background:rgba(215,180,106,.08)}
.iw-page{max-width:1180px;margin:44px auto;padding:22px;color:var(--iw-cream);font-family:Georgia,serif}.iw-hero{border:1px solid rgba(215,180,106,.36);border-radius:34px;padding:42px;background:radial-gradient(circle at 25% 0%,rgba(215,180,106,.19),transparent 34%),linear-gradient(135deg,rgba(45,23,31,.96),rgba(8,15,29,.96));box-shadow:0 28px 90px rgba(0,0,0,.42)}.iw-hero h1{margin:0 0 12px;color:var(--iw-gold);font-size:clamp(2.1rem,4vw,4.6rem)}.iw-hero p{font-size:1.12rem;line-height:1.7;color:rgba(255,247,232,.84)}.iw-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:18px;margin-top:24px}.iw-card{border:1px solid rgba(215,180,106,.28);border-radius:24px;padding:22px;background:rgba(255,247,232,.06);box-shadow:0 18px 55px rgba(0,0,0,.22);transition:.22s}.iw-card:hover{transform:translateY(-4px);border-color:rgba(215,180,106,.55)}.iw-card h2,.iw-card h3{margin:0 0 9px;color:var(--iw-gold)}.iw-card p,.iw-card li{line-height:1.6;color:rgba(255,247,232,.84)}.iw-btn{display:inline-block;margin-top:10px;border:1px solid rgba(215,180,106,.42);border-radius:999px;padding:9px 14px;color:var(--iw-gold);text-decoration:none;background:rgba(215,180,106,.11);cursor:pointer}.iw-window{min-height:180px;border-radius:24px;border:1px solid rgba(215,180,106,.3);background:linear-gradient(180deg,rgba(138,166,196,.34),rgba(8,15,29,.78)),radial-gradient(circle at 70% 20%,rgba(215,180,106,.45),transparent 15%);position:relative;overflow:hidden}.iw-window:after{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 45%,rgba(215,180,106,.28) 46% 48%,transparent 49% 100%)}.iw-map-spots{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.iw-spot{padding:18px;border:1px solid rgba(215,180,106,.25);border-radius:20px;background:rgba(255,247,232,.05);cursor:pointer}.iw-progress{height:10px;border-radius:99px;background:rgba(255,247,232,.1);overflow:hidden}.iw-progress b{display:block;height:100%;background:linear-gradient(90deg,var(--iw-gold),var(--iw-blue),var(--iw-rose));width:50%}.iw-note{border-left:3px solid var(--iw-gold);padding-left:14px;font-style:italic}.iw-toast{position:fixed;right:18px;top:90px;z-index:99999;background:#171018;color:var(--iw-cream);border:1px solid rgba(215,180,106,.42);border-radius:18px;padding:14px;max-width:320px;box-shadow:0 20px 60px rgba(0,0,0,.4)}
@media(max-width:700px){.iw-dock{left:8px;right:8px;max-width:none}.iw-grid-mini{grid-template-columns:1fr}.iw-page{padding:14px}.iw-hero{padding:26px}}
