/* Aurora — moving colour light, transparent header, huge centred type, gradient-rim cards. */

/* Header: transparent until scrolled */
.a-head{position:sticky;top:0;z-index:40;transition:background .3s,box-shadow .3s,-webkit-backdrop-filter .3s,backdrop-filter .3s}
html[data-scrolled] .a-head{background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.6);backdrop-filter:blur(16px) saturate(1.6);box-shadow:0 1px 0 var(--line)}
.a-head-row{display:flex;align-items:center;gap:24px;min-height:72px}
.a-links{display:flex;gap:6px;margin-left:auto}
.a-links a{position:relative;padding:8px 12px;color:var(--ink);font-weight:600;font-size:.94rem;text-decoration:none;opacity:.8}
.a-links a::after{content:"";position:absolute;left:12px;right:12px;bottom:3px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--accent2));transform:scaleX(0);transition:transform .25s}
.a-links a:hover,.a-links a[aria-current="page"]{opacity:1}
.a-links a:hover::after,.a-links a[aria-current="page"]::after{transform:scaleX(1)}
.a-actions{display:flex;align-items:center;gap:8px}
.a-login{color:var(--ink);font-weight:600;text-decoration:none;padding:8px 10px}
.a-head .nav-toggle{display:none}
@media (max-width:980px){.a-links,.a-login{display:none}.a-head .nav-toggle{display:inline-flex}.a-actions{margin-left:auto}}
@media (max-width:520px){.a-actions .prefs{display:none}}

