/* Starbelo design preview p1 — Cosmic Night only */
.ann{background:linear-gradient(90deg,#171B36,#1E2347 50%,#171B36);border-bottom:1px solid var(--line);font-size:13px;text-align:center;padding:7px 12px;color:var(--muted)}
.ann a{color:var(--ink);text-decoration:none;font-weight:700}.ann b{color:var(--star-gold)}.ann .pill{display:inline-block;background:rgba(255,213,74,.14);color:var(--star-gold);border-radius:99px;padding:1px 8px;margin-right:8px;font-size:11px;font-weight:800;letter-spacing:.06em}
body>header{position:sticky;top:0;z-index:40;background:rgba(15,18,38,.72);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:padding .25s,box-shadow .25s}
body>header.sc{box-shadow:0 8px 24px rgba(0,0,0,.35)}body>header.sc .wrap{padding-top:6px;padding-bottom:6px}
header nav a.cur{background:var(--surface2);border-radius:99px;color:var(--ink)}
header nav a{padding:6px 10px;border-radius:99px;transition:background .2s}header nav a:hover{background:var(--surface)}
header nav a.ncta{background:var(--star-gold);color:#1A1530!important;font-weight:800;padding:6px 14px;margin-left:6px}
.btn,.ncta{transition:transform .18s,box-shadow .18s}
.btn:hover,.ncta:hover{transform:translateY(-1px);box-shadow:0 0 0 4px rgba(124,156,255,.18),0 10px 26px rgba(124,156,255,.28)}
.btn:not(.alt)::after{content:" →";display:inline-block;transition:transform .18s}.btn:not(.alt):hover::after{transform:translateX(3px)}
.hh .hl{background:linear-gradient(90deg,var(--star-gold),var(--mint));-webkit-background-clip:text;background-clip:text;color:transparent}
.heye{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--surface);border-radius:99px;padding:4px 12px 4px 6px;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:10px}
.heye i{font-style:normal;background:var(--mint);color:var(--on-accent);border-radius:99px;padding:1px 8px}
.hcta{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 18px}.hcta .btn{width:auto}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:linear-gradient(90deg,var(--star-gold),var(--mint));z-index:60;pointer-events:none}
.fcta{margin:48px auto 0;max-width:1120px;padding:0 20px}
.fcta .in{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:28px;background:radial-gradient(120% 140% at 0% 0%,rgba(124,156,255,.22),transparent 60%),radial-gradient(90% 120% at 100% 100%,rgba(62,230,193,.16),transparent 60%),var(--surface);padding:40px 32px;display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center}
.fcta h2{font-size:clamp(30px,5vw,56px);line-height:1.02;margin:0 0 10px;letter-spacing:-.02em}.fcta p{color:var(--muted);margin:0 0 16px}
.fcta .bigstar{width:120px;height:120px}
.fgrid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:24px;margin:32px 0 18px}
.fgrid h5{margin:0 0 10px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--star-gold)}
.fgrid a{display:block;color:var(--muted);text-decoration:none;padding:3px 0;font-size:14px}.fgrid a:hover{color:var(--ink)}
.fgrid .about{color:var(--muted);font-size:14px}
.fword{font-weight:900;font-size:clamp(56px,15vw,190px);line-height:.85;letter-spacing:-.04em;text-align:center;margin:10px 0 -8px;background:linear-gradient(180deg,rgba(124,156,255,.28),rgba(124,156,255,0));-webkit-background-clip:text;background-clip:text;color:transparent;user-select:none}
footer .legal{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px}
@media(max-width:860px){.fgrid{grid-template-columns:1fr 1fr}.fgrid .ab{grid-column:1/-1}.fcta .in{grid-template-columns:1fr;padding:28px 22px}.fcta .bigstar{display:none}}
@media (prefers-reduced-motion:no-preference){
 .s-float{animation:sfl 4s ease-in-out infinite}@keyframes sfl{50%{transform:translateY(-3px)}}
 @supports(animation-timeline:view()){
  .card,.mini,.ttile,.step,.stat,.tcard{animation:rise linear both;animation-timeline:view();animation-range:entry 0% entry 40%}
  @keyframes rise{from{opacity:.001;transform:translateY(18px) scale(.985)}to{opacity:1;transform:none}}
  .prog{animation:grow linear both;animation-timeline:scroll(root)}@keyframes grow{to{transform:scaleX(1)}}
  .hero2 .orb,.hart .orb{animation:par linear both;animation-timeline:scroll(root);animation-range:0 600px}@keyframes par{to{transform:translateY(60px) scale(1.08)}}
  .fcta .bigstar{animation:pop linear both;animation-timeline:view();animation-range:entry 10% cover 40%}@keyframes pop{from{transform:rotate(-14deg) scale(.7)}to{transform:none}}
 }}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.prog{display:none}}

