:root {
  --bg: #f5f5f7;
  --bg-2: #ffffff;
  --card: #ffffff;
  --card-soft: rgba(255, 255, 255, 0.92);
  --ink: #1d1d1f;
  --muted: #6e6e73;
  --line: #d2d2d7;
  --line-soft: #e5e5ea;
  --primary: #1d1d1f;
  --primary-2: #2f2f33;
  --primary-3: #0071e3;
  --ok: #0b6b2f;
  --warn: #8a5a00;
  --shadow-1: 0 18px 45px rgba(0, 0, 0, 0.08);
  --shadow-2: 0 8px 22px rgba(0, 0, 0, 0.08);
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Helvetica Neue", Arial, sans-serif !important;
  color: var(--ink) !important;
  background:
    radial-gradient(1200px 520px at -10% -10%, rgba(0, 113, 227, 0.07) 0%, rgba(0, 113, 227, 0) 58%),
    radial-gradient(900px 420px at 110% 0%, rgba(29, 29, 31, 0.05) 0%, rgba(29, 29, 31, 0) 64%),
    linear-gradient(180deg, var(--bg) 0%, var(--bg-2) 100%) !important;
}

.card {
  border-radius: 28px !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(255,255,255,.90)) !important;
  box-shadow: var(--shadow-1) !important;
}

.head {
  border-radius: 20px !important;
  background: linear-gradient(135deg, #1f1f22 0%, #2b2b30 100%) !important;
  color: #fff !important;
}

.title {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif !important;
  letter-spacing: -0.02em !important;
  font-weight: 700 !important;
}

.sub {
  color: rgba(255, 255, 255, 0.84) !important;
}

.quick-nav a,
.lang-select,
.btn.alt,
.sync-chip,
.mini-btn {
  border-color: #d2d2d7 !important;
  color: #1d1d1f !important;
  background: #fff !important;
}

.quick-nav a:hover,
.sync-chip:hover,
.mini-btn:hover {
  border-color: #0071e3 !important;
  background: #f4f8ff !important;
}

.btn,
.mini-btn.buy {
  border-color: #0071e3 !important;
  background: #0071e3 !important;
  color: #fff !important;
}

.btn:hover,
.mini-btn.buy:hover {
  filter: brightness(0.95) !important;
}

.plan-card,
.auth,
.advisor-box,
.admin-box,
.health-box,
.audit-box,
.user-box,
.trend-wrap,
.funnel-mini {
  border-color: #e5e5ea !important;
  background: #fff !important;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
}

.plan-price {
  letter-spacing: -0.03em !important;
}

a.project {
  border: 1px solid rgba(255,255,255,.22) !important;
  background:
    radial-gradient(280px 120px at 95% -10%, rgba(172, 220, 255, 0.24), transparent 65%),
    linear-gradient(145deg, #1f1f22 0%, #2d2d31 55%, #3a3a40 100%) !important;
}

.cap {
  background: rgba(255, 255, 255, 0.18) !important;
}

.notice {
  border-color: #ffd9a6 !important;
  background: #fff9ef !important;
}

.notice.ok {
  border-color: #bfe8cb !important;
  background: #f1fcf4 !important;
}

.logo-wrap {
  border-color: rgba(255, 255, 255, 0.7) !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18) !important;
}

@media (max-width: 860px) {
  .title { font-size: clamp(28px, 8vw, 38px) !important; }
  .t { font-size: clamp(28px, 8vw, 36px) !important; }
}
