/* ============================================================
   weban.org — Designer: ハル（サイバーパンク×Web3×ネオン）
   テーマ: ウェブで稼ぐ AtoZ
   配色: ピュアブラック × ネオン紫 × エレクトリックシアン
   インスピレーション: Cyberpunk 2077・Linear・Vercel
   ============================================================ */
body.site-weban {
  --color-bg:        #050510;        /* ピュアダーク */
  --color-bg-soft:   #0c0c1d;
  --color-bg-deep:   #131329;
  --color-bg-card:   #0e0e1f;
  --color-text:      #e8e8ff;
  --color-text-muted:#9090b5;
  --color-text-subtle:#5a5a82;
  --color-border:    #1f1f3a;

  --color-brand:        #a855f7;       /* ネオンパープル */
  --color-brand-soft:   #2a1a48;
  --color-brand-dark:   #6b21a8;
  --color-brand-light:  #c084fc;
  --color-accent:       #22d3ee;       /* エレクトリックシアン */
  --color-accent-soft:  #103a45;
  --color-accent-dark:  #0891b2;

  --font-display: "Space Grotesk", "Inter", "Noto Sans JP", sans-serif;
  --font-body:    "Inter", "Noto Sans JP", sans-serif;
  --font-mono:    "JetBrains Mono", monospace;

  --radius: 12px;
  --radius-sm: 6px;
  --radius-lg: 20px;
}
body.site-weban { background: #050510; color: #e8e8ff; }
body.site-weban .pcwst-site-header { background: rgba(5,5,16,0.85); backdrop-filter: blur(20px); border-bottom: 1px solid rgba(168,85,247,0.3); }
body.site-weban .pcwst-site-logo { color: #e8e8ff; font-family: var(--font-display); font-weight: 700; }
body.site-weban .pcwst-site-logo__mark { background: linear-gradient(135deg, #a855f7 0%, #22d3ee 100%); box-shadow: 0 0 16px rgba(168,85,247,0.5); }
body.site-weban .pcwst-site-nav__list a { color: #e8e8ff; font-family: var(--font-body); }
body.site-weban .pcwst-site-nav__list a:hover { background: rgba(168,85,247,0.15); color: #c084fc; }
body.site-weban .pcwst-hero { background: #050510; padding: clamp(96px,14vw,200px) var(--gap); }
body.site-weban .pcwst-hero::before {
  background:
    radial-gradient(circle 700px at 80% 20%, rgba(168,85,247,0.3) 0%, transparent 60%),
    radial-gradient(circle 600px at 15% 75%, rgba(34,211,238,0.25) 0%, transparent 60%),
    radial-gradient(circle 400px at 50% 50%, rgba(168,85,247,0.1) 0%, transparent 60%);
}
body.site-weban .pcwst-hero::after {
  background-image:
    linear-gradient(rgba(168,85,247,0.08) 1px, transparent 1px),
    linear-gradient(90deg, rgba(34,211,238,0.08) 1px, transparent 1px);
  background-size: 60px 60px;
}
body.site-weban .pcwst-hero__kicker { background: rgba(168,85,247,0.15); border: 1px solid rgba(168,85,247,0.4); color: #c084fc; font-family: var(--font-mono); letter-spacing: 0.15em; }
body.site-weban .pcwst-hero__kicker__dot { background: #22d3ee; box-shadow: 0 0 12px #22d3ee; }
body.site-weban .pcwst-hero__title {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: clamp(3rem,8vw,6rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.03em !important;
  color: #e8e8ff !important;
}
body.site-weban .pcwst-hero__title em {
  background: linear-gradient(120deg, #a855f7 0%, #22d3ee 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-style: normal;
}
body.site-weban .pcwst-hero__lead { color: #9090b5; font-family: var(--font-body); }
body.site-weban .pcwst-hero__visual__card { background: rgba(14,14,31,0.7); backdrop-filter: blur(20px); border: 1px solid rgba(168,85,247,0.4); color: #e8e8ff; box-shadow: 0 0 60px rgba(168,85,247,0.3); }
body.site-weban .pcwst-hero__visual__card__label { color: #22d3ee; font-family: var(--font-mono); letter-spacing: 0.2em; }
body.site-weban .pcwst-hero__stats { border-top: 1px solid rgba(168,85,247,0.3); }
body.site-weban .pcwst-hero__stat__value { color: #c084fc; font-family: var(--font-display); }
body.site-weban .pcwst-hero__stat__value__unit { color: #22d3ee; }
body.site-weban .pcwst-stats-block { background: linear-gradient(135deg, #0c0c1d 0%, #131329 100%); border: 1px solid rgba(168,85,247,0.3); box-shadow: 0 0 60px rgba(168,85,247,0.15); }
body.site-weban .pcwst-stat-item { background: transparent; color: #e8e8ff; border-right: 1px solid rgba(168,85,247,0.2); }
body.site-weban .pcwst-stat-item:hover { background: rgba(168,85,247,0.05); }
body.site-weban .pcwst-stat-item__value { color: #22d3ee; font-family: var(--font-display); }
body.site-weban .pcwst-stat-item__label { color: #9090b5; text-transform: uppercase; letter-spacing: 0.1em; font-family: var(--font-mono); font-size: 11px; }
body.site-weban .pcwst-section--bg { background: #0c0c1d; }
body.site-weban .pcwst-post-card, body.site-weban .pcwst-job-card {
  background: #0e0e1f; border: 1px solid #1f1f3a; color: #e8e8ff;
}
body.site-weban .pcwst-post-card:hover, body.site-weban .pcwst-job-card:hover {
  border-color: rgba(168,85,247,0.6);
  box-shadow: 0 0 40px rgba(168,85,247,0.3);
}
body.site-weban .pcwst-post-card__title, body.site-weban .pcwst-job-card__title { color: #e8e8ff; font-family: var(--font-display); }
body.site-weban .pcwst-post-card__cat, body.site-weban .pcwst-job-card__cat { color: #22d3ee; font-family: var(--font-mono); }
body.site-weban .pcwst-job-card__badge { background: linear-gradient(135deg, #a855f7 0%, #22d3ee 100%); color: #050510; }
body.site-weban .pcwst-cat-card { background: #0e0e1f; border: 1px solid #1f1f3a; color: #e8e8ff; }
body.site-weban .pcwst-cat-card:hover { color: #050510; }
body.site-weban .pcwst-cat-card::before { background: linear-gradient(135deg, #a855f7 0%, #22d3ee 100%); }
body.site-weban .pcwst-cat-card__icon { background: rgba(168,85,247,0.15); color: #c084fc; }
body.site-weban .pcwst-cat-card__name { font-family: var(--font-display); }
body.site-weban .pcwst-btn { font-family: var(--font-display); font-weight: 700; }
body.site-weban .pcwst-btn--primary { background: linear-gradient(135deg, #a855f7 0%, #22d3ee 100%); color: #050510; box-shadow: 0 0 24px rgba(168,85,247,0.5); }
body.site-weban .pcwst-btn--primary:hover { box-shadow: 0 0 40px rgba(168,85,247,0.8); transform: translateY(-2px); }
body.site-weban .pcwst-section__kicker { color: #22d3ee; font-family: var(--font-mono); letter-spacing: 0.25em; }
body.site-weban .pcwst-section__title { color: #e8e8ff !important; font-family: var(--font-display) !important; }
body.site-weban .pcwst-section__title__accent { background: linear-gradient(120deg, #a855f7 0%, #22d3ee 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
body.site-weban .pcwst-section__lead { color: #9090b5; }
body.site-weban .pcwst-cta { background: #0c0c1d; border: 1px solid rgba(168,85,247,0.4); }
body.site-weban .pcwst-cta::before { background: radial-gradient(ellipse at 80% 30%, rgba(168,85,247,0.4) 0%, transparent 50%), radial-gradient(ellipse at 20% 80%, rgba(34,211,238,0.3) 0%, transparent 50%), #050510; }
body.site-weban .pcwst-cta__btn { background: linear-gradient(135deg, #a855f7 0%, #22d3ee 100%); color: #050510; box-shadow: 0 0 32px rgba(168,85,247,0.5); }
body.site-weban .pcwst-site-footer { background: #020208; border-top: 1px solid rgba(168,85,247,0.3); }
body.site-weban h1, body.site-weban h2, body.site-weban h3 { font-family: var(--font-display); }