/* The sky: four blurred light sources drifting on their own clocks */
.a-sky{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.a-sky i{position:absolute;width:55vmax;height:40vmax;border-radius:50%;filter:blur(70px);opacity:.7;mix-blend-mode:normal}
.a-sky i:nth-child(1){background:var(--accent);left:-15%;top:-20%;animation:a-drift1 18s ease-in-out infinite alternate}
.a-sky i:nth-child(2){background:var(--accent2);right:-15%;top:-10%;animation:a-drift2 22s ease-in-out infinite alternate}
.a-sky i:nth-child(3){background:#06B6D4;left:25%;top:30%;animation:a-drift3 26s ease-in-out infinite alternate;opacity:.5}
.a-sky i:nth-child(4){background:#EC4899;right:15%;bottom:-30%;animation:a-drift1 20s ease-in-out infinite alternate-reverse;opacity:.45}
[data-mode="light"] .a-sky i{opacity:.42}
[data-mode="light"] .a-sky i:nth-child(3),[data-mode="light"] .a-sky i:nth-child(4){opacity:.3}
@keyframes a-drift1{to{transform:translate(18%,12%) rotate(20deg) scale(1.15)}}
@keyframes a-drift2{to{transform:translate(-20%,18%) rotate(-25deg) scale(.9)}}
@keyframes a-drift3{to{transform:translate(-12%,-16%) scale(1.25)}}
.a-noise{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.6'/%3E%3C/svg%3E")}

/* Hero */
.a-hero{position:relative;min-height:min(92vh,900px);margin-top:-88px;padding:calc(88px + clamp(60px,10vw,130px)) 0 120px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;isolation:isolate}
.a-hero-copy{position:relative;z-index:2;text-align:center;max-width:1000px;display:flex;flex-direction:column;align-items:center}
.a-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border-radius:999px;font-size:.82rem;font-weight:700;color:var(--ink);background:color-mix(in srgb,var(--surface) 55%,transparent);border:1px solid color-mix(in srgb,var(--ink) 12%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.a-title{margin-top:24px;font-size:clamp(3rem,8.4vw,6.8rem);line-height:.95;letter-spacing:-.055em;font-weight:800}
.a-title .hl{background:linear-gradient(90deg,var(--accent),var(--accent2),#06B6D4,var(--accent));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:a-sheen 8s linear infinite}
@keyframes a-sheen{to{background-position:300% 0}}
.a-hero-copy .lead{margin:24px auto 0;color:color-mix(in srgb,var(--ink) 75%,transparent)}
.a-ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:34px}
.a-ctas .btn-primary{background:var(--ink);color:var(--bg);box-shadow:0 14px 34px -12px color-mix(in srgb,var(--accent) 80%,transparent)}
.a-glassbtn{background:color-mix(in srgb,var(--surface) 45%,transparent);border-color:color-mix(in srgb,var(--ink) 14%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.a-trust{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:28px;color:color-mix(in srgb,var(--ink) 70%,transparent);font-size:.88rem}
.a-stars{display:inline-flex;color:#F5A524}
.a-stars svg{fill:#F5A524}
.a-hero-login{margin-top:36px;width:100%;max-width:440px;text-align:left}
.a-marquee{position:absolute;left:0;right:0;bottom:28px;z-index:2;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.a-marquee-track{display:flex;gap:36px;width:max-content;animation:slide 40s linear infinite}
.a-marquee span{display:inline-flex;align-items:center;gap:10px;font-weight:700;color:color-mix(in srgb,var(--ink) 70%,transparent);white-space:nowrap}
.a-marquee .pmark{width:34px;height:34px}

/* Section heads */
.a-sec-head{display:flex;flex-direction:column;align-items:flex-start;gap:14px;max-width:700px;margin-bottom:44px}
.a-sec-head.center{align-items:center;text-align:center;margin-inline:auto}
.a-sec-head .h2{font-size:clamp(2.2rem,4.6vw,3.6rem);letter-spacing:-.045em;font-weight:800}

/* How: rows with giant numerals */
.a-rows{display:flex;flex-direction:column}
.a-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(20px,4vw,56px);padding:28px 0;border-top:1px solid var(--line)}
.a-row:last-child{border-bottom:1px solid var(--line)}
html.js .a-row.reveal:not(.in){transform:translateX(-40px)}
.a-num{font-family:var(--font-heading);font-size:clamp(3.4rem,8vw,6.4rem);font-weight:800;line-height:.9;letter-spacing:-.06em;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.a-row h3{font-size:clamp(1.3rem,2.4vw,1.8rem);margin-bottom:8px}
.a-row p{color:var(--muted);max-width:54ch}
.a-row-ico{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent-soft),var(--accent2-soft));color:var(--accent)}
@media (max-width:640px){.a-row{grid-template-columns:auto 1fr}.a-row-ico{display:none}}

/* Features: gradient-rim cards */
.a-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}
.a-card{padding:1.5px;border-radius:24px;background:linear-gradient(135deg,hsl(calc(260deg + var(--h)) 85% 65%),hsl(calc(20deg + var(--h)) 90% 60%));transition:transform .3s,box-shadow .3s}
.a-card:hover{transform:translateY(-4px);box-shadow:0 30px 60px -24px hsl(calc(260deg + var(--h)) 80% 55% / .55)}
.a-card-in{height:100%;border-radius:22.5px;padding:30px;background:var(--surface)}
.a-ico{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;margin-bottom:20px;color:#fff;background:linear-gradient(135deg,hsl(calc(260deg + var(--h)) 85% 62%),hsl(calc(20deg + var(--h)) 90% 58%))}
.a-card h3{font-size:1.2rem;margin-bottom:8px}
.a-card p{color:var(--muted)}

/* Stats */
.a-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:28px;text-align:center}
.a-stats b{display:block;font-family:var(--font-heading);font-size:clamp(2.8rem,6vw,4.6rem);font-weight:800;letter-spacing:-.05em;background:linear-gradient(135deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent}
.a-stats span{color:var(--muted);font-weight:600}

/* CTA */
.a-cta{position:relative;overflow:hidden;isolation:isolate;border-radius:36px;padding:clamp(56px,9vw,110px) 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:18px;background:#0C0818;color:#fff}
.a-cta .a-sky i{opacity:.75}
.a-cta .h2{position:relative;z-index:2;max-width:18ch;font-size:clamp(2.2rem,5vw,4rem);letter-spacing:-.045em;font-weight:800}
.a-cta p{position:relative;z-index:2;opacity:.85;max-width:56ch}
.a-cta-btn{position:relative;z-index:2;background:#fff;color:#170F2E}

/* Footer */
.a-foot{position:relative;overflow:hidden;margin-top:72px;padding:72px 0 28px;border-top:1px solid var(--line);isolation:isolate}
.a-foot-glow{position:absolute;left:50%;bottom:-260px;width:min(1200px,140vw);height:420px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--accent) 45%,transparent),color-mix(in srgb,var(--accent2) 25%,transparent) 60%,transparent);filter:blur(30px);z-index:-1}
.a-foot-big{font-family:var(--font-heading);font-weight:800;font-size:clamp(3rem,10vw,8.5rem);letter-spacing:-.06em;line-height:.9;background:linear-gradient(90deg,var(--accent),var(--accent2));-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:48px;word-break:break-word}
.a-foot-grid{display:flex;flex-wrap:wrap;gap:32px}
.a-foot-about{display:flex;flex-direction:column;gap:14px;max-width:340px;color:var(--muted)}
.a-foot h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:14px;font-family:var(--font-body)}
.a-foot ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.a-foot ul a{color:var(--ink);text-decoration:none;font-weight:600}
.a-foot ul a:hover{color:var(--accent)}
.a-foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:.86rem}
@media (max-width:760px){.a-foot-grid{grid-template-columns:1fr 1fr}.a-foot-about{grid-column:1/-1}}
.a-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:200px;background:linear-gradient(180deg,transparent,var(--bg));z-index:1;pointer-events:none}
.a-num{min-width:2.3ch}
[data-mode="light"] .a-hero .a-sky i{opacity:.32}
.a-foot-grid>*{flex:1 1 150px;min-width:0}.a-foot-grid>:first-child{flex:2 1 280px}

/* ── Aurora: signed-in app — floating gradient pill bar over a faint aurora sky ── */
[data-theme="aurora"] .app{background:radial-gradient(50% 35% at 10% 0%,color-mix(in srgb,var(--accent) 18%,transparent),transparent 70%),radial-gradient(45% 35% at 90% 5%,color-mix(in srgb,var(--accent2) 16%,transparent),transparent 70%),var(--bg)}
[data-theme="aurora"] .nav-topbar{position:sticky;top:12px;margin:12px 16px 0;border-radius:22px;border:1px solid color-mix(in srgb,var(--ink) 10%,transparent);background:color-mix(in srgb,var(--surface) 72%,transparent);-webkit-backdrop-filter:blur(16px) saturate(1.6);backdrop-filter:blur(16px) saturate(1.6);box-shadow:0 20px 40px -24px color-mix(in srgb,var(--accent) 60%,transparent)}
[data-theme="aurora"] .nav-topbar .tb-tabs a[aria-current="page"]{background:linear-gradient(120deg,var(--accent),color-mix(in srgb,var(--accent) 50%,var(--accent2)));color:#fff}
[data-theme="aurora"] .app-top h1{font-weight:800;letter-spacing:-.045em;font-size:clamp(2rem,3.6vw,2.8rem);background:linear-gradient(90deg,var(--ink),color-mix(in srgb,var(--accent) 70%,var(--ink)));-webkit-background-clip:text;background-clip:text;color:transparent}
[data-theme="aurora"] .dash-hero{border-radius:28px;background:#0C0818;color:#fff;isolation:isolate}
[data-theme="aurora"] .dash-hero::before{content:"";position:absolute;inset:-40%;background:radial-gradient(30% 40% at 30% 40%,var(--accent),transparent 70%),radial-gradient(30% 40% at 70% 30%,var(--accent2),transparent 70%),radial-gradient(30% 40% at 50% 70%,#06B6D4,transparent 70%);filter:blur(40px);opacity:.75;z-index:-1;animation:a-drift1 14s ease-in-out infinite alternate}
[data-theme="aurora"] .dash-hero-btn{background:#fff;color:#170F2E}
[data-theme="aurora"] .dash-hero-ghost{color:#fff;border-color:rgb(255 255 255/.4)}
[data-theme="aurora"] .card.lift:hover{box-shadow:0 26px 50px -24px color-mix(in srgb,var(--accent) 60%,transparent)}
/* Login: the art panel is the night sky */
[data-theme="aurora"] .auth-art{background:#0C0818;color:#fff;position:relative;overflow:hidden;isolation:isolate}
[data-theme="aurora"] .auth-art::before{content:"";position:absolute;inset:-30%;background:radial-gradient(30% 40% at 25% 35%,var(--accent),transparent 70%),radial-gradient(30% 40% at 75% 25%,var(--accent2),transparent 70%),radial-gradient(30% 40% at 50% 75%,#06B6D4,transparent 70%);filter:blur(50px);opacity:.8;z-index:-1;animation:a-drift2 16s ease-in-out infinite alternate}
[data-theme="aurora"] .auth-art .brand{color:#fff}
[data-theme="aurora"] .auth-art .h1{font-weight:800;letter-spacing:-.05em}
