/* ── VARIABILI ──────────────────────────── */
:root{
  --green:#00FF41;--green-dim:#00C832;
  --green-glow:rgba(0,255,65,0.15);--green-dark:rgba(0,255,65,0.06);
  --bg:#080C08;--bg2:#0D120D;--bg3:#111811;
  --text:#C8F5C8;--text-dim:#4A7A4A;--text-hint:#2A4A2A;
  --red:#FF3B3B;--red-bg:rgba(255,59,59,0.12);
  --border:rgba(0,255,65,0.1);--border-mid:rgba(0,255,65,0.2);
  --amber:#FFB800
}

/* ── RESET & BASE ───────────────────────── */
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--bg);color:var(--text);font-family:'JetBrains Mono',monospace;overflow-x:hidden;cursor:none}

/* ── SCROLLBAR ──────────────────────────── */
::-webkit-scrollbar{width:3px;height:3px}
::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:2px}
::-webkit-scrollbar-track{background:transparent}
html{scrollbar-width:thin;scrollbar-color:var(--border-mid) transparent}

/* ── CURSORE ────────────────────────────── */
#cursor{width:10px;height:16px;background:var(--green);position:fixed;pointer-events:none;z-index:9999;animation:blink 1s step-end infinite;mix-blend-mode:screen}
@keyframes blink{50%{opacity:0}}

/* ── SCANLINES ──────────────────────────── */
body::before{content:'';position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,0.07) 2px,rgba(0,0,0,0.07) 4px);pointer-events:none;z-index:1000}

/* ── RAIN ───────────────────────────────── */
#rain{position:fixed;top:0;left:0;pointer-events:none;z-index:0;opacity:0.18}

/* ── LOGO ───────────────────────────────── */
.logo{font-family:'Share Tech Mono',monospace;font-size:1.1rem;color:var(--text-dim);text-decoration:none}
.logo span{color:var(--green)}

/* ── PAGE LAYOUT (pagine contenuto) ─────── */
.page-header{margin-bottom:0.5rem}
.page-tag{font-size:0.65rem;color:var(--green);letter-spacing:0.2em;text-transform:uppercase;margin-bottom:0.5rem}
.page-tag::before{content:'// ';color:var(--text-dim)}
.page-title{font-family:'Share Tech Mono',monospace;font-size:1.6rem;color:#fff;margin-bottom:0.4rem}
.page-sub{font-size:0.78rem;color:var(--text-dim);line-height:1.7}

/* ── ARTICLE LAYOUT ─────────────────────── */
.article-header{margin-bottom:3rem;padding:2rem;border:1px solid var(--border);background:var(--bg2);position:relative;overflow:hidden}
.article-header::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--green);opacity:0.6}
.article-meta{display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}
.article-tag{font-size:0.6rem;color:var(--green);letter-spacing:0.2em;text-transform:uppercase}
.article-tag::before{content:'// ';color:var(--text-dim)}
.article-date{font-size:0.6rem;color:var(--text-dim);letter-spacing:0.1em}
.article-title{font-family:'Share Tech Mono',monospace;font-size:1.6rem;color:#fff;line-height:1.35;margin-bottom:1rem}
.article-intro{font-size:0.85rem;color:var(--text-dim);line-height:1.9;border-left:2px solid var(--border-mid);padding-left:1.25rem}
.article-section{border:1px solid var(--border);background:var(--bg2);padding:2rem;position:relative;overflow:hidden}
.article-section::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:var(--green);opacity:0.4}
.article-section-num{font-size:0.6rem;color:var(--text-dim);letter-spacing:0.15em;margin-bottom:0.75rem}
.article-section h2{font-family:'Share Tech Mono',monospace;font-size:1.05rem;color:var(--green);margin-bottom:1rem;letter-spacing:0.03em}
.article-section p{font-size:0.82rem;line-height:1.95;color:#b8e8b8;margin-bottom:1rem}
.article-section p:last-child{margin-bottom:0}
.article-section strong{color:var(--text);font-weight:400}
.article-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:1.5rem}
.article-cta{border:1px solid var(--green);background:var(--green-dark);padding:1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.article-cta-text{font-size:0.82rem;color:var(--text);line-height:1.7}
.article-cta-text strong{color:var(--green);font-family:'Share Tech Mono',monospace;font-size:0.95rem;display:block;margin-bottom:4px}

/* ── COMPONENTI CONDIVISI ───────────────── */
.btn-start{font-family:'JetBrains Mono',monospace;font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;background:var(--green);color:var(--bg);border:none;padding:0.75rem 1.75rem;cursor:none;font-weight:700;white-space:nowrap;transition:box-shadow 0.2s;text-decoration:none;display:inline-block}
.btn-start:hover{box-shadow:0 0 25px rgba(0,255,65,0.6)}
.back-link{font-size:0.65rem;color:var(--text-dim);letter-spacing:0.1em;text-decoration:none;transition:color 0.2s}
.back-link::before{content:'← '}
.back-link:hover{color:var(--green)}

/* ── TRANSIZIONI TRA PAGINE ─────────────── */
@view-transition { navigation: auto; }

::view-transition-old(root) { animation: fadeOut 0.15s ease forwards; }
::view-transition-new(root) { animation: fadeIn  0.15s ease forwards; }
@keyframes fadeOut { to   { opacity: 0; } }
@keyframes fadeIn  { from { opacity: 0; } }

/* fallback per browser senza View Transitions */
body { transition: opacity 0.15s; }
body.dt-leaving { opacity: 0; }

/* ── MOBILE BASE ────────────────────────── */
@media(max-width:768px){
  html,body{cursor:auto}
  #cursor{display:none}
}
