/* docs.css — documentation page styles */
:root {
    --bg: #030712; --bg-s: #111827; --bg-sh: #1f2937;
    --c1: #f9fafb; --c2: #9ca3af; --c3: #6b7280;
    --blue: #3b82f6; --purple: #8b5cf6; --cyan: #06b6d4;
    --green: #10b981; --amber: #f59e0b;
    --blue-glow: rgba(59,130,246,.15);
    --border: rgba(255,255,255,.08); --border-h: rgba(59,130,246,.3);
    --font: 'Noto Sans SC', system-ui, sans-serif;
    --mono: 'JetBrains Mono', monospace;
    --tech: 'Space Grotesk', sans-serif;
    --ease: all .3s cubic-bezier(.4,0,.2,1);
    --r: 12px; --r2: 20px;
    --sidebar: 260px;
    --header-h: 76px;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:var(--font);background:var(--bg);color:var(--c1);line-height:1.7;overflow-x:clip;-webkit-font-smoothing:antialiased;}
a{text-decoration:none;color:inherit;}
ul{list-style:none;}
code{font-family:var(--mono);font-size:.85em;background:rgba(255,255,255,.08);padding:2px 7px;border-radius:4px;color:var(--cyan);}
.container{max-width:1280px;margin:0 auto;padding:0 24px;}
/* Ambient */
.ambient-bg{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;}
.glow-sphere{position:absolute;border-radius:50%;filter:blur(120px);opacity:.25;animation:float 20s infinite alternate ease-in-out;}
.glow-1{top:-10%;left:-10%;width:50vw;height:50vw;background:rgba(59,130,246,.2);}
.glow-2{bottom:-10%;right:-10%;width:40vw;height:40vw;background:rgba(139,92,246,.15);animation-delay:-5s;}
@keyframes float{0%{transform:translate(0,0)}100%{transform:translate(4%,4%)}}
/* Header */
header{position:fixed;top:0;left:0;width:100%;z-index:200;background:rgba(3,7,18,.7);backdrop-filter:blur(16px);border-bottom:1px solid var(--border);transition:background .3s ease,box-shadow .3s ease;}
.navbar{display:flex;justify-content:space-between;align-items:center;height:var(--header-h);}
.logo{font-family:var(--tech);font-size:26px;font-weight:700;display:flex;align-items:center;gap:10px;letter-spacing:-.5px;}
.logo-icon{width:36px;height:36px;object-fit:contain;flex-shrink:0;}
.nav-links{display:flex;gap:36px;align-items:center;}
.nav-links a{font-size:15px;font-weight:500;color:var(--c2);transition:var(--ease);}
.nav-links a:hover{color:var(--c1);}
.nav-links a.active{color:var(--blue);}
.lang-switch{position:relative;}
.lang-switch__btn{cursor:pointer;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--c2);background:transparent;border:1px solid var(--border);border-radius:8px;padding:5px 10px;transition:var(--ease);white-space:nowrap;font-family:var(--font);}
.lang-switch__btn:hover{color:var(--c1);border-color:var(--border-h);}
.lang-switch__arrow{font-size:10px;transition:transform .2s ease;margin-left:2px;flex-shrink:0;}
.lang-switch.open .lang-switch__arrow{transform:rotate(180deg);}
.lang-switch__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:164px;background:var(--bg-s);border:1px solid var(--border);border-radius:10px;padding:6px;box-shadow:0 8px 28px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease,visibility 0s .2s;z-index:200;}
.lang-switch.open .lang-switch__dropdown{opacity:1;visibility:visible;transform:translateY(0);transition:opacity .2s ease,transform .2s ease,visibility 0s;}
.lang-switch__option{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;font-size:13px;color:var(--c2);text-decoration:none;}
.lang-switch__option:hover{background:rgba(255,255,255,.05);color:var(--c1);}
.lang-switch__option--active{color:var(--blue);}
.lang-switch__option--active:hover{background:var(--blue-glow);}
.lang-switch__option--disabled{opacity:.45;cursor:not-allowed;pointer-events:none;}
.lang-switch__check{width:14px;flex-shrink:0;font-size:11px;color:var(--blue);}
.lang-switch__tag{margin-left:auto;font-size:10px;font-weight:700;padding:1px 6px;border-radius:4px;border:1px solid transparent;}
.lang-switch__tag--current{background:var(--blue-glow);border-color:rgba(59,130,246,.3);color:var(--blue);}
.lang-switch__tag--soon{background:rgba(107,114,128,.1);border-color:rgba(107,114,128,.2);color:var(--c3);}
.lang-switch--footer{display:flex;align-items:center;flex-wrap:wrap;gap:4px 6px;font-size:13px;color:var(--c2);}
.lang-switch--footer__sep{opacity:.35;}
.lang-switch--footer__alt{color:var(--c2);text-decoration:none;transition:color .2s;}
.lang-switch--footer__alt:hover{color:var(--blue);}
.menu-toggle{display:none;font-size:24px;cursor:pointer;}
/* Page layout */
.docs-wrap{display:grid;grid-template-columns:var(--sidebar) 1fr;gap:0;padding-top:var(--header-h);min-height:100vh;position:relative;z-index:1;max-width:1280px;margin:0 auto;}
/* Sidebar */
.docs-sidebar{position:sticky;top:var(--header-h);height:calc(100vh - var(--header-h));overflow-y:auto;overflow-x:hidden;background:rgba(3,7,18,.6);border-right:1px solid var(--border);padding:28px 0 40px;scrollbar-width:thin;scrollbar-color:var(--bg-sh) transparent;}
.docs-sidebar::-webkit-scrollbar{width:4px;}
.docs-sidebar::-webkit-scrollbar-thumb{background:var(--bg-sh);border-radius:2px;}
.sidebar-label{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--c3);padding:0 22px;margin-bottom:10px;}
.sidebar-nav a{display:flex;align-items:center;gap:10px;padding:9px 22px;font-size:14px;font-weight:500;color:var(--c2);border-left:2px solid transparent;transition:var(--ease);}
.sidebar-nav a:hover{color:var(--c1);background:rgba(255,255,255,.03);}
.sidebar-nav a.active{color:var(--blue);border-left-color:var(--blue);background:rgba(59,130,246,.06);}
.sidebar-nav a i{width:16px;text-align:center;font-size:13px;}
.sidebar-divider{height:1px;background:var(--border);margin:16px 22px;}
.sidebar-dl-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:20px 16px 0;padding:10px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-size:13px;font-weight:700;transition:var(--ease);}
.sidebar-dl-btn:hover{opacity:.9;transform:translateY(-1px);}
/* Content area */
.docs-main{padding:40px 56px 80px;min-width:0;}
/* Page-level H1 (SEO, visually minimal) */
.docs-page-title{font-size:13px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:var(--c3);margin-bottom:28px;padding-bottom:12px;border-bottom:1px solid var(--border);}
/* Breadcrumb */
.breadcrumb{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--c3);margin-bottom:32px;}
.breadcrumb a{color:var(--blue);}
.breadcrumb a:hover{text-decoration:underline;}
.breadcrumb i{font-size:10px;}
/* Sections */
.docs-section{padding-top:16px;margin-bottom:72px;}
.docs-section:first-child{padding-top:0;}
/* Platform header */
.platform-head{display:flex;align-items:center;gap:18px;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid var(--border);}
.platform-head-icon{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0;}
.ph-start{background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.2));color:var(--blue);}
.ph-win{background:rgba(0,164,239,.12);color:#00a4ef;}
.ph-mac{background:rgba(243,244,246,.08);color:#f3f4f6;}
.ph-android{background:rgba(61,220,132,.12);color:#3DDC84;}
.ph-ios{background:rgba(14,165,233,.12);color:#0ea5e9;}
.ph-linux{background:rgba(252,198,36,.12);color:#FCC624;}
.platform-head h2{font-size:24px;font-weight:700;margin-bottom:4px;}
.platform-head p{font-size:13px;color:var(--c2);}
/* Steps */
.step-list{display:flex;flex-direction:column;gap:0;}
.step{display:flex;gap:20px;padding-bottom:32px;position:relative;}
.step:not(:last-child)::before{content:'';position:absolute;left:19px;top:44px;bottom:0;width:2px;background:linear-gradient(to bottom,var(--border-h),var(--border));}
.step-num{width:40px;height:40px;border-radius:50%;background:var(--blue-glow);border:1.5px solid rgba(59,130,246,.4);color:var(--blue);font-family:var(--tech);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;}
.step-body{flex:1;min-width:0;padding-top:8px;}
.step-body h3{font-size:17px;font-weight:700;margin-bottom:10px;display:flex;align-items:center;gap:8px;}
.step-body h3 i{color:var(--blue);font-size:15px;}
.step-body p{font-size:14px;color:var(--c2);line-height:1.8;margin-bottom:10px;}
.step-body p:last-child{margin-bottom:0;}
/* Mini steps */
.mini-steps{display:flex;flex-direction:column;gap:8px;margin:12px 0;}
.mini-step{display:flex;align-items:baseline;gap:10px;font-size:13px;color:var(--c2);}
.mini-num{width:20px;height:20px;border-radius:50%;background:rgba(59,130,246,.12);border:1px solid rgba(59,130,246,.2);color:var(--blue);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
/* Tip boxes */
.tip{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:var(--r);margin:12px 0;font-size:13px;line-height:1.7;}
.tip--info{background:rgba(59,130,246,.07);border:1px solid rgba(59,130,246,.18);color:var(--c2);}
.tip--success{background:rgba(16,185,129,.07);border:1px solid rgba(16,185,129,.18);color:var(--c2);}
.tip--warn{background:rgba(245,158,11,.07);border:1px solid rgba(245,158,11,.18);color:var(--c2);}
.tip i{flex-shrink:0;margin-top:2px;}
.tip--info i{color:var(--blue);}
.tip--success i{color:var(--green);}
.tip--warn i{color:var(--amber);}
.tip strong{color:var(--c1);}
/* Download button in step */
.step-dl-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 20px;border-radius:8px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-size:13px;font-weight:700;margin:10px 0;transition:var(--ease);}
.step-dl-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(59,130,246,.35);}
/* iOS app buttons */
.ios-app-btns{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0;}
.ios-app-btn{display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--bg-s);border:1px solid var(--border);border-radius:var(--r2);transition:var(--ease);min-width:240px;}
.ios-app-btn:hover{border-color:var(--border-h);transform:translateX(4px);}
.ios-app-btn i{font-size:22px;color:var(--c2);}
.ios-app-btn strong{display:block;font-size:14px;font-weight:700;}
.ios-app-btn span{font-size:12px;color:var(--c3);}
/* Arch cards */
.arch-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0;}
.arch-card{background:var(--bg-s);border:1px solid var(--border);border-radius:var(--r2);padding:16px 18px;display:flex;align-items:flex-start;gap:14px;transition:var(--ease);}
.arch-card--rec{border-color:rgba(59,130,246,.3);background:rgba(59,130,246,.05);}
.arch-card:hover{border-color:var(--border-h);}
.arch-card i{font-size:22px;color:var(--c2);margin-top:2px;flex-shrink:0;}
.arch-card strong{display:block;font-size:13px;font-weight:700;margin-bottom:3px;}
.arch-card span{font-size:12px;color:var(--c2);display:block;margin-bottom:2px;}
.arch-card em{font-size:11px;color:var(--c3);font-style:normal;}
/* Terminal */
.terminal{border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.09);margin:12px 0;}
.terminal__bar{background:#1a1d24;padding:10px 16px;display:flex;align-items:center;gap:10px;}
.terminal__dots{display:flex;gap:6px;}
.terminal__dot{width:11px;height:11px;border-radius:50%;}
.terminal__dot--r{background:#ff5f57;}
.terminal__dot--y{background:#febc2e;}
.terminal__dot--g{background:#28c840;}
.terminal__title{font-size:12px;color:var(--c3);font-family:var(--mono);margin-left:auto;}
.terminal__body{background:#0d1117;padding:16px 20px;display:flex;flex-direction:column;gap:4px;}
.tl{font-family:var(--mono);font-size:12.5px;line-height:1.7;}
.tl--gap{margin-top:8px;}
.tl--ok{color:var(--green);}
.t-prompt{color:var(--blue);margin-right:8px;user-select:none;}
.t-cmd{color:#e2e8f0;}
.t-arg{color:var(--cyan);}
.t-comment{color:var(--c3);}
/* Alt block */
.alt-block{background:rgba(139,92,246,.06);border:1px solid rgba(139,92,246,.18);border-radius:var(--r2);padding:18px 20px;margin-top:16px;}
.alt-block-head{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--purple);margin-bottom:8px;}
.alt-block p{font-size:13px;color:var(--c2);line-height:1.7;}
.alt-block a{color:var(--blue);}
/* FAQ */
.docs-faq{padding:60px 56px 80px;border-top:1px solid var(--border);}
.faq-heading{font-size:22px;font-weight:700;margin-bottom:6px;}
.faq-sub{font-size:14px;color:var(--c2);margin-bottom:32px;}
.faq-list{display:flex;flex-direction:column;gap:16px;}
.faq-item{border-left:3px solid var(--blue-glow);padding:16px 20px;background:var(--bg-s);border-radius:0 var(--r2) var(--r2) 0;border:1px solid var(--border);border-left:3px solid rgba(59,130,246,.35);transition:var(--ease);}
.faq-item:hover{border-left-color:var(--blue);background:var(--bg-sh);}
.faq-q{font-size:14px;font-weight:700;color:var(--c1);margin-bottom:8px;}
.faq-a{font-size:13px;color:var(--c2);line-height:1.8;}
.faq-a p{margin-bottom:4px;}
.faq-a p:last-child{margin-bottom:0;}
.faq-a strong{color:var(--c1);}
/* CTA */
.docs-cta{margin:0 56px 80px;padding:40px 48px;background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(139,92,246,.1));border:1px solid rgba(59,130,246,.2);border-radius:var(--r2);display:flex;align-items:center;justify-content:space-between;gap:32px;}
.docs-cta h3{font-size:22px;font-weight:700;margin-bottom:6px;}
.docs-cta p{font-size:14px;color:var(--c2);}
.cta-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;padding:12px 28px;border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-size:14px;font-weight:700;transition:var(--ease);}
.cta-btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(59,130,246,.35);}
/* Footer */
footer{background:#020408;border-top:1px solid var(--border);padding:48px 0 32px;position:relative;z-index:1;}
.footer-grid{display:grid;grid-template-columns:2.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:40px;}
.footer-brand p{color:var(--c2);font-size:14px;margin-top:16px;max-width:320px;line-height:1.8;}
.footer-title{font-size:15px;font-weight:600;margin-bottom:18px;}
.footer-links li{margin-bottom:11px;}
.footer-links a{color:var(--c2);font-size:13px;transition:var(--ease);}
.footer-links a:hover{color:var(--blue);}
.footer-bottom{padding-top:24px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;color:var(--c3);font-size:13px;}
/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.reveal{opacity:0;transform:translateY(20px);transition:all .7s ease-out;}
.reveal.active{opacity:1;transform:translateY(0);}
/* Responsive */
@media(max-width:1024px){
    .footer-grid{grid-template-columns:1fr 1fr;}
    .docs-main{padding:32px 36px 64px;}
}
@media(max-width:768px){
    footer{padding:36px 0 24px;}
    .footer-grid{margin-bottom:24px;}
    .footer-brand p{font-size:13px;margin-top:10px;}
    .footer-title{font-size:14px;margin-bottom:12px;}
    .container{padding:0 16px;}
    .nav-links{display:none;}
    .menu-toggle{display:block;}
    .navbar{height:60px;}
    .logo{font-size:20px;gap:8px;}
    .logo-icon{width:28px;height:28px;}
    .nav-actions{display:flex;align-items:center;gap:10px;}
    .lang-switch__btn .lang-label{display:none;}.lang-switch__btn{padding:5px 8px;gap:4px;}
    .menu-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;font-size:20px;}
    .nav-links.mobile-active{display:flex;flex-direction:column;position:absolute;top:60px;left:0;width:100%;background:var(--bg-s);padding:20px 16px;border-bottom:1px solid var(--border);z-index:100;}
    .docs-wrap{grid-template-columns:1fr;padding-top:60px;}
    .docs-sidebar{display:none;}
    .docs-main{padding:24px 16px 48px;}
    .platform-head{flex-wrap:wrap;gap:12px;}
    .platform-head h2{font-size:20px;}
    .step{gap:14px;}
    .step-num{width:32px;height:32px;font-size:13px;}
    .step-body h3{font-size:15px;}
    .arch-cards{grid-template-columns:1fr;}
    .ios-app-btns{flex-direction:column;}
    .ios-app-btn{min-width:0;width:100%;}
    .docs-faq{padding:32px 16px 48px;}
    .docs-cta{margin:0 0 48px;padding:24px 20px;flex-direction:column;align-items:flex-start;gap:20px;}
    .cta-btn{width:100%;justify-content:center;}
    .terminal__body{overflow-x:auto;padding:12px 14px;}
    .tl{font-size:11.5px;}
    .footer-grid{grid-template-columns:1fr;gap:28px;}
    .footer-bottom{flex-direction:column;justify-content:flex-start;align-items:center;gap:22px;text-align:center;}
    .footer-bottom>p{flex:none;}
    .footer-bottom-right{flex-direction:row;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;}
    .footer-bottom-links{justify-content:center;flex-wrap:wrap;gap:14px;}
}
@media(max-width:480px){
    .docs-main{padding:20px 14px 40px;}
    .platform-head h2{font-size:18px;}
    .step-body p{font-size:13px;}
    .docs-faq{padding:24px 14px 40px;}
}
.footer-bottom-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px;}
.footer-bottom-links{display:flex;gap:20px;flex-wrap:wrap;justify-content:flex-end;}
.footer-bottom-links a{color:var(--c3,#6b7280);font-size:13px;transition:all .3s ease;text-decoration:none;}
.footer-bottom-links a:hover{color:var(--c2,#9ca3af);}
