@import url('/static/fonts/fonts.css');
:root{--bg:#0e100d;--panel:#151814;--line:#30382b;--text:#eeeadd;--muted:#a1a794;--green:#b7d277;--amber:#e9a63c;--red:#ed725b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font:14px/1.6 'IBM Plex Sans',sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--green)}button{font:inherit;cursor:pointer}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 64px));margin:auto}.top{height:88px;padding:0 40px;display:flex;align-items:center;gap:70px;border-bottom:1px solid var(--line)}.wordmark{font:600 17px 'IBM Plex Sans Condensed',sans-serif;letter-spacing:.04em;white-space:nowrap}.wordmark span{color:var(--muted);margin-left:3px;font-weight:400}.wordmark i{color:var(--green);font-style:normal;font-size:8px;vertical-align:top;margin-left:6px}.top nav{display:flex;gap:30px;font-size:12px}.network-label{margin-left:auto;color:#737d67;font:9px 'IBM Plex Mono',monospace}.eyebrow{font:500 10px/1.5 'IBM Plex Mono',monospace;letter-spacing:.14em;color:var(--green)}h1,h2{font-family:'IBM Plex Sans Condensed',sans-serif;font-weight:600;letter-spacing:-.035em;line-height:.98}h1{font-size:clamp(60px,6.6vw,96px);margin:22px 0;white-space:pre-line}h2{font-size:48px;margin:16px 0 24px}.lead{max-width:620px;color:var(--muted);font-size:16px;line-height:1.8}.hub-hero{display:grid;grid-template-columns:1fr 250px;gap:70px;padding-top:74px;padding-bottom:64px}.orbit{position:relative;align-self:center;text-align:center;width:236px;height:236px;padding-top:44px;border:1px solid #39432d;border-radius:50%;background:radial-gradient(ellipse,#29301c55,transparent 67%)}.orbit>span{font:70px/1 'IBM Plex Mono';color:var(--green)}.orbit p{font:10px/1.7 'IBM Plex Mono';letter-spacing:.12em;color:var(--muted)}.cross{position:absolute;right:18px;top:10px;color:var(--green);font-size:24px}.worlds{display:grid;grid-template-columns:1fr 1fr;gap:24px}.world-card{background:var(--panel);border:1px solid var(--line);overflow:hidden;transition:transform .25s,border-color .25s}.world-card:hover{transform:translateY(-5px);border-color:#6a7652}.world-art{height:280px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.world-number{position:absolute;right:25px;bottom:-12px;color:#ffffff35;font:100px/1 'IBM Plex Sans Condensed';font-weight:600}.art-label{position:absolute;top:20px;left:25px;z-index:2;font:8px 'IBM Plex Mono';letter-spacing:.18em;color:#d2dec0}.landscape-art{background:#435348 url('/static/homestead-landscape.svg') center/cover}.city-art{background:linear-gradient(130deg,#302d20,#111a17)}.city-art:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#15181488,transparent),repeating-linear-gradient(95deg,transparent 0 57px,#b2915960 58px 60px,transparent 61px 92px)}.city-grid{position:absolute;inset:-50px;transform:rotate(-24deg) scale(1.1);background:repeating-linear-gradient(0deg,transparent 0 41px,#b2915950 42px 44px,transparent 45px 80px),repeating-linear-gradient(90deg,#151a13 0 17px,#8b805322 18px 48px,#151a13 49px 63px);clip-path:polygon(0 0,100% 0,100% 100%,61% 100%,48% 79%,40% 55%,23% 43%,0 27%)}.world-info{padding:28px 30px 32px}.card-meta{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;font:9px 'IBM Plex Mono';letter-spacing:.08em;color:var(--muted)}.status{font:500 10px/1.5 'IBM Plex Mono';letter-spacing:.06em;color:var(--muted)}.status.off{color:var(--red)}.status.on{color:var(--green)}.world-info h2{font-size:46px;margin:22px 0 16px}.world-info p{color:var(--muted);min-height:82px;line-height:1.8}.button{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:13px 20px;border:1px solid;font:600 11px 'IBM Plex Mono';letter-spacing:.06em;transition:filter .2s}.button:hover{filter:brightness(1.13);color:#0e100d}.button.green{background:var(--green);border-color:var(--green);color:#1b2312}.button.amber{background:var(--amber);border-color:var(--amber);color:#251c0c}.button span{font:24px 'IBM Plex Sans'}.closing{border-bottom:1px solid var(--line);padding:70px 0;position:relative}.closing p{max-width:780px;font:40px/1.15 'IBM Plex Sans Condensed'}.closing-star{position:absolute;right:30px;top:70px;font-size:90px;color:var(--green)}.footer{padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:22px;color:#8b947e;font-size:10px}.footer>span:last-child{font:9px 'IBM Plex Mono'}.mc-hero{position:relative;min-height:560px;overflow:hidden;border-bottom:1px solid var(--line)}.mc-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,#0e100df5 8%,#0e100d9c 40%,#0e100d15 80%),linear-gradient(0deg,#0e100d,transparent 45%),url('/static/homestead-landscape.svg') right center/cover}.mc-hero-inner{position:relative;padding-top:86px;padding-bottom:66px;display:flex;align-items:end;justify-content:space-between;gap:30px}.mc-intro{max-width:670px}.mc-intro h1{font-size:clamp(68px,8vw,116px);color:#f1eddb;overflow-wrap:anywhere}.mc-intro .lead{max-width:510px;color:#cad1bd}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:28px}.text-link{font-size:12px;color:var(--green);border-bottom:1px solid #718447;padding-bottom:3px}.coordinates{font:10px/2 'IBM Plex Mono';color:var(--green);writing-mode:vertical-rl;margin-bottom:15px}.coordinates span{font-size:8px;color:#a2b38d;letter-spacing:.15em}.mc-strip{display:grid;grid-template-columns:1fr .7fr 1.3fr;border-bottom:1px solid var(--line);padding:26px 0}.mc-strip>div{padding:0 26px;border-right:1px solid var(--line)}.mc-strip>div:first-child{padding-left:0}.mc-strip>div:last-child{border:0}.mc-strip .eyebrow{color:#929b83;display:block}.mc-strip strong{display:block;font:26px/1.7 'IBM Plex Mono';margin-top:4px}.mc-strip .status{font-size:15px}.mc-strip .address{font-size:21px}.connect-layout{display:grid;grid-template-columns:1fr 440px;gap:80px;padding-top:80px;padding-bottom:80px}.section-copy{max-width:460px;color:var(--muted);line-height:1.9}.connect-card{border:1px solid #475039;background:linear-gradient(145deg,#20271a,#131811);padding:28px}.connect-card code{display:block;font:25px 'IBM Plex Mono';margin:22px 0;overflow-wrap:anywhere}.connect-card .button{width:100%;margin-bottom:20px}.small-note{font-size:11px;color:#919b82;margin-top:25px;padding-top:18px;border-top:1px solid var(--line)}.players-line{color:var(--green);font:11px 'IBM Plex Mono';margin-top:24px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.section-heading h2{margin-bottom:0}.map-section iframe{width:100%;height:540px;border:1px solid #414d36;background:#101911}.map-caption{font-size:11px;color:#98a08e}.rules-section{padding-top:72px;padding-bottom:72px;display:grid;grid-template-columns:1fr 1fr;gap:80px;border-bottom:1px solid var(--line)}.rules-section ol{list-style:none;margin:0;padding:0;counter-reset:rules}.rules-section li{counter-increment:rules;border-bottom:1px solid var(--line);padding:20px 0;display:flex;gap:24px;color:#c4cbb7}.rules-section li:before{content:'0' counter(rules);color:var(--green);font:11px 'IBM Plex Mono'}
@media(max-width:850px){.top{padding:0 24px;gap:25px}.network-label{display:none}.wrap{width:calc(100% - 40px)}.hub-hero{grid-template-columns:1fr 160px;gap:25px}.orbit{width:160px;height:160px;padding-top:28px}.orbit>span{font-size:48px}.orbit p{font-size:8px}.world-art{height:210px}.world-info{padding:22px}.world-info h2{font-size:36px}.connect-layout{grid-template-columns:1fr 350px;gap:30px}.rules-section{gap:35px}.mc-strip .address{font-size:16px}}
@media(max-width:600px){.top{height:72px;padding:0 20px;gap:15px;justify-content:space-between}.top nav{gap:14px;font-size:10px}.wordmark{font-size:14px}.hub-hero{display:block;padding-top:44px;padding-bottom:30px}.orbit{display:none}h1{font-size:66px}.lead{font-size:14px}.worlds{grid-template-columns:1fr;gap:25px}.world-art{height:240px}.world-info p{min-height:0}.world-info h2{font-size:42px}.closing{padding:40px 0}.closing p{font-size:30px;max-width:85%}.closing-star{right:0;top:35px;font-size:46px}.footer{flex-wrap:wrap}.footer>span{max-width:100%}.mc-hero{min-height:540px}.mc-hero-inner{padding-top:62px;padding-bottom:54px}.mc-backdrop{background-position:62% center}.mc-intro h1{font-size:74px}.coordinates{display:none}.hero-actions{gap:16px;flex-wrap:wrap}.mc-strip{grid-template-columns:1fr 1fr;gap:20px}.mc-strip>div{padding:0;border:0}.mc-strip>div:last-child{grid-column:1/-1}.mc-strip .address{font-size:24px}.connect-layout{grid-template-columns:1fr;gap:28px;padding:46px 0}h2{font-size:39px}.section-heading{display:block}.section-heading .text-link{display:inline-block;margin-top:18px}.map-section iframe{height:440px}.rules-section{grid-template-columns:1fr;gap:5px;padding-top:45px;padding-bottom:45px}.connect-card{padding:24px}.mc-strip .status{font-size:13px}}
.world-note{align-self:flex-end;margin:0 0 18px auto;padding:14px 16px;border-left:2px solid var(--green);background:#10150ecc;backdrop-filter:blur(4px);font-family:'IBM Plex Mono',monospace;white-space:nowrap}.world-note strong{display:block;color:var(--green);font-size:11px;letter-spacing:.16em}.world-note span{display:block;margin-top:6px;color:#b6c1a8;font-size:8px;line-height:1.65;letter-spacing:.12em}@media(max-width:600px){.mc-hero{min-height:570px}.mc-hero-inner{display:block;padding-bottom:34px}.world-note{display:inline-block;margin:30px 0 0}}
.mc-strip+.rules-section{padding-top:32px;padding-bottom:38px}
.closing p{font-family:"IBM Plex Sans Condensed",sans-serif;font-weight:500}

/* ─── SEFI Brand Overrides for MC Section ─── */
#mcView {
  --green: #a855f7;
  --amber: #e8a0d0;
  --bg: #0d0a14;
  --panel: #1a0e2e;
  --line: #2d1b4e;
  --text: #fdfaf6;
  --muted: #b8a4d4;
}

/* Hero — purple Minecraft scene replaces SVG */
#mcView .mc-hero { border-color: #2d1b4e; }
#mcView .mc-backdrop {
  background:
    linear-gradient(90deg, #0d0a14f2 5%, #0d0a14b0 35%, #0d0a1440 65%, #0d0a1418 85%),
    linear-gradient(0deg, #0d0a14, transparent 50%),
    url('/static/brand/sefi-bg.webp') right center / cover;
}
#mcView .mc-backdrop::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 800px 500px at 65% 55%, #8b5cf622, transparent);
  pointer-events: none;
}
#mcView .mc-intro h1 {
  color: #fdf4ff;
  text-shadow: 0 2px 32px #a855f755, 0 0 80px #8b5cf622;
}
#mcView .mc-intro .lead { color: #c4b6db; }
#mcView .eyebrow { color: #c084fc; }

