:root{
  --brand:#39b6ff;
  --brand-strong:#0c92dd;
  --bg:#eaf7ff;
  --bg-deep:#06131d;
  --card:#ffffff;
  --text:#07111a;
  --muted:#5a6a78;
  --border:rgba(57,182,255,.25);
  --shadow:0 24px 60px rgba(7,17,26,.14);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  min-height:100vh;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 10%, rgba(57,182,255,.24), transparent 26%),
    radial-gradient(circle at 85% 12%, rgba(57,182,255,.12), transparent 20%),
    radial-gradient(circle at 50% 100%, rgba(57,182,255,.16), transparent 35%),
    linear-gradient(180deg, #fbfeff 0%, var(--bg) 100%);
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
button{font:inherit}
.page{
  position:relative;
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:32px 18px;
}
.glow,.glow-2{
  position:fixed;
  inset:auto;
  width:32rem;
  height:32rem;
  border-radius:50%;
  pointer-events:none;
  filter:blur(50px);
  opacity:.35;
  z-index:0;
}
.glow{
  top:-10rem;
  left:-8rem;
  background:rgba(57,182,255,.55);
  animation:floatGlow 11s ease-in-out infinite;
}
.glow-2{
  right:-10rem;
  bottom:-12rem;
  background:rgba(12,146,221,.28);
  animation:floatGlow 14s ease-in-out infinite reverse;
}
.shell{
  position:relative;
  z-index:1;
  width:min(1080px, 100%);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(16px);
  border:1px solid rgba(255,255,255,.7);
  border-radius:36px;
  box-shadow:var(--shadow);
  overflow:hidden;
}
.shell::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(57,182,255,.16), transparent 28%),
    linear-gradient(315deg, rgba(57,182,255,.09), transparent 30%);
  pointer-events:none;
}
.topbar{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:22px 26px;
  border-bottom:1px solid rgba(57,182,255,.14);
}
.brand{
  display:flex;
  align-items:center;
  gap:14px;
}
.brand img{
  height:54px;
  width:auto;
  display:block;
  filter:drop-shadow(0 10px 18px rgba(57,182,255,.22));
}
.brand-copy{display:flex;flex-direction:column;gap:2px}
.brand-title{font-weight:900;letter-spacing:.2px;font-size:1.03rem}
.brand-sub{font-size:.86rem;color:var(--muted)}
.pill{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(57,182,255,.11);
  border:1px solid rgba(57,182,255,.22);
  font-weight:700;
  font-size:.92rem;
  white-space:nowrap;
}
.pill-dot{
  width:10px;height:10px;border-radius:50%;
  background:var(--brand);
  box-shadow:0 0 0 0 rgba(57,182,255,.5);
  animation:pulseDot 1.9s infinite;
}
.hero{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:22px;
  padding:26px;
}
.hero-card,.side-card{
  background:rgba(255,255,255,.82);
  border:1px solid rgba(57,182,255,.18);
  border-radius:var(--radius);
  padding:30px;
  box-shadow:0 16px 36px rgba(7,17,26,.06);
}
.kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(57,182,255,.18);
  font-size:.82rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero h1{
  margin:18px 0 12px;
  font-size:clamp(2.2rem, 4vw, 4.5rem);
  line-height:.95;
  letter-spacing:-.05em;
}
.hero p{
  margin:0;
  max-width:56ch;
  font-size:1.04rem;
  color:var(--muted);
  line-height:1.65;
}
.meta-row{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}
.meta-chip{
  padding:10px 14px;
  border-radius:16px;
  background:rgba(57,182,255,.08);
  border:1px solid rgba(57,182,255,.16);
  font-size:.95rem;
  font-weight:700;
}
.countdown-wrap{margin-top:26px}
.countdown-title{font-size:.92rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}
.countdown{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
}
.time-card{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(246,251,255,.95));
  border:1px solid rgba(57,182,255,.18);
  min-height:162px;
  padding:20px 16px 18px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.time-card::after{
  content:"";
  position:absolute;
  inset:auto -20% -40% auto;
  width:120px;height:120px;border-radius:50%;
  background:radial-gradient(circle, rgba(57,182,255,.16), transparent 65%);
}
.time-number{
  position:relative;
  z-index:1;
  font-size:clamp(2.4rem, 5vw, 4.2rem);
  line-height:1;
  font-weight:900;
  letter-spacing:-.06em;
  transform:translateY(0);
}
.time-number.bump{animation:numberBump .45s ease}
.time-label{
  position:relative;
  z-index:1;
  font-size:.84rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--muted);
}
.side-card{
  display:flex;
  flex-direction:column;
  gap:18px;
  justify-content:space-between;
}
.stat-block{
  padding:18px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(57,182,255,.08), rgba(57,182,255,.03));
  border:1px solid rgba(57,182,255,.16);
}
.stat-label{font-size:.84rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:8px}
.stat-value{font-size:1.1rem;font-weight:800;line-height:1.4}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:50px;
  padding:0 18px;
  border-radius:16px;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease;
  font-weight:800;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(180deg, var(--brand), #7ed5ff);
  color:#02131d;
  box-shadow:0 14px 26px rgba(57,182,255,.28);
}
.btn-secondary{
  background:#fff;
  color:var(--text);
  border-color:rgba(57,182,255,.18);
}
.note{
  font-size:.95rem;
  color:var(--muted);
  line-height:1.65;
}
.footer{
  position:relative;
  z-index:1;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:0 26px 26px;
  color:var(--muted);
  font-size:.93rem;
}
.footer small{display:block}
.config-tip{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:16px;
  background:rgba(7,17,26,.03);
  border:1px dashed rgba(57,182,255,.26);
}
.hidden{display:none!important}
.ready .pill{background:rgba(35,201,107,.1); border-color:rgba(35,201,107,.24)}
.ready .pill-dot{background:#23c96b; box-shadow:none; animation:none}
@keyframes pulseDot{
  0%{box-shadow:0 0 0 0 rgba(57,182,255,.42)}
  70%{box-shadow:0 0 0 12px rgba(57,182,255,0)}
  100%{box-shadow:0 0 0 0 rgba(57,182,255,0)}
}
@keyframes floatGlow{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(16px,-18px,0) scale(1.06)}
}
@keyframes numberBump{
  0%{transform:translateY(12px); opacity:.25}
  100%{transform:translateY(0); opacity:1}
}
@media (max-width:960px){
  .hero{grid-template-columns:1fr}
  .countdown{grid-template-columns:repeat(2, minmax(0,1fr))}
}
@media (max-width:640px){
  .page{padding:14px}
  .shell{border-radius:24px}
  .topbar, .hero, .footer{padding-left:16px;padding-right:16px}
  .topbar{flex-direction:column;align-items:flex-start}
  .hero-card,.side-card{padding:20px}
  .hero h1{font-size:2.25rem;line-height:1}
  .countdown{grid-template-columns:1fr 1fr;gap:10px}
  .time-card{min-height:132px;padding:16px 14px}
  .footer{flex-direction:column;align-items:flex-start;padding-bottom:18px}
}
