:root{
  /* Colors */
  --rw-bg:#f4f7ff;
  --rw-card:#ffffff;
  --rw-text:#0f172a;
  --rw-muted:#64748b;

  --rw-primary:#2563eb;
  --rw-primary-soft:#e0e7ff;
  --rw-secondary:#22c55e;
  --rw-accent:#f59e0b;

  /* Radius */
  --rw-radius-sm:10px;
  --rw-radius:14px;
  --rw-radius-lg:18px;

  /* Shadows */
  --rw-shadow:0 12px 30px rgba(0,0,0,.12);
  --rw-shadow-hover:0 18px 45px rgba(0,0,0,.18);

  /* Motion */
  --rw-transition:.25s ease;
}
body{
  font-family:Inter, system-ui, -apple-system, 'Segoe UI', Roboto, Arial;
  background:var(--rw-bg);
  color:var(--rw-text);
}

/* Headings */
h1,h2{
  color:var(--rw-text);
  font-weight:800;
  letter-spacing:-0.02em;
}

h1{ font-size:2rem; }
h2{ font-size:1.5rem; }

p{
  color:var(--rw-muted);
  line-height:1.6;
}
.rw-card{
  background:linear-gradient(180deg,var(--rw-card),#f9fafb);
  border-radius:var(--rw-radius-lg);
  padding:20px;
  box-shadow:var(--rw-shadow);
  border:2px solid var(--rw-primary-soft);
}
.rw-btn{
  background:linear-gradient(135deg,var(--rw-primary),#3b82f6);
  color:#fff;
  border:none;
  padding:10px 16px;
  border-radius:var(--rw-radius);
  font-weight:700;
  cursor:pointer;
  transition:var(--rw-transition);
}

.rw-btn:hover{
  transform:translateY(-2px);
  box-shadow:var(--rw-shadow-hover);
}

.rw-btn.secondary{
  background:linear-gradient(135deg,var(--rw-secondary),#4ade80);
}
.rw-input,
textarea{
  width:100%;
  padding:10px 12px;
  border-radius:var(--rw-radius-sm);
  border:2px solid #e5e7eb;
  transition:var(--rw-transition);
}

.rw-input:focus,
textarea:focus{
  outline:none;
  border-color:var(--rw-primary);
  box-shadow:0 0 0 3px rgba(37,99,235,.15);
}

[data-theme="dark"]{
  --rw-bg:#020617;
  --rw-card:#020617;
  --rw-text:#e5e7eb;
  --rw-muted:#94a3b8;

  --rw-primary:#60a5fa;
  --rw-primary-soft:#020617;
}
h1,h2{
  color:var(--rw-text);
  font-weight:800;
  letter-spacing:-0.02em;
}