/* Buttons */
#mcView .button.green {
  background: #a855f7; border-color: #a855f7; color: #0d0a14;
}
#mcView .button.green:hover { filter: brightness(1.15); color: #0d0a14; }
#copyAddress {
  font-family: 'IBM Plex Mono', monospace;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .06em;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#copyAddress span {
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 24px;
  line-height: 1;
}
#mcView .button.amber {
  background: var(--panel) !important; border-color: #a855f7 !important; color: #c084fc !important;
}
#mcView .text-link { color: #c084fc; border-bottom-color: #6b21a8; }

/* Status strip — 4 columns */
#mcView .mc-strip {
  grid-template-columns: repeat(4, 1fr);
  border-color: #2d1b4e;
}
#mcView .mc-strip > div { border-color: #2d1b4e; }
#mcView .mc-strip .eyebrow { color: #9b8abf; }
#mcView .mc-strip strong { color: #ede9f6; }
#mcView .mc-strip .address { color: #c084fc; }
#mcView .status.on { color: #d8b4fe; }

/* Connect card */
#mcView .connect-card {
  border-color: #7c3aed55;
  background: linear-gradient(145deg, #231540, #120b24);
  box-shadow: 0 0 40px #7c3aed18;
  transition: border-color .3s, box-shadow .3s;
}
#mcView .connect-card:hover {
  border-color: #a855f7;
  box-shadow: 0 0 50px #7c3aed33;
}
#mcView .connect-card code { color: #d8b4fe; }
#mcView .small-note { color: #8b7aab; border-color: #2d1b4e; }

/* Rules */
#mcView .rules-section { border-color: #2d1b4e; }
#mcView .rules-section li { border-color: #2d1b4e; color: #cfc3e3; }
#mcView .rules-section li::before { color: #c084fc; }

/* Map */
#mcView .map-section iframe { border-color: #3b2569; background: #110b1e; }
#mcView .map-caption { color: #8b7aab; }

/* Footer override inside mcView */
#mcView ~ .footer { border-color: #2d1b4e; color: #6b5e8a; }

/* Players line */
#mcView .players-line { color: #c084fc; }
#mcView .section-copy { color: #a898c5; }

/* ─── Connect Layout & Branding ─── */
.connect-card-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding-bottom: 18px;
  margin-bottom: 14px;
  border-bottom: 1px solid #3b2569;
  text-align: center;
}
.connect-card-head .eyebrow {
  margin: 0;
  letter-spacing: .16em;
}
.homestead-logo {
  display: block;
  max-width: 240px;
  height: auto;
  margin: 0 auto;
  filter: drop-shadow(0 4px 16px rgba(168, 85, 247, 0.35));
  transition: transform .3s ease;
}
.homestead-logo:hover {
  transform: scale(1.03);
}

/* ─── Mascot & Brand Images ─── */
.mc-mascot {
  position: absolute;
  right: 2%;
  bottom: -110px;
  height: 580px;
  width: auto;
  z-index: 1;
  pointer-events: none;
  filter: drop-shadow(0 8px 40px #8b5cf644);
  animation: mascotFloat 6s ease-in-out infinite;
}
@keyframes mascotFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

.homestead-icon {
  align-self: flex-end;
  margin: 0 0 18px auto;
  width: 120px;
  border-radius: 16px;
  box-shadow: 0 8px 36px #0d0a14cc, 0 0 20px #8b5cf633;
  transition: transform .3s;
}
.homestead-icon:hover { transform: scale(1.05); }

/* ─── Cherry Blossom Particles ─── */
.cherry-blossoms {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
}
.cherry-blossoms::before, .cherry-blossoms::after {
  content: '';
  position: absolute;
  width: 6px;
  height: 10px;
  border-radius: 50% 0 50% 0;
  background: #d76bb5;
  opacity: 0.45;
  box-shadow:
    100px 40px 0 0 #e8a0d0,
    220px 120px 0 0 #c084fc,
    340px 30px 0 0 #d76bb5,
    460px 200px 0 0 #e8a0d0,
    580px 80px 0 0 #c084fc,
    700px 260px 0 0 #d76bb5,
    820px 50px 0 0 #e8a0d0,
    940px 170px 0 0 #c084fc,
    1060px 90px 0 0 #d76bb5,
    1180px 220px 0 0 #e8a0d0;
  animation: floatPetal 18s linear infinite;
}
.cherry-blossoms::after {
  left: -80px;
  top: -40px;
  opacity: 0.3;
  box-shadow:
    130px 130px 0 0 #e8a0d0,
    270px 40px 0 0 #c084fc,
    390px 180px 0 0 #d76bb5,
    510px 80px 0 0 #e8a0d0,
    630px 250px 0 0 #c084fc,
    750px 30px 0 0 #d76bb5,
    870px 200px 0 0 #e8a0d0,
    990px 110px 0 0 #c084fc;
  animation: floatPetal 24s linear infinite 6s;
}
@keyframes floatPetal {
  0%   { transform: translateY(-60px) translateX(0) rotate(0deg); }
  100% { transform: translateY(100vh) translateX(80px) rotate(360deg); }
}

/* ─── Responsive SEFI Adjustments ─── */
@media (max-width: 850px) {
  #mcView .mc-strip { grid-template-columns: 1fr 1fr; }
  #mcView .mc-strip > div { border-bottom: 1px solid #2d1b4e; padding: 12px 0; }
  .mc-mascot { right: -2%; height: 350px; opacity: 0.4; }
  .homestead-logo { max-width: 200px; }
}
@media (max-width: 600px) {
  .mc-mascot { display: none; }
  .homestead-icon { display: block; margin: 20px auto 0; width: 90px; }
  .homestead-logo { max-width: 170px; }
  #mcView .mc-strip > div { padding: 10px 0; }
  #mcView .mc-strip > div:last-child { grid-column: 1 / -1; }
}

/* ─── Hub Page: Minecraft Card SEFI Theme ─── */
.world-card.minecraft {
  border-color: #2d1b4e;
  background: #140c24;
}
.world-card.minecraft:hover {
  border-color: #a855f7;
  box-shadow: 0 10px 40px rgba(168, 85, 247, 0.15);
}
.world-card.minecraft .landscape-art {
  background: #1a0e2e url('/static/brand/server-banner.webp') center / cover;
}
.world-card.minecraft .landscape-art::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(13, 10, 20, 0.2) 0%, rgba(20, 12, 36, 0.8) 100%);
  pointer-events: none;
}
.world-card.minecraft .art-label {
  color: #e8a0d0;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8);
}
.world-card.minecraft .world-number {
  color: rgba(232, 160, 208, 0.18);
}
.world-card.minecraft .card-meta {
  color: #b8a4d4;
}
.world-card.minecraft .card-meta span:first-child {
  color: #c084fc;
}
.world-card.minecraft .status.on {
  color: #d8b4fe;
}
.world-card.minecraft h2 {
  color: #fdfaf6;
}
.world-card.minecraft p {
  color: #b8a4d4;
}
.world-card.minecraft .button.green {
  background: #a855f7;
  border-color: #a855f7;
  color: #0d0a14;
  box-shadow: 0 4px 20px rgba(168, 85, 247, 0.3);
}
.world-card.minecraft .button.green:hover {
  background: #c084fc;
  border-color: #c084fc;
  color: #0d0a14;
}

