* { box-sizing: border-box; }
body { margin:0; font-family: 'Segoe UI', Arial, sans-serif; background:#f4f5f7; color:#222; }
.wrap { max-width: 1100px; margin: 0 auto; padding: 0 20px; }
a { color:#e63946; text-decoration:none; }

.topbar { background:#fff; border-bottom:1px solid #eee; padding:14px 0; }
.topbar .wrap { display:flex; align-items:center; gap:12px; }
.topbar .logo { height:36px; }
.topbar .brand { font-weight:bold; font-size:18px; margin-right:auto; }
.topbar nav a { margin-left:16px; color:#333; font-weight:500; }
.topbar nav .btn-outline { padding:8px 14px; }

.hero { padding:60px 0; text-align:center; background:linear-gradient(135deg,#fff,#fdf1f2); }
.hero h1 { font-size:32px; max-width:750px; margin:0 auto 16px; }
.hero p { max-width:600px; margin:0 auto 24px; color:#555; }

.btn-primary { background:#e63946; color:#fff; padding:12px 24px; border:none; border-radius:6px; font-weight:bold; cursor:pointer; display:inline-block; }
.btn-primary.full { width:100%; margin-top:14px; }
.btn-outline { border:1px solid #e63946; color:#e63946; padding:10px 20px; border-radius:6px; display:inline-block; font-weight:500; }

.pricing { padding:50px 0; }
.pricing h2 { text-align:center; margin-bottom:30px; }
.plans { display:flex; gap:20px; flex-wrap:wrap; justify-content:center; }
.plan-card { background:#fff; border:1px solid #eee; border-radius:10px; padding:24px; width:230px; text-align:center; }
.plan-card .price { font-size:28px; font-weight:bold; margin:12px 0; }
.plan-card .price span { font-size:14px; color:#888; font-weight:normal; }

.footer { padding:24px 0; text-align:center; color:#888; font-size:14px; }

.auth-wrap { display:flex; align-items:center; justify-content:center; min-height:100vh; }
.auth-box { background:#fff; padding:32px; border-radius:10px; width:360px; box-shadow:0 2px 10px rgba(0,0,0,.06); }
.auth-box h2 { margin-top:0; }
label { display:block; margin:12px 0 4px; font-size:14px; font-weight:500; }
input[type=text], input[type=email], input[type=password], input[type=number], textarea, select {
  width:100%; padding:10px; border:1px solid #ddd; border-radius:6px; font-size:14px;
}
.alert { background:#fdecea; color:#b3261e; padding:10px 14px; border-radius:6px; margin-bottom:12px; }
.alert.success { background:#e6f4ea; color:#1e7e34; }

.dash { padding:24px 0; }
.card { background:#fff; border-radius:10px; padding:22px; margin-bottom:20px; border:1px solid #eee; }
.flex-between { display:flex; justify-content:space-between; align-items:center; }
.muted { color:#888; font-size:14px; }

.tbl { width:100%; border-collapse:collapse; margin-top:14px; }
.tbl th, .tbl td { text-align:left; padding:10px; border-bottom:1px solid #f0f0f0; font-size:14px; }
.tbl th { color:#888; font-weight:600; }

.radio-row { display:flex; gap:20px; margin:8px 0; }

.stat-grid { display:flex; gap:16px; flex-wrap:wrap; }
.stat-card { background:#fff; border:1px solid #eee; border-radius:10px; padding:20px; flex:1; min-width:150px; text-align:center; }
.stat-card .num { font-size:26px; font-weight:bold; color:#e63946; }
