:root {
  --bg: #070910;
  --bg-soft: #0c0f18;
  --surface: rgba(17, 21, 34, 0.72);
  --surface-strong: #111624;
  --text: #f7f8fb;
  --muted: #9aa3b5;
  --line: rgba(255,255,255,.09);
  --purple: #8b5cf6;
  --purple-2: #6d5dfc;
  --cyan: #51d9ff;
  --green: #54e89b;
  --shadow: 0 30px 90px rgba(0,0,0,.45);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(circle at 18% 10%, rgba(97,64,255,.10), transparent 26rem),
    radial-gradient(circle at 87% 22%, rgba(58,205,255,.07), transparent 30rem),
    var(--bg);
  color: var(--text);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.5;
  overflow-x: hidden;
}
a { color: inherit; text-decoration: none; }
button { font: inherit; }

.noise {
  position: fixed; inset: 0; z-index: -1; opacity: .025; pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 140 140' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E");
}
.orb { position: absolute; border-radius: 999px; filter: blur(90px); opacity: .12; pointer-events: none; }
.orb-one { width: 440px; height: 440px; background: #754cff; top: 130px; left: -250px; }
.orb-two { width: 360px; height: 360px; background: #1ec8ff; top: 420px; right: -220px; }

.topbar {
  width: min(1180px, calc(100% - 34px));
  height: 76px;
  margin: 0 auto;
  display: flex; align-items: center; justify-content: space-between;
  border-bottom: 1px solid var(--line);
}
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; letter-spacing: -.03em; font-size: 20px; }
.brand-accent { color: #a889ff; }
.brand-mark {
  display: inline-flex; align-items: center; justify-content: center; gap: 2px;
  width: 34px; height: 34px; border-radius: 10px;
  background: linear-gradient(135deg, #7a56ff, #4fd8ff);
  box-shadow: 0 10px 30px rgba(114,80,255,.28);
}
.brand-mark.compact { width: 30px; height: 30px; border-radius: 9px; }
.brand-mark .bar { width: 3px; border-radius: 3px; background: white; }
.brand-mark .b1 { height: 8px; } .brand-mark .b2 { height: 15px; } .brand-mark .b3 { height: 21px; } .brand-mark .b4 { height: 12px; }

.nav { display: flex; gap: 30px; color: var(--muted); font-size: 14px; }
.nav a { transition: color .2s ease; }
.nav a:hover { color: white; }

.button {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  min-height: 50px; padding: 0 22px; border-radius: 14px;
  font-weight: 750; font-size: 14px; border: 1px solid transparent;
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { transform: translateY(-2px); }
.button svg { width: 20px; height: 20px; fill: currentColor; }
.button-primary {
  background: linear-gradient(135deg, #7d5cff, #5e64ff 52%, #39c8ff);
  box-shadow: 0 16px 40px rgba(103,85,255,.28);
}
.button-primary:hover { box-shadow: 0 20px 50px rgba(103,85,255,.4); }
.button-secondary, .button-ghost {
  background: rgba(255,255,255,.035); border-color: var(--line); color: #e9ecf4;
}
.button-secondary:hover, .button-ghost:hover { border-color: rgba(255,255,255,.2); background: rgba(255,255,255,.065); }
.button-small { min-height: 40px; padding: 0 16px; border-radius: 11px; }

.hero {
  width: min(1180px, calc(100% - 34px));
  min-height: 690px;
  margin: 0 auto;
  display: grid; grid-template-columns: 1.12fr .88fr; align-items: center; gap: 70px;
  padding: 70px 0 80px;
}
.hero-copy { position: relative; z-index: 1; }
.status-pill {
  display: inline-flex; align-items: center; gap: 8px; padding: 7px 11px;
  border: 1px solid var(--line); border-radius: 999px; color: #bec6d5;
  background: rgba(255,255,255,.025); font-size: 12px; font-weight: 650;
}
.status-dot { width: 7px; height: 7px; border-radius: 50%; box-shadow: 0 0 0 4px rgba(255,255,255,.03); }
.status-dot.checking { background: #f6c762; }
.status-dot.online { background: var(--green); box-shadow: 0 0 18px rgba(84,232,155,.65); }
.status-dot.offline { background: #ff6b7b; }
.hero h1 {
  max-width: 720px; margin: 24px 0 20px; font-size: clamp(52px, 6.4vw, 84px);
  line-height: .98; letter-spacing: -.062em; font-weight: 850;
}
.gradient-text {
  background: linear-gradient(92deg, #a58cff 0%, #7e82ff 44%, #56d7ff 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.hero-description { max-width: 590px; color: var(--muted); font-size: 18px; margin: 0 0 30px; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.hero-meta { display: flex; flex-wrap: wrap; gap: 24px; margin-top: 30px; color: #7e8799; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; }
.hero-meta span::before { content: "✓"; color: var(--green); margin-right: 8px; }

.player-card {
  position: relative; width: min(100%, 410px); margin-left: auto; padding: 22px;
  border-radius: 28px; background: linear-gradient(180deg, rgba(20,25,41,.92), rgba(11,14,24,.94));
  border: 1px solid rgba(255,255,255,.12); box-shadow: var(--shadow);
  overflow: hidden;
}
.player-glow { position: absolute; width: 250px; height: 250px; border-radius: 50%; right: -110px; top: -110px; background: #7457ff; filter: blur(80px); opacity: .24; }
.player-top, .time-row { position: relative; display: flex; justify-content: space-between; align-items: center; }
.tiny-label { color: #8d96a8; font-size: 10px; letter-spacing: .18em; font-weight: 800; }
.live-dot { font-size: 9px; font-weight: 900; color: #75f2ae; padding: 5px 7px; border-radius: 6px; background: rgba(84,232,155,.08); border: 1px solid rgba(84,232,155,.16); }
.album-art {
  position: relative; aspect-ratio: 1; width: 100%; margin: 17px 0 20px; border-radius: 20px;
  background:
    radial-gradient(circle at 30% 22%, rgba(255,255,255,.12), transparent 24%),
    linear-gradient(145deg, #28204e, #10182c 48%, #102735);
  border: 1px solid rgba(255,255,255,.08); display: grid; place-items: center; overflow: hidden;
}
.album-art::after {
  content: ""; position: absolute; width: 220px; height: 220px; border: 1px solid rgba(255,255,255,.05); border-radius: 50%;
  box-shadow: 0 0 0 35px rgba(255,255,255,.02), 0 0 0 70px rgba(255,255,255,.012);
}
.album-logo { z-index: 2; display: flex; align-items: center; gap: 5px; height: 62px; }
.eq { width: 7px; border-radius: 7px; background: linear-gradient(180deg,#ba9fff,#5cdfff); animation: equalize 1.1s ease-in-out infinite alternate; }
.e1{height:24px;animation-delay:-.7s}.e2{height:44px;animation-delay:-.2s}.e3{height:58px;animation-delay:-.5s}.e4{height:35px;animation-delay:-.9s}.e5{height:49px;animation-delay:-.3s}.e6{height:20px;animation-delay:-.8s}
@keyframes equalize { to { height: 14px; opacity: .55; } }

.track h2 { margin: 0; font-size: 18px; letter-spacing: -.02em; }
.track p { margin: 3px 0 16px; color: var(--muted); font-size: 13px; }
.progress { height: 4px; border-radius: 99px; background: rgba(255,255,255,.08); overflow: hidden; }
.progress-fill { width: 50%; height: 100%; background: linear-gradient(90deg,#875fff,#4fd7ff); border-radius: inherit; }
.time-row { margin-top: 7px; color: #697387; font-size: 9px; }
.controls { display: flex; align-items: center; justify-content: center; gap: 22px; margin: 17px 0 20px; }
.controls button { border: 0; color: white; background: transparent; font-size: 26px; cursor: default; }
.controls .play { width: 50px; height: 50px; border-radius: 50%; background: white; color: #121521; font-size: 15px; font-weight: 900; }
.queue-preview { border-top: 1px solid var(--line); padding-top: 17px; display: flex; align-items: center; justify-content: space-between; }
.queue-preview > div { display: flex; align-items: center; gap: 11px; }
.queue-preview span span, .queue-preview strong, .queue-preview small { display: block; }
.queue-preview strong { font-size: 12px; }
.queue-preview small { color: #707a8c; font-size: 10px; }
.queue-index { color: #6f7a8d; font-size: 10px; }
.queue-tag { font-size: 8px; letter-spacing: .13em; color: #a791ff; padding: 5px 7px; border-radius: 6px; background: rgba(139,92,246,.08); }

.metrics {
  width: min(1180px, calc(100% - 34px)); margin: 0 auto 80px; display: grid; grid-template-columns: repeat(4,1fr);
  border-top: 1px solid var(--line); border-bottom: 1px solid var(--line);
}
.metrics div { padding: 28px 24px; border-right: 1px solid var(--line); }
.metrics div:last-child { border-right: 0; }
.metrics strong { display: block; font-size: 26px; letter-spacing: -.04em; }
.metrics span { color: var(--muted); font-size: 12px; }

.section { width: min(1180px, calc(100% - 34px)); margin: 0 auto; padding: 110px 0; }
.section-heading { max-width: 720px; margin-bottom: 44px; }
.eyebrow { display: block; color: #9a81ff; font-size: 11px; font-weight: 850; letter-spacing: .2em; margin-bottom: 14px; }
.section-heading h2, .cta h2 { margin: 0 0 16px; font-size: clamp(39px,5vw,62px); line-height: 1.03; letter-spacing: -.055em; }
.section-heading p, .cta p { margin: 0; color: var(--muted); font-size: 17px; }

.feature-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.feature-card {
  min-height: 245px; padding: 28px; border-radius: 20px; border: 1px solid var(--line);
  background: linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));
  transition: transform .25s ease, border-color .25s ease, background .25s ease;
}
.feature-card:hover { transform: translateY(-4px); border-color: rgba(146,119,255,.3); background: linear-gradient(180deg,rgba(139,92,246,.07),rgba(255,255,255,.02)); }
.feature-card.featured { grid-row: span 2; min-height: 504px; }
.feature-card .icon { width: 42px; height: 42px; display:grid; place-items:center; border-radius: 12px; background: rgba(139,92,246,.09); border: 1px solid rgba(139,92,246,.16); color: #ae99ff; margin-bottom: 44px; font-size: 18px; }
.feature-card h3 { margin: 0 0 9px; font-size: 20px; letter-spacing: -.025em; }
.feature-card p { margin: 0; color: var(--muted); font-size: 14px; }
.feature-card.featured .icon { margin-bottom: 54px; }
.mini-queue { display: grid; grid-template-columns: 30px 1fr auto; align-items:center; gap: 10px; border-top: 1px solid var(--line); margin-top: 22px; padding-top: 15px; font-size: 12px; }
.mini-queue small { color: #778093; }
.playing-wave { color: #6de0ff; letter-spacing: 1px; animation: pulse 1s ease infinite alternate; }
@keyframes pulse { to { opacity: .35; } }

.command-section { padding-top: 135px; }
.terminal { border: 1px solid var(--line); border-radius: 20px; overflow: hidden; background: #0a0d15; box-shadow: 0 30px 80px rgba(0,0,0,.25); }
.terminal-bar { min-height: 54px; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 1fr auto 1fr; align-items:center; padding: 0 18px; }
.terminal-bar > div { display:flex; gap:6px; }
.terminal-bar > div span { width:8px;height:8px;border-radius:50%;background:#353b49; }
.terminal-bar p { margin:0;color:#727c8f;font-size:11px;letter-spacing:.08em; }
.terminal-bar button { justify-self:end; border:0; background:transparent; color:#8e99ad; cursor:pointer; font-size:11px; }
.terminal-bar button:hover { color:white; }
.terminal-body { padding: 28px; overflow-x:auto; font: 13px/2.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color:#d8ddec; }
.terminal-body > div { white-space: nowrap; }
.prompt { color:#a991ff; font-weight:700; }
.comment { color:#4f596d; margin-left:20px; }

.architecture { border-top: 1px solid var(--line); }
.flow { display:flex; align-items:center; justify-content:space-between; padding: 34px 0 30px; }
.flow-node { min-width: 134px; padding:18px; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.025); }
.flow-node span { color:#7661c8; font:700 9px ui-monospace,monospace; display:block; margin-bottom:15px; }
.flow-node strong { display:block;font-size:14px; }
.flow-node small { color:#707b8e;font-size:10px; }
.flow-line { height:1px; flex:1; background:linear-gradient(90deg,rgba(139,92,246,.2),rgba(81,217,255,.3)); margin:0 10px; position:relative; }
.flow-line::after { content:""; position:absolute;right:-1px;top:-2px;width:5px;height:5px;border-radius:50%;background:#76bfff; }
.tech-tags { display:flex;flex-wrap:wrap;gap:8px; margin-top: 20px; }
.tech-tags span { padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:#838da1;font-size:10px;background:rgba(255,255,255,.02); }

.cta {
  position:relative; overflow:hidden; width:min(1180px,calc(100% - 34px)); margin:70px auto 110px; padding:90px 30px;
  text-align:center; border:1px solid rgba(139,92,246,.18); border-radius:28px;
  background:linear-gradient(180deg,rgba(103,79,255,.08),rgba(255,255,255,.018));
}
.cta-glow { position:absolute;width:480px;height:180px;border-radius:50%;background:#6b51ff;filter:blur(110px);opacity:.16;left:50%;top:-100px;transform:translateX(-50%); }
.cta > *:not(.cta-glow) { position:relative; }
.cta h2 { font-size:clamp(48px,6.5vw,78px); }
.centered { justify-content:center; margin-top:28px; }
.cta-note { display:block;color:#687285;margin-top:20px;font-size:10px; }

footer {
  width:min(1180px,calc(100% - 34px)); margin:0 auto; min-height:100px; border-top:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;color:#747e90;font-size:11px;
}
footer .brand { color:white; font-size:16px; }
footer > div { display:flex;gap:18px; }
footer a:hover { color:white; }

@media (max-width: 900px) {
  .nav { display:none; }
  .hero { grid-template-columns:1fr; gap:45px; padding-top:65px; }
  .player-card { margin:0 auto; }
  .metrics { grid-template-columns:repeat(2,1fr); }
  .metrics div:nth-child(2) { border-right:0; }
  .metrics div:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .feature-grid { grid-template-columns:1fr 1fr; }
  .feature-card.featured { grid-row:auto; min-height:300px; grid-column:1/-1; }
  .flow { flex-direction:column; align-items:stretch; }
  .flow-line { width:1px;height:28px;flex:none;margin:0 auto;background:linear-gradient(#745cff44,#51d9ff55); }
  .flow-line::after { bottom:-1px; top:auto; right:-2px; }
}
@media (max-width: 620px) {
  .topbar { height:66px; }
  .button-small { display:none; }
  .hero { padding-top:48px; min-height:auto; }
  .hero h1 { font-size:48px; }
  .hero-description { font-size:16px; }
  .hero-actions .button { width:100%; }
  .hero-meta { gap:12px 18px; }
  .player-card { padding:16px;border-radius:22px; }
  .metrics { grid-template-columns:1fr; }
  .metrics div { border-right:0;border-bottom:1px solid var(--line); }
  .metrics div:last-child { border-bottom:0; }
  .section { padding:80px 0; }
  .feature-grid { grid-template-columns:1fr; }
  .feature-card.featured { grid-column:auto; }
  .terminal-body { font-size:11px;padding:20px; }
  .comment { display:none; }
  footer { flex-direction:column;gap:14px;justify-content:center;padding:30px 0; }
}