/* ─── Header Nav Cabinet Link ─── */
.nav-comm-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: color 0.2s ease;
}
.nav-comm-link.on {
  color: #c084fc !important;
}
.nav-comm-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
}

/* ─── Premium SEFI Community Modal ─── */
.comm-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}
.comm-modal-backdrop {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, rgba(168, 85, 247, 0.12), rgba(6, 4, 10, 0.92) 80%);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}
.comm-modal-dialog {
  position: relative;
  width: min(560px, 100%);
  background: linear-gradient(160deg, rgba(26, 14, 46, 0.95), rgba(13, 10, 20, 0.98));
  border: 1px solid rgba(168, 85, 247, 0.28);
  border-radius: 20px;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.75), 0 0 40px rgba(168, 85, 247, 0.12);
  padding: 32px 36px;
  max-height: 90vh;
  overflow-y: auto;
  color: #fdfaf6;
  font-family: 'IBM Plex Sans', -apple-system, sans-serif;
}
.comm-modal-dialog::-webkit-scrollbar {
  width: 6px;
}
.comm-modal-dialog::-webkit-scrollbar-thumb {
  background: rgba(168, 85, 247, 0.25);
  border-radius: 99px;
}

.comm-modal-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(168, 85, 247, 0.15);
}
.comm-modal-title .eyebrow {
  color: #c084fc;
  font-size: 11px;
  letter-spacing: .16em;
  font-family: 'IBM Plex Mono', monospace;
}
.comm-modal-title h2 {
  font-size: 32px;
  font-weight: 700;
  letter-spacing: -0.02em;
  margin: 6px 0 0;
  color: #ffffff;
}
.comm-modal-close {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  color: #b8a4d4;
  font-size: 20px;
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  cursor: pointer;
  transition: all 0.2s ease;
}
.comm-modal-close:hover {
  color: #fff;
  background: rgba(237, 114, 91, 0.2);
  border-color: rgba(237, 114, 91, 0.4);
}

