
:root{
  --bg:#04070a;--bg2:#071017;--panel:#0a151c;--panel2:#0d1c24;
  --text:#effcff;--muted:#93a8b0;--cyan:#8df2ff;--cyan2:#30d5e9;
  --line:rgba(141,242,255,.14);--line2:rgba(141,242,255,.26);--max:1220px;
  --shadow:0 18px 50px rgba(0,0,0,.28)
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:
radial-gradient(circle at 20% 0,rgba(48,213,233,.09),transparent 32rem),
linear-gradient(180deg,#04070a,#05090d 45%,#04070a);color:var(--text);
font:16px/1.65 Inter,system-ui,-apple-system,"Segoe UI",sans-serif}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}
.wrap{max-width:var(--max);margin:auto}.header{position:sticky;top:0;z-index:60;background:rgba(4,7,10,.84);
backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}
.nav{height:78px;padding:0 22px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:11px;align-items:center}
.brand img{width:50px;height:50px;object-fit:contain}.brand b{display:block;letter-spacing:.08em}.brand small{display:block;color:var(--muted)}
.links{display:flex;gap:17px;align-items:center}.links a:not(.btn):hover{color:var(--cyan)}.hamb{display:none;background:transparent;color:#fff;
border:1px solid var(--line);padding:8px 11px;border-radius:9px}.hero{min-height:88vh;display:grid;place-items:center;padding:72px 22px;position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background-image:
linear-gradient(rgba(141,242,255,.038) 1px,transparent 1px),
linear-gradient(90deg,rgba(141,242,255,.038) 1px,transparent 1px);background-size:44px 44px;
mask-image:linear-gradient(black,transparent 90%)}
.hero-grid{width:100%;max-width:var(--max);display:grid;grid-template-columns:1.05fr .95fr;gap:58px;align-items:center;position:relative}
.eyebrow{color:var(--cyan2);font-size:.74rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.hero h1{font-size:clamp(3.1rem,7vw,6.9rem);line-height:.9;letter-spacing:-.067em;margin:12px 0 24px}.hero h1 span{color:var(--cyan)}
.lead{color:#bdccd1;font-size:1.14rem;max-width:740px}.buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:0 20px;border-radius:10px;border:1px solid var(--line);
font-weight:850;transition:.2s;background:transparent;color:var(--text)}.btn:hover{transform:translateY(-2px);border-color:var(--line2)}
.btn.primary{background:linear-gradient(135deg,var(--cyan),var(--cyan2));color:#031014;border:0;box-shadow:0 0 30px rgba(48,213,233,.18)}
.btn.small{min-height:40px;padding:0 14px;font-size:.9rem}.crest{min-height:540px;display:grid;place-items:center;position:relative}.crest:before{content:"";
position:absolute;width:390px;height:390px;background:rgba(48,213,233,.17);filter:blur(92px);border-radius:50%}.crest img{position:relative;width:min(100%,630px);
filter:drop-shadow(0 25px 50px #000)}.stats{display:grid;grid-template-columns:repeat(3,1fr);max-width:620px;margin-top:34px;padding-top:20px;border-top:1px solid var(--line)}
.stats b{display:block;color:var(--cyan);font-size:1.5rem}.stats span{color:var(--muted);font-size:.8rem}.ticker{border-block:1px solid var(--line);background:rgba(141,242,255,.024)}
.ticker-track{max-width:var(--max);margin:auto;padding:13px 22px;display:flex;justify-content:space-between;gap:24px;color:#b9cbd1;font-size:.82rem;letter-spacing:.06em}
.ticker strong{color:var(--cyan)}.section{padding:96px 22px}.alt{background:rgba(255,255,255,.017);border-block:1px solid var(--line)}.heading{margin-bottom:34px}
.heading h2,.subhero h1{font-size:clamp(2rem,4.4vw,3.8rem);line-height:1.05;margin:7px 0 12px}.heading>p:last-child{max-width:760px;color:var(--muted)}
.grid2{display:grid;grid-template-columns:1.15fr .85fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card,.panel,.quote,.cta,.statcard{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.013));
padding:27px;box-shadow:var(--shadow)}.card p,.panel p,.quote p,.statcard p{color:var(--muted)}.quote{display:flex;flex-direction:column;justify-content:center}.quote strong{font-size:1.5rem;line-height:1.35}
.gamegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.game{min-height:265px;transition:.2s}.game:hover{transform:translateY(-4px);border-color:var(--line2)}
.ico{font-size:2.2rem}.tag{font-size:.7rem;color:var(--cyan2)!important;font-weight:900;letter-spacing:.15em}.game h3{font-size:1.35rem;margin:5px 0}.game a,.textlink{color:var(--cyan);font-weight:800}
.timeline{position:relative}.timeline:before{content:"";position:absolute;left:78px;top:0;bottom:0;width:1px;background:var(--line)}.event{display:grid;grid-template-columns:105px 1fr;gap:22px;padding:20px 0;position:relative}
.event:before{content:"";position:absolute;left:72px;top:33px;width:12px;height:12px;border:2px solid var(--cyan2);background:var(--bg);border-radius:50%}.event.live:before{background:var(--cyan);box-shadow:0 0 20px rgba(48,213,233,.5)}
.year{font-size:.78rem;font-weight:900;color:var(--cyan2)}.event p{margin:0;color:var(--muted)}.values{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.value span{font-size:2rem}.value h3{margin:8px 0}
.newsgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.news time{color:var(--cyan2);font-size:.75rem;font-weight:900}.news h3{margin:7px 0}.join{display:grid;grid-template-columns:210px 1fr;gap:34px;align-items:center}
.join img{width:210px;filter:drop-shadow(0 18px 35px #000)}.subhero{text-align:center;padding:82px 22px 58px;border-bottom:1px solid var(--line)}.subhero img{width:150px;margin:0 auto 20px}.subhero .lead{margin-inline:auto}
.content{max-width:920px;margin:auto}.content h2{margin-top:42px}.content p,.content li{color:#bac9cf}.content .panel{margin:22px 0}.division-list{display:grid;gap:16px}.division-row{display:grid;grid-template-columns:70px 1fr auto;gap:18px;align-items:center}
.teamgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.role{color:var(--cyan2);font-size:.75rem;font-weight:900;letter-spacing:.12em}.faq{display:grid;gap:12px}.faq details{border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.02);padding:16px 18px}.faq summary{cursor:pointer;font-weight:800}.faq p{color:var(--muted)}
.badges{display:flex;flex-wrap:wrap;gap:8px;margin:15px 0}.badge{border:1px solid var(--line);border-radius:999px;padding:5px 10px;color:#bcd0d6;font-size:.8rem}.hero-mini{display:grid;grid-template-columns:1fr 420px;gap:32px;align-items:center}
.hero-mini .symbol{font-size:8rem;text-align:center;filter:drop-shadow(0 0 28px rgba(48,213,233,.15))}.checklist{display:grid;gap:10px;margin:18px 0}.check{display:flex;gap:10px;align-items:flex-start}.check span{color:var(--cyan)}
.form{display:grid;gap:14px}.form label{display:grid;gap:6px;font-weight:800}.form input,.form textarea,.form select{width:100%;border:1px solid var(--line);border-radius:10px;background:#071017;color:#fff;padding:12px 13px;outline:none}.form input:focus,.form textarea:focus,.form select:focus{border-color:var(--cyan2)}.form textarea{min-height:120px;resize:vertical}
.notice{padding:14px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(48,213,233,.04);color:#bcd0d6}.output{white-space:pre-wrap;background:#020507;border:1px solid var(--line);padding:18px;border-radius:12px;color:#d8edf2;min-height:140px}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-card{aspect-ratio:16/10;display:grid;place-items:center;border:1px dashed var(--line2);border-radius:16px;background:linear-gradient(135deg,#08131a,#0c1b23);color:var(--muted);text-align:center;padding:18px}
.eventcards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.eventcard .date{display:inline-block;color:var(--cyan2);font-size:.76rem;font-weight:900;letter-spacing:.12em}.footer{padding:30px 22px;border-top:1px solid var(--line);background:#020406}.footer .wrap{display:grid;grid-template-columns:1fr auto;gap:24px;color:var(--muted)}
.footer b{color:white}.footer a{color:var(--cyan)}.domain{font-weight:900;color:var(--cyan)!important}.legal{font-size:.86rem;text-align:right}
@media(max-width:980px){.links{display:none;position:absolute;top:78px;left:14px;right:14px;flex-direction:column;align-items:flex-start;padding:18px;background:#071016;border:1px solid var(--line);border-radius:14px}.links.open{display:flex}.hamb{display:block}.hero-grid,.grid2,.join,.hero-mini{grid-template-columns:1fr}.crest{min-height:auto}.crest img{width:min(78vw,520px)}.gamegrid,.newsgrid,.teamgrid,.grid3,.gallery,.eventcards{grid-template-columns:1fr 1fr}.values{grid-template-columns:1fr 1fr}.ticker-track{flex-wrap:wrap;justify-content:center}}
@media(max-width:640px){.brand div{display:none}.gamegrid,.newsgrid,.teamgrid,.grid3,.gallery,.eventcards,.values{grid-template-columns:1fr}.stats{grid-template-columns:1fr;gap:10px}.timeline:before{left:9px}.event{grid-template-columns:1fr;padding-left:32px;gap:2px}.event:before{left:3px}.division-row{grid-template-columns:48px 1fr}.division-row .btn{grid-column:1/-1}.footer .wrap{grid-template-columns:1fr}.legal{text-align:left}.hero-mini .symbol{font-size:5.5rem}}


/* QPS Member Hub */
.portal-shell{max-width:1180px;margin:0 auto;padding:48px 22px 90px}
.portal-top{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}
.portal-user{display:flex;align-items:center;gap:12px}.portal-user img{width:48px;height:48px;border-radius:50%;border:1px solid var(--line)}
.portal-grid{display:grid;grid-template-columns:260px 1fr;gap:20px}
.portal-nav{align-self:start;position:sticky;top:100px}.portal-nav a{display:block;padding:10px 12px;border-radius:9px;color:#b9cbd1}
.portal-nav a:hover,.portal-nav a.active{background:rgba(141,242,255,.06);color:var(--cyan)}
.portal-main{min-width:0}.portal-card{border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.013));padding:24px;margin-bottom:18px}
.portal-card h2,.portal-card h3{margin-top:0}.status-ok{color:#7df5bd}.status-warn{color:#ffd37a}.status-bad{color:#ff8c8c}
.meta{color:var(--muted);font-size:.88rem}.avatar-lg{width:96px;height:96px;border-radius:50%;border:2px solid var(--line2)}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .full{grid-column:1/-1}
.form-grid label{display:grid;gap:6px;font-weight:750}.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid var(--line);border-radius:10px;background:#071017;color:#fff;padding:12px 13px}
.form-grid textarea{min-height:120px;resize:vertical}.gallery-admin{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.gallery-item{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#071017}.gallery-item img{width:100%;aspect-ratio:16/10;object-fit:cover}
.gallery-item .info{padding:13px}.gallery-item.pending{outline:1px solid #ffd37a}.pill{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:3px 8px;font-size:.75rem;color:#bcd0d6}
.alert{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:rgba(141,242,255,.04);margin-bottom:16px}.alert.error{border-color:rgba(255,100,100,.4)}
@media(max-width:850px){.portal-grid{grid-template-columns:1fr}.portal-nav{position:static}.portal-nav .panel{display:flex;gap:6px;flex-wrap:wrap}.portal-nav a{display:inline-block}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.gallery-admin{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.gallery-admin{grid-template-columns:1fr}.portal-top{align-items:flex-start;flex-direction:column}}
