:root{
  --c-bg: #f6f9ff;
  --c-card: rgba(255,255,255,.65);
  --c-border: rgba(15,23,42,.10);
  --c-text: rgba(15,23,42,.92);
  --c-muted: rgba(15,23,42,.62);
  --c-accent: #2563eb; /* blue */
  --c-accent2: #38bdf8; /* sky */
  --c-radius: 22px;
}

body{
  background: radial-gradient(1200px 900px at 20% 10%, rgba(56,189,248,.22), transparent 60%),
              radial-gradient(1000px 800px at 70% 0%, rgba(37,99,235,.18), transparent 62%),
              linear-gradient(180deg, #ffffff, var(--c-bg));
  color: var(--c-text);
}

.c-topbar{
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(255,255,255,.55);
  border-bottom: 1px solid var(--c-border);
  backdrop-filter: blur(14px);
}

.container{ max-width: 1120px; margin: 0 auto; padding: 0 18px; }

.c-topbar__inner{ height: 64px; display:flex; align-items:center; justify-content:space-between; gap: 14px; }

.c-brand{ display:flex; align-items:center; gap: 10px; text-decoration:none; color: inherit; font-weight: 900; }
.c-brand__icon{ width: 32px; height: 32px; border-radius: 12px; background: linear-gradient(135deg, var(--c-accent), var(--c-accent2)); }

.c-btn{
  height: 42px;
  padding: 0 14px;
  border-radius: 16px;
  border: 1px solid var(--c-border);
  background: rgba(255,255,255,.6);
  color: var(--c-text);
  cursor:pointer;
  font-weight: 900;
}

.c-btn--primary{
  border-color: rgba(37,99,235,.28);
  background: linear-gradient(135deg, rgba(37,99,235,.95), rgba(56,189,248,.92));
  color: white;
}

.c-card{
  border: 1px solid var(--c-border);
  background: rgba(255,255,255,.50);
  border-radius: var(--c-radius);
  box-shadow: 0 24px 90px rgba(2,6,23,.12);
  backdrop-filter: blur(14px);
}

.c-glass{
  background: linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.35));
  border: 1px solid rgba(255,255,255,.55);
  box-shadow: 0 28px 120px rgba(2,6,23,.14);
}

.c-chip{
  height: 26px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 900;
  color: rgba(15,23,42,.78);
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(255,255,255,.55);
}

.c-badge{
  height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 900;
  color: rgba(15,23,42,.82);
  border: 1px solid rgba(37,99,235,.18);
  background: rgba(56,189,248,.16);
}

.c-muted{ color: var(--c-muted); }

.grid{ display:grid; gap: 14px; }

@media (max-width: 760px){
  .c-topbar__inner{ height: 58px; }
}
