body { background:#1c2026; color:#eee; }
.container { width:92%; max-width:1240px; }
nav .brand-logo { position:static; float:left; transform:none; font-size:24px; margin-right:28px; }
nav .nav-wrapper > .container { display:flex; align-items:center; flex-wrap:wrap; }
nav ul.right { float:none!important; margin-left:auto; display:flex; flex-wrap:wrap; }
nav a .nav-caret { padding-left:8px; }
.card a:not(.btn) { color:#8ed9ec; }
.dropdown-content { min-width:180px; }
.dropdown-content li a { color:#1d4b60; }
@media(max-width:750px) { nav { height:auto; min-height:64px; } nav ul.right { margin-left:0; } nav ul a { padding:0 10px; } }
/* ---------- Black glass theme (site-wide) ---------- */
/* The game's loading-screen nebula, pre-blurred once as a fixed layer so glass panels stay cheap to draw. */
html { background:#04060a; }
body { background:transparent !important; color:#e6edf5; }
body::before { content:''; position:fixed; inset:-40px; z-index:-2; background:url(/do_img/local/backgrounds/bg-mmo.jpg) center/cover no-repeat; filter:blur(4px) saturate(150%) brightness(.95); }
/* Secondary nebula colour follows the pilot's company: MMO red, EIC blue, VRU green (scripts/build-faction-backgrounds.py). */
body.faction-2::before { background-image:url(/do_img/local/backgrounds/bg-eic.jpg); }
body.faction-3::before { background-image:url(/do_img/local/backgrounds/bg-vru.jpg); }
body::after { content:''; position:fixed; inset:0; z-index:-1; pointer-events:none; background:radial-gradient(ellipse at 50% -10%,rgba(76,195,230,.10),rgba(0,0,0,0) 55%),linear-gradient(180deg,rgba(3,5,9,.08),rgba(3,5,9,.5)); }
nav, nav .nav-wrapper.grey.darken-4 { background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 60%),rgba(6,8,12,.62) !important; -webkit-backdrop-filter:blur(22px) saturate(150%); backdrop-filter:blur(22px) saturate(150%); box-shadow:inset 0 -1px 0 rgba(255,255,255,.08),0 8px 30px rgba(0,0,0,.45); }
nav ul li.grey.darken-3 { background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.02)) !important; box-shadow:inset 0 0 0 1px rgba(255,255,255,.1); }
nav ul a:hover { background:rgba(255,255,255,.06); }
.dropdown-content { background:rgba(8,10,15,.97) !important; border-radius:2px; -webkit-backdrop-filter:blur(20px); backdrop-filter:blur(20px); border:1px solid rgba(255,255,255,.1); box-shadow:0 14px 40px rgba(0,0,0,.55); }
.dropdown-content li a { color:#cfe6f2 !important; }
.dropdown-content li:hover { background:rgba(255,255,255,.06) !important; }
.card.grey.darken-4, .card.grey.darken-3, #data.card { background:linear-gradient(180deg,rgba(255,255,255,.07) 0%,rgba(255,255,255,.02) 42%,rgba(255,255,255,0) 43%,rgba(0,0,0,.16) 100%),rgba(10,13,19,.5) !important; border:1px solid rgba(255,255,255,.09); border-radius:14px; box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 12px 32px rgba(0,0,0,.4) !important; -webkit-backdrop-filter:blur(18px) saturate(140%); backdrop-filter:blur(18px) saturate(140%); }
.btn, .btn-large { background:linear-gradient(180deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.03) 48%,rgba(0,0,0,0) 49%),linear-gradient(180deg,#23313f,#151d27); border:1px solid rgba(255,255,255,.12); box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 4px 12px rgba(0,0,0,.35); }
.btn:hover, .btn-large:hover { background:linear-gradient(180deg,rgba(255,255,255,.18) 0%,rgba(255,255,255,.05) 48%,rgba(0,0,0,0) 49%),linear-gradient(180deg,#2c3d4f,#1a2430); }
footer, .page-footer { background:rgba(4,6,10,.55) !important; -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); }
.tabs { background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0)),rgba(0,0,0,.35) !important; border:1px solid rgba(255,255,255,.08); border-radius:10px; }
.tabs .tab a { color:#9fd3e6 !important; } .tabs .tab a.active, .tabs .tab a:hover { background:rgba(255,255,255,.06) !important; color:#fff !important; } .tabs .indicator { background:#4cc3e6 !important; }
/* Navigation and its dropdowns always sit above page content (sticky shop bar, card badges, glass panels). */
nav { position:relative; z-index:900; }
.dropdown-content { z-index:1000 !important; }
.card, .card .card-image, .card .card-image img, .btn, .btn-large, .btn-flat, .tabs, .dropdown-content, .collection, .modal, .toast, .chip, input, select, textarea, nav ul li, nav ul a, .badge, .card-panel { border-radius:2px !important; }
/* Brand: GAMMARAY wordmark followed by the pilot's company logo */
nav .brand-logo { display:inline-flex !important; align-items:center; gap:14px; height:64px; }
@font-face { font-family:'Revamped'; src:url('/css/fonts/revamped.ttf') format('truetype'); font-display:swap; }
nav .brand-logo .brand-word { font-family:'Revamped',Roboto,sans-serif; font-weight:400; font-size:26px; letter-spacing:.12em; color:#f2f6fa; text-shadow:0 0 18px rgba(76,195,230,.35); }
nav .brand-logo .brand-faction { height:36px; width:auto; object-fit:contain; filter:drop-shadow(0 0 6px rgba(0,0,0,.6)); }
/* Language selector (LocalI18n::Selector): top bar, or floating top-right on pages without the bar */
.lang-trigger .lang-globe { margin-right:6px; font-size:14px; filter:grayscale(1) brightness(1.6); }
.lang-floating { position:fixed; top:14px; right:18px; z-index:1100; display:inline-flex; align-items:center; padding:6px 12px; color:#e6edf5 !important; font-size:13px; background:rgba(6,9,13,.72); border:1px solid rgba(255,255,255,.12); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); }
.dropdown-content.lang-menu { max-height:70vh; overflow-y:auto; }
.dropdown-content.lang-menu li.active a { color:#4cc3e6 !important; }
/* Start: opens the browser client (/play); the one accent button in the top bar. */
nav ul .nav-play-item { display:flex; align-items:center; height:64px; padding:0 10px 0 4px; }
nav ul a.nav-play { display:inline-flex; align-items:center; gap:8px; height:38px; line-height:38px; padding:0 18px 0 14px; border-radius:2px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:#fff;
  border:1px solid rgba(76,195,230,.7); background:linear-gradient(180deg,rgba(76,195,230,.38),rgba(76,195,230,.12)); box-shadow:0 0 18px rgba(76,195,230,.28),inset 0 1px 0 rgba(255,255,255,.18); transition:background .2s, box-shadow .2s; }
nav ul a.nav-play:hover, nav ul a.nav-play:focus-visible { background:linear-gradient(180deg,rgba(76,195,230,.55),rgba(76,195,230,.22)); box-shadow:0 0 26px rgba(76,195,230,.45),inset 0 1px 0 rgba(255,255,255,.25); }
nav ul a.nav-play svg { width:14px; height:14px; fill:currentColor; filter:drop-shadow(0 0 4px rgba(76,195,230,.8)); }

/* Header "Admin" button (admins only): yellow; pressed = admin mode, body[data-admin-mode="1"] on every page. */
nav ul button.admin-mode { display:inline-flex; align-items:center; height:30px; margin:0 6px; padding:0 14px; border-radius:2px; font:inherit; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; color:#2a2000; background:linear-gradient(180deg,#ffd45a,#e3a81a); border:1px solid #ffe49a; box-shadow:0 0 12px rgba(242,194,48,.25); }
nav ul button.admin-mode[aria-pressed="true"] { color:#fff3c4; background:linear-gradient(180deg,#7a5a08,#4a3605); border-color:#f2c230; box-shadow:0 0 16px rgba(242,194,48,.55); }
/* Shared custom-item provenance badge; same face as the GAMMARAY wordmark. */
.gamma-tag { display:inline-block; background:#fff; color:#000; font-family:'Revamped',sans-serif; font-weight:900; font-size:10px; line-height:1.4; letter-spacing:.03em; padding:3px 6px; border-radius:2px; text-shadow:none; pointer-events:none; }

/* ---------- Landing page (page-index.php): Play now without an account, the company pick, login below ---------- */
#main.index.landing { height:auto; padding-bottom:64px; }
.landing .container-center { display:block; height:auto; }
.landing .form { display:block; }
.lp-hero { max-width:900px; margin:0 auto; padding:13vh 0 24px; text-align:center; }
.lp-word { font-family:'Revamped',Roboto,sans-serif; font-size:clamp(38px,7vw,64px); letter-spacing:.16em; color:#f2f6fa; text-shadow:0 0 28px rgba(76,195,230,.45); }
.lp-title { margin:18px 0 10px; font-size:clamp(24px,3.6vw,36px); font-weight:300; line-height:1.25; color:#eef4fa; }
.lp-lead { max-width:640px; margin:0 auto; font-size:17px; line-height:1.6; color:#b8c7d6; }
.lp-actions { display:flex; flex-direction:column; align-items:center; gap:14px; margin-top:34px; }
.lp-play { display:inline-flex; align-items:center; gap:12px; height:58px; padding:0 36px 0 30px; border-radius:2px; cursor:pointer; font:inherit; font-size:16px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; color:#fff;
  border:1px solid rgba(76,195,230,.75); background:linear-gradient(180deg,rgba(76,195,230,.42),rgba(76,195,230,.14)); box-shadow:0 0 26px rgba(76,195,230,.32),inset 0 1px 0 rgba(255,255,255,.2); transition:background .2s, box-shadow .2s, opacity .2s; }
.lp-play:hover, .lp-play:focus-visible { background:linear-gradient(180deg,rgba(76,195,230,.6),rgba(76,195,230,.24)); box-shadow:0 0 36px rgba(76,195,230,.5),inset 0 1px 0 rgba(255,255,255,.26); outline:none; }
.lp-play:disabled { opacity:.45; cursor:default; }
.lp-play svg { width:16px; height:16px; fill:currentColor; filter:drop-shadow(0 0 5px rgba(76,195,230,.9)); }
.lp-login { color:#9fd3e6 !important; font-size:14px; }
.lp-login:hover { color:#fff !important; }
.lp-desktop { display:flex; flex-direction:column; gap:6px; max-width:560px; margin:26px auto 0; padding:16px 20px; text-align:left; color:#cfdbe6; border:1px solid rgba(255,255,255,.1); background:rgba(10,13,19,.6); -webkit-backdrop-filter:blur(18px); backdrop-filter:blur(18px); }
.lp-promises { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; max-width:1000px; margin:40px auto 40px; }
.lp-promise { display:flex; flex-direction:column; gap:6px; padding:18px 20px; border:1px solid rgba(255,255,255,.08); background:rgba(10,13,19,.45); -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px); }
.lp-promise b { font-size:15px; color:#eef4fa; }
.lp-promise span { font-size:13px; line-height:1.55; color:#a9b8c7; }
@media(max-width:760px) { .lp-hero { padding-top:9vh; } .lp-promises { grid-template-columns:1fr; } .lp-play { width:100%; justify-content:center; padding:0 18px; } }

/* ALPHA tag beside the wordmark (user, 2026-10-09): white tag, black text, 20 % smaller than the wordmark. */
.brand-alpha { display:inline-block; margin-left:.5em; padding:.12em .38em .08em; background:#fff; color:#000; border-radius:3px; font-family:'Revamped',Roboto,sans-serif; font-size:.8em; letter-spacing:.08em; line-height:1; text-shadow:none; vertical-align:middle; }
nav .brand-logo .brand-alpha { font-size:21px; margin-left:-4px; }
/* Room for the tag: the menu items sit a little closer together, so the menu stays on one line. */
nav .brand-logo { margin-right:16px; gap:10px; }
nav ul#nav-mobile > li > a, nav ul.right > li > a { padding:0 10px; }