/* User Profile Card */
.comm-user-card {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 16px 20px;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(168, 85, 247, 0.2);
  border-radius: 14px;
  margin-bottom: 26px;
  backdrop-filter: blur(6px);
}
.comm-avatar {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  object-fit: cover;
  border: 1px solid rgba(168, 85, 247, 0.4);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}
.comm-user-details {
  flex: 1;
  min-width: 0;
}
.comm-name-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
.comm-name-row strong {
  font-size: 17px;
  font-weight: 600;
  color: #ffffff;
}
.comm-badge {
  font: 600 10px 'IBM Plex Mono', monospace;
  background: rgba(145, 70, 255, 0.25);
  color: #d8b4fe;
  border: 1px solid rgba(168, 85, 247, 0.3);
  padding: 2px 8px;
  border-radius: 6px;
}
.comm-subtext {
  font: 12px 'IBM Plex Mono', monospace;
  color: #b8a4d4;
  margin-top: 2px;
  display: block;
}
.comm-status-badge {
  font: 600 11px 'IBM Plex Mono', monospace;
  padding: 6px 14px;
  border-radius: 9999px;
  border: 1px solid;
  white-space: nowrap;
  letter-spacing: .02em;
}
.status-approved {
  background: rgba(52, 211, 153, 0.12);
  border-color: rgba(52, 211, 153, 0.35);
  color: #6ee7b7;
  box-shadow: 0 0 16px rgba(52, 211, 153, 0.15);
}
.status-pending {
  background: rgba(245, 158, 11, 0.12);
  border-color: rgba(245, 158, 11, 0.35);
  color: #fcd34d;
  box-shadow: 0 0 16px rgba(245, 158, 11, 0.12);
}
.status-rejected {
  background: rgba(239, 68, 68, 0.12);
  border-color: rgba(239, 68, 68, 0.35);
  color: #fca5a5;
  box-shadow: 0 0 16px rgba(239, 68, 68, 0.12);
}

