@import url('https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&family=JetBrains+Mono:wght@400;500&display=swap');

:root{
  --bg:#f5f7fa;
  --bg-2:#fff;
  --bg-3:#edf0f5;
  --border:#dde3ed;
  --border-md:#c8d3e0;
  --blue:#336791;
  --blue-l:#e8f0fb;
  --blue-d:#1a56a0;
  --navy:#1a2332;
  --text:#1a2332;
  --text-2:#4a5c6e;
  --text-3:#8a97aa;
  --green:#2d9e5a;
  --green-l:#eaf6ef;
  --green-b:#b6dfc8;
  --yellow:#c47f00;
  --yellow-l:#fdf6e3;
  --yellow-b:#f0d080;
  --red:#c0392b;
  --red-l:#fdf0ef;
  --red-b:#f0b8b2;
  --radius-sm:5px;
  --radius:8px;
  --radius-lg:10px;
  --max:1080px;
  --mono:'JetBrains Mono',monospace;
  --sans:'Inter',-apple-system,system-ui,sans-serif;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--sans);font-size:15px;line-height:1.65;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
a{color:var(--blue-d);text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:2px}
code,kbd{font-family:var(--mono);font-size:12px;background:var(--bg-3);border:1px solid var(--border);padding:1px 6px;border-radius:4px;color:var(--navy)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}

