/* ── AHM7xMakki Shared Design System ── */
*{margin:0;padding:0;box-sizing:border-box;}
:root{
  --bg:#07080f;--bg2:#0d0f1a;--surface:#111422;--surface2:#161928;
  --border:#1e2235;--border2:#262b42;
  --accent:#e8ff47;--accent2:#d4f032;--accent-dim:rgba(232,255,71,0.12);--accent-glow:rgba(232,255,71,0.06);
  --blue:#4f9eff;--blue2:#7ab8ff;--blue-dim:rgba(79,158,255,0.1);
  --green:#2dff9a;--green-dim:rgba(45,255,154,0.1);
  --red:#ff4f6a;--red-dim:rgba(255,79,106,0.1);
  --text:#f0f2ff;--text2:#b8bdd8;--text3:#6e7494;--muted:#3e4460;
  --dm:'DM Sans',sans-serif;--serif:'Instrument Serif',serif;--mono:'DM Mono',monospace;
  --max:1100px;
}
html{scroll-behavior:smooth;}
body{font-family:var(--dm);background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
::selection{background:rgba(232,255,71,0.2);}
::-webkit-scrollbar{width:5px;}::-webkit-scrollbar-track{background:var(--bg2);}::-webkit-scrollbar-thumb{background:var(--border2);border-radius:5px;}
body::before{content:'';position:fixed;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(ellipse 900px 600px at 10% 0%,rgba(79,158,255,0.05) 0%,transparent 60%),
  radial-gradient(ellipse 700px 500px at 90% 100%,rgba(232,255,71,0.03) 0%,transparent 55%);}
.grid-bg{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:0.022;
  background-image:linear-gradient(var(--border2) 1px,transparent 1px),linear-gradient(90deg,var(--border2) 1px,transparent 1px);
  background-size:40px 40px;}
/* NAV */
nav.anav{position:fixed;top:0;left:0;right:0;z-index:100;height:60px;display:flex;align-items:center;
  background:rgba(7,8,15,0.88);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);
  padding:0 clamp(16px,4vw,60px);}