/* Sections */
.comm-section {
  margin-bottom: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.comm-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
.comm-section-title .eyebrow {
  color: #c084fc;
  font-size: 11px;
  font-family: 'IBM Plex Mono', monospace;
}
.comm-hint {
  font: 11px 'IBM Plex Mono', monospace;
  color: #8b7aab;
}

/* Bound Minecraft Profile Card */
.comm-mc-bound-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: rgba(168, 85, 247, 0.07);
  border: 1px solid rgba(168, 85, 247, 0.25);
  border-radius: 12px;
  padding: 14px 18px;
}
.comm-mc-bound-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.comm-mc-bound-label {
  font-size: 11px;
  color: #9d8db9;
}
.comm-mc-bound-nick {
  font-size: 18px;
  font-family: 'IBM Plex Mono', monospace;
  color: #ffffff;
  letter-spacing: 0.02em;
}
.comm-note-text {
  font-size: 12px;
  color: #a797c2;
  margin-top: 10px;
  line-height: 1.5;
}

/* Minecraft instructions list */
.comm-mc-instructions {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 16px;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(168, 85, 247, 0.15);
  border-radius: 14px;
  padding: 16px;
}
.comm-instruction-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 12px;
  line-height: 1.5;
  color: #c4b6db;
}
.comm-instruction-item strong {
  color: #ffffff;
  display: block;
  margin-bottom: 2px;
}
.comm-instruction-item p {
  margin: 0;
  color: #a797c2;
}
.comm-instruction-item b {
  color: #c084fc;
}
.comm-instruction-item code {
  background: rgba(0, 0, 0, 0.5);
  padding: 1px 5px;
  border-radius: 4px;
  color: #c084fc;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 11px;
}
.comm-instr-icon {
  font-size: 16px;
  line-height: 1.2;
  flex-shrink: 0;
}

