/* ...existing styles... */
:root {
  --bg: #000000;
  --fg: #ffffff;
  --muted: #9a9a9a;
  --card: #121212;
  --line: #1c1c1c;
  --accent: #ffffff;
}

* { box-sizing: border-box; }
html, body { height: 100%; background: var(--bg); color: var(--fg); }
body { font-family: "Noto Sans", system-ui, -apple-system, Segoe UI, Roboto, Arial; line-height: 1.6; }

.container { width: min(1120px, 90vw); margin: 0 auto; }

#bg-canvas { position: fixed; inset: 0; z-index: -1; background: #000; }

.site-header { position: sticky; top: 0; backdrop-filter: blur(6px); background: rgba(0,0,0,0.6); border-bottom: 1px solid var(--line); z-index: 20; }
.site-header .container { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 24px; padding: 14px 0; }

.brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 700; letter-spacing: 0.08em; }
.logo-dot { width: 12px; height: 12px; border-radius: 50%; background: var(--fg); box-shadow: 0 0 20px rgba(255,255,255,0.12); }
.brand-name { color: var(--fg); text-decoration: none; }
.nav { display: flex; gap: 20px; }
.nav a, .footer-nav a, .link { color: var(--fg); text-decoration: none; opacity: 0.9; transition: opacity .2s ease; }
.nav a:hover, .footer-nav a:hover, .link:hover { opacity: 1; }

.cta { background: var(--fg); color: var(--bg); padding: 12px 18px; border-radius: 12px; border: none; text-decoration: none; box-shadow: 0 0 16px rgba(255,255,255,0.12); }
.cta:hover { box-shadow: 0 0 28px rgba(255,255,255,0.22); }
.cta-small { padding: 10px 14px; font-size: 14px; }
.cta.outline { background: transparent; color: var(--fg); border: none; box-shadow: 0 0 18px rgba(255,255,255,0.14); }

.hero { padding: 72px 0 36px; }
.hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 40px; align-items: center; }
.hero-title { font-size: clamp(28px, 5vw, 50px); line-height: 1.1; margin: 0 0 12px; }
.hero-subtitle { color: var(--muted); margin: 0 0 22px; }
.hero-actions { display: flex; gap: 14px; margin-bottom: 18px; }
.hero-points { display: grid; gap: 8px; padding-left: 18px; color: var(--muted); }
.hero-showcase .showcase-stack { position: relative; }
.showcase-img { width: 100%; border-radius: 12px; border: 1px solid var(--line); box-shadow: 0 6px 24px rgba(0,0,0,0.5); }
.showcase-img.layered { position: absolute; right: -6%; top: 12%; width: 68%; opacity: 0.9; }
.caption { color: var(--muted); font-size: 14px; margin-top: 10px; }

.stats { padding: 36px 0; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: transparent; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.stat { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 18px; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.stat-value { font-size: clamp(26px, 6vw, 42px); font-weight: 700; letter-spacing: 0.02em; }
.stat-label { color: var(--muted); }

.features { padding: 60px 0; }
.features h2, .screens h2, .tutorial h2, .download h2, .faq h2 { font-size: clamp(24px, 4vw, 34px); margin-bottom: 20px; }
.features-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.feature-card { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 18px; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.feature-card:hover, .feature-card:focus-within { box-shadow: 0 0 0 1px #2a2a2a, 0 14px 40px rgba(255,255,255,0.06); transform: translateY(-3px); }

.screens { padding: 40px 0; }
.carousel { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.carousel-track { display: flex; gap: 0; transform: translateX(0); transition: transform .5s cubic-bezier(.2,.7,.2,1); }
.slide { min-width: 100%; padding: 12px; }
.slide img { width: 100%; border-radius: 8px; border: 1px solid var(--line); }
.carousel-btn { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(255,255,255,0.06); color: var(--fg); border: 1px solid var(--line); padding: 8px 12px; border-radius: 10px; cursor: pointer; }
.carousel-btn:hover { background: rgba(255,255,255,0.1); }
.carousel-btn.prev { left: 12px; }
.carousel-btn.next { right: 12px; }

.tutorial { padding: 60px 0; }
.steps { display: grid; gap: 16px; counter-reset: step; }
.steps li { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 16px; list-style: none; position: relative; }
.steps li::before { counter-increment: step; content: counter(step); position: absolute; left: -12px; top: -12px; width: 30px; height: 30px; border-radius: 8px; background: var(--fg); color: var(--bg); display: grid; place-items: center; font-weight: 700; }

.download { padding: 60px 0; border-top: 1px solid var(--line); }
.download-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 24px; align-items: start; }
.download-actions { display: flex; gap: 12px; margin: 12px 0 10px; }
.download-notes { color: var(--muted); padding-left: 18px; }

.trust-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.trust-item { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 16px; }
.trust-value { font-size: 22px; font-weight: 700; }
.trust-label { color: var(--muted); }

.faq { padding: 60px 0; border-top: 1px solid var(--line); }
.faq-grid { display: grid; gap: 12px; }
details { background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: 14px 16px; transition: box-shadow .2s ease, transform .2s ease; }
details:hover { box-shadow: 0 0 0 1px #2a2a2a, 0 14px 40px rgba(255,255,255,0.06); transform: translateY(-2px); }
.details-content { overflow: hidden; }
summary { cursor: pointer; font-weight: 600; display: flex; align-items: center; gap: 10px; }
summary::-webkit-details-marker { display: none; }

.site-footer { padding: 32px 0; border-top: 1px solid var(--line); color: var(--muted); }
.footer-grid { display: grid; grid-template-columns: 1fr 2fr 1fr; gap: 18px; align-items: center; }

.guide { padding: 60px 0; }
.guide-carousel { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.guide-track { display: flex; transition: transform .5s cubic-bezier(.2,.7,.2,1); will-change: transform; }
.gslide { min-width: 100%; padding: 12px; display: grid; gap: 10px; }
.gslide img { width: 100%; height: clamp(240px, 48vw, 520px); object-fit: contain; border-radius: 8px; border: 1px solid var(--line); box-shadow: 0 6px 24px rgba(0,0,0,0.5); pointer-events: none; }
.gcap { color: var(--muted); display: flex; align-items: center; gap: 10px; }
.gstep { font-weight: 700; color: var(--fg); }
.guide-btn { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(255,255,255,0.06); color: var(--fg); border: 1px solid var(--line); padding: 8px 12px; border-radius: 10px; cursor: pointer; z-index: 2; }
.guide-btn.prev { left: 12px; } .guide-btn.next { right: 12px; }

.copy-trigger .key-icon { width: 16px; height: 16px; margin-left: 8px; vertical-align: -2px; }

@media (max-width: 980px) {
  .hero-grid, .download-grid { grid-template-columns: 1fr; }
  .features-grid { grid-template-columns: 1fr 1fr; }
  .stats-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .features-grid { grid-template-columns: 1fr; }
}

/* ...existing styles... */