
:root{
  --bg:#050b15;
  --bg-soft:#0a1322;
  --panel:#0e1727;
  --panel-2:#121d2f;
  --text:#f5f7ff;
  --muted:#b2bfd8;
  --line:rgba(161,188,255,.14);
  --glow:#25c8ff;
  --gold:#ffb545;
  --green:#5aca2b;
  --shadow:0 24px 60px rgba(0,0,0,.42);
  --radius:26px;
}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:radial-gradient(circle at top left,rgba(22,50,106,.28),transparent 28%),radial-gradient(circle at top right,rgba(255,128,67,.15),transparent 24%),linear-gradient(180deg,#07111f,#050a13 56%,#04070d);color:var(--text);overflow-x:hidden}
a{text-decoration:none;color:inherit}
.bg,.sparkles{position:fixed;inset:0;pointer-events:none}
.bg{z-index:-3;background:
  radial-gradient(900px 540px at 14% 8%,rgba(65,132,255,.16),transparent 58%),
  radial-gradient(780px 460px at 88% 14%,rgba(255,153,79,.16),transparent 52%),
  radial-gradient(960px 480px at 50% 100%,rgba(37,200,255,.12),transparent 62%)}
.bg:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.18) 48%,rgba(0,0,0,.46))}
.sparkles{z-index:-2;opacity:.45;background:radial-gradient(2px 2px at 8% 16%,rgba(255,255,255,.55),transparent 55%),radial-gradient(2px 2px at 22% 12%,rgba(255,255,255,.32),transparent 55%),radial-gradient(1.5px 1.5px at 40% 18%,rgba(255,255,255,.45),transparent 55%),radial-gradient(1.5px 1.5px at 68% 14%,rgba(255,255,255,.38),transparent 55%),radial-gradient(2px 2px at 84% 9%,rgba(255,255,255,.44),transparent 55%),radial-gradient(1.5px 1.5px at 92% 20%,rgba(255,255,255,.3),transparent 55%)}
.shell{display:flex;min-height:100vh}
.sidebar{width:224px;flex:0 0 224px;background:linear-gradient(180deg,rgba(8,12,23,.96),rgba(8,12,23,.88));border-right:1px solid rgba(129,166,255,.14);backdrop-filter:blur(12px);position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:30;box-shadow:inset -1px 0 0 rgba(255,255,255,.02)}
.brand{padding:18px 16px 16px;border-bottom:1px solid rgba(255,255,255,.05)}
.brand-badge{display:grid;place-items:center;width:100%;padding:8px 0 12px}
.brand-badge img{width:136px;max-width:100%;filter:drop-shadow(0 14px 30px rgba(0,0,0,.44))}
.brand .t{font-weight:900;letter-spacing:.04em}
.brand .s{margin-top:4px;color:#8fa0be;font-size:.88rem}
.nav{padding:14px 12px;display:flex;flex-direction:column;gap:8px}
.nav a{display:flex;align-items:center;gap:13px;min-height:52px;padding:0 16px;border-radius:18px;color:#c6d3ec;border:1px solid transparent;font-size:1.05rem;font-weight:700;transition:.18s ease}
.nav a:hover{background:rgba(255,255,255,.05);color:#fff;transform:translateX(2px)}
.nav a.active{background:linear-gradient(180deg,rgba(41,77,138,.42),rgba(21,39,73,.38));border-color:rgba(120,180,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 24px rgba(0,0,0,.2);color:#fff}
.nav-ico{width:18px;height:18px;display:inline-grid;place-items:center;color:#9ddcff;font-size:1.2rem;flex:0 0 18px}
.sidebar-foot{margin-top:auto;padding:14px 16px 20px;color:#8190ac;font-size:.84rem;line-height:1.5}
.main{flex:1;min-width:0;padding-bottom:108px}
.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 26px 12px;position:sticky;top:0;z-index:20;background:linear-gradient(180deg,rgba(5,10,18,.88),rgba(5,10,18,.55),transparent);backdrop-filter:blur(4px)}
.page-title{font-size:1rem;letter-spacing:.12em;text-transform:uppercase;color:#a8b6d4;font-weight:800}
.userchip{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);font-weight:700;color:#d8e0f3}
.userchip .role{font-size:.8rem;padding:4px 9px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:#9cadca}
.content{padding:0 24px 24px;max-width:1280px}
.hero-banner,.mini-hero{position:relative;overflow:hidden;border:1px solid rgba(133,176,255,.16);border-radius:34px;background:#111a29;box-shadow:var(--shadow)}
.hero-banner{min-height:640px}
.hero-banner::before,.mini-hero::before{content:"";position:absolute;inset:0;background:url("../assets/img/main-website-background.png") center/cover no-repeat;transform:scale(1.02)}
.hero-banner::after,.mini-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,10,20,.95) 0%,rgba(5,10,19,.74) 35%,rgba(7,11,18,.28) 100%),linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.28) 68%,rgba(0,0,0,.48));}
.hero-content,.mini-hero > *{position:relative;z-index:1}
.hero-content{padding:88px 58px 56px;max-width:760px}
.kicker{font-size:1rem;letter-spacing:.16em;font-weight:900;text-transform:uppercase;color:#f2f4fb;margin-bottom:10px}
.hero-title{font-size:clamp(3.6rem,7vw,6.2rem);line-height:.93;margin:0;text-transform:uppercase;color:#18ccff;text-shadow:0 8px 30px rgba(0,197,255,.12),0 18px 40px rgba(0,0,0,.36);font-weight:950;letter-spacing:.01em}
.hero-sub{margin:10px 0 18px;font-size:clamp(1.45rem,2.4vw,2.3rem);font-weight:900;color:#ffbc58;letter-spacing:.13em;text-transform:uppercase}
.hero-copy{font-size:1.05rem;color:#eef4ff;max-width:620px;margin:0 0 26px;line-height:1.6}
.row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 28px;border-radius:999px;border:1px solid rgba(255,255,255,.14);font-weight:900;letter-spacing:.03em;color:#fff;background:rgba(255,255,255,.05);box-shadow:0 16px 32px rgba(0,0,0,.22);transition:.18s ease;cursor:pointer}
.btn:hover{transform:translateY(-1px);filter:brightness(1.06)}
.btn.primary{background:linear-gradient(180deg,#13caff,#0f83ff);border-color:rgba(130,223,255,.52);box-shadow:0 0 0 1px rgba(0,187,255,.22),0 0 26px rgba(25,194,255,.28),0 18px 34px rgba(0,0,0,.3)}
.btn.secondary{background:linear-gradient(180deg,rgba(14,23,40,.88),rgba(9,15,28,.88));border-color:rgba(112,183,255,.26)}
.btn.ghost{background:rgba(255,255,255,.04)}
.btn.tiny{min-height:44px;padding:0 18px;font-size:.92rem}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px;position:relative;z-index:1;padding:0 22px 0}
.feature-card{position:relative;min-height:210px;border-radius:22px;border:1px solid rgba(118,165,255,.18);overflow:hidden;background:#111a29;box-shadow:0 16px 35px rgba(0,0,0,.24)}
.feature-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,12,22,.12),rgba(4,10,18,.86)),url("../assets/img/main-website-background.png") center/cover no-repeat;transform:scale(1.08)}
.feature-card:nth-child(2)::before{background-position:center 58%}
.feature-card:nth-child(3)::before{background-position:right center}
.feature-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,10,16,.2),rgba(4,10,16,.62) 62%,rgba(4,10,16,.85));}
.feature-inner{position:relative;z-index:1;padding:18px 22px;height:100%;display:flex;flex-direction:column;justify-content:space-between}
.feature-icon{font-size:1.6rem;display:inline-flex;align-items:center;gap:10px;color:#8fe4ff;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.feature-card:nth-child(2) .feature-icon{color:#ffba4f}
.feature-card:nth-child(3) .feature-icon{color:#7fe7ff}
.feature-title{font-size:1.75rem;font-weight:950;margin:0 0 6px}
.feature-copy{margin:0;color:#dbe4f8;font-size:1rem;line-height:1.5}
.why-strip{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;margin:26px 18px 0;position:relative;z-index:1}
.why-strip h2{margin:0;font-size:clamp(2rem,4vw,3.2rem);text-transform:uppercase;letter-spacing:.04em;text-align:center}
.line-glow{height:2px;background:linear-gradient(90deg,transparent,rgba(18,197,255,.9),transparent)}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;position:relative;z-index:1;margin:20px 18px 26px;padding:22px 8px;border-top:1px solid rgba(76,147,255,.2)}
.stat{display:flex;align-items:center;justify-content:center;gap:14px;padding:6px 10px;color:#eef4ff;font-size:1.05rem;border-right:1px solid rgba(255,255,255,.09)}
.stat:last-child{border-right:none}
.stat i{font-style:normal;font-size:1.45rem;color:#8be5ff}
.grid2{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-top:18px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{position:relative;border-radius:26px;border:1px solid rgba(124,168,255,.15);background:linear-gradient(180deg,rgba(15,23,38,.92),rgba(10,16,28,.92));box-shadow:var(--shadow);padding:24px;overflow:hidden}
.card h2,.card h3{margin:0 0 12px}
.card p{margin:0;color:#c9d4e7;line-height:1.65}
.badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.badge{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:#d6def0;font-weight:700}.badge.hot{color:#ffd38b;border-color:rgba(255,181,69,.24)}.badge.ok{color:#8fffb1;border-color:rgba(95,224,135,.22)}
.mini-hero{min-height:250px;margin-bottom:18px}.mini-hero > div{position:relative;z-index:1;padding:42px 38px;max-width:620px}.mini-hero h1{margin:0 0 10px;font-size:3rem}.mini-hero p{margin:0;color:#e4ebfb;font-size:1.03rem;line-height:1.6}
.list{display:flex;flex-direction:column;gap:14px}.item{padding:18px;border-radius:20px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08)}.item-title{font-weight:900;font-size:1.05rem}.item-meta{font-size:.9rem;color:#91a0bb;margin-top:4px}.item-body{margin-top:10px;color:#d8e2f6;line-height:1.6;white-space:pre-wrap}
.chat{border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);padding:14px}.chat-log{height:320px;overflow:auto;border-radius:18px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.06);padding:12px}.chat-line{display:grid;grid-template-columns:94px 110px 1fr;gap:8px;padding:9px 8px;border-radius:12px}.chat-line:hover{background:rgba(255,255,255,.04)}.chat-time{color:#7f8ba4}.chat-name{font-weight:900;color:#d5e0f6}.chat-msg{color:#f4f7ff}
label{display:block;margin:14px 0 6px;color:#c9d4ea;font-weight:800}input,textarea,select{width:100%;min-height:52px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);color:#fff;padding:12px 14px;font:inherit}textarea{min-height:130px;resize:vertical}
.hr{height:1px;background:rgba(255,255,255,.08);margin:18px 0}.muted{color:#8fa0be}.lead{font-size:1.06rem;color:#dfebff}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.56);backdrop-filter:blur(3px);display:none;z-index:25}.overlay.show{display:block}
.menu-btn{display:none;align-items:center;justify-content:center;width:50px;height:50px;border-radius:14px;border:1px solid rgba(114,177,255,.18);background:linear-gradient(180deg,rgba(12,18,32,.95),rgba(9,13,24,.94));color:#8fe5ff;font-size:1.5rem;box-shadow:0 12px 25px rgba(0,0,0,.25);cursor:pointer}
.toastwrap{position:fixed;right:16px;bottom:120px;z-index:90;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{min-width:230px;max-width:360px;padding:12px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(17,25,40,.95),rgba(11,17,29,.95));box-shadow:var(--shadow)}
.ip-glow{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:999px;background:rgba(255,255,255,.04);border:1px solid rgba(85,157,255,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 0 1px rgba(48,129,255,.08),0 0 26px rgba(24,178,255,.12);font-weight:900}
.site-footer{position:sticky;bottom:0;z-index:40;padding:14px 18px;background:linear-gradient(180deg,rgba(6,10,18,.92),rgba(6,10,18,.98));border-top:1px solid rgba(94,152,255,.18);box-shadow:0 -16px 40px rgba(0,0,0,.28)}
.site-footer-inner{max-width:1280px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.site-footer-left,.site-footer-right,.footer-friendline{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.footer-label{font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#ffb545}.footer-sep{opacity:.4}.xbox-btn{background:linear-gradient(180deg,#56b520,#3a9015);border-color:rgba(181,255,151,.3)}
.panel-list{display:grid;gap:14px}.check-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.check-list li{display:flex;gap:10px;color:#dce6f8;line-height:1.6}.check-list li::before{content:"✦";color:#61dcff}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-shot{aspect-ratio:4/3;border-radius:22px;border:1px solid rgba(118,165,255,.15);background:linear-gradient(180deg,rgba(5,10,18,.2),rgba(5,10,18,.62)),url("../assets/img/main-website-background.png") center/cover no-repeat;box-shadow:var(--shadow)}.gallery-shot:nth-child(2){background-position:center 62%}.gallery-shot:nth-child(3){background-position:right center}
@media (max-width:1120px){.feature-grid,.grid3,.gallery-grid{grid-template-columns:1fr 1fr}.stat-row{grid-template-columns:1fr 1fr}}
@media (max-width:920px){.menu-btn{display:inline-flex}.sidebar{position:fixed;left:0;top:0;transform:translateX(-110%);transition:transform .2s ease;max-width:85vw;height:100vh}.sidebar.open{transform:none}.content{padding:0 14px 18px}.topbar{padding:14px}.hero-banner{min-height:560px}.hero-content{padding:74px 24px 36px}.hero-title{font-size:clamp(2.8rem,10vw,4rem)}.hero-sub{font-size:1.2rem}.feature-grid,.grid2,.grid3,.gallery-grid{grid-template-columns:1fr}.why-strip{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr 1fr}.stat{justify-content:flex-start;border-right:none;padding-left:18px}.mini-hero>div{padding:34px 24px}.mini-hero h1{font-size:2.2rem}.site-footer{padding:12px 14px}.main{padding-bottom:160px}}
@media (max-width:640px){.site-footer-inner,.site-footer-left,.site-footer-right,.footer-friendline{align-items:flex-start}.stat-row{grid-template-columns:1fr}.userchip{display:none}.hero-banner{min-height:500px}.btn{width:100%}.row>.btn{flex:1 1 100%}}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto;animation:none!important;transition:none!important}}


.hero-banner::before{filter:saturate(1.08) contrast(1.03)}
.hero-banner::after,.mini-hero::after{background:linear-gradient(90deg,rgba(6,12,18,.97) 0%,rgba(8,14,22,.82) 34%,rgba(10,16,24,.44) 100%),linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.34) 68%,rgba(0,0,0,.56));}
.card::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--green),#7ddc4d,#49d9ff,#ffb545);opacity:.92}
.hero-meta{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 22px}.hero-meta .badge{background:rgba(7,15,23,.72);backdrop-filter:blur(4px)}
.island-callout{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-top:18px}
.info-stack{display:grid;gap:18px}
.info-card{position:relative;border-radius:24px;padding:22px;border:1px solid rgba(133,176,255,.16);background:linear-gradient(180deg,rgba(11,19,31,.95),rgba(9,15,25,.94));box-shadow:var(--shadow);overflow:hidden}
.info-card h3{margin:0 0 10px;font-size:1.2rem}.info-card p{margin:0;color:#d4def0;line-height:1.6}.info-card ul{margin:0;padding-left:18px;color:#d4def0;line-height:1.75}
.minecraft-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.minecraft-tile{position:relative;padding:22px;border-radius:24px;border:1px solid rgba(120,175,255,.16);background:linear-gradient(180deg,rgba(15,24,36,.95),rgba(10,17,27,.95));box-shadow:var(--shadow);overflow:hidden}
.minecraft-tile::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(92,202,43,.12),transparent 40%),linear-gradient(225deg,rgba(37,200,255,.1),transparent 40%);pointer-events:none}
.minecraft-tile h3{position:relative;margin:0 0 8px;font-size:1.2rem}.minecraft-tile p,.minecraft-tile li{position:relative;color:#d4def0;line-height:1.6}.minecraft-tile ul{position:relative;margin:12px 0 0;padding-left:18px}
.server-route{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.route-step{padding:16px 14px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}.route-step b{display:block;margin-bottom:8px;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:#ffbc58}.route-step span{color:#e7eefc;line-height:1.5}
.gallery-shot{position:relative;overflow:hidden}.gallery-shot::after{content:attr(data-label);position:absolute;left:16px;right:16px;bottom:14px;padding:12px 14px;border-radius:16px;background:linear-gradient(180deg,rgba(7,11,18,.18),rgba(7,11,18,.82));border:1px solid rgba(255,255,255,.06);font-weight:800;color:#f5f8ff;backdrop-filter:blur(3px)}
.forum-tip{margin-top:16px;padding:16px 18px;border-radius:18px;background:rgba(37,200,255,.08);border:1px solid rgba(75,181,255,.18);color:#dce9fb;line-height:1.6}
@media (max-width:1120px){.minecraft-grid,.server-route,.island-callout{grid-template-columns:1fr 1fr}}
@media (max-width:920px){.minecraft-grid,.server-route,.island-callout{grid-template-columns:1fr}}



/* ---- cross-browser structural hardening ---- */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  overflow-x:hidden;
}
body{
  min-width:320px;
  overflow-x:clip;
}
img,svg,video,canvas{
  max-width:100%;
  height:auto;
}
button,input,select,textarea{
  max-width:100%;
}
a,button,.btn,.badge,.ip-glow{
  overflow-wrap:anywhere;
}
.shell{
  min-height:100vh;
  min-height:100dvh;
  align-items:stretch;
}
.sidebar{
  min-height:100vh;
  min-height:100dvh;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
  -webkit-backdrop-filter:blur(12px);
}
.topbar{
  -webkit-backdrop-filter:blur(4px);
}
.main{
  display:flex;
  flex-direction:column;
  min-width:0;
  padding-bottom:0;
}
.content{
  width:min(100%, 1280px);
  margin:0 auto;
}
.hero-banner,
.mini-hero,
.card,
.feature-card,
.info-card,
.minecraft-tile,
.route-step,
.item,
.chat,
.gallery-shot{
  min-width:0;
}
.hero-content,
.mini-hero > div{
  width:min(100%, 760px);
}
.feature-grid,
.grid2,
.grid3,
.gallery-grid,
.island-callout,
.minecraft-grid,
.server-route,
.stat-row{
  min-width:0;
}
.chat-line{
  grid-template-columns:minmax(72px,94px) minmax(84px,110px) minmax(0,1fr);
}
.item-body,
.chat-msg,
.card p,
.feature-copy,
.route-step span,
.info-card p,
.minecraft-tile p,
.minecraft-tile li{
  overflow-wrap:anywhere;
}
.site-footer{
  position:sticky;
  bottom:0;
  left:auto;
  right:auto;
  margin-top:auto;
}
.site-footer-inner{
  width:min(100%, 1280px);
  padding-inline:6px;
}
.footer-friendline{
  row-gap:10px;
}
@supports not (overflow: clip){
  body{overflow-x:hidden;}
}
@media (max-width:920px){
  .shell{
    display:block;
    min-height:auto;
  }
  .sidebar{
    width:min(85vw, 320px);
    flex:none;
    border-right:1px solid rgba(129,166,255,.14);
  }
  .main{
    width:100%;
  }
  .topbar{
    padding-top:max(14px, env(safe-area-inset-top));
  }
  .hero-banner{
    min-height:auto;
  }
}
@media (max-width:640px){
  .content{
    padding:0 12px 16px;
  }
  .hero-content{
    padding:56px 18px 28px;
  }
  .feature-grid{
    padding:0 12px 0;
  }
  .site-footer{
    position:static;
    margin-top:18px;
  }
  .site-footer-inner{
    padding-inline:0;
  }
  .site-footer-left,
  .site-footer-right,
  .footer-friendline{
    width:100%;
  }
  .footer-friendline .btn,
  .site-footer-left .btn{
    width:100%;
  }
  .ip-glow{
    width:100%;
    justify-content:center;
    text-align:center;
  }
}




/* Discord integration */
.discord-page-grid{align-items:start}
.discord-embed-card{min-width:0}
.discord-embed-shell{
  margin-top:18px;
  border-radius:22px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(0,0,0,.18);
  min-height:540px;
}
.discord-embed-frame{
  display:block;
  width:100%;
  min-height:540px;
  height:540px;
  border:0;
  background:#2b2d31;
}
code{
  padding:.18rem .45rem;
  border-radius:10px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
}
@media (max-width:920px){
  .discord-embed-shell,
  .discord-embed-frame{
    min-height:500px;
    height:500px;
  }
}
@media (max-width:640px){
  .discord-embed-shell,
  .discord-embed-frame{
    min-height:420px;
    height:420px;
  }
}


/* Firebase auth UI */
.auth-settings-grid{align-items:start}
.auth-summary{display:flex;align-items:center;gap:16px;margin:14px 0 4px}
.auth-avatar{
  width:58px;height:58px;border-radius:18px;display:grid;place-items:center;
  font-weight:900;font-size:1.15rem;color:#fff;
  background:linear-gradient(180deg,#13caff,#0f83ff);
  box-shadow:0 14px 34px rgba(0,0,0,.24);
}
button:disabled{
  opacity:.58;
  cursor:not-allowed;
  filter:grayscale(.1);
}


/* Profiles */
.profile-grid{align-items:start}
.profile-layout{display:grid;gap:18px;margin-top:18px}
.profile-main-card{padding:30px}
.profile-header-large{gap:22px}
.profile-header-large .profile-avatar{width:118px;height:118px;border-radius:32px;flex-basis:118px;font-size:2.15rem}
.profile-summary-copy{min-width:0}
.profile-top-badges{margin-top:12px}
.profile-editor-card{padding:30px}
.profile-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 18px;margin:6px 0 16px}
.profile-editor-grid label{margin-top:0}
.profile-editor-note{align-self:end;min-height:52px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);padding:12px 14px;color:#c9d4e7;line-height:1.45}
.section-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:4px}
.profile-visibility-card{padding:24px 30px}
.profile-visibility-card .check-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.profile-header{display:flex;align-items:center;gap:18px}
.profile-avatar{
  width:96px;height:96px;border-radius:28px;display:grid;place-items:center;
  font-size:1.8rem;font-weight:900;color:#fff;
  background:linear-gradient(180deg,#13caff,#0f83ff);
  box-shadow:0 16px 34px rgba(0,0,0,.26);
  overflow:hidden;flex:0 0 96px;
}
.profile-avatar-image{width:100%;height:100%;object-fit:cover;display:block}
.profile-name{font-size:1.5rem}
.item-meta a,.item-title a{color:#8fe5ff}
.item-meta a:hover,.item-title a:hover{text-decoration:underline}
@media (max-width:640px){
  .profile-header{align-items:flex-start}
  .profile-avatar{width:80px;height:80px;border-radius:22px;flex-basis:80px}
}

@media (max-width:760px){
  .profile-main-card,.profile-editor-card,.profile-visibility-card{padding:22px}
  .profile-editor-grid{grid-template-columns:1fr}
  .profile-visibility-card .check-list{grid-template-columns:1fr}
  .profile-header-large{align-items:flex-start}
  .profile-header-large .profile-avatar{width:86px;height:86px;border-radius:24px;flex-basis:86px;font-size:1.7rem}
}


/* User dropdown */
.user-menu-wrap{position:relative;display:flex;align-items:center}
.userchip-btn{cursor:pointer}
.userchip-btn::after{
  content:"▾";
  font-size:.82rem;
  opacity:.78;
  margin-left:2px;
}
.user-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  min-width:220px;
  padding:8px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,rgba(15,23,38,.98),rgba(10,16,28,.98));
  box-shadow:0 22px 44px rgba(0,0,0,.34);
  display:none;
  z-index:80;
}
.user-menu-wrap.open .user-dropdown{display:block}
.user-dropdown-item{
  width:100%;
  display:flex;
  align-items:center;
  min-height:46px;
  padding:0 14px;
  border-radius:14px;
  color:#e5ecfb;
  background:transparent;
  border:0;
  text-align:left;
  font:inherit;
  cursor:pointer;
}
.user-dropdown-item:hover{
  background:rgba(255,255,255,.06);
}
.user-dropdown-item + .user-dropdown-item{
  margin-top:4px;
}


/* Auth locked footer */
.auth-locked-footer{
  position:sticky;
  bottom:0;
  z-index:40;
  padding:14px 18px;
  background:linear-gradient(180deg,rgba(6,10,18,.92),rgba(6,10,18,.98));
  border-top:1px solid rgba(94,152,255,.18);
  box-shadow:0 -16px 40px rgba(0,0,0,.28);
}
.auth-locked-inner{
  max-width:1280px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
}
@media (max-width:640px){
  .auth-locked-inner{align-items:flex-start}
  .auth-locked-inner .btn{width:100%}
}


/* Discord auth gate */
#discordAuthedContent{display:none}


/* Login page */
.auth-login-grid{align-items:start}

/* Account avatar in top-right dropdown */
.userchip-btn{
  gap:10px;
  min-height:48px;
  padding:6px 12px 6px 8px;
}
.user-avatar{
  width:36px;
  height:36px;
  flex:0 0 36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(143,229,255,.34);
  background:linear-gradient(180deg,rgba(37,200,255,.22),rgba(90,202,43,.18));
  box-shadow:0 0 0 3px rgba(37,200,255,.08),0 10px 20px rgba(0,0,0,.22);
}
.user-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.user-avatar-fallback{
  color:#f7fbff;
  font-weight:950;
  font-size:.78rem;
  letter-spacing:.03em;
}
.userchip-text{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.userchip-name{
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dropdown-icon{
  width:22px;
  flex:0 0 22px;
  color:#8fe5ff;
  text-align:center;
}
@media (max-width:640px){
  .user-menu-wrap .userchip{
    display:flex;
  }
  .userchip-name{
    display:none;
  }
  .userchip-btn{
    padding:6px 10px 6px 6px;
  }
  .user-dropdown{
    min-width:230px;
    right:0;
  }
}


/* Events page refresh */
.events-page .mini-hero{margin-bottom:18px}
.events-hero::before{background:url("../assets/img/profile-community-1.png") center 44%/cover no-repeat}
.event-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.events-command-center{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:18px;margin-bottom:18px}
.event-feature-card,.event-notice-card,.event-board-card,.event-image-card,.event-tool-card{border:1px solid rgba(118,165,255,.16);box-shadow:var(--shadow)}
.event-feature-card{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,1fr);overflow:hidden;border-radius:30px;background:linear-gradient(180deg,rgba(14,22,35,.86),rgba(9,14,24,.92))}
.event-feature-media{position:relative;min-height:330px;overflow:hidden}
.event-feature-media img,.event-image-card img{width:100%;height:100%;object-fit:cover;display:block}
.event-feature-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,18,.04),rgba(7,11,18,.72))}
.event-feature-copy{padding:28px;align-self:center}
.event-feature-copy h2{margin:0 0 10px;font-size:clamp(1.7rem,2.4vw,2.55rem)}
.event-feature-copy p{color:#dce7f9;margin-bottom:18px}
.event-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.event-meta-grid span{padding:12px;border-radius:16px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);color:#d5deee}
.event-meta-grid b{display:block;color:#fff;margin-bottom:3px}
.event-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border-radius:999px;background:rgba(143,229,255,.15);border:1px solid rgba(143,229,255,.26);color:#e9fbff;font-weight:850;font-size:.78rem;letter-spacing:.02em}
.event-pill.live{position:absolute;z-index:1;left:18px;top:18px;background:rgba(90,202,43,.2);border-color:rgba(90,202,43,.38)}
.event-notice-card{border-radius:30px;padding:28px;background:linear-gradient(180deg,rgba(37,200,255,.12),rgba(9,14,24,.9));display:flex;flex-direction:column;justify-content:center}
.event-notice-icon{width:54px;height:54px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,rgba(37,200,255,.26),rgba(90,202,43,.16));border:1px solid rgba(255,255,255,.1);font-size:1.55rem;margin-bottom:14px}
.event-notice-card h2{margin:0 0 8px}
.event-notice-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}
.events-section{margin-top:18px}
.event-board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.event-board-card{position:relative;overflow:hidden;min-height:260px;padding:22px;border-radius:28px;background:#111a29}
.event-board-card::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,10,18,.2),rgba(5,10,18,.88)),url("../assets/img/profile-community-3.png") center/cover no-repeat;transform:scale(1.02)}
.event-board-card.hunger::before{background-image:linear-gradient(180deg,rgba(5,10,18,.18),rgba(5,10,18,.88)),url("../assets/img/profile-community-2.png")}
.event-board-card.blockhunt::before{background-image:linear-gradient(180deg,rgba(5,10,18,.18),rgba(5,10,18,.88)),url("../assets/img/profile-community-4.png")}
.event-board-card > *{position:relative;z-index:1}
.event-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:54px}
.event-date{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);font-weight:950;font-size:1.08rem}
.event-board-card h3{margin:0 0 8px;font-size:1.45rem}
.event-board-card p{color:#dbe5f7;margin:0 0 18px}
.event-card-foot{position:absolute;left:22px;right:22px;bottom:18px;padding-top:12px;border-top:1px solid rgba(255,255,255,.12);color:#aebed8;font-weight:750}
.event-gallery-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:18px}
.event-image-card{position:relative;overflow:hidden;min-height:330px;border-radius:30px;background:#111a29}
.event-image-card:not(.large){min-height:330px}
.event-image-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,18,.04),rgba(7,11,18,.76))}
.event-image-card > div{position:absolute;z-index:1;left:20px;right:20px;bottom:18px;padding:18px;border-radius:20px;background:linear-gradient(180deg,rgba(7,11,18,.14),rgba(7,11,18,.76));border:1px solid rgba(255,255,255,.07);backdrop-filter:blur(4px)}
.event-image-card h3{margin:10px 0 6px;font-size:1.35rem}
.event-image-card p{margin:0;color:#dbe6f8}
.events-tools-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.event-tool-card{padding:26px}
.event-template{margin-top:16px;padding:16px;border-radius:18px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07);line-height:1.65;color:#dce6f6}
.check-list.compact{grid-template-columns:1fr 1fr;gap:10px}
@media (max-width:1080px){
  .events-command-center,.event-feature-card,.event-gallery-row,.events-tools-grid{grid-template-columns:1fr}
  .event-board-grid{grid-template-columns:1fr 1fr}
  .event-feature-media{min-height:290px}
}
@media (max-width:720px){
  .event-board-grid,.check-list.compact,.event-meta-grid{grid-template-columns:1fr}
  .event-feature-card{grid-template-columns:1fr}
  .event-feature-copy,.event-notice-card,.event-tool-card{padding:22px}
  .event-card-top{margin-bottom:42px}
  .event-image-card,.event-image-card:not(.large){min-height:260px}
}

/* Discord page invite/widget polish */
.discord-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.discord-embed-shell{min-height:500px}
.discord-embed-frame{width:100%;height:500px;border:0;border-radius:20px;background:rgba(5,10,18,.7)}


/* Profile page compact layout */
body[data-page="profile"] .profile-layout{margin-top:0}
body[data-page="profile"] .profile-main-card::before{display:none}
body[data-page="profile"] #publicProfileView,
body[data-page="profile"] #profileMissing,
body[data-page="profile"] #profileViewLoading{margin-top:0}

/* Forum + Chat signed-in profile state */
.forum-layout{align-items:start}
.forum-compose-card{position:relative;overflow:hidden}
.forum-profile-panel{padding:2px 0 0}
.forum-signed-in-card{align-items:center;gap:16px;padding:16px;border-radius:22px;background:linear-gradient(180deg,rgba(37,200,255,.11),rgba(90,202,43,.07));border:1px solid rgba(143,229,255,.18);margin-top:12px}
.forum-avatar{width:66px;height:66px;flex:0 0 66px;border-radius:22px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,rgba(37,200,255,.26),rgba(90,202,43,.16));border:1px solid rgba(255,255,255,.12);font-weight:950;font-size:1.25rem;color:#f8fbff;box-shadow:0 14px 26px rgba(0,0,0,.2)}
.forum-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.forum-signed-copy{min-width:0}
.link-badge{text-decoration:none}
.badge-button{cursor:pointer;font-family:inherit}
.forum-login-box{margin-top:14px;padding:16px;border-radius:22px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07)}
.forum-login-box h2{font-size:1.25rem}
.forum-compose-card input:disabled,
.forum-compose-card textarea:disabled,
.forum-compose-card select:disabled{opacity:.68;cursor:not-allowed}
.forum-compose-card button:disabled{opacity:.55;cursor:not-allowed}
@media (max-width:720px){
  .forum-signed-in-card{align-items:flex-start}
  .forum-avatar{width:56px;height:56px;flex-basis:56px;border-radius:18px}
}

/* Member Gallery page */
.gallery-page .mini-hero{margin-bottom:18px}
.gallery-hero::before{background:url("../assets/img/profile-community-3.png") center 44%/cover no-repeat}
.gallery-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}
.gallery-dashboard{display:grid;grid-template-columns:minmax(310px,.48fr) minmax(0,1fr);gap:18px;align-items:start}
.gallery-submit-card{position:sticky;top:92px;padding:26px}
.gallery-member-card{align-items:center;gap:14px;margin:14px 0;padding:14px;border-radius:22px;background:linear-gradient(180deg,rgba(37,200,255,.12),rgba(90,202,43,.08));border:1px solid rgba(143,229,255,.18)}
.gallery-member-avatar{width:62px;height:62px;flex:0 0 62px;border-radius:20px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(180deg,rgba(37,200,255,.26),rgba(90,202,43,.16));border:1px solid rgba(255,255,255,.12);font-weight:950;color:#f8fbff}
.gallery-member-avatar img{width:100%;height:100%;object-fit:cover;display:block}
.gallery-login-panel{margin:14px 0;padding:16px;border-radius:22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08)}
.gallery-form{display:grid;gap:10px;margin-top:14px}
.tiny-note{font-size:.86rem;line-height:1.45}
.gallery-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:22px 24px}
.gallery-toolbar h2{margin:0}
.member-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.member-gallery-card{overflow:hidden;border-radius:28px;border:1px solid rgba(118,165,255,.16);background:linear-gradient(180deg,rgba(14,22,35,.86),rgba(9,14,24,.92));box-shadow:var(--shadow)}
.member-gallery-image{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:#111a29}
.member-gallery-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .22s ease}
.member-gallery-card:hover .member-gallery-image img{transform:scale(1.035)}
.member-gallery-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,11,18,.03),rgba(7,11,18,.24) 58%,rgba(7,11,18,.62))}
.member-gallery-image .event-pill{position:absolute;z-index:1;left:14px;top:14px}
.member-gallery-copy{padding:18px}
.member-gallery-copy h3{margin:0 0 8px;font-size:1.25rem}
.member-gallery-copy p{margin:0;color:#dbe5f7;line-height:1.5}
.member-gallery-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding-top:12px;border-top:1px solid rgba(255,255,255,.08);color:#aebed8;font-size:.92rem}
.member-gallery-meta a{color:#8fe5ff;font-weight:800}
.gallery-submit-card input:disabled,
.gallery-submit-card textarea:disabled,
.gallery-submit-card select:disabled{opacity:.68;cursor:not-allowed}
.gallery-submit-card button:disabled{opacity:.55;cursor:not-allowed}
@media (max-width:1080px){
  .gallery-dashboard{grid-template-columns:1fr}
  .gallery-submit-card{position:relative;top:auto}
}
@media (max-width:760px){
  .gallery-toolbar{align-items:flex-start;flex-direction:column}
  .member-gallery-grid{grid-template-columns:1fr}
  .gallery-submit-card{padding:22px}
}


/* Store closed page */
.store-closed-page{display:grid;gap:18px}
.store-closed-shell{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(320px,1.05fr);gap:18px;align-items:stretch}
.store-closed-copy,.store-closed-note{padding:30px;border-radius:30px;border:1px solid rgba(118,165,255,.16);box-shadow:var(--shadow);background:linear-gradient(180deg,rgba(14,22,35,.86),rgba(9,14,24,.92))}
.store-closed-copy{display:flex;flex-direction:column;justify-content:center;min-height:560px;position:relative;overflow:hidden}
.store-closed-copy::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(85,228,113,.14),transparent 34%),radial-gradient(circle at bottom left,rgba(37,200,255,.16),transparent 30%)}
.store-closed-copy > *{position:relative;z-index:1}
.store-closed-copy h1{margin:8px 0 14px;font-size:clamp(2.4rem,5vw,4.5rem);line-height:.95;letter-spacing:.04em;text-transform:uppercase}
.store-closed-copy p{font-size:1.02rem;line-height:1.6;color:#dce7f9;max-width:44ch}
.store-closed-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}

.zombie-turkey-scene{position:relative;min-height:560px;overflow:hidden;border-radius:30px;border:1px solid rgba(118,165,255,.16);box-shadow:var(--shadow);background:
  radial-gradient(circle at 25% 18%, rgba(143,229,255,.23), transparent 16%),
  radial-gradient(circle at 76% 24%, rgba(110,255,147,.18), transparent 18%),
  linear-gradient(180deg,#15314f 0%, #15314f 34%, #193e55 34%, #1e5d4e 70%, #174738 100%)}
.zombie-turkey-scene::before{content:"";position:absolute;left:0;right:0;bottom:0;height:152px;background:linear-gradient(180deg,rgba(0,0,0,0),rgba(0,0,0,.06)),radial-gradient(circle at 20% 25%,rgba(61,121,89,.9),transparent 28%),radial-gradient(circle at 48% 15%,rgba(72,142,102,.95),transparent 30%),radial-gradient(circle at 78% 18%,rgba(55,115,82,.95),transparent 28%)}
.zombie-turkey-scene::after{content:"";position:absolute;left:0;right:0;top:0;height:44%;background:linear-gradient(180deg,rgba(7,11,18,.18),transparent)}
.closed-sign{position:absolute;right:26px;top:34px;z-index:3;width:250px;padding:16px 18px 18px;border-radius:20px;border:4px solid #684028;background:linear-gradient(180deg,#f6dfac,#d39f63);box-shadow:0 18px 34px rgba(0,0,0,.26);transform:rotate(5deg)}
.closed-sign::before,.closed-sign::after{content:"";position:absolute;top:-22px;width:4px;height:26px;background:#c7d3e7}
.closed-sign::before{left:58px}
.closed-sign::after{right:58px}
.closed-sign span{display:block;font-weight:900;color:#624125;text-transform:uppercase;letter-spacing:.16em;font-size:.78rem}
.closed-sign strong{display:block;margin-top:6px;font-size:1.65rem;line-height:1.08;color:#2e2017}
.zombie-turkey{position:absolute;left:50%;bottom:30px;transform:translateX(-44%);width:400px;height:430px;z-index:2}
.turkey-tail{position:absolute;bottom:168px;width:110px;height:180px;border-radius:999px 999px 30px 30px;border:3px solid rgba(15,33,23,.35);background:linear-gradient(180deg,#86d15f,#4c9a3f 52%,#356d32);transform-origin:bottom center;box-shadow:inset 0 -14px 24px rgba(0,0,0,.14)}
.tail-1{left:14px;transform:rotate(-40deg)}
.tail-2{left:68px;transform:rotate(-18deg)}
.tail-3{left:142px;transform:rotate(0deg)}
.tail-4{left:216px;transform:rotate(18deg)}
.tail-5{left:272px;transform:rotate(40deg)}
.turkey-body{position:absolute;left:90px;bottom:0;width:220px;height:250px}
.turkey-body::before{content:"";position:absolute;inset:0;border-radius:48% 48% 42% 42%;background:linear-gradient(180deg,#82e07a,#58b85a 46%,#347a45);border:4px solid rgba(17,43,26,.36);box-shadow:inset 0 -24px 32px rgba(0,0,0,.18),0 18px 36px rgba(0,0,0,.18)}
.turkey-head{position:absolute;left:58px;top:-86px;width:106px;height:118px;border-radius:45% 45% 48% 48%;background:linear-gradient(180deg,#96ee87,#62c864 55%,#3f8d4d);border:4px solid rgba(17,43,26,.36);z-index:3}
.turkey-comb{position:absolute;left:18px;top:-16px;width:26px;height:44px;border-radius:20px 20px 14px 14px;background:linear-gradient(180deg,#ff6578,#d93349);transform:rotate(-18deg)}
.turkey-eye{position:absolute;top:40px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 3px #12201a}
.turkey-eye::after{content:"";position:absolute;left:6px;top:6px;width:6px;height:6px;border-radius:50%;background:#111}
.eye-left{left:18px}
.eye-right{right:18px}
.turkey-beak{position:absolute;left:38px;top:62px;width:30px;height:22px;clip-path:polygon(0 0,100% 50%,0 100%);background:linear-gradient(180deg,#ffcf72,#ff8d2d)}
.turkey-smile{position:absolute;left:36px;bottom:22px;width:34px;height:16px;border-bottom:4px solid #173322;border-radius:0 0 22px 22px}
.turkey-zombie-patch{position:absolute;right:10px;top:18px;width:30px;height:22px;border-radius:10px;background:rgba(49,88,62,.55);border:3px dashed rgba(22,42,27,.55);transform:rotate(14deg)}
.turkey-wing{position:absolute;top:96px;width:58px;height:110px;border-radius:50px;background:linear-gradient(180deg,#8de482,#509f55 55%,#366f3d);border:4px solid rgba(17,43,26,.3);z-index:2}
.wing-left{left:-18px;transform:rotate(16deg)}
.wing-right{right:-18px;transform:rotate(-16deg)}
.turkey-leg{position:absolute;bottom:-18px;width:10px;height:60px;background:#d28739;border-radius:999px;z-index:0}
.leg-left{left:74px}
.leg-right{right:74px}
.leg-left::after,.leg-right::after{content:"";position:absolute;bottom:-2px;left:-10px;width:30px;height:10px;border-radius:20px;background:#d28739}

@media (max-width:1000px){
  .store-closed-shell{grid-template-columns:1fr}
  .store-closed-copy,.zombie-turkey-scene{min-height:460px}
}
@media (max-width:720px){
  .store-closed-copy,.store-closed-note{padding:22px}
  .closed-sign{right:12px;top:18px;width:208px;padding:14px}
  .closed-sign strong{font-size:1.35rem}
  .zombie-turkey{width:320px;height:360px;transform:translateX(-48%)}
  .turkey-tail{width:88px;height:150px;bottom:136px}
  .tail-1{left:10px}.tail-2{left:52px}.tail-3{left:112px}.tail-4{left:172px}.tail-5{left:230px}
  .turkey-body{left:70px;width:186px;height:214px}
  .turkey-head{left:48px;top:-74px;width:90px;height:100px}
  .turkey-wing{top:82px;height:96px}
}


/* ---- logo refresh ---- */
.brand-badge{
  padding:10px 0 14px;
}
.brand-badge img{
  width:160px;
  max-width:100%;
  filter:drop-shadow(0 16px 34px rgba(0,0,0,.42));
}
.hero-brand{
  margin:0 0 20px;
}
.hero-logo{
  display:block;
  width:min(100%, 540px);
  height:auto;
  filter:drop-shadow(0 14px 34px rgba(0,0,0,.34));
}
@media (max-width:920px){
  .brand-badge img{
    width:144px;
  }
  .hero-logo{
    width:min(100%, 430px);
  }
}
@media (max-width:640px){
  .hero-logo{
    width:min(100%, 340px);
  }
}


/* ---- homepage final branding polish ---- */
body[data-page="home"] .hero-banner::before{
  background:url("../assets/img/main-website-background.png") center center/cover no-repeat;
  transform:scale(1.03);
}
body[data-page="home"] .hero-banner::after{
  background:
    radial-gradient(circle at 18% 18%, rgba(0, 214, 255, .18), transparent 24%),
    linear-gradient(90deg, rgba(5,10,18,.95) 0%, rgba(5,10,18,.82) 33%, rgba(5,10,18,.45) 60%, rgba(5,10,18,.28) 100%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.45));
}
body[data-page="home"] .hero-content{
  max-width:780px;
  padding:82px 58px 42px;
}
body[data-page="home"] .hero-brand-shell{
  display:inline-block;
  padding:18px 20px 16px;
  margin:0 0 18px;
  border:1px solid rgba(140, 210, 255, .18);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(5,12,20,.58), rgba(5,12,20,.36));
  box-shadow:0 18px 40px rgba(0,0,0,.22);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}
body[data-page="home"] .hero-brand{margin:0 0 8px;}
body[data-page="home"] .hero-logo{
  width:min(100%, 500px);
  height:auto;
  filter:drop-shadow(0 16px 36px rgba(0,0,0,.34));
}
body[data-page="home"] .hero-kicker{
  font-size:.92rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#8edfff;
  font-weight:900;
  margin:2px 0 8px;
}
body[data-page="home"] .hero-tagline{
  font-size:clamp(1rem, 1.8vw, 1.22rem);
  color:#ffd58b;
  font-weight:800;
  letter-spacing:.04em;
}
body[data-page="home"] .hero-copy{
  max-width:680px;
  font-size:1.08rem;
  color:#f1f7ff;
  margin:0 0 22px;
}
body[data-page="home"] .hero-meta{
  margin:0 0 16px;
}
body[data-page="home"] .hero-meta .badge{
  background:rgba(7,15,23,.72);
  border:1px solid rgba(255,255,255,.08);
}
body[data-page="home"] .hero-actions{
  gap:12px;
  flex-wrap:wrap;
  margin:0 0 18px;
}
body[data-page="home"] .home-hero-note{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}
body[data-page="home"] .home-hero-note span{
  display:inline-flex;
  align-items:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(4, 11, 18, .42);
  border:1px solid rgba(141, 208, 255, .14);
  color:#dcedff;
  font-size:.92rem;
}
body[data-page="home"] .feature-grid{
  gap:20px;
  margin-top:28px;
}
body[data-page="home"] .home-feature{
  min-height:255px;
  border-color:rgba(140,210,255,.12);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
body[data-page="home"] .home-feature:hover{
  transform:translateY(-4px);
  box-shadow:0 22px 40px rgba(0,0,0,.26);
  border-color:rgba(140,210,255,.28);
}
body[data-page="home"] .home-feature:nth-child(1){background:linear-gradient(180deg, rgba(8,19,29,.78), rgba(8,19,29,.92)), radial-gradient(circle at 20% 0%, rgba(255,190,88,.18), transparent 28%);}
body[data-page="home"] .home-feature:nth-child(2){background:linear-gradient(180deg, rgba(8,19,29,.78), rgba(8,19,29,.92)), radial-gradient(circle at 20% 0%, rgba(0,214,255,.18), transparent 28%);}
body[data-page="home"] .home-feature:nth-child(3){background:linear-gradient(180deg, rgba(8,19,29,.78), rgba(8,19,29,.92)), radial-gradient(circle at 20% 0%, rgba(83,255,159,.16), transparent 28%);}
body[data-page="home"] .home-feature .feature-inner{
  padding:20px 22px 22px;
}
body[data-page="home"] .home-feature .feature-icon{
  width:max-content;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(5,12,20,.36);
  border:1px solid rgba(255,255,255,.08);
  font-size:.98rem;
}
body[data-page="home"] .home-feature .feature-title{
  font-size:1.92rem;
}
body[data-page="home"] .home-info-grid{
  align-items:stretch;
}
body[data-page="home"] .home-panel{
  min-height:100%;
  background:linear-gradient(180deg, rgba(13,22,31,.94), rgba(9,17,26,.96));
  border:1px solid rgba(140,210,255,.12);
}
body[data-page="home"] .home-about-points{
  display:grid;
  gap:14px;
  margin-top:18px;
}
body[data-page="home"] .home-about-points > div{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
body[data-page="home"] .home-about-points b{
  color:#8edfff;
}
body[data-page="home"] .why-strip{
  margin-top:30px;
}
@media (max-width:920px){
  body[data-page="home"] .hero-content{padding:74px 24px 34px;}
  body[data-page="home"] .hero-brand-shell{padding:16px 16px 14px; border-radius:22px;}
  body[data-page="home"] .hero-logo{width:min(100%, 420px);}
  body[data-page="home"] .home-feature{min-height:220px;}
}
@media (max-width:640px){
  body[data-page="home"] .hero-logo{width:min(100%, 340px);}
  body[data-page="home"] .hero-tagline{line-height:1.4;}
}


/* ---- enter island footer button ---- */
.enter-island-btn{
  min-width:190px;
  background:linear-gradient(180deg,#57c527,#337f13);
  border-color:rgba(181,255,151,.36);
  box-shadow:0 0 0 1px rgba(86,181,32,.16),0 14px 28px rgba(0,0,0,.24),0 0 22px rgba(90,202,43,.16);
}
.enter-island-btn::before{
  content:"▶";
  font-size:.82rem;
  opacity:.92;
}
.enter-island-btn:hover{
  filter:brightness(1.08);
}


/* ---- homepage polish refresh ---- */
body[data-page="home"] .hero-content{
  max-width:720px;
  padding:74px 56px 38px;
}
body[data-page="home"] .hero-brand-shell{
  display:grid;
  gap:8px;
  padding:0;
  margin:0 0 18px;
  border:none;
  border-radius:0;
  background:none;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}
body[data-page="home"] .hero-kicker{
  font-size:.9rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:#9ce7ff;
  font-weight:900;
  margin:0;
}
body[data-page="home"] .hero-brand{
  margin:0;
}
body[data-page="home"] .hero-logo{
  width:min(100%, 360px);
  height:auto;
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.25));
}
body[data-page="home"] .hero-tagline{
  max-width:34ch;
  font-size:clamp(1.06rem, 1.8vw, 1.22rem);
  line-height:1.5;
  color:#ffdca0;
  font-weight:800;
  letter-spacing:.01em;
}
body[data-page="home"] .hero-copy{
  max-width:670px;
  font-size:1.06rem;
  line-height:1.72;
  color:#eff6ff;
  margin:0 0 20px;
}
body[data-page="home"] .hero-meta{
  gap:10px;
  margin:0 0 18px;
}
body[data-page="home"] .hero-meta .badge,
body[data-page="home"] .home-hero-note span{
  background:rgba(7,14,22,.54);
  border-color:rgba(255,255,255,.08);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
body[data-page="home"] .hero-actions{
  margin:0 0 16px;
}
body[data-page="home"] .hero-actions .btn{
  min-height:52px;
}
body[data-page="home"] .home-hero-note{
  gap:10px;
}
body[data-page="home"] .feature-grid{
  gap:18px;
  margin-top:24px;
}
body[data-page="home"] .home-feature{
  min-height:236px;
  background:
    linear-gradient(180deg, rgba(7,15,24,.72), rgba(7,15,24,.94)),
    radial-gradient(circle at 82% 18%, rgba(255,255,255,.06), transparent 26%);
}
body[data-page="home"] .home-feature:nth-child(1){
  box-shadow:0 20px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
body[data-page="home"] .home-feature:nth-child(2){
  box-shadow:0 20px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
body[data-page="home"] .home-feature:nth-child(3){
  box-shadow:0 20px 36px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.04);
}
body[data-page="home"] .home-feature .feature-title{
  font-size:1.68rem;
  margin-bottom:8px;
}
body[data-page="home"] .home-feature .feature-copy{
  max-width:28ch;
}
body[data-page="home"] .home-panel{
  border-color:rgba(140,210,255,.11);
}
body[data-page="home"] .home-start-card::after,
body[data-page="home"] .home-about-card::after{
  content:"";
  position:absolute;
  right:-40px;
  top:-40px;
  width:160px;
  height:160px;
  background:radial-gradient(circle, rgba(0,214,255,.12), transparent 68%);
  pointer-events:none;
}
body[data-page="home"] .home-preview-strip{
  margin-top:22px;
  display:grid;
  gap:18px;
}
body[data-page="home"] .home-preview-head{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:18px;
  padding:0 6px;
}
body[data-page="home"] .section-kicker{
  font-size:.82rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#91e4ff;
  font-weight:900;
  margin-bottom:8px;
}
body[data-page="home"] .home-preview-head h2{
  margin:0 0 8px;
  font-size:clamp(1.9rem, 3.6vw, 2.6rem);
}
body[data-page="home"] .home-preview-head p{
  margin:0;
  max-width:56ch;
  color:#cad8ee;
}
body[data-page="home"] .home-preview-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
body[data-page="home"] .home-preview-shot{
  position:relative;
  min-width:0;
  aspect-ratio:4/3;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(140,210,255,.12);
  background:rgba(255,255,255,.03);
  box-shadow:var(--shadow);
}
body[data-page="home"] .home-preview-shot img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
body[data-page="home"] .home-preview-shot::after{
  content:attr(data-label);
  position:absolute;
  left:14px;
  right:14px;
  bottom:14px;
  padding:11px 14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(7,11,18,.12), rgba(7,11,18,.8));
  border:1px solid rgba(255,255,255,.06);
  color:#f5f8ff;
  font-weight:800;
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}
@media (max-width:920px){
  body[data-page="home"] .hero-content{padding:68px 24px 30px;}
  body[data-page="home"] .hero-logo{width:min(100%, 300px);}
  body[data-page="home"] .home-preview-grid{grid-template-columns:1fr;}
  body[data-page="home"] .home-preview-head{align-items:flex-start; flex-direction:column;}
}
@media (max-width:640px){
  body[data-page="home"] .hero-logo{width:min(100%, 260px);}
}

/* ---- homepage hero background replacement ---- */
body[data-page="home"] .hero-banner::before{
  background:url("../assets/img/main-website-background.png") center center/cover no-repeat !important;
  transform:scale(1.02);
}
body[data-page="home"] .hero-banner::after{
  background:
    linear-gradient(90deg, rgba(5,10,18,.92) 0%, rgba(5,10,18,.78) 34%, rgba(5,10,18,.42) 62%, rgba(5,10,18,.2) 100%),
    linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.34) 68%, rgba(0,0,0,.55)) !important;
}

/* ---- deployment polish pass ---- */
:focus-visible{
  outline:3px solid rgba(37,200,255,.72);
  outline-offset:3px;
}
.brand-badge img[src$="favicon-di.png"]{
  width:112px;
  border-radius:28px;
  filter:drop-shadow(0 14px 30px rgba(0,0,0,.44));
}
.userchip-btn:focus-visible,
.menu-btn:focus-visible,
.btn:focus-visible,
.nav a:focus-visible{
  outline:3px solid rgba(37,200,255,.75);
  outline-offset:3px;
}
@media (max-width:640px){
  .brand-badge img[src$="favicon-di.png"]{width:96px;}
  .auth-locked-inner{gap:10px;}
}

/* ---- final deployment polish ---- */
.brand-badge img{
  width:110px;
  height:auto;
  display:block;
  background:transparent;
  filter:drop-shadow(0 14px 28px rgba(0,0,0,.34));
}
::selection{
  background:rgba(37,200,255,.28);
  color:#fff;
}
.card, .panel, .glass, .feature-card, .event-card, .post-card{
  scroll-margin-top:84px;
}
img{
  -webkit-user-drag:none;
}