/* Form Controls */
.comm-mc-row {
  display: flex;
  gap: 8px;
  align-items: stretch;
}
.comm-input {
  flex: 1.2;
  min-width: 0;
  background: rgba(0, 0, 0, 0.45);
  border: 1px solid rgba(168, 85, 247, 0.25);
  border-radius: 10px;
  color: #ffffff;
  font: 13px 'IBM Plex Mono', monospace;
  padding: 10px 14px;
  outline: none;
  transition: all 0.2s ease;
}
.comm-input:focus {
  border-color: #c084fc;
  box-shadow: 0 0 12px rgba(168, 85, 247, 0.3);
  background: rgba(0, 0, 0, 0.65);
}
.comm-select {
  flex: 1;
  background: rgba(20, 12, 36, 0.95);
  border: 1px solid rgba(168, 85, 247, 0.25);
  border-radius: 10px;
  color: #ede9f6;
  font: 13px 'IBM Plex Sans', sans-serif;
  padding: 10px 14px;
  outline: none;
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.comm-select:focus {
  border-color: #c084fc;
}
.comm-btn-sm {
  min-height: auto;
  height: auto;
  padding: 10px 20px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 10px;
  background: #a855f7;
  border: 1px solid #c084fc;
  color: #0d0a14;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.comm-btn-sm:hover {
  filter: brightness(1.15);
  box-shadow: 0 0 18px rgba(168, 85, 247, 0.4);
}

.comm-msg {
  font: 11px 'IBM Plex Mono', monospace;
  margin-top: 8px;
  min-height: 16px;
}
.comm-msg-ok { color: #6ee7b7; }
.comm-msg-err { color: #fca5a5; }

/* Discord Card */
.comm-discord-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: rgba(88, 101, 242, 0.06);
  border: 1px solid rgba(88, 101, 242, 0.22);
  border-radius: 12px;
  padding: 14px 18px;
}
.comm-discord-info {
  font: 13px 'IBM Plex Mono', monospace;
  color: #c4b6db;
}
#commLinkDiscordBtn {
  background: #5865f2;
  border: 1px solid #7983f5;
  color: #ffffff;
  padding: 8px 18px;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
#commLinkDiscordBtn:hover {
  background: #4752c4;
  box-shadow: 0 0 18px rgba(88, 101, 242, 0.4);
}

/* Launcher status note */
.comm-launcher-box {
  padding: 14px 18px;
  background: rgba(168, 85, 247, 0.06);
  border: 1px dashed rgba(168, 85, 247, 0.25);
  border-radius: 12px;
  font-size: 13px;
  color: #b8a4d4;
  line-height: 1.6;
}
.comm-launcher-box code {
  background: rgba(0, 0, 0, 0.4);
  padding: 2px 6px;
  border-radius: 4px;
  color: #c084fc;
  font-family: 'IBM Plex Mono', monospace;
  font-size: 12px;
}

/* Logout link */
.comm-logout-row {
  text-align: center;
  margin-top: 20px;
}
#commLogoutBtn {
  background: none;
  border: none;
  color: #f87171 !important;
  font-size: 12px;
  cursor: pointer;
  padding: 6px 12px;
  opacity: 0.8;
  transition: opacity 0.2s ease;
}
#commLogoutBtn:hover {
  opacity: 1;
  text-decoration: underline;
}

/* Editable Minecraft connection guide. */
#mcView .join-guide{padding-top:72px;padding-bottom:72px;border-bottom:1px solid var(--line)}
#mcView .join-guide-heading h2{margin-bottom:18px}
#mcView .join-guide-heading .section-copy{max-width:760px}
#mcView .join-access-note{margin:26px 0 30px;padding:16px 20px;border-left:2px solid #a855f7;background:#a855f70a;color:#cab7e0;font-size:13px;line-height:1.8}
#mcView .join-access-note a{color:#e2c7fa;text-decoration:underline;text-underline-offset:3px}
#mcView .join-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
#mcView .join-options.single-option{grid-template-columns:minmax(0,1fr)}
#mcView .join-option{min-width:0;display:flex;flex-direction:column;padding:30px;border:1px solid #352446;border-radius:18px;background:linear-gradient(145deg,#1b1326,#100c18);overflow-wrap:anywhere}
#mcView .join-option-sefi{border-color:#774299;background:linear-gradient(145deg,#2b183e,#170f24)}
#mcView .join-option-head .eyebrow{color:#b89dce}
#mcView .join-option-sefi .join-option-head .eyebrow{color:#d8adfa}
#mcView .join-option h3{font:600 31px/1.15 'IBM Plex Sans Condensed',sans-serif;letter-spacing:-.02em;margin:12px 0 26px;color:#f6efff}
#mcView .join-steps{padding:0;margin:0;list-style:none;counter-reset:join-steps;display:grid;gap:18px}
#mcView .join-steps li{counter-increment:join-steps;display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;font-size:13px;line-height:1.8;color:#d1c3df;white-space:pre-line}
#mcView .join-steps li::before{content:counter(join-steps);font:500 11px/24px 'IBM Plex Mono',monospace;color:#dbb8f5;border:1px solid #654079;border-radius:50%;width:24px;height:24px;text-align:center;margin-top:1px}
#mcView .join-tradeoffs,#mcView .join-benefits{margin:28px 0 22px;padding:20px 0 0;border-top:1px solid #ffffff12}
#mcView .join-option h4{margin:0 0 14px;font-size:12px;font-weight:600;color:#e4d1f3}
#mcView .join-option ul{padding:0;margin:0;list-style:none;display:grid;gap:10px}
#mcView .join-option ul li{display:grid;grid-template-columns:16px minmax(0,1fr);gap:10px;color:#bba8ca;font-size:12px;line-height:1.75;white-space:pre-line}
#mcView .join-tradeoffs li::before{content:'−';color:#d6aa85;font-weight:600}
#mcView .join-benefits li::before{content:'+';color:#cf9df3;font-weight:600}
#mcView .join-address{padding-top:18px;margin-top:auto}
#mcView .join-address code{display:block;margin:10px 0 16px;color:#e4d2f4;font:16px/1.5 'IBM Plex Mono',monospace}
#mcView .join-copy{width:100%;background:#ffffff04;border-color:#76528f;color:#e1c5f6;border-radius:8px}
#mcView .join-copy:hover{background:#a855f71c;color:#fff}
#mcView .join-modpack-link{align-self:flex-start;margin-top:20px;color:#d6a4f8;border-color:#8750ac}
#mcView .join-download{margin-top:auto;min-height:50px;border-radius:8px;background:#bb79eb;color:#1a0a29;border-color:#bb79eb}
#mcView .join-download #launcherDownloadLabel{font:600 11px/1.6 'IBM Plex Mono',monospace;letter-spacing:.03em}
#mcView .join-platform-note{margin:18px 0 0;color:#bba8ca;font-size:11px;line-height:1.8;white-space:pre-line}
#mcView .join-guide a:focus-visible,#mcView .join-guide button:focus-visible{outline:2px solid #e0aafa;outline-offset:4px}
@media(max-width:760px){#mcView .join-guide{padding-top:46px;padding-bottom:46px}#mcView .join-options{grid-template-columns:minmax(0,1fr)}#mcView .join-option{padding:24px}#mcView .join-option h3{font-size:28px}#mcView .join-access-note{padding:14px 16px;margin-bottom:24px}}


/* Guide list links */
#mcView .join-steps li a,
#mcView .join-option ul li a,
#mcView .rules-list li a {
  color: #dbb8f5;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: #9d5dc4;
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}
#mcView .join-steps li a:hover,
#mcView .join-option ul li a:hover,
#mcView .rules-list li a:hover {
  color: #ffffff;
  text-decoration-color: #dbb8f5;
}

