.community-page { background:#050705; }
.community-hero { min-height:650px; position:relative; overflow:hidden; display:grid; place-items:center; border-bottom:3px solid var(--gold); background:radial-gradient(circle at 50% 34%,rgba(65,116,38,.38),transparent 32%),linear-gradient(180deg,#071007 0%,#030503 100%); }
.community-grid { position:absolute; inset:0; opacity:.24; background-image:linear-gradient(rgba(146,211,63,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(146,211,63,.14) 1px,transparent 1px); background-size:44px 44px; transform:perspective(500px) rotateX(62deg) scale(1.55) translateY(31%); transform-origin:center bottom; mask-image:linear-gradient(to bottom,transparent 4%,#000 45%,#000); }
.community-stars { position:absolute; inset:0; opacity:.55; background-image:radial-gradient(circle,#f2c66f 1px,transparent 2px),radial-gradient(circle,#92d33f 1px,transparent 2px); background-position:0 0,38px 33px; background-size:83px 83px,121px 121px; animation:communityDrift 20s linear infinite; }
@keyframes communityDrift { to { transform:translateY(70px); } }
.community-hero::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(0,0,0,.72),transparent 22%,transparent 78%,rgba(0,0,0,.72)),repeating-linear-gradient(0deg,rgba(255,255,255,.015) 0 1px,transparent 1px 4px); }
.community-hero-inner { position:relative; z-index:2; text-align:center; max-width:940px; padding-top:54px; padding-bottom:54px; }
.community-console { width:min(480px,90%); margin:0 auto 25px; min-height:34px; display:flex; align-items:center; justify-content:center; gap:12px; border:2px solid #344335; background:#081009; color:var(--green-bright); font-family:var(--pixel); font-size:8px; letter-spacing:.08em; box-shadow:0 0 18px rgba(146,211,63,.12),inset 0 0 18px rgba(146,211,63,.05); }
.console-light { width:9px; height:9px; border-radius:50%; background:var(--green-bright); box-shadow:0 0 12px var(--green-bright); animation:pulse 1.3s infinite; }
.community-eyebrow { color:var(--orange-bright); font-family:var(--pixel); font-size:clamp(9px,1.4vw,13px); letter-spacing:.12em; margin:0 0 18px; }
.community-hero h1 { margin:0; font-family:var(--pixel); color:var(--green-bright); font-size:clamp(38px,7.5vw,82px); line-height:1.23; text-shadow:6px 6px 0 #173b0d,0 0 26px rgba(146,211,63,.18); }
.community-hero h1 span { color:var(--gold-soft); text-shadow:6px 6px 0 #5a3910,0 0 26px rgba(242,198,111,.15); }
.community-intro { max-width:760px; margin:24px auto 30px; color:#e8ede8; font-size:clamp(23px,2.7vw,31px); line-height:1.2; }
.community-hero-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:14px; }
.press-start { margin-top:28px; color:var(--orange-bright); font-family:var(--pixel); font-size:8px; letter-spacing:.08em; }
.community-welcome { background:#090d09; border-bottom:1px solid #28342b; }
.community-welcome-panel { display:grid; grid-template-columns:108px 1fr; gap:28px; align-items:center; padding:28px 32px; border:2px solid #334138; background:linear-gradient(135deg,rgba(25,36,27,.96),rgba(8,11,8,.98)); box-shadow:7px 7px 0 rgba(0,0,0,.4); }
.welcome-badge { width:92px; height:92px; display:grid; place-items:center; background:var(--green-bright); color:#0b100c; border:5px solid #d8efb2; box-shadow:5px 5px 0 #315b12; font-family:var(--pixel); font-size:25px; }
.community-welcome-panel h2 { margin:5px 0 10px; color:var(--gold-soft); font-family:var(--pixel); font-size:clamp(15px,2vw,22px); line-height:1.55; }
.community-welcome-panel p:last-child { margin:0; color:var(--gray); font-size:25px; }
.community-portals-section { background:radial-gradient(circle at 50% 0,rgba(212,163,78,.08),transparent 30%),#070907; }
.community-portals { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.community-portal { position:relative; min-height:170px; display:grid; grid-template-columns:58px 78px 1fr auto; align-items:center; gap:18px; padding:24px; border:2px solid #37423a; background:linear-gradient(135deg,#151b16,#090c09); box-shadow:6px 6px 0 rgba(0,0,0,.52); overflow:hidden; transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease; }
.community-portal::before { content:""; position:absolute; inset:0; opacity:.1; background-image:radial-gradient(circle at 1px 1px,currentColor 1px,transparent 1px); background-size:13px 13px; }
.community-portal > * { position:relative; z-index:1; }
.community-portal:hover { transform:translate(-2px,-2px); border-color:currentColor; box-shadow:8px 8px 0 rgba(0,0,0,.58),0 0 22px color-mix(in srgb,currentColor 18%,transparent); }
.portal-number { align-self:start; color:#758078; font-family:var(--pixel); font-size:9px; }
.portal-icon { width:68px; height:68px; display:grid; place-items:center; border:3px solid currentColor; background:#070907; font-family:var(--pixel); font-size:25px; box-shadow:4px 4px 0 rgba(0,0,0,.5); }
.portal-copy { display:grid; gap:9px; }
.portal-copy strong { font-family:var(--pixel); font-size:17px; line-height:1.3; }
.portal-copy small { color:var(--gray); font-size:21px; }
.portal-action { font-family:var(--pixel); font-size:9px; white-space:nowrap; }
.portal-youtube { color:#ff5b53; }
.portal-tiktok { color:#5de5dc; }
.portal-twitch { color:#b89cff; }
.portal-discord { color:#8aa2ff; }
.community-portal.is-unavailable { color:#737b75; cursor:not-allowed; filter:saturate(.2); }
.community-portal.is-unavailable .portal-action { color:var(--gold-soft); }
.portal-note { margin:22px 0 0; color:#8e9992; text-align:center; font-size:19px; }
.portal-note strong { color:var(--gold-soft); }
.community-next-section { padding-top:20px; background:#050705; }
.community-next-card { display:grid; grid-template-columns:90px 1fr auto; gap:25px; align-items:center; padding:30px; border:2px dashed #4a584d; background:linear-gradient(90deg,rgba(19,28,20,.95),rgba(8,11,8,.98)); }
.next-lock { width:76px; height:76px; display:grid; place-items:center; border:3px solid var(--gold); color:var(--gold-soft); font-family:var(--pixel); font-size:28px; background:#0a0d0a; }
.community-next-card h2 { margin:5px 0 8px; color:var(--green-bright); font-family:var(--pixel); font-size:clamp(15px,2vw,21px); line-height:1.5; }
.community-next-card p:last-child { margin:0; color:var(--gray); }
.next-status { border:2px solid var(--orange-bright); color:var(--orange-bright); padding:10px 12px; font-family:var(--pixel); font-size:8px; white-space:nowrap; }
@media(max-width:900px){.community-portals{grid-template-columns:1fr}.community-portal{grid-template-columns:48px 68px 1fr auto}.community-next-card{grid-template-columns:76px 1fr}.next-status{grid-column:2}}
@media(max-width:680px){.community-hero{min-height:610px}.community-hero-inner{padding-top:42px;padding-bottom:42px}.community-welcome-panel{grid-template-columns:1fr;text-align:center;padding:24px 20px}.welcome-badge{margin:auto}.community-portal{grid-template-columns:48px 58px 1fr;padding:19px 16px;gap:12px;min-height:145px}.portal-icon{width:56px;height:56px;font-size:20px}.portal-copy strong{font-size:13px}.portal-copy small{font-size:18px}.portal-action{grid-column:3;text-align:left}.community-next-card{grid-template-columns:1fr;text-align:center}.next-lock{margin:auto}.next-status{grid-column:auto;justify-self:center}.community-grid{transform:perspective(500px) rotateX(65deg) scale(2) translateY(35%)}}

/* Community Phase 2: Monthly Challenge */
.challenge-section { position:relative; background:radial-gradient(circle at 50% 0,rgba(146,211,63,.09),transparent 32%),linear-gradient(180deg,#080c08,#050705); border-top:1px solid #263127; }
.challenge-heading { display:flex; align-items:end; justify-content:space-between; gap:20px; }
.challenge-live { display:inline-flex; align-items:center; gap:9px; padding:10px 12px; border:2px solid var(--green-bright); color:var(--green-bright); background:#081008; font-family:var(--pixel); font-size:8px; white-space:nowrap; box-shadow:0 0 18px rgba(146,211,63,.12); }
.challenge-live i { width:8px; height:8px; border-radius:50%; background:var(--green-bright); box-shadow:0 0 10px var(--green-bright); animation:pulse 1.25s infinite; }
.challenge-console { margin-top:30px; border:3px solid #55605a; background:#111612; box-shadow:10px 10px 0 rgba(0,0,0,.62),inset 0 0 0 4px #202921; overflow:hidden; }
.challenge-screen { display:grid; grid-template-columns:minmax(260px,36%) 1fr; min-height:370px; margin:20px; border:4px solid #273429; background:radial-gradient(circle at 27% 42%,rgba(146,211,63,.18),transparent 27%),#020502; box-shadow:inset 0 0 36px #000; position:relative; overflow:hidden; }
.challenge-screen::after { content:""; position:absolute; inset:0; pointer-events:none; background:repeating-linear-gradient(0deg,rgba(255,255,255,.02) 0 1px,transparent 1px 4px); }
.challenge-game-art { min-height:330px; position:relative; display:grid; place-items:center; border-right:3px solid #2f3b31; overflow:hidden; background:linear-gradient(135deg,rgba(28,59,20,.75),rgba(5,12,6,.92)); }
.challenge-game-art::before,.challenge-game-art::after { content:""; position:absolute; width:190px; height:190px; border:3px solid rgba(242,198,111,.22); transform:rotate(45deg); }
.challenge-game-art::after { width:128px; height:128px; border-color:rgba(146,211,63,.2); }
.challenge-triforce { position:relative; z-index:2; color:var(--gold-soft); font-size:130px; line-height:1; text-shadow:0 0 24px rgba(242,198,111,.36),7px 7px 0 #49330d; transform:scaleX(1.2); }
.challenge-sword { position:absolute; z-index:3; font-family:serif; font-size:110px; color:#d9e5db; text-shadow:4px 4px 0 #293a2c; transform:translate(72px,62px) rotate(35deg); }
.challenge-pixels { position:absolute; inset:0; opacity:.16; background-image:linear-gradient(90deg,transparent 49%,#92d33f 50% 52%,transparent 53%),linear-gradient(transparent 49%,#92d33f 50% 52%,transparent 53%); background-size:28px 28px; }
.challenge-copy { position:relative; z-index:1; padding:42px 44px; align-self:center; }
.challenge-label { margin:0 0 12px; color:var(--orange-bright); font-family:var(--pixel); font-size:9px; letter-spacing:.1em; }
.challenge-copy h3 { margin:0; color:var(--gold-soft); font-family:var(--pixel); font-size:clamp(24px,4vw,43px); line-height:1.35; text-shadow:4px 4px 0 #4e330b; }
.challenge-system { color:#99a39c; font-size:20px; letter-spacing:.05em; margin:10px 0 28px; }
.challenge-objective { border-left:5px solid var(--green-bright); padding:17px 20px; background:rgba(146,211,63,.07); }
.challenge-objective span { display:block; color:var(--green-bright); font-family:var(--pixel); font-size:8px; margin-bottom:10px; }
.challenge-objective strong { display:block; color:#fff; font-family:var(--pixel); font-size:clamp(13px,2vw,18px); line-height:1.55; }
.challenge-objective p { margin:10px 0 0; color:#c4cdc6; font-size:21px; line-height:1.3; }
.challenge-dashboard { display:grid; grid-template-columns:repeat(4,1fr); border-top:2px solid #354037; border-bottom:2px solid #354037; background:#080b08; }
.challenge-stat { min-height:105px; display:grid; align-content:center; gap:10px; padding:18px 22px; border-right:1px solid #303a32; }
.challenge-stat:last-child { border-right:0; }
.challenge-stat span { color:#89938c; font-family:var(--pixel); font-size:7px; }
.challenge-stat strong { color:var(--gold-soft); font-family:var(--pixel); font-size:11px; line-height:1.45; }
.challenge-lower { display:grid; grid-template-columns:1.2fr .8fr; gap:28px; padding:30px; }
.challenge-rules ol { list-style:none; padding:0; margin:0; display:grid; gap:13px; }
.challenge-rules li { display:grid; grid-template-columns:42px 1fr; gap:13px; align-items:start; color:#cbd2cc; font-size:20px; line-height:1.3; }
.challenge-rules li span { display:grid; place-items:center; min-height:35px; border:2px solid #4d5b50; color:var(--green-bright); background:#090d09; font-family:var(--pixel); font-size:7px; }
.challenge-progress-card { padding:24px; border:2px solid #3b493e; background:linear-gradient(145deg,#151d16,#090c09); box-shadow:6px 6px 0 rgba(0,0,0,.4); }
.progress-top { display:flex; justify-content:space-between; gap:18px; align-items:end; }
.progress-top div { display:grid; gap:8px; }
.progress-top span:first-child { color:#8f9b92; font-family:var(--pixel); font-size:7px; }
.progress-top strong { color:#f2f5f2; font-family:var(--pixel); font-size:10px; line-height:1.4; }
.progress-percent { color:var(--green-bright); font-family:var(--pixel); font-size:20px; }
.challenge-meter { height:22px; margin:18px 0; border:3px solid #39463c; background:#030503; padding:3px; }
.challenge-meter span { display:block; height:100%; width:19%; background:repeating-linear-gradient(90deg,var(--green-bright) 0 13px,#5b9e24 13px 17px); box-shadow:0 0 12px rgba(146,211,63,.3); transition:width .45s ease; }
.challenge-progress-card p { min-height:48px; color:#aeb8b0; font-size:19px; line-height:1.3; }
.challenge-accept { width:100%; margin-top:6px; }
.challenge-accept.is-accepted { background:#233326; border-color:#92d33f; color:#bfe98a; cursor:default; }
.challenge-progress-card small { display:block; margin-top:12px; text-align:center; color:#747e76; font-size:15px; }
@media(max-width:900px){.challenge-screen{grid-template-columns:1fr}.challenge-game-art{min-height:260px;border-right:0;border-bottom:3px solid #2f3b31}.challenge-dashboard{grid-template-columns:repeat(2,1fr)}.challenge-stat:nth-child(2){border-right:0}.challenge-stat:nth-child(-n+2){border-bottom:1px solid #303a32}.challenge-lower{grid-template-columns:1fr}}
@media(max-width:680px){.challenge-heading{align-items:start;flex-direction:column}.challenge-console{margin-top:22px}.challenge-screen{margin:12px}.challenge-copy{padding:28px 20px}.challenge-game-art{min-height:220px}.challenge-triforce{font-size:100px}.challenge-sword{font-size:82px;transform:translate(57px,48px) rotate(35deg)}.challenge-dashboard{grid-template-columns:1fr}.challenge-stat,.challenge-stat:nth-child(2){border-right:0;border-bottom:1px solid #303a32}.challenge-stat:last-child{border-bottom:0}.challenge-lower{padding:20px 16px}.progress-top{align-items:start}.progress-percent{font-size:16px}}

/* Community Phase 3: Retro Wall Gallery */
.community-gallery-section { background:radial-gradient(circle at 20% 0,rgba(212,163,78,.1),transparent 28%),linear-gradient(180deg,#0b0d0b,#060806); border-top:1px solid #273128; }
.gallery-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; }
.gallery-count { padding:10px 12px; border:2px solid var(--gold); color:var(--gold-soft); background:#0c0d0b; font-family:var(--pixel); font-size:8px; white-space:nowrap; }
.gallery-intro { max-width:790px; color:#abb5ad; font-size:22px; line-height:1.35; margin:24px 0 34px; }
.community-gallery-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px 28px; padding:30px 24px 42px; border:3px solid #3d2c1f; background:radial-gradient(circle at 15px 15px,rgba(255,255,255,.045) 2px,transparent 3px),linear-gradient(135deg,#3c2418,#24150f); background-size:30px 30px,auto; box-shadow:inset 0 0 50px rgba(0,0,0,.45),8px 8px 0 rgba(0,0,0,.45); }
.gallery-card { position:relative; display:block; width:100%; padding:13px 13px 22px; border:0; color:#161816; background:#e8e2cf; box-shadow:7px 9px 0 rgba(0,0,0,.34); text-align:left; cursor:pointer; transition:transform .18s ease,box-shadow .18s ease; transform-origin:center top; }
.gallery-card:hover,.gallery-card:focus-visible { z-index:2; transform:rotate(0deg) translateY(-8px) scale(1.025); box-shadow:11px 15px 0 rgba(0,0,0,.38),0 0 24px rgba(242,198,111,.2); outline:3px solid var(--gold); }
.tilt-left { transform:rotate(-2.2deg); }.tilt-right { transform:rotate(2.1deg); }.tilt-left-soft { transform:rotate(-1deg); }.tilt-right-soft { transform:rotate(1.1deg); }
.gallery-photo { height:210px; display:grid; place-items:center; overflow:hidden; border:4px solid #1b1f1b; background:radial-gradient(circle,#263427,#0a0d0a 70%); }
.gallery-photo img { width:86%; height:86%; object-fit:contain; filter:drop-shadow(7px 9px 5px rgba(0,0,0,.55)); transition:transform .2s ease; }
.gallery-card:hover .gallery-photo img { transform:scale(1.06); }
.gallery-card-copy { display:grid; gap:8px; padding:18px 7px 0; }
.gallery-card-copy small { color:#8b4f1d; font-family:var(--pixel); font-size:7px; }
.gallery-card-copy strong { color:#162017; font-family:var(--pixel); font-size:13px; line-height:1.45; }
.gallery-card-copy em { color:#525a53; font-style:normal; font-family:var(--pixel); font-size:7px; }
.gallery-pin { position:absolute; top:-10px; left:50%; width:21px; height:21px; border-radius:50%; transform:translateX(-50%); background:var(--orange-bright); border:3px solid #ffc27d; box-shadow:2px 4px 0 rgba(0,0,0,.35); }
.gallery-victory { background:#eee1ae; }
.gallery-victory .gallery-photo { background:radial-gradient(circle,rgba(212,163,78,.28),#0b1109 70%); }
.gallery-callout { margin-top:34px; display:grid; grid-template-columns:78px 1fr auto; align-items:center; gap:24px; padding:26px 30px; border:2px solid #425044; background:linear-gradient(90deg,#141b15,#090c09); box-shadow:7px 7px 0 rgba(0,0,0,.4); }
.gallery-callout-icon { width:68px; height:68px; display:grid; place-items:center; border:3px solid var(--green-bright); color:var(--green-bright); background:#080b08; font-family:var(--pixel); font-size:25px; }
.gallery-callout h3 { margin:5px 0 8px; color:var(--gold-soft); font-family:var(--pixel); font-size:16px; line-height:1.4; }
.gallery-callout p:last-child { margin:0; color:#aab4ac; font-size:19px; }
.gallery-modal[hidden] { display:none; }
.gallery-modal { position:fixed; inset:0; z-index:9999; display:grid; place-items:center; padding:24px; background:rgba(0,0,0,.86); backdrop-filter:blur(5px); }
.gallery-modal-panel { width:min(850px,100%); display:grid; grid-template-columns:1fr 1fr; border:4px solid var(--gold); background:#0c110d; box-shadow:12px 12px 0 #000,0 0 35px rgba(242,198,111,.18); }
.gallery-modal-image { min-height:380px; display:grid; place-items:center; padding:28px; background:radial-gradient(circle,rgba(146,211,63,.16),#030503 72%); border-right:3px solid #3a443c; }
.gallery-modal-image img { width:100%; height:320px; object-fit:contain; filter:drop-shadow(9px 11px 7px #000); }
.gallery-modal-copy { align-self:center; padding:38px; }
.gallery-modal-copy h2 { color:var(--gold-soft); font-family:var(--pixel); font-size:24px; line-height:1.5; }
.gallery-modal-copy strong { display:block; margin:14px 0; color:var(--green-bright); font-family:var(--pixel); font-size:9px; }
.gallery-modal-copy p:last-child { color:#c2cac3; font-size:22px; line-height:1.35; }
.gallery-modal-close { position:fixed; top:22px; right:28px; z-index:2; width:48px; height:48px; border:3px solid var(--orange-bright); color:#fff; background:#1a0c08; font-size:34px; line-height:1; cursor:pointer; }
@media(max-width:950px){.community-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-callout{grid-template-columns:68px 1fr}.gallery-callout .btn{grid-column:2;justify-self:start}.gallery-modal-panel{grid-template-columns:1fr}.gallery-modal-image{min-height:280px;border-right:0;border-bottom:3px solid #3a443c}.gallery-modal-image img{height:240px}}
@media(max-width:620px){.gallery-heading{align-items:start;flex-direction:column}.community-gallery-grid{grid-template-columns:1fr;padding:24px 18px}.gallery-photo{height:230px}.gallery-callout{grid-template-columns:1fr;text-align:center}.gallery-callout-icon{margin:auto}.gallery-callout .btn{grid-column:auto;justify-self:center}.gallery-modal-copy{padding:28px 22px}.gallery-modal-close{top:12px;right:12px}}

/* Community Phase 4: Hall of Fame */
.hall-section { background:radial-gradient(circle at 50% 0,rgba(212,163,78,.13),transparent 30%),linear-gradient(180deg,#0d0c08,#070806); border-top:1px solid #3b3425; }
.hall-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; }
.hall-season { padding:10px 12px; border:2px solid var(--gold); color:var(--gold-soft); background:#111008; font-family:var(--pixel); font-size:8px; white-space:nowrap; box-shadow:4px 4px 0 #000; }
.hall-intro { max-width:790px; margin:24px 0 34px; color:#b4b8ae; font-size:22px; line-height:1.35; }
.hall-featured { display:grid; grid-template-columns:minmax(280px,36%) 1fr; border:3px solid var(--gold); background:linear-gradient(145deg,#17170f,#090b08); box-shadow:10px 10px 0 rgba(0,0,0,.55); overflow:hidden; }
.hall-featured-art { position:relative; min-height:470px; display:grid; place-items:center; padding:42px; background:radial-gradient(circle,rgba(146,211,63,.2),transparent 44%),repeating-linear-gradient(45deg,rgba(255,255,255,.025) 0 2px,transparent 2px 10px),#050805; border-right:3px solid #554526; }
.hall-featured-art::before { content:""; position:absolute; inset:24px; border:2px solid rgba(242,198,111,.35); box-shadow:inset 0 0 25px rgba(242,198,111,.08); }
.hall-featured-art img { position:relative; z-index:1; width:88%; max-height:280px; object-fit:contain; filter:drop-shadow(10px 13px 8px #000); }
.hall-featured-art > span { position:absolute; left:0; right:0; bottom:28px; text-align:center; color:var(--gold-soft); font-family:var(--pixel); font-size:9px; letter-spacing:.08em; }
.hall-crown { position:absolute; top:28px; left:50%; z-index:2; transform:translateX(-50%); color:var(--gold-soft); font-size:52px; text-shadow:0 0 18px rgba(242,198,111,.38); }
.hall-featured-copy { padding:42px; align-self:center; }
.hall-featured-copy h3 { margin:6px 0 12px; color:var(--gold-soft); font-family:var(--pixel); font-size:clamp(28px,5vw,52px); text-shadow:5px 5px 0 #49330d; }
.hall-quote { margin:0 0 28px; padding-left:18px; border-left:4px solid var(--green-bright); color:#d3d8d1; font-size:24px; line-height:1.35; font-style:italic; }
.hall-player-stats { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border:2px solid #384238; background:#070a07; }
.hall-player-stats div { display:grid; gap:8px; padding:17px 19px; border-right:1px solid #303a31; border-bottom:1px solid #303a31; }
.hall-player-stats div:nth-child(even) { border-right:0; }
.hall-player-stats div:nth-last-child(-n+2) { border-bottom:0; }
.hall-player-stats span { color:#89938b; font-family:var(--pixel); font-size:7px; }
.hall-player-stats strong { color:#f1e7c7; font-family:var(--pixel); font-size:9px; line-height:1.5; }
.hall-badges { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-top:22px; }
.hall-badge { min-height:106px; display:grid; place-items:center; align-content:center; gap:10px; padding:12px 7px; border:2px solid #4c543f; color:#c9cfbf; background:#0a0d09; cursor:pointer; box-shadow:4px 4px 0 #000; transition:transform .16s ease,border-color .16s ease,color .16s ease; }
.hall-badge:hover,.hall-badge:focus-visible,.hall-badge.is-active { transform:translateY(-4px); border-color:var(--gold); color:var(--gold-soft); outline:0; }
.hall-badge b { display:grid; place-items:center; width:38px; height:38px; border:2px solid currentColor; border-radius:50%; font-family:var(--pixel); font-size:11px; }
.hall-badge span { font-family:var(--pixel); font-size:6px; line-height:1.55; text-align:center; }
.hall-badge-description { min-height:24px; margin:15px 0 0; color:#9fa89f; font-size:17px; }
.hall-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; margin-top:32px; }
.hall-card { position:relative; min-height:260px; display:grid; align-content:start; justify-items:center; padding:28px 20px 24px; border:2px solid #454438; background:linear-gradient(180deg,#15150e,#090a08); text-align:center; box-shadow:6px 6px 0 rgba(0,0,0,.45); overflow:hidden; }
.hall-card::after { content:""; position:absolute; left:0; right:0; bottom:0; height:5px; background:linear-gradient(90deg,var(--green-bright),var(--gold),var(--orange-bright)); }
.hall-rank { position:absolute; top:10px; right:12px; color:#5b604f; font-family:var(--pixel); font-size:8px; }
.hall-card-icon { width:68px; height:68px; display:grid; place-items:center; margin-bottom:18px; border:3px solid var(--gold); border-radius:50%; background:#090b08; font-size:31px; box-shadow:0 0 20px rgba(212,163,78,.12); }
.hall-card p { margin:0 0 10px; color:var(--orange-bright); font-family:var(--pixel); font-size:7px; }
.hall-card h3 { margin:0 0 13px; color:var(--gold-soft); font-family:var(--pixel); font-size:12px; line-height:1.5; }
.hall-card small { color:#9ca59d; font-size:17px; line-height:1.3; }
.hall-nomination { display:grid; grid-template-columns:78px 1fr auto; align-items:center; gap:24px; margin-top:32px; padding:28px 30px; border:2px solid #4b543e; background:linear-gradient(90deg,#18180f,#0b0d09); box-shadow:7px 7px 0 rgba(0,0,0,.42); }
.hall-nomination-icon { width:68px; height:68px; display:grid; place-items:center; border:3px solid var(--gold); color:var(--gold-soft); background:#090a07; font-size:34px; }
.hall-nomination h3 { margin:5px 0 8px; color:var(--gold-soft); font-family:var(--pixel); font-size:16px; line-height:1.4; }
.hall-nomination p:last-child { margin:0; color:#aeb5ad; font-size:19px; }
@media(max-width:1050px){.hall-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hall-nomination{grid-template-columns:68px 1fr}.hall-nomination .btn{grid-column:2;justify-self:start}}
@media(max-width:860px){.hall-featured{grid-template-columns:1fr}.hall-featured-art{min-height:340px;border-right:0;border-bottom:3px solid #554526}.hall-featured-art img{max-height:220px}.hall-badges{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.hall-heading{align-items:start;flex-direction:column}.hall-featured-copy{padding:30px 20px}.hall-player-stats{grid-template-columns:1fr}.hall-player-stats div,.hall-player-stats div:nth-child(even){border-right:0;border-bottom:1px solid #303a31}.hall-player-stats div:last-child{border-bottom:0}.hall-grid{grid-template-columns:1fr}.hall-nomination{grid-template-columns:1fr;text-align:center}.hall-nomination-icon{margin:auto}.hall-nomination .btn{grid-column:auto;justify-self:center}}

/* Community Phase 5: RetroDad TV Guide */
.schedule-section{background:radial-gradient(circle at 80% 0,rgba(146,211,63,.1),transparent 28%),linear-gradient(180deg,#0a0d0a,#060706);border-top:1px solid #303b31}.schedule-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.schedule-signal{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid var(--green-bright);color:var(--green-bright);background:#081008;font-family:var(--pixel);font-size:8px;box-shadow:4px 4px 0 #000}.schedule-signal span,.schedule-led{display:inline-block;width:10px;height:10px;border-radius:50%;background:#ff4438;box-shadow:0 0 12px #ff4438;animation:schedulePulse 1.4s infinite}.schedule-intro{max-width:800px;margin:24px 0 34px;color:#adb6ae;font-size:22px;line-height:1.35}.schedule-console{border:4px solid #4a5147;background:#151914;box-shadow:12px 12px 0 rgba(0,0,0,.55),inset 0 0 0 5px #080a08;overflow:hidden}.schedule-console-top{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-bottom:3px solid #3d493f;background:linear-gradient(180deg,#252b24,#121612)}.schedule-console-top div{display:flex;align-items:center;gap:12px}.schedule-console-top strong,.schedule-console-top p{margin:0;font-family:var(--pixel);font-size:8px;line-height:1.5}.schedule-console-top strong{color:var(--gold-soft)}.schedule-console-top p{color:#99a79b;text-align:right}.schedule-grid{display:grid;gap:3px;padding:3px;background:#354037}.schedule-card{position:relative;display:grid;grid-template-columns:94px 1fr auto;align-items:stretch;min-height:190px;background:linear-gradient(90deg,#0a0d0a,#141a14);transition:background .18s ease,transform .18s ease}.schedule-card:hover{background:linear-gradient(90deg,#0c130b,#1a2419)}.schedule-card.is-next{background:linear-gradient(90deg,rgba(146,211,63,.17),#172018);box-shadow:inset 6px 0 0 var(--green-bright)}.schedule-card.is-next::after{content:"NEXT";position:absolute;top:12px;right:12px;padding:6px 8px;border:2px solid var(--green-bright);color:var(--green-bright);background:#071007;font-family:var(--pixel);font-size:6px}.schedule-channel{display:grid;place-items:center;align-content:center;gap:10px;border-right:3px solid #354037;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 2px,transparent 2px 6px),#090b09}.schedule-channel span{color:#7f897f;font-family:var(--pixel);font-size:7px}.schedule-channel strong{color:var(--gold-soft);font-family:var(--pixel);font-size:28px;text-shadow:3px 3px 0 #5e3e10}.schedule-card-copy{padding:26px 28px}.schedule-day-row{display:flex;justify-content:space-between;gap:18px}.schedule-day-row p,.schedule-day-row span{margin:0;font-family:var(--pixel);font-size:8px}.schedule-day-row p{color:var(--orange-bright)}.schedule-day-row span{color:#9ba49d}.schedule-card-copy h3{margin:12px 0 10px;color:var(--gold-soft);font-family:var(--pixel);font-size:18px;line-height:1.45}.schedule-card-copy>p{margin:0;color:#b5beb6;font-size:19px;line-height:1.35}.schedule-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.schedule-tags span{padding:6px 8px;border:1px solid #4a584b;color:#8fa092;background:#090c09;font-family:var(--pixel);font-size:6px}.schedule-reminder{align-self:center;margin:28px 24px;padding:14px 15px;border:2px solid var(--gold);color:var(--gold-soft);background:#100e08;font-family:var(--pixel);font-size:7px;line-height:1.45;cursor:pointer;box-shadow:4px 4px 0 #000;transition:transform .16s ease,color .16s ease,border-color .16s ease}.schedule-reminder:hover,.schedule-reminder:focus-visible{transform:translateY(-3px);border-color:var(--green-bright);color:var(--green-bright);outline:0}.schedule-reminder.is-saved{border-color:var(--green-bright);color:#071007;background:var(--green-bright)}.schedule-footer{display:grid;grid-template-columns:1fr 1.5fr auto;align-items:center;gap:24px;padding:22px 24px;border-top:3px solid #3d493f;background:#0b0e0b}.schedule-footer div{display:grid;gap:7px}.schedule-footer span{color:#78827a;font-family:var(--pixel);font-size:6px}.schedule-footer strong{color:#d2d8d1;font-family:var(--pixel);font-size:8px;line-height:1.5}@keyframes schedulePulse{50%{opacity:.35;box-shadow:0 0 3px #ff4438}}@media(max-width:900px){.schedule-card{grid-template-columns:78px 1fr}.schedule-reminder{grid-column:2;justify-self:start;margin:0 28px 26px}.schedule-footer{grid-template-columns:1fr 1fr}.schedule-footer .btn{grid-column:1/-1;justify-self:start}}@media(max-width:620px){.schedule-heading{align-items:start;flex-direction:column}.schedule-console-top{align-items:start;flex-direction:column}.schedule-console-top p{text-align:left}.schedule-card{grid-template-columns:1fr}.schedule-channel{display:flex;justify-content:flex-start;padding:14px 20px;border-right:0;border-bottom:2px solid #354037}.schedule-channel strong{font-size:18px}.schedule-card-copy{padding:22px 18px}.schedule-day-row{align-items:start;flex-direction:column;gap:8px}.schedule-reminder{grid-column:1;margin:0 18px 22px}.schedule-footer{grid-template-columns:1fr}.schedule-footer .btn{grid-column:auto}}

/* Phase 6: Activity Feed */
.activity-section{background:radial-gradient(circle at 15% 0,rgba(234,177,55,.09),transparent 30%),linear-gradient(180deg,#070907,#0b0e0b);border-top:1px solid #303b31}.activity-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.activity-online{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid var(--green-bright);color:var(--green-bright);background:#081008;font-family:var(--pixel);font-size:8px;box-shadow:4px 4px 0 #000}.activity-online span{width:10px;height:10px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 12px var(--green-bright);animation:activityPulse 1.2s infinite}.activity-ticker{display:grid;grid-template-columns:auto 1fr auto;align-items:center;margin:25px 0 22px;border:3px solid #465248;background:#030503;box-shadow:8px 8px 0 rgba(0,0,0,.5);overflow:hidden}.activity-ticker-label{align-self:stretch;display:grid;place-items:center;padding:13px 16px;background:var(--orange-bright);color:#160d03;font-family:var(--pixel);font-size:7px}.activity-ticker-window{overflow:hidden;padding:0 18px}.activity-ticker-window p{margin:0;color:var(--gold-soft);font-family:var(--pixel);font-size:8px;line-height:1.55;white-space:nowrap;animation:tickerFade .4s ease}.activity-ticker-signal{padding:0 16px;color:#ff4438;text-shadow:0 0 10px #ff4438;animation:activityPulse 1s infinite}.activity-controls{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}.activity-filter{padding:11px 14px;border:2px solid #465248;background:#090c09;color:#9da79f;font-family:var(--pixel);font-size:7px;cursor:pointer;box-shadow:3px 3px 0 #000}.activity-filter:hover,.activity-filter:focus-visible{color:var(--gold-soft);border-color:var(--gold);outline:0}.activity-filter.is-active{color:#071007;background:var(--green-bright);border-color:var(--green-bright)}.activity-console{border:4px solid #4a5147;background:#111511;box-shadow:12px 12px 0 rgba(0,0,0,.55),inset 0 0 0 5px #070907}.activity-console-bar{display:flex;justify-content:space-between;gap:20px;padding:16px 20px;border-bottom:3px solid #364137;background:#20261f}.activity-console-bar span,.activity-console-bar strong{font-family:var(--pixel);font-size:7px;line-height:1.5}.activity-console-bar span{color:var(--gold-soft)}.activity-console-bar strong{color:#8f9c91}.activity-list{display:grid;gap:2px;padding:2px;background:#303a31}.activity-item{display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:20px;min-height:126px;padding:18px 20px;background:linear-gradient(90deg,#080b08,#111711);transition:opacity .2s ease,transform .2s ease,background .2s ease}.activity-item:hover{background:linear-gradient(90deg,#0b100b,#172018)}.activity-item[hidden]{display:none}.activity-item.is-read{opacity:.56}.activity-item.is-read .activity-read{border-color:#475047;color:#657068;background:#090b09}.activity-icon{display:grid;place-items:center;width:64px;height:64px;border:3px solid #4b574d;background:#070907;font-size:27px;box-shadow:5px 5px 0 #000}.activity-icon.achievement{border-color:var(--gold);background:rgba(234,177,55,.08)}.activity-icon.community{border-color:var(--green-bright);background:rgba(146,211,63,.07)}.activity-icon.stream{border-color:#db5549;background:rgba(219,85,73,.07)}.activity-copy>div{display:flex;justify-content:space-between;gap:18px}.activity-copy span,.activity-copy time{font-family:var(--pixel);font-size:6px}.activity-copy span{color:var(--orange-bright)}.activity-copy time{color:#778178}.activity-copy h3{margin:9px 0 7px;color:var(--gold-soft);font-family:var(--pixel);font-size:11px;line-height:1.55}.activity-copy p{margin:0;color:#abb5ad;font-size:18px}.activity-read{min-width:64px;padding:10px 9px;border:2px solid var(--green-bright);color:var(--green-bright);background:#071007;font-family:var(--pixel);font-size:6px;cursor:pointer}.activity-read:hover,.activity-read:focus-visible{color:#071007;background:var(--green-bright);outline:0}.activity-console-footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:22px;padding:20px;border-top:3px solid #364137;background:#090c09}.activity-console-footer div{display:grid;gap:6px}.activity-console-footer span{color:#707b72;font-family:var(--pixel);font-size:6px}.activity-console-footer strong{color:#c4ccc5;font-family:var(--pixel);font-size:7px;line-height:1.5}@keyframes activityPulse{50%{opacity:.35}}@keyframes tickerFade{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:800px){.activity-item{grid-template-columns:64px 1fr}.activity-read{grid-column:2;justify-self:start}.activity-console-footer{grid-template-columns:1fr 1fr}.activity-console-footer .btn{grid-column:1/-1;justify-self:start}}@media(max-width:600px){.activity-heading{align-items:start;flex-direction:column}.activity-ticker{grid-template-columns:1fr auto}.activity-ticker-label{grid-column:1/-1;padding:10px}.activity-ticker-window p{white-space:normal}.activity-item{grid-template-columns:1fr;padding:20px 16px}.activity-icon{width:54px;height:54px}.activity-copy>div{align-items:start;flex-direction:column;gap:7px}.activity-read{grid-column:1}.activity-console-bar{align-items:start;flex-direction:column}.activity-console-footer{grid-template-columns:1fr}.activity-console-footer .btn{grid-column:auto}}


/* Community Phase 7: Interactive Retro Wall */
.retro-wall-section{background:radial-gradient(circle at 50% 0,rgba(190,127,54,.15),transparent 32%),linear-gradient(180deg,#0b0d0a,#070706);border-top:1px solid #3b3124}.retro-wall-heading{display:flex;justify-content:space-between;align-items:end;gap:20px}.retro-wall-status{display:flex;align-items:center;gap:10px;padding:10px 12px;border:2px solid var(--green-bright);color:var(--green-bright);background:#071007;font-family:var(--pixel);font-size:8px;box-shadow:4px 4px 0 #000}.retro-wall-status span{width:9px;height:9px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 12px var(--green-bright);animation:wallPulse 1.4s infinite}.retro-wall-intro{max-width:850px;margin:24px 0 34px;color:#b6bdb6;font-size:22px;line-height:1.4}.retro-corkboard{position:relative;min-height:980px;padding:42px;border:12px solid #25170f;outline:4px solid #62432a;background:radial-gradient(circle at 12px 12px,rgba(255,255,255,.07) 1px,transparent 2px),radial-gradient(circle at 25px 28px,rgba(0,0,0,.1) 1px,transparent 2px),linear-gradient(135deg,#865b34,#684424 55%,#7b502d);background-size:32px 32px,38px 38px,auto;box-shadow:inset 0 0 80px rgba(0,0,0,.4),14px 14px 0 rgba(0,0,0,.55);overflow:hidden}.retro-corkboard::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 49%,rgba(255,255,255,.025) 50%,transparent 51%);background-size:8px 100%}.wall-photo{position:absolute;z-index:2;display:grid;gap:12px;padding:13px 13px 20px;border:0;color:#151814;background:#eee8d7;box-shadow:9px 12px 0 rgba(0,0,0,.32);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;transform-origin:center top}.wall-photo:hover,.wall-photo:focus-visible{z-index:12;transform:rotate(0deg) translateY(-12px) scale(1.035);box-shadow:14px 20px 0 rgba(0,0,0,.38),0 0 26px rgba(255,220,135,.24);outline:4px solid var(--gold)}.wall-image{height:180px;display:grid;place-items:center;overflow:hidden;border:4px solid #20251f;background:radial-gradient(circle,#2a382b,#080b08 72%)}.wall-image img{width:88%;height:88%;object-fit:contain;filter:drop-shadow(7px 9px 5px rgba(0,0,0,.55));transition:transform .2s ease}.wall-photo:hover .wall-image img{transform:scale(1.08)}.wall-caption{display:grid;gap:8px;padding:5px 5px 0;text-align:center}.wall-caption strong{font-family:var(--pixel);font-size:10px;line-height:1.45}.wall-caption em{color:#62675f;font-family:var(--pixel);font-size:6px;font-style:normal}.wall-pin{position:absolute;top:-10px;left:50%;width:22px;height:22px;border:3px solid rgba(255,255,255,.55);border-radius:50%;transform:translateX(-50%);box-shadow:2px 4px 0 rgba(0,0,0,.4)}.wall-pin.red{background:#cf4436}.wall-pin.blue{background:#4386c7}.wall-pin.green{background:#75ad45}.wall-pin.gold{background:#d6a638}.wall-ribbon{position:absolute;z-index:2;top:20px;left:-12px;padding:10px 14px;background:var(--orange-bright);color:#180c03;font-family:var(--pixel);font-size:7px;box-shadow:4px 5px 0 rgba(0,0,0,.35)}.wall-featured{top:60px;left:5%;width:39%;padding:18px 18px 26px}.wall-featured .wall-image{height:300px}.wall-featured .wall-caption strong{font-size:14px}.wall-small{width:23%}.wall-medium{width:27%}.wall-photo:nth-of-type(2){top:82px;right:5%}.wall-photo:nth-of-type(4){top:365px;right:7%}.wall-photo:nth-of-type(6){top:635px;left:7%}.wall-photo:nth-of-type(8){top:660px;right:8%}.rotate-left{transform:rotate(-3deg)}.rotate-right{transform:rotate(3deg)}.wall-note{position:absolute;z-index:3;width:220px;min-height:170px;display:grid;align-content:center;gap:10px;padding:30px 22px 22px;color:#28251e;box-shadow:7px 9px 0 rgba(0,0,0,.28);text-align:center;font-family:cursive}.wall-note strong{font-family:var(--pixel);font-size:10px;line-height:1.5}.wall-note p{margin:0;font-size:21px;line-height:1.2}.wall-note small{font-family:var(--pixel);font-size:6px;line-height:1.5}.note-yellow{top:70px;left:48%;background:#f2df79}.note-pink{top:420px;left:38%;background:#efa6b0}.note-blue{top:690px;left:39%;background:#9dcce2}.wall-tape{position:absolute;top:-13px;left:50%;width:76px;height:27px;transform:translateX(-50%) rotate(-2deg);background:rgba(235,226,181,.75);box-shadow:0 2px 2px rgba(0,0,0,.14)}.wall-achievement{position:absolute;z-index:5;width:130px;height:130px;display:grid;place-items:center;align-content:center;gap:10px;border:5px solid #d5a536;border-radius:50%;color:#f5df9b;background:radial-gradient(circle,#514213,#151307 68%);box-shadow:7px 9px 0 rgba(0,0,0,.35),inset 0 0 0 4px #7c611d;cursor:pointer;transition:transform .18s ease,filter .18s ease}.wall-achievement:hover,.wall-achievement:focus-visible{z-index:13;transform:scale(1.12) rotate(0deg);filter:drop-shadow(0 0 12px rgba(242,198,111,.6));outline:0}.wall-achievement span{font-size:35px}.wall-achievement strong{font-family:var(--pixel);font-size:6px;line-height:1.5;text-align:center}.wall-achievement:nth-of-type(3){top:270px;left:48%;transform:rotate(-7deg)}.wall-achievement:nth-of-type(5){top:505px;left:6%;transform:rotate(5deg)}.wall-achievement:nth-of-type(7){top:805px;left:66%;transform:rotate(-4deg)}.badge-heart{border-color:#c8524c;color:#ffc1b7;background:radial-gradient(circle,#55201e,#160908 68%);box-shadow:7px 9px 0 rgba(0,0,0,.35),inset 0 0 0 4px #772d28}.badge-controller{border-color:#81b74c;color:#c9f39c;background:radial-gradient(circle,#253d17,#0b1207 68%);box-shadow:7px 9px 0 rgba(0,0,0,.35),inset 0 0 0 4px #3e6725}.wall-message{margin:28px 0 0;padding:15px 18px;border:2px solid #465248;background:#050805;color:var(--gold-soft);font-family:var(--pixel);font-size:8px;line-height:1.6;text-align:center;box-shadow:5px 5px 0 #000}.retro-wall-footer{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:22px;margin-top:18px;padding:22px;border:3px solid #3d463e;background:#0b0f0b;box-shadow:8px 8px 0 rgba(0,0,0,.45)}.retro-wall-footer div{display:grid;gap:7px}.retro-wall-footer span{color:#7e8980;font-family:var(--pixel);font-size:6px}.retro-wall-footer strong{color:#d8ded7;font-family:var(--pixel);font-size:8px;line-height:1.5}@keyframes wallPulse{50%{opacity:.35}}@media(max-width:900px){.retro-corkboard{min-height:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;padding:34px}.wall-photo,.wall-note,.wall-achievement{position:relative!important;inset:auto!important;width:100%!important;transform:rotate(0deg)!important}.wall-featured{grid-column:1/-1}.wall-featured .wall-image{height:280px}.wall-achievement{width:140px!important;height:140px!important;justify-self:center;align-self:center}.retro-wall-footer{grid-template-columns:1fr 1fr}.retro-wall-footer .btn{grid-column:1/-1;justify-self:start}}@media(max-width:620px){.retro-wall-heading{align-items:start;flex-direction:column}.retro-corkboard{grid-template-columns:1fr;padding:25px 18px}.wall-featured{grid-column:auto}.wall-featured .wall-image,.wall-image{height:230px}.wall-note{min-height:150px}.retro-wall-footer{grid-template-columns:1fr}.retro-wall-footer .btn{grid-column:auto}.retro-wall-intro{font-size:19px}}
