/* LostCube — site oficial (download + noutăți + ghid). Design comun. */
:root{
  --cyan:#5ee0ff; --violet:#9a6cff; --blue:#3a7bd5; --purple:#7a4ddb;
  --bg:#070910; --bg2:#0b0f1c; --panel:rgba(18,24,40,.66); --panel2:#141b30;
  --border:#26314c; --border2:#33406a; --text:#eaf0fb; --muted:#96a3c4; --dim:#63708f;
  --gold:#f5c84b; --green:#57e08a; --red:#ff7a7a;
  --grad:linear-gradient(95deg,var(--cyan),var(--violet));
  --shadow:0 20px 60px rgba(0,0,0,.5);
  --maxw:1160px;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{ font-family:"Segoe UI",system-ui,-apple-system,sans-serif; color:var(--text); line-height:1.6;
  background:radial-gradient(1100px 640px at 80% -8%,#16284a,transparent 56%),
             radial-gradient(880px 520px at 8% 112%,#241a44,transparent 55%), var(--bg);
  min-height:100vh; overflow-x:hidden; }
a{ color:inherit; text-decoration:none; }
img{ max-width:100%; display:block; }
.accent{ background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.wrap{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }
.eyebrow{ color:var(--cyan); font-weight:700; letter-spacing:3px; text-transform:uppercase; font-size:12.5px; }
h1{ font-size:clamp(38px,6vw,62px); font-weight:800; line-height:1.04; letter-spacing:-1px; }
h2{ font-size:clamp(26px,3.4vw,38px); font-weight:800; letter-spacing:-.5px; }
h3{ font-size:19px; font-weight:700; }
p{ color:#c7d0e6; }
.muted{ color:var(--muted); } .dim{ color:var(--dim); }

/* NAV */
.nav{ position:sticky; top:0; z-index:50; backdrop-filter:blur(14px);
  background:rgba(7,9,16,.72); border-bottom:1px solid rgba(38,49,76,.6); }
.nav .inner{ max-width:var(--maxw); margin:0 auto; padding:14px 24px; display:flex; align-items:center; gap:10px; }
.nav .logo{ filter:drop-shadow(0 3px 10px rgba(94,224,255,.45)); }
.nav .brand{ font-weight:800; letter-spacing:2px; font-size:17px; }
.nav .links{ margin-left:auto; display:flex; align-items:center; gap:6px; }
.nav .links a{ padding:9px 15px; border-radius:10px; color:var(--muted); font-weight:600; font-size:14.5px; transition:.15s; }
.nav .links a:hover{ color:var(--text); background:rgba(255,255,255,.05); }
.nav .links a.active{ color:var(--text); background:rgba(94,224,255,.12); }
.nav .links a.cta{ color:#06121a; background:var(--grad); font-weight:800; box-shadow:0 8px 22px rgba(94,224,255,.28); }
.nav .links a.cta:hover{ filter:brightness(1.08); background:var(--grad); }
.burger{ display:none; }

/* BUTTONS */
.btn{ display:inline-flex; align-items:center; gap:10px; padding:16px 30px; border-radius:14px; font-weight:800;
  font-size:17px; letter-spacing:.3px; cursor:pointer; border:none; transition:transform .12s,filter .15s; }
.btn.primary{ background:var(--grad); color:#06121a; box-shadow:0 14px 40px rgba(94,224,255,.32); }
.btn.primary:hover{ transform:translateY(-2px); filter:brightness(1.08); }
.btn.ghost{ background:rgba(255,255,255,.04); color:var(--text); border:1px solid var(--border2); }
.btn.ghost:hover{ background:rgba(255,255,255,.08); border-color:var(--cyan); }
.btn.sm{ padding:11px 20px; font-size:14.5px; border-radius:11px; }

/* DISCORD — invitația trebuie să fie vizibilă pe FIECARE pagină (nav + hero + bandă + footer).
   Toate linkurile duc la /discord (redirect server-side), ca invite-ul să se poată schimba
   dintr-un singur fișier fără să reeditam site-ul. */
.nav .links a.dc{ display:inline-flex; align-items:center; gap:8px; color:#c9cdfb;
  background:rgba(88,101,242,.15); border:1px solid rgba(88,101,242,.45); }
.nav .links a.dc:hover{ color:#fff; background:rgba(88,101,242,.3); border-color:#5865f2; }
.btn.discord{ background:#5865f2; color:#fff; box-shadow:0 14px 40px rgba(88,101,242,.34); }
.btn.discord:hover{ transform:translateY(-2px); filter:brightness(1.1); }
footer a.dc{ display:inline-flex; align-items:center; gap:7px; color:#a9b0f5; }
footer a.dc:hover{ color:#fff; }

/* banda „intră pe Discord" (prima pagină + ghid) */
.dcband{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; padding:28px 32px; border-radius:20px;
  background:linear-gradient(115deg,rgba(88,101,242,.24),rgba(154,108,255,.12));
  border:1px solid rgba(88,101,242,.45); }
.dcband .dcmark{ width:62px; height:62px; border-radius:16px; display:grid; place-items:center; color:#fff;
  background:#5865f2; box-shadow:0 12px 30px rgba(88,101,242,.4); flex:0 0 auto; }
.dcband .dctext{ flex:1 1 300px; }
.dcband h3{ font-size:22px; }
.dcband p{ color:var(--muted); margin-top:6px; font-size:15px; }

/* Download oprit temporar — comutat din downloads-locked.json */
.btn.locked, .nav .links a.cta.locked{ background:rgba(255,255,255,.05); color:var(--muted);
  border:1px solid var(--border2); box-shadow:none; cursor:not-allowed; pointer-events:none;
  filter:none; transform:none; }

/* HERO */
.hero{ text-align:center; padding:64px 24px 40px; max-width:820px; margin:0 auto; }
.floatcube{ animation:float 4s ease-in-out infinite; margin:0 auto 20px; }
@keyframes float{ 0%,100%{ transform:translateY(0) } 50%{ transform:translateY(-12px) } }
.hero .tag{ color:var(--muted); margin-top:16px; font-size:18px; max-width:600px; margin-left:auto; margin-right:auto; }
.hero .actions{ margin-top:32px; display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }
.ver{ margin-top:14px; font-size:13.5px; color:var(--muted); }

/* SECTIONS */
section.block{ padding:56px 0; }
.head{ text-align:center; max-width:640px; margin:0 auto 36px; }
.head p{ color:var(--muted); margin-top:10px; }

/* CARDS / FEATURE GRID */
.grid{ display:grid; gap:18px; }
.g3{ grid-template-columns:repeat(3,1fr); } .g4{ grid-template-columns:repeat(4,1fr); } .g2{ grid-template-columns:repeat(2,1fr); }
.card{ background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:22px; backdrop-filter:blur(8px);
  transition:transform .15s,border-color .15s; }
.card:hover{ transform:translateY(-4px); border-color:var(--border2); }
.card .ic{ width:48px; height:48px; border-radius:12px; display:grid; place-items:center; font-size:24px; margin-bottom:12px;
  background:linear-gradient(145deg,rgba(94,224,255,.16),rgba(154,108,255,.16)); border:1px solid var(--border); }
.card h3{ margin-bottom:6px; } .card p{ color:var(--muted); font-size:14px; }

/* STEPS (numbered) */
.steps3{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.stepc{ background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:22px; }
.stepc .n{ width:34px; height:34px; border-radius:10px; display:grid; place-items:center; font-weight:800; color:#06121a;
  background:var(--grad); margin-bottom:12px; font-size:16px; }
.stepc h3{ margin-bottom:5px; font-size:16px; } .stepc p{ color:var(--muted); font-size:14px; }

/* ADDRESS CHIP */
.addr{ text-align:center; margin-top:8px; color:var(--muted); font-size:14.5px; }
.addr code{ background:#0b1120; border:1px solid var(--border); border-radius:8px; padding:6px 12px; color:var(--cyan);
  font-family:Consolas,monospace; user-select:all; }

/* FOOTER */
footer{ border-top:1px solid var(--border); margin-top:40px; }
footer .inner{ max-width:var(--maxw); margin:0 auto; padding:30px 24px; display:flex; gap:20px; align-items:center; flex-wrap:wrap; }
footer .flinks{ margin-left:auto; display:flex; gap:18px; flex-wrap:wrap; }
footer a{ color:var(--muted); font-size:14px; } footer a:hover{ color:var(--cyan); }
footer .cp{ color:var(--dim); font-size:12.5px; width:100%; }

/* PATCH NOTES — timeline */
.timeline{ max-width:820px; margin:0 auto; position:relative; padding-left:34px; }
.timeline:before{ content:""; position:absolute; left:9px; top:8px; bottom:8px; width:2px;
  background:linear-gradient(var(--cyan),var(--violet),transparent); }
.rel{ position:relative; margin-bottom:26px; }
.rel:before{ content:""; position:absolute; left:-33px; top:6px; width:18px; height:18px; border-radius:50%;
  background:var(--bg2); border:3px solid var(--cyan); box-shadow:0 0 0 4px rgba(94,224,255,.12); }
.rel.latest:before{ border-color:var(--violet); box-shadow:0 0 0 4px rgba(154,108,255,.18); }
.rel .vhead{ display:flex; align-items:center; gap:12px; margin-bottom:12px; flex-wrap:wrap; }
.chip{ padding:5px 13px; border-radius:20px; font-weight:800; font-size:13px; border:1.5px solid var(--violet); color:#cbb6ff; }
.chip.new{ background:var(--grad); color:#06121a; border:none; }
.rel .date{ color:var(--dim); font-size:13px; }
.rel .vtitle{ font-size:20px; font-weight:800; }
.upcard{ background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:6px; backdrop-filter:blur(8px); }
.upitem{ display:flex; gap:14px; padding:14px 16px; border-radius:12px; }
.upitem+.upitem{ border-top:1px solid rgba(38,49,76,.5); }
.upitem .em{ flex:0 0 46px; height:46px; border-radius:12px; display:grid; place-items:center; font-size:24px;
  background:linear-gradient(145deg,rgba(94,224,255,.14),rgba(154,108,255,.14)); border:1px solid var(--border); }
.upitem .t{ font-weight:700; font-size:15.5px; } .upitem .d{ color:var(--muted); font-size:13.5px; margin-top:2px; }

/* GHID — big steps */
.gstep{ display:grid; grid-template-columns:64px 1fr; gap:20px; align-items:start; margin-bottom:14px;
  background:var(--panel); border:1px solid var(--border); border-radius:18px; padding:24px; }
.gstep .gn{ width:52px; height:52px; border-radius:14px; display:grid; place-items:center; font-weight:800; font-size:22px;
  color:#06121a; background:var(--grad); box-shadow:0 8px 20px rgba(94,224,255,.25); }
.gstep h3{ font-size:20px; margin-bottom:6px; } .gstep p{ color:var(--muted); }
.gstep .shot{ margin-top:14px; }
.note{ border-radius:14px; padding:16px 18px 16px 50px; margin:14px 0; position:relative; border:1px solid var(--border);
  background:var(--panel2); font-size:14.5px; }
.note:before{ position:absolute; left:16px; top:15px; font-size:20px; }
.note.warn{ border-left:4px solid var(--gold); } .note.warn:before{ content:"⚠️"; }
.note.info{ border-left:4px solid var(--cyan); } .note.info:before{ content:"ℹ️"; }
.note.ok{ border-left:4px solid var(--green); } .note.ok:before{ content:"✅"; }
.note b{ color:var(--text); }
.kbd{ background:#0b1120; border:1px solid var(--border2); border-bottom-width:2px; border-radius:6px; padding:2px 9px;
  font-family:Consolas,monospace; font-size:13px; color:var(--cyan); }

/* CONT — auth cards + formulare + dashboard */
.authwrap{ max-width:460px; margin:48px auto; padding:0 20px; }
.authcard{ background:var(--panel); border:1px solid var(--border); border-radius:20px; padding:30px 28px;
  backdrop-filter:blur(10px); box-shadow:var(--shadow); }
.authcard .cubetop{ text-align:center; margin-bottom:14px; }
.authcard h2{ font-size:24px; text-align:center; }
.authcard .sub{ color:var(--muted); text-align:center; font-size:14.5px; margin-top:8px; margin-bottom:20px; }
.field{ margin-bottom:15px; }
.field label{ display:block; font-size:13px; font-weight:700; color:var(--muted); margin-bottom:6px; letter-spacing:.3px; }
.field input{ width:100%; padding:13px 14px; border-radius:11px; border:1px solid var(--border2); background:#0b1120;
  color:var(--text); font-size:15px; font-family:inherit; transition:border-color .15s; }
.field input:focus{ outline:none; border-color:var(--cyan); }
.field input.locked{ color:var(--cyan); background:#0a0f1c; cursor:not-allowed; }
.field .hint{ font-size:12.5px; color:var(--dim); margin-top:5px; }
.field .hint.lock{ color:var(--green); }
.btn.full{ width:100%; justify-content:center; margin-top:6px; }
.btn:disabled{ opacity:.6; cursor:wait; transform:none; filter:none; }
.msg{ display:none; border-radius:11px; padding:11px 14px; font-size:13.5px; margin-bottom:16px; border:1px solid var(--border); }
.msg.err{ border-left:4px solid var(--red); background:rgba(255,122,122,.08); color:#ffb4b4; }
.msg.info{ border-left:4px solid var(--cyan); background:rgba(94,224,255,.08); color:#bfe9ff; }
.msg.ok{ border-left:4px solid var(--green); background:rgba(87,224,138,.08); color:#a6f0c4; }
.authfoot{ text-align:center; margin-top:18px; font-size:13.5px; color:var(--muted); }
.authfoot a{ color:var(--cyan); font-weight:600; }
.spin{ text-align:center; color:var(--muted); padding:20px; }

/* Dashboard cont */
.dash{ max-width:720px; margin:44px auto; padding:0 20px; }
.dash .idcard{ display:flex; gap:18px; align-items:center; background:var(--panel); border:1px solid var(--border);
  border-radius:18px; padding:22px 24px; backdrop-filter:blur(10px); }
.dash .avatar{ width:66px; height:66px; border-radius:16px; border:1px solid var(--border2); object-fit:cover;
  background:linear-gradient(145deg,rgba(94,224,255,.16),rgba(154,108,255,.16)); }
.dash .who h2{ font-size:24px; }
.dash .who .u{ color:var(--muted); font-size:14px; margin-top:2px; }
.badge{ display:inline-flex; align-items:center; gap:6px; padding:4px 11px; border-radius:20px; font-size:12.5px;
  font-weight:700; border:1px solid var(--border2); color:var(--muted); margin-top:8px; }
.badge.disc{ border-color:#5865f2; color:#aab4ff; background:rgba(88,101,242,.1); }
.badge.staff{ border-color:var(--gold); color:var(--gold); background:rgba(245,200,75,.08); }
.dash .row2{ display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:16px; }
.panelcard{ background:var(--panel); border:1px solid var(--border); border-radius:16px; padding:22px; backdrop-filter:blur(8px); }
.panelcard h3{ margin-bottom:14px; }
.panelcard .kv{ display:flex; justify-content:space-between; padding:8px 0; border-top:1px solid rgba(38,49,76,.5); font-size:14px; }
.panelcard .kv:first-of-type{ border-top:none; }
.panelcard .kv .k{ color:var(--muted); }
.linkbtns{ display:flex; gap:12px; flex-wrap:wrap; margin-top:16px; }
@media(max-width:620px){ .dash .row2{ grid-template-columns:1fr; } .dash .idcard{ flex-direction:column; text-align:center; } }

/* ── NAV widget: cont + centru de notificări (lc-nav.js) ── */
#navAccount{ display:flex; align-items:center; gap:8px; }
.lc-login{ display:inline-flex; align-items:center; gap:7px; padding:8px 14px; border-radius:10px; font-weight:600;
  font-size:14px; color:var(--muted); border:1px solid var(--border2); transition:.15s; }
.lc-login:hover{ color:var(--text); border-color:var(--cyan); background:rgba(94,224,255,.06); }
.lc-login svg{ opacity:.85; }
.lc-wrap{ position:relative; }
.lc-bell{ position:relative; display:grid; place-items:center; width:40px; height:40px; border-radius:11px;
  background:rgba(255,255,255,.03); border:1px solid var(--border2); color:var(--muted); cursor:pointer; transition:.15s; }
.lc-bell:hover,.lc-bell.on{ color:var(--text); border-color:var(--cyan); background:rgba(94,224,255,.08); }
.lc-badge{ position:absolute; top:-5px; right:-5px; min-width:18px; height:18px; padding:0 4px; border-radius:9px;
  background:linear-gradient(135deg,#ff6b6b,#ff3d7f); color:#fff; font-size:10.5px; font-weight:800;
  display:grid; place-items:center; box-shadow:0 2px 8px rgba(255,61,127,.5); border:2px solid var(--bg); }
.lc-chip{ display:inline-flex; align-items:center; gap:8px; padding:5px 10px 5px 6px; border-radius:22px; cursor:pointer;
  background:rgba(255,255,255,.03); border:1px solid var(--border2); color:var(--text); font-family:inherit; font-weight:600; transition:.15s; }
.lc-chip:hover,.lc-chip.on{ border-color:var(--cyan); background:rgba(94,224,255,.07); }
.lc-chip .lc-name{ font-size:14px; max-width:120px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.lc-chip svg{ opacity:.6; }
.lc-av{ width:28px; height:28px; border-radius:50%; object-fit:cover; flex:0 0 auto; }
.lc-av.ph{ display:grid; place-items:center; font-size:14px; font-weight:800; color:#06121a; background:var(--grad); }

.lc-pop{ position:absolute; top:calc(100% + 10px); right:0; z-index:80; background:rgba(13,18,32,.97);
  border:1px solid var(--border2); border-radius:16px; box-shadow:0 24px 60px rgba(0,0,0,.6); backdrop-filter:blur(16px);
  animation:lcpop .16s ease; overflow:hidden; }
@keyframes lcpop{ from{ opacity:0; transform:translateY(-8px) } to{ opacity:1; transform:none } }
.lc-notif{ width:360px; max-width:calc(100vw - 32px); }
.lc-pop-head{ display:flex; align-items:center; justify-content:space-between; padding:14px 16px; border-bottom:1px solid var(--border); }
.lc-mark{ display:inline-flex; align-items:center; gap:4px; background:none; border:none; color:var(--cyan); font-size:12.5px;
  font-weight:700; cursor:pointer; font-family:inherit; }
.lc-mark:hover{ text-decoration:underline; }
.lc-pop-list{ max-height:60vh; overflow-y:auto; }
.lc-nitem{ display:flex; gap:12px; padding:12px 16px; border-bottom:1px solid rgba(38,49,76,.4); transition:background .12s; }
.lc-nitem:hover{ background:rgba(255,255,255,.03); }
.lc-nitem.unread{ background:rgba(94,224,255,.06); }
.lc-nitem.unread:hover{ background:rgba(94,224,255,.1); }
.lc-nemo{ font-size:19px; flex:0 0 auto; width:34px; height:34px; border-radius:10px; display:grid; place-items:center;
  background:linear-gradient(145deg,rgba(94,224,255,.14),rgba(154,108,255,.14)); border:1px solid var(--border); }
.lc-ntext{ font-size:13.5px; line-height:1.5; color:var(--muted); }
.lc-ntext b{ color:var(--text); }
.lc-nago{ display:block; font-size:11.5px; color:var(--dim); margin-top:2px; }
.lc-pop-foot{ display:block; text-align:center; padding:12px; font-size:13px; color:var(--cyan); font-weight:600;
  border-top:1px solid var(--border); }
.lc-pop-foot:hover{ background:rgba(94,224,255,.06); }
.lc-empty{ padding:26px 16px; text-align:center; color:var(--dim); font-size:13.5px; }
.lc-menu{ width:210px; padding:6px; }
.lc-menu a,.lc-menu button{ display:flex; align-items:center; gap:10px; width:100%; padding:10px 12px; border-radius:10px;
  color:var(--text); font-size:14px; font-weight:600; background:none; border:none; cursor:pointer; font-family:inherit; text-align:left; }
.lc-menu a:hover,.lc-menu button:hover{ background:rgba(255,255,255,.06); }
.lc-menu svg{ opacity:.7; }
.lc-menu #lcLogout{ color:var(--red); border-top:1px solid var(--border); margin-top:4px; border-radius:0 0 10px 10px; }
@media(max-width:860px){ .lc-chip .lc-name{ display:none; } .lc-chip{ padding:5px; } }

/* fade-in on load */
.fade{ opacity:0; transform:translateY(14px); animation:fade .6s ease forwards; }
@keyframes fade{ to{ opacity:1; transform:none } }

@media(max-width:860px){
  .g3,.g4,.steps3{ grid-template-columns:1fr 1fr; } .g2{ grid-template-columns:1fr; }
  .nav .links a:not(.cta):not(.dc){ display:none; }
  .nav .links a.dc{ padding:9px 11px; }   /* pe telefon rămâne doar iconița Discord */
  .nav .links a.dc span{ display:none; }
  .dcband{ padding:22px; gap:18px; }
}
@media(max-width:560px){
  .g3,.g4,.steps3{ grid-template-columns:1fr; }
  .gstep{ grid-template-columns:44px 1fr; gap:14px; padding:18px; }
  .gstep .gn{ width:40px; height:40px; font-size:18px; }
}

/* ---------------------------------------------------------------------------
   Bloc de încredere sub butonul de descărcare.
   Discret intenționat: nu vrem să atragem atenția asupra faptului că există o
   îngrijorare, ci să fie acolo pentru cine o are deja. Cine nu se întreabă
   nimic trece pe lângă el.
--------------------------------------------------------------------------- */
.trust{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:center;
  gap:10px 18px; margin-top:18px; font-size:13px;
}
.trust a, .trust button{
  display:inline-flex; align-items:center; gap:7px;
  color:var(--muted); text-decoration:none;
  background:none; border:none; padding:5px 0; cursor:pointer;
  font:inherit; transition:color .2s ease;
}
.trust a:hover, .trust button:hover{ color:var(--cyan); }
.trust-ico{ font-size:14px; }
/* Hash-ul monospațiat: se compară vizual caracter cu caracter, deci lățimea fixă
   nu e estetică, e funcțională. */
.trust-sha code{
  font-family:ui-monospace,"Cascadia Code",Consolas,monospace;
  font-size:11.5px; letter-spacing:.4px;
  color:var(--dim); background:rgba(255,255,255,.04);
  border:1px solid var(--border); border-radius:5px; padding:2px 7px;
  transition:color .2s ease, border-color .2s ease;
}
.trust-sha:hover code{ color:var(--text); border-color:var(--border2); }
.trust-why{ border-bottom:1px dotted var(--border2); }
@media (max-width:560px){ .trust{ flex-direction:column; gap:9px; } }