/* ── NAV ── */
.site-nav{background:var(--blue);position:sticky;top:0;z-index:100}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:52px;gap:16px}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none!important}
.nav-logo-mark{width:28px;height:28px;background:#fff;border-radius:6px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--blue);flex-shrink:0}
.nav-logo-name{font-size:14px;font-weight:700;color:#fff;letter-spacing:-.01em}
.nav-logo-sub{font-size:11px;color:rgba(255,255,255,.6);margin-left:3px}
.nav-links{display:flex;gap:2px}
.nav-links a{font-size:12px;color:rgba(255,255,255,.75);padding:4px 9px;border-radius:5px;transition:background .15s,color .15s;text-decoration:none}
.nav-links a:hover{background:rgba(255,255,255,.12);color:#fff}
.nav-links a.active{background:rgba(255,255,255,.18);color:#fff;font-weight:600}
.nav-cta{display:inline-flex;align-items:center;gap:5px;background:#fff;color:var(--blue)!important;font-size:12px;font-weight:700;padding:6px 13px;border-radius:var(--radius-sm);transition:opacity .15s;text-decoration:none!important;white-space:nowrap;flex-shrink:0}
.nav-cta:hover{opacity:.9}
.nav-cta svg{width:11px;height:11px}

/* ── PAGE HERO ── */
.page-hero{background:var(--bg-2);padding:32px 0 24px;border-bottom:1px solid var(--border)}
.breadcrumb{font-family:var(--mono);font-size:11px;color:var(--text-3);margin-bottom:14px;display:flex;align-items:center;gap:5px}
.breadcrumb a{color:var(--text-3);text-decoration:none}
.breadcrumb a:hover{color:var(--blue)}
.page-tag{display:inline-block;background:var(--blue-l);color:var(--blue-d);font-size:11px;font-weight:700;padding:2px 9px;border-radius:100px;margin-bottom:10px;letter-spacing:.02em}
h1{font-size:clamp(20px,2.8vw,28px);font-weight:800;line-height:1.2;letter-spacing:-.03em;color:var(--navy);margin-bottom:10px}
h1 span{color:var(--blue)}
.page-lead{font-size:14px;color:var(--text-2);line-height:1.65;max-width:580px}
.hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.trust-strip{display:flex;gap:16px;flex-wrap:wrap;margin-top:12px}
.trust-item{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-3)}
.trust-item::before{content:"✓";color:var(--green);font-weight:700}

/* ── BUTTONS ── */
.btn-primary{display:inline-flex;align-items:center;gap:6px;background:var(--blue);color:#fff;font-size:13px;font-weight:700;padding:9px 16px;border-radius:var(--radius);transition:opacity .15s,transform .1s;border:none;cursor:pointer;text-decoration:none!important;letter-spacing:-.01em}
.btn-primary:hover{opacity:.88;transform:translateY(-1px);color:#fff}
.btn-primary svg{width:13px;height:13px;flex-shrink:0}
.btn-secondary{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-md);color:var(--text-2);font-size:13px;padding:8px 13px;border-radius:var(--radius);transition:border-color .15s,color .15s;text-decoration:none!important;background:var(--bg-2)}
.btn-secondary:hover{border-color:var(--blue);color:var(--blue)}

/* ── LAYOUT ── */
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:32px;padding:28px 0}

/* ── CARD ── */
.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;margin-bottom:14px}
.card-accent{border-left:3px solid var(--blue);border-radius:0 var(--radius-lg) var(--radius-lg) 0}
.section-label{font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);margin-bottom:8px;display:block}
h2{font-size:clamp(16px,2vw,19px);font-weight:700;letter-spacing:-.02em;color:var(--navy);margin-bottom:10px}
h3{font-size:14px;font-weight:600;color:var(--navy);margin-bottom:5px}
p{font-size:14px;color:var(--text-2);line-height:1.7;margin-bottom:10px}
p:last-child{margin-bottom:0}
ul,ol{padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:14px;color:var(--text-2);margin-bottom:10px}
li{line-height:1.65}
strong{color:var(--navy);font-weight:600}

/* ── STEPS ── */
.steps{list-style:none;padding:0;display:flex;flex-direction:column}
.step{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--bg-3)}
.step:last-child{border-bottom:none}
.step-n{width:24px;height:24px;min-width:24px;background:var(--blue);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;font-weight:700;margin-top:2px}
.step h3{font-size:13px;font-weight:600;color:var(--navy);margin-bottom:3px}
.step p{font-size:13px;margin-bottom:0}

/* ── TERMINAL ── */
.term{background:var(--navy);border-radius:var(--radius);overflow:hidden;margin:10px 0}
.term-bar{display:flex;align-items:center;gap:5px;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.07)}
.term-dot{width:8px;height:8px;border-radius:50%}
.term-label{font-family:var(--mono);font-size:10px;color:rgba(255,255,255,.3);margin-left:5px}
.term-body{padding:12px 14px;font-family:var(--mono);font-size:12px;line-height:1.85;color:rgba(255,255,255,.8)}
.t-p{color:#7ec8e3}.t-c{color:#fff}.t-o{color:rgba(255,255,255,.45)}.t-v{color:#90d4a0}.t-ok{color:#90d4a0}.t-err{color:#f0a8a8}.t-cm{color:rgba(255,255,255,.28)}

/* ── CALLOUTS ── */
.callout{border-radius:var(--radius-sm);padding:10px 13px;font-size:13px;line-height:1.65;margin:10px 0;display:flex;gap:8px;align-items:flex-start}
.callout svg{width:13px;height:13px;flex-shrink:0;margin-top:2px}
.callout-ok{background:var(--green-l);color:#1a6e3c;border:1px solid var(--green-b)}
.callout-warn{background:var(--yellow-l);color:#7a5000;border:1px solid var(--yellow-b)}
.callout-err{background:var(--red-l);color:#8b1a1a;border:1px solid var(--red-b)}
.callout-info{background:var(--blue-l);color:var(--blue-d);border:1px solid #b5d0f0}

/* ── VERSION BADGE ── */
.version-badge{background:var(--blue-l);border:1px solid #b5d0f0;border-radius:var(--radius);padding:12px 14px;margin-bottom:12px}
.version-badge-label{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-d);margin-bottom:4px}
.version-badge-val{font-size:22px;font-weight:800;color:var(--navy);font-family:var(--mono);letter-spacing:-.02em}
.version-badge-sub{font-size:11px;color:var(--text-3);margin-top:2px}

/* ── FAQ ── */
.faq{display:flex;flex-direction:column;gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden;margin-top:12px}
.faq-item{background:var(--bg-2)}
details summary{font-size:13px;font-weight:600;color:var(--navy);padding:11px 14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;list-style:none;user-select:none}
details summary::-webkit-details-marker{display:none}
details summary::after{content:'+';font-size:16px;font-weight:300;color:var(--text-3);flex-shrink:0;transition:transform .2s}
details[open] summary::after{transform:rotate(45deg)}
.faq-ans{padding:8px 14px 12px;font-size:13px;color:var(--text-2);line-height:1.7;border-top:1px solid var(--border)}
.faq-ans code{font-family:var(--mono);font-size:11px;background:var(--bg-3);border:1px solid var(--border);padding:1px 5px;border-radius:3px}

/* ── TABLE ── */
.tbl-wrap{overflow-x:auto;margin:12px 0}
table{width:100%;border-collapse:collapse;font-size:13px}
thead tr{border-bottom:2px solid var(--border)}
th{padding:8px 12px;text-align:left;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-3)}
td{padding:8px 12px;color:var(--text-2);border-bottom:1px solid var(--bg-3)}
tr:last-child td{border-bottom:none}
td strong{color:var(--navy)}
.td-ok{color:#1a6e3c;font-weight:600}
.td-warn{color:#7a5000}

/* ── SIDEBAR ── */
.sb-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:10px}
.sb-card-title{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);margin-bottom:8px}
.sb-links{list-style:none;padding:0;display:flex;flex-direction:column;gap:4px}
.sb-links a{font-size:12px;color:var(--text-2);display:flex;align-items:center;gap:4px;text-decoration:none;padding:2px 0}
.sb-links a::before{content:"→";color:var(--blue);font-size:10px;font-family:var(--mono)}
.sb-links a:hover{color:var(--blue)}
.sb-links a.cur{color:var(--blue);font-weight:600}

/* ── RELATED ── */
.rel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:10px}
.rel-card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px;transition:border-color .15s;text-decoration:none!important;display:block}
.rel-card:hover{border-color:var(--blue)}
.rel-title{font-size:12px;font-weight:600;color:var(--navy);margin-bottom:2px}
.rel-sub{font-size:11px;color:var(--text-3);font-family:var(--mono)}

/* ── CTA BANNER ── */
.cta-banner{background:var(--blue);border-radius:var(--radius-lg);padding:22px 26px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:32px 0}
.cta-banner h2{color:#fff;font-size:16px;margin-bottom:4px;letter-spacing:-.02em}
.cta-banner p{color:rgba(255,255,255,.65);font-size:13px;max-width:360px;margin:0}
.btn-white{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--blue);font-size:12px;font-weight:700;padding:8px 15px;border-radius:var(--radius);white-space:nowrap;flex-shrink:0;text-decoration:none!important;transition:opacity .15s}
.btn-white:hover{opacity:.9;color:var(--blue)}
.btn-white svg{width:12px;height:12px}

/* ── COOKIE ── */
.cookie-bar{position:fixed;bottom:14px;left:50%;transform:translateX(-50%);background:var(--navy);border-radius:var(--radius);padding:12px 16px;display:flex;align-items:center;gap:12px;font-size:12px;max-width:500px;width:calc(100% - 28px);z-index:9999}
.cookie-bar p{flex:1;color:rgba(255,255,255,.65);line-height:1.4;margin:0}
.cookie-bar p a{color:#fff;text-decoration:underline;text-underline-offset:2px}
.cookie-btns{display:flex;gap:7px;flex-shrink:0}
.cookie-accept{background:#fff;color:var(--navy);font-family:var(--mono);font-size:11px;font-weight:700;padding:5px 11px;border-radius:var(--radius-sm);border:none;cursor:pointer}
.cookie-decline{background:transparent;color:rgba(255,255,255,.55);font-size:11px;padding:5px 9px;border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.2);cursor:pointer}

/* ── FOOTER ── */
.site-footer{border-top:1px solid var(--border);padding:24px 0;background:var(--bg-2);margin-top:0}
.footer-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}
.footer-logo{display:flex;align-items:center;gap:8px;margin-bottom:6px}
.footer-logo-mark{width:22px;height:22px;background:var(--blue);border-radius:5px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;font-weight:700;color:#fff}
.footer-logo-name{font-size:13px;font-weight:700;color:var(--navy);letter-spacing:-.01em}
.footer-tagline{font-size:12px;color:var(--text-3);max-width:200px;line-height:1.55}
.footer-col-title{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);margin-bottom:8px}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:5px}
.footer-links a{font-size:12px;color:var(--text-2);text-decoration:none}
.footer-links a:hover{color:var(--blue)}
.footer-bottom{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--text-3)}

/* ── CAPTCHA NOTE ── */
.captcha-note{background:var(--yellow-l);border:1px solid var(--yellow-b);border-radius:var(--radius-sm);padding:8px 12px;font-size:12px;color:#7a5000;display:flex;align-items:center;gap:7px;margin-top:8px}

/* ── RESPONSIVE ── */
@media(max-width:860px){.content-layout{grid-template-columns:1fr}.content-sidebar{display:none}.cta-banner{flex-direction:column}.rel-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.wrap{padding:0 14px}.page-hero{padding:24px 0 18px}.nav-links{display:none}h1{font-size:20px}.rel-grid{grid-template-columns:1fr}.footer-inner{flex-direction:column;gap:16px}.cta-banner{padding:16px}}
