
:root{
 --hp-bg:#07131d;
 --hp-bg-2:#0b1e29;
 --hp-panel:rgba(12,31,42,.78);
 --hp-panel-strong:#0b202c;
 --hp-ink:#f4f8f8;
 --hp-muted:#a8b8be;
 --hp-line:rgba(140,232,225,.16);
 --hp-teal:#58ddd2;
 --hp-teal-2:#119d9c;
 --hp-amber:#e7b05c;
 --hp-danger:#ef8065;
 --hp-max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.article-page{
 margin:0;
 background:
  radial-gradient(circle at 78% 5%,rgba(38,192,188,.12),transparent 26%),
  radial-gradient(circle at 15% 22%,rgba(217,167,87,.07),transparent 24%),
  var(--hp-bg);
 color:var(--hp-ink);
 font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
 line-height:1.65;
}
body.article-page a{color:inherit;text-decoration:none}
.article-container{width:min(var(--hp-max),calc(100% - 36px));margin:auto}
.hp-article-header{
 position:sticky;top:0;z-index:60;
 background:rgba(7,19,29,.76);
 backdrop-filter:blur(20px);
 border-bottom:1px solid var(--hp-line);
}
.hp-article-nav{display:flex;align-items:center;min-height:76px;gap:25px}
.hp-article-brand-group{display:flex;align-items:center;gap:12px}
.hp-article-logo{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;border:1px solid rgba(88,221,210,.3);background:rgba(88,221,210,.08)}
.hp-article-logo img{width:25px;height:25px;object-fit:contain}
.hp-article-brand{font-weight:800;letter-spacing:-.03em}
.hp-article-brand span{color:var(--hp-teal)}
.hp-article-links{margin-left:auto;display:flex;align-items:center;gap:22px;font-size:.82rem;color:var(--hp-muted)}
.hp-article-links a:hover{color:var(--hp-ink)}
.article-btn{
 display:inline-flex;align-items:center;justify-content:center;gap:10px;
 min-height:44px;padding:0 18px;border-radius:999px;
 border:1px solid rgba(88,221,210,.28);
 background:linear-gradient(135deg,var(--hp-teal-2),#177681);
 color:white;font-weight:800;font-size:.82rem;
 box-shadow:0 12px 34px rgba(0,154,159,.18);
}
.article-btn.ghost{background:transparent;box-shadow:none;color:var(--hp-ink)}
.article-hero{padding:72px 0 58px;border-bottom:1px solid var(--hp-line)}
.article-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.78fr);gap:54px;align-items:center}
.article-kicker{color:var(--hp-teal);font-size:.72rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.article-hero h1{
 margin:16px 0 20px;
 font-size:clamp(2.8rem,5.4vw,6rem);
 line-height:.96;letter-spacing:-.06em;
}
.article-hero .intro{max-width:760px;color:var(--hp-muted);font-size:1.08rem}
.article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;color:var(--hp-muted);font-size:.78rem}
.article-meta span{padding:7px 10px;border:1px solid var(--hp-line);border-radius:999px;background:rgba(255,255,255,.025)}
.article-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
.article-cover{
 position:relative;min-height:360px;overflow:hidden;border-radius:34px;
 border:1px solid var(--hp-line);background:#06111a;
 box-shadow:0 38px 90px rgba(0,0,0,.28);
}
.article-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.article-cover::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(4,14,22,.45))}
.article-layout{display:grid;grid-template-columns:250px minmax(0,790px);gap:66px;justify-content:center;padding:72px 0 120px}
.article-toc{
 position:sticky;top:98px;align-self:start;padding:18px;border-radius:22px;
 border:1px solid var(--hp-line);background:rgba(10,30,41,.66);backdrop-filter:blur(14px);
}
.article-toc strong{display:block;margin-bottom:8px}
.article-toc a{display:block;padding:9px 0;color:var(--hp-muted);font-size:.78rem;border-bottom:1px solid rgba(255,255,255,.06)}
.article-toc a:hover{color:var(--hp-teal)}
.article-content{min-width:0}
.article-content .lead{font-size:1.2rem;color:#e9f1f2}
.article-content h2{
 scroll-margin-top:105px;margin:72px 0 20px;
 font-size:clamp(2rem,4vw,3.75rem);line-height:1.02;letter-spacing:-.05em;
}
.article-content h3{margin:0 0 8px;font-size:1.22rem}
.article-content p,.article-content li{color:var(--hp-muted)}
.article-content ul,.article-content ol{padding-left:1.15rem}
.article-callout{
 margin:28px 0;padding:24px;border-radius:22px;
 border:1px solid rgba(88,221,210,.22);
 background:linear-gradient(135deg,rgba(88,221,210,.09),rgba(255,255,255,.025));
}
.article-callout strong{color:var(--hp-teal)}
.article-gridcards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:26px 0}
.article-card{
 min-height:100%;padding:22px;border-radius:22px;
 border:1px solid var(--hp-line);background:var(--hp-panel);
}
.article-card .code{display:block;margin-bottom:14px;color:var(--hp-teal);font-size:.66rem;font-weight:900;letter-spacing:.12em}
.article-card p,.article-card li{font-size:.86rem}
.article-flow{display:grid;gap:12px;margin:24px 0}
.article-step{
 display:grid;grid-template-columns:58px 1fr;gap:16px;padding:19px;border-radius:20px;
 border:1px solid var(--hp-line);background:rgba(12,31,42,.62);
}
.article-step > span{
 width:58px;height:58px;display:grid;place-items:center;border-radius:17px;
 background:rgba(88,221,210,.1);color:var(--hp-teal);font-weight:900;
}
.article-step p{margin:0;font-size:.88rem}
.article-alert{
 margin:28px 0;padding:24px;border-radius:22px;
 border:1px solid rgba(239,128,101,.28);background:rgba(239,128,101,.07);
}
.article-alert strong{color:#ff9a82}
.article-table{width:100%;border-collapse:collapse;margin:24px 0;border:1px solid var(--hp-line)}
.article-table th,.article-table td{padding:14px;text-align:left;border-bottom:1px solid var(--hp-line);vertical-align:top}
.article-table th{color:var(--hp-ink);background:rgba(88,221,210,.06)}
.article-table td{color:var(--hp-muted)}
.article-faq details{
 margin:10px 0;padding:0 20px;border:1px solid var(--hp-line);
 border-radius:18px;background:rgba(12,31,42,.6);
}
.article-faq summary{cursor:pointer;padding:18px 0;font-weight:800}
.article-faq p{margin-top:0}
.article-references{font-size:.82rem}
.article-references li{margin:8px 0}
.article-final{padding:64px 0;background:linear-gradient(135deg,rgba(88,221,210,.12),rgba(231,176,92,.06));border-top:1px solid var(--hp-line)}
.article-final-wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
.article-final h2{margin:0;font-size:clamp(2.1rem,4vw,4.3rem);line-height:1;letter-spacing:-.05em}
.article-footer{padding:46px 0;background:#030a0f;border-top:1px solid rgba(255,255,255,.06)}
.article-footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.article-footer p{margin:6px 0 0;color:var(--hp-muted);font-size:.82rem}
@media(max-width:980px){
 .hp-article-links{display:none}
 .article-hero-grid,.article-layout{grid-template-columns:1fr}
 .article-cover{min-height:300px}
 .article-toc{display:none}
 .article-gridcards{grid-template-columns:1fr}
 .article-final-wrap{display:block}
 .article-final .article-actions{margin-top:24px}
}
@media(max-width:620px){
 .article-container{width:min(100% - 24px,var(--hp-max))}
 .hp-article-nav{min-height:68px}
 .hp-article-nav>.article-btn{display:none}
 .article-hero{padding-top:48px}
 .article-hero h1{font-size:3.1rem}
 .article-cover{min-height:220px;border-radius:24px}
 .article-actions .article-btn{width:100%}
 .article-footer-grid{grid-template-columns:1fr}
 .article-table{font-size:.78rem}
}