.fgrid .logo{display:inline-flex;align-items:center;gap:8px;font-size:20px;font-weight:900;color:var(--ink);text-decoration:none}
@media(max-width:600px){body>header nav{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-mask:linear-gradient(90deg,#000 85%,transparent)}body>header nav::-webkit-scrollbar{display:none}body>header nav a{white-space:nowrap;flex:none}.ann{font-size:12px}}
.hh:has(.hl){display:block!important}.hh:has(.hl)>svg{float:right;margin-left:12px}
.heye{margin-top:14px}
@media(max-width:600px){body>header .wrap{flex-wrap:wrap}body>header nav{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto;width:100%;gap:2px}}
body>header .ncta.pin{display:none}
@media(max-width:600px){body>header .wrap{display:flex;align-items:center;justify-content:space-between}body>header .ncta.pin{display:inline-block;order:2;background:var(--star-gold);color:#1A1530;font-weight:800;border-radius:99px;padding:7px 13px;font-size:13px;text-decoration:none;white-space:nowrap}body>header nav{order:3}body>header nav a.ncta{display:none}}
@media(min-width:1025px){.side{position:sticky;top:0;align-self:flex-start;max-height:100vh;overflow:auto}.side .btn:not(.alt){background:var(--star-gold);color:#1A1530}}
.hh:has(.hl){position:relative;padding-right:56px}.hh:has(.hl)>svg{float:none!important;position:absolute;right:0;top:0;margin:0}
/* drawer */
.hamb{display:none;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:var(--surface);color:var(--ink);align-items:center;justify-content:center;cursor:pointer;flex:none;margin-right:10px}
.hamb svg{width:20px;height:20px}
@media(max-width:1024px){.hamb{display:inline-flex}body>header .wrap{display:flex;align-items:center}}
.dov{position:fixed;inset:0;background:rgba(8,10,24,.55);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:80;opacity:0;transition:opacity .25s}
.dov.on{opacity:1}
.drawer{position:fixed;top:0;left:0;bottom:0;width:min(340px,88vw);z-index:81;background:linear-gradient(180deg,rgba(30,35,71,.97),rgba(15,18,38,.98));border-right:1px solid var(--line);box-shadow:20px 0 60px rgba(0,0,0,.45);overflow-y:auto;padding:16px 18px 40px;transform:translateX(-102%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.drawer.on{transform:none}
.drawer[hidden],.dov[hidden]{display:block;visibility:hidden}
.drawer .side{display:block!important;position:static!important;max-height:none!important;padding:0;border:0;width:auto}
.dx{position:sticky;top:0;float:right;width:44px;height:44px;border-radius:14px;border:1px solid var(--line);background:var(--surface2);color:var(--ink);font-size:22px;cursor:pointer;z-index:2}
.drawer .side>a:not(.btn):not(.logo):not(.today){min-height:44px;display:flex;align-items:center;gap:10px}
html.lock,html.lock body{overflow:hidden}
@media (prefers-reduced-motion:reduce){.drawer,.dov{transition:none}}
/* tap targets on touch */
@media(max-width:1024px){body>header nav a{min-height:44px;display:inline-flex;align-items:center}.tabs button{min-height:44px}.btn{min-height:44px}.fgrid a{min-height:44px;display:flex;align-items:center;padding:0}.ann a{display:inline-flex;min-height:30px;align-items:center}.crumbs a,nav.crumbs a{display:inline-flex;min-height:44px;align-items:center}}
@media(max-width:1024px){body>header .logo{min-height:44px;display:inline-flex;align-items:center}body>header .ncta.pin{min-height:44px;display:inline-flex!important;align-items:center}}@media(min-width:601px){body>header .ncta.pin{display:none!important}}
.drawer .side .logo{display:flex;justify-content:flex-start;gap:10px;margin-right:56px}.btn{display:inline-flex;align-items:center;justify-content:center}.btn.wide{display:flex}@media(min-width:601px) and (max-width:1024px){body>header .wrap{justify-content:flex-start;gap:6px}body>header nav{margin-left:auto}}