/* Wrapper for step text to prevent grid item fragmentation */
#mcView .join-steps li .step-text,
#mcView .join-option ul li .step-text,
#mcView .rules-list li .step-text,
#mcView #mcRules li .step-text {
  display: block;
  min-width: 0;
  word-break: normal;
  overflow-wrap: break-word;
}

/* Mobile header: brand above a single aligned navigation row. */
@media (max-width:600px) {
  header.top {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    align-items:center;
    justify-content:initial;
    height:auto;
    gap:6px;
    padding:12px 20px 8px;
  }
  header.top > .wordmark {justify-self:start;line-height:24px;}
  header.top > nav {
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-width:0;
    gap:10px;
    font-size:12px;
    line-height:20px;
  }
  header.top > nav > a {
    display:inline-flex;
    align-items:center;
    min-height:36px;
    padding:6px 0;
    white-space:nowrap;
    flex-shrink:0;
  }
  header.top > nav > .nav-comm-link {min-width:0;max-width:30%;flex-shrink:1;}
  header.top #commBtnLabel {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  header.top .nav-comm-avatar {flex-shrink:0;}
  header.top > .network-label {display:none;}
}
@media (max-width:360px) {
  header.top {padding-left:16px;padding-right:16px;}
  header.top > nav {font-size:11px;gap:8px;}
}

/* Soft local contrast behind the Minecraft description on phones. */
@media (max-width:600px) {
  #mcView .mc-intro .lead {
    position:relative;
    isolation:isolate;
    text-shadow:0 1px 3px #0d0a14;
  }
  #mcView .mc-intro .lead::before {
    content:'';
    position:absolute;
    inset:-10px -12px;
    z-index:-1;
    background:rgba(13,10,20,.58);
    filter:blur(12px);
    border-radius:16px;
    pointer-events:none;
  }
}

/* Inline links in the editable Minecraft description. */
[data-copy="mc.description"] a{color:inherit;text-decoration:underline;text-underline-offset:3px}
[data-copy="mc.description"] a:hover{color:var(--green)}
[data-copy="mc.description"] a:focus-visible{outline:2px solid currentColor;outline-offset:3px}