.anav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:var(--max);margin:0 auto;}
.alogo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.alogo-badge{width:32px;height:32px;border-radius:8px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:0.72rem;font-weight:500;color:#07080f;}
.alogo-name{font-family:var(--mono);font-size:0.9rem;font-weight:500;color:var(--text);letter-spacing:-0.3px;}
.alogo-name span{color:var(--text3);}
.anav-links{display:flex;gap:2px;align-items:center;}
.anav-link{font-family:var(--mono);font-size:0.75rem;color:var(--text3);text-decoration:none;padding:6px 12px;border-radius:6px;transition:.15s;}
.anav-link:hover{color:var(--text);background:var(--surface);}
.anav-cta{font-family:var(--mono);font-size:0.75rem;font-weight:500;color:#07080f;background:var(--accent);padding:7px 16px;border-radius:6px;text-decoration:none;transition:.15s;margin-left:8px;}
.anav-cta:hover{background:var(--accent2);}
/* MAIN CONTENT WRAPPER */
.apage{position:relative;z-index:1;padding-top:60px;min-height:100vh;}
/* SECTION */
.asection{padding:72px clamp(16px,4vw,60px);max-width:calc(var(--max) + 120px);margin:0 auto;}
.alabel{font-family:var(--mono);font-size:0.7rem;color:var(--accent);letter-spacing:0.08em;text-transform:uppercase;margin-bottom:10px;}
.atitle{font-family:var(--serif);font-style:italic;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.1;color:var(--text);margin-bottom:14px;}
.asub{font-size:0.95rem;color:var(--text2);max-width:520px;line-height:1.65;margin-bottom:44px;font-weight:300;}
/* BREADCRUMB */
.abreadcrumb{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:0.68rem;color:var(--text3);padding:80px clamp(16px,4vw,60px) 0;max-width:calc(var(--max)+120px);margin:0 auto;}
.abreadcrumb a{color:var(--text3);text-decoration:none;transition:.15s;}.abreadcrumb a:hover{color:var(--accent);}
.abreadcrumb span{color:var(--muted);}
/* CODE BLOCK */
.acode{background:var(--surface);border:1px solid var(--border2);border-radius:12px;overflow:hidden;margin:16px 0;}
.acode-bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;background:var(--surface2);border-bottom:1px solid var(--border);}
.acode-dots{display:flex;gap:6px;}.acode-dot{width:10px;height:10px;border-radius:50%;}
.acode-dot:nth-child(1){background:#ff5f57;}.acode-dot:nth-child(2){background:#febc2e;}.acode-dot:nth-child(3){background:#28c840;}
.acode-label{font-family:var(--mono);font-size:0.65rem;color:var(--text3);}
.acode-copy{font-family:var(--mono);font-size:0.65rem;color:var(--text3);background:none;border:none;cursor:pointer;padding:3px 8px;border-radius:4px;transition:.15s;}
.acode-copy:hover{background:var(--border);color:var(--text);}
.acode-body{padding:20px 24px;font-family:var(--mono);font-size:0.78rem;line-height:1.75;overflow-x:auto;white-space:pre;}
.c-comment{color:var(--text3);}.c-key{color:var(--blue2);}.c-val{color:var(--accent);}.c-str{color:var(--green);}.c-method{color:#c792ea;}.c-url{color:var(--blue);}.c-num{color:#f78c6c;}
/* TAGS & BADGES */
.abadge{font-family:var(--mono);font-size:0.62rem;padding:3px 9px;border-radius:5px;display:inline-flex;align-items:center;gap:5px;}
.abadge-yellow{background:var(--accent-dim);color:var(--accent);border:1px solid rgba(232,255,71,0.2);}
.abadge-blue{background:var(--blue-dim);color:var(--blue2);border:1px solid rgba(79,158,255,0.2);}
.abadge-green{background:var(--green-dim);color:var(--green);border:1px solid rgba(45,255,154,0.2);}
.abadge-red{background:var(--red-dim);color:var(--red);border:1px solid rgba(255,79,106,0.2);}
/* BUTTONS */
.abtn{font-family:var(--mono);font-size:0.82rem;font-weight:500;padding:11px 22px;border-radius:8px;text-decoration:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:.2s;border:none;}
.abtn-primary{background:var(--accent);color:#07080f;}.abtn-primary:hover{background:var(--accent2);transform:translateY(-1px);}
.abtn-secondary{background:transparent;color:var(--text2);border:1px solid var(--border2);}.abtn-secondary:hover{color:var(--text);border-color:var(--text3);}
/* DIVIDER */
.adivider{border:none;border-top:1px solid var(--border);margin:48px 0;}
/* FOOTER */
footer.afooter{position:relative;z-index:1;border-top:1px solid var(--border);padding:56px clamp(16px,4vw,60px) 32px;}
.afooter-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:48px;max-width:var(--max);margin-left:auto;margin-right:auto;}
@media(max-width:768px){.afooter-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:500px){.afooter-grid{grid-template-columns:1fr;}}
.afooter-tagline{font-size:0.82rem;color:var(--text3);line-height:1.6;max-width:240px;margin:12px 0 16px;}
.afooter-contact{display:flex;flex-direction:column;gap:8px;}
.afooter-contact a{font-family:var(--mono);font-size:0.72rem;color:var(--text3);text-decoration:none;transition:.15s;}.afooter-contact a:hover{color:var(--accent);}
.afooter-col-title{font-family:var(--mono);font-size:0.68rem;font-weight:500;color:var(--text);margin-bottom:14px;letter-spacing:0.06em;text-transform:uppercase;}
.afooter-links{display:flex;flex-direction:column;gap:10px;}
.afooter-links a{font-size:0.82rem;color:var(--text3);text-decoration:none;transition:.15s;}.afooter-links a:hover{color:var(--text);}
.afooter-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:24px;border-top:1px solid var(--border);max-width:var(--max);margin:0 auto;}
.afooter-copy{font-family:var(--mono);font-size:0.7rem;color:var(--text3);}
.afooter-status{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:0.7rem;color:var(--green);}
.astatus-dot{width:6px;height:6px;background:var(--green);border-radius:50%;animation:ablink 2s infinite;}
@keyframes ablink{0%,100%{opacity:1;}50%{opacity:0.3;}}
.afooter-legal{display:flex;gap:16px;}.afooter-legal a{font-family:var(--mono);font-size:0.68rem;color:var(--text3);text-decoration:none;}.afooter-legal a:hover{color:var(--text);}
/* FADE */
.afade{opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .5s ease;}
.afade.avis{opacity:1;transform:none;}
/* RESPONSIVE NAV */
@media(max-width:768px){.anav-links .anav-link{display:none;}}
/* SR ONLY */
.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;}
