:root { --bg:#03070a; --panel:#081116; --panel2:#0b171d; --line:#1c3941; --cyan:#19d7e6; --teal:#2bbbad; --blue:#3988ff; --text:#f1f5f6; --muted:#94a5aa; --danger:#ff405c; --gold:#efc75e; --radius:16px; color-scheme:dark; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:radial-gradient(circle at 80% 0,#071d2f 0,transparent 34rem),linear-gradient(180deg,#020507,var(--bg)); color:var(--text); font:16px/1.55 Inter,Segoe UI,Arial,sans-serif; }
a { color:inherit; }
.shell { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.hero { min-height:680px; border-bottom:1px solid rgba(25,215,230,.35); background-image:linear-gradient(90deg,rgba(0,4,7,.58) 0%,rgba(0,5,8,.5) 38%,rgba(0,5,10,.12) 67%,rgba(0,4,8,.04) 100%),linear-gradient(180deg,rgba(0,0,0,.04) 54%,rgba(1,6,9,.88) 100%),url("/media/alpha-hero-background.png"); background-position:center center; background-size:cover; position:relative; overflow:hidden; isolation:isolate; }
.hero::after { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 78% 35%,rgba(0,118,255,.12),transparent 28rem),linear-gradient(180deg,transparent 65%,rgba(0,0,0,.46)); box-shadow:inset 0 0 90px rgba(0,0,0,.75); }
.nav { height:96px; display:flex; align-items:center; justify-content:space-between; position:relative; z-index:2; }
.brand { display:flex; align-items:center; gap:16px; text-decoration:none; }
.brand-badge { width:68px; height:68px; object-fit:contain; flex:0 0 auto; filter:drop-shadow(0 0 10px rgba(25,215,230,.5)); }
.brand-name { color:#f7fafb; font:800 1.12rem/1 Georgia,Times New Roman,serif; letter-spacing:.19em; text-shadow:0 2px 8px rgba(0,0,0,.95),0 0 18px rgba(25,215,230,.2); white-space:nowrap; }
.nav-links { display:flex; align-items:center; gap:6px; padding:6px; border:1px solid rgba(85,217,238,.24); border-radius:12px; background:rgba(1,8,13,.74); box-shadow:0 8px 28px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.04); backdrop-filter:blur(8px); }
.nav-links a { position:relative; color:#f5f9fb; text-decoration:none; padding:10px 14px; border-radius:8px; font-size:.92rem; font-weight:800; text-transform:uppercase; letter-spacing:.09em; text-shadow:0 2px 8px rgba(0,0,0,.95); transition:color .18s ease,background-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.nav-links a:hover,.nav-links a:focus-visible { color:#fff; background:rgba(15,185,211,.2); box-shadow:inset 0 0 0 1px rgba(68,225,242,.42),0 0 18px rgba(0,195,230,.17); transform:translateY(-1px); outline:none; }
.menu { display:none; border:1px solid var(--line); background:var(--panel); color:white; padding:9px 14px; border-radius:9px; }
.hero-content { position:relative; z-index:1; padding:96px 0 118px; }
.eyebrow { color:var(--cyan); font-weight:800; letter-spacing:.18em; font-size:.78rem; margin:0 0 10px; }
h1,h2,h3 { font-family:Georgia,Times New Roman,serif; margin:0; }
h1 { max-width:760px; font-size:clamp(3rem,6vw,5.7rem); line-height:.95; letter-spacing:-.045em; text-shadow:0 3px 18px rgba(0,0,0,.98),0 0 46px rgba(0,0,0,.9); }
h1 span { color:transparent; -webkit-text-stroke:1px #9eeaf2; text-shadow:0 0 30px rgba(25,215,230,.15); }
.lede { max-width:680px; color:#b7c5c9; font-size:1.12rem; margin:30px 0; }
.system-pill { display:inline-flex; align-items:center; gap:10px; padding:9px 14px; border:1px solid var(--line); border-radius:999px; background:rgba(4,13,17,.78); color:var(--muted); font-size:.85rem; }
.pulse { width:8px; height:8px; border-radius:50%; background:var(--teal); box-shadow:0 0 14px var(--teal); }
.section { padding:90px 0 30px; scroll-margin-top:30px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:28px; }
h2 { font-size:clamp(2rem,4vw,3.6rem); }
.count { border:1px solid rgba(255,64,92,.5); color:#ff7a8e; background:rgba(255,64,92,.08); border-radius:999px; padding:6px 12px; font-size:.78rem; font-weight:800; }
.card-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; }
.card,.empty,.spotlight-card,.leaderboard,.schedule-item { border:1px solid var(--line); background:linear-gradient(145deg,rgba(12,25,31,.96),rgba(5,11,15,.96)); border-radius:var(--radius); overflow:hidden; }
.empty { grid-column:1/-1; padding:48px; text-align:center; color:var(--muted); }
.card-image { aspect-ratio:16/9; width:100%; object-fit:cover; background:#061219; }
.creator-image { display:block; object-position:center; border-bottom:1px solid var(--line); }
.creator-image-fallback { display:grid; place-items:center; position:relative; overflow:hidden; border-bottom:1px solid var(--line); background:radial-gradient(circle at 50% 42%,rgba(25,215,230,.24),transparent 36%),linear-gradient(145deg,#0b2730,#03090d 68%); }
.creator-image-fallback::before { content:""; position:absolute; width:42%; aspect-ratio:1; border:1px solid rgba(25,215,230,.32); transform:rotate(45deg); box-shadow:0 0 38px rgba(25,215,230,.16),inset 0 0 28px rgba(25,215,230,.08); }
.creator-image-fallback span { position:relative; z-index:1; color:#dffcff; font:800 clamp(2rem,4vw,3.25rem)/1 Georgia,serif; letter-spacing:.08em; text-shadow:0 0 22px rgba(25,215,230,.72); }
.card-body { padding:20px; }
.card h3 { font-size:1.4rem; }
.meta,.card p { color:var(--muted); }
.tag-list { display:flex; gap:7px; flex-wrap:wrap; margin:15px 0; }
.tag { padding:4px 9px; border:1px solid var(--line); border-radius:999px; color:#a9c1c7; font-size:.74rem; }
.actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:15px; }
.button { display:inline-flex; align-items:center; justify-content:center; padding:9px 13px; border-radius:9px; background:linear-gradient(135deg,#087e9a,var(--blue)); text-decoration:none; font-weight:800; font-size:.82rem; }
.button.secondary { background:#101e24; border:1px solid var(--line); color:#b8c9cd; }
.spotlight-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.spotlight-card { padding:28px; position:relative; }
.spotlight-card::before { content:""; position:absolute; width:150px; height:150px; right:-50px; top:-50px; border-radius:50%; background:var(--cyan); filter:blur(90px); opacity:.16; }
.spotlight-card.month { border-color:rgba(239,199,94,.42); }
.spotlight-label { color:var(--gold); font-weight:800; font-size:.75rem; letter-spacing:.16em; }
.search input { width:min(320px,70vw); padding:11px 14px; border-radius:10px; background:#071116; border:1px solid var(--line); color:white; }
.schedule-list { display:grid; gap:10px; }
.schedule-item { padding:15px 18px; display:grid; grid-template-columns:minmax(160px,1fr) 2fr auto; gap:20px; align-items:center; }
.leaderboard-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.leaderboard { padding:22px; }
.leaderboard h3 { color:var(--cyan); margin-bottom:14px; }
.leader-row { display:grid; grid-template-columns:28px 1fr auto; gap:8px; padding:10px 0; border-bottom:1px solid rgba(28,57,65,.65); }
.leader-row:last-child { border:0; }
.leader-score { color:var(--gold); font-weight:800; }
footer { margin-top:90px; border-top:1px solid var(--line); color:var(--muted); }
footer .shell { padding:30px 0; display:flex; justify-content:space-between; gap:20px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:800px) { .shell{width:min(100% - 28px,1180px)} .menu{display:block}.nav-links{display:none;position:absolute;top:82px;right:0;align-items:stretch;flex-direction:column;gap:2px;background:rgba(3,13,19,.96);border:1px solid rgba(85,217,238,.38);border-radius:12px;padding:8px;min-width:210px}.nav-links.open{display:flex}.nav-links a{padding:12px 14px}.hero{min-height:560px;background-position:67% 32%}.hero::after{box-shadow:inset 0 0 65px rgba(0,0,0,.82)}.hero-content{padding:74px 0 86px}.spotlight-grid,.leaderboard-grid{grid-template-columns:1fr}.section{padding-top:65px}.section-heading{align-items:start;flex-direction:column}.schedule-item{grid-template-columns:1fr;gap:5px}.schedule-item .button{justify-self:start}footer .shell{flex-direction:column}.brand-badge{width:54px;height:54px}.brand-name{font-size:.88rem;letter-spacing:.13em} }
@media (max-width:480px) { h1{font-size:2.8rem}.hero{min-height:470px}.card-grid{grid-template-columns:1fr}.spotlight-card{padding:22px}.empty{padding:32px 18px} }
