/* site-onepick: 원픽체험단 전역 스타일 (모든 페이지에 로드)
   views/partials/header.ejs 에서 로드.

   컨셉: 아싸뷰(aSaview) 스타일 — 시안 메인 + 핑크 보조 + 파스텔
   팔레트:
     --brand:       #ec4899 (cyan, 메인 버튼/액센트)
     --brand-deep:  #be185d (deep cyan)
     --brand-light: #fdf2f8 (light cyan tint)
     pink:          #ec4899 (로고/보조 배지)
     surface:       #fafafa (body)
*/

/* ============================================================
   1. CSS 변수 오버라이드 — 시안 팔레트
   ============================================================ */
body.site-onepick {
  --brand: #ec4899 !important;
  --brand-deep: #be185d !important;
  --brand-light: #fdf2f8 !important;
  font-family: "Pretendard", "Noto Sans KR", sans-serif;
  background: #fafafa !important;
  color:#0f172a;
}

/* ============================================================
   2. site-theme.css 하드코딩 오렌지(#ff5a36) → 시안 오버라이드
   ============================================================ */
body.site-onepick .ms-topbar {
  background: linear-gradient(90deg, #be185d, #ec4899) !important;
}
body.site-onepick .ms-header {
  border-bottom: 1px solid rgba(236,72,153,0.18) !important;
}
body.site-onepick .ms-chip {
  background:#fdf2f8 !important;
  color:#be185d !important;
  border-color:rgba(236,72,153,0.25) !important;
}
body.site-onepick .hero-badge.primary,
body.site-onepick .campaign-badge.primary {
  background:#ec4899 !important;
  color:#fff !important;
}
body.site-onepick .hero-promo,
body.site-onepick .campaign-body .promo {
  background:#fdf2f8 !important;
  color:#be185d !important;
}
body.site-onepick.auth-login .auth-brand,
body.site-onepick.auth-join .join-shell {
  background: linear-gradient(140deg, #be185d, #ec4899) !important;
}
body.site-onepick.auth-reg-influencer .reg-card,
body.site-onepick.auth-reg-advertiser .adv-reg-card {
  border-top: 4px solid #ec4899 !important;
}
body.site-onepick .list-card,
body.site-onepick .detail-card {
  border-radius:16px !important;
}

/* ============================================================
   3. 헤더(ms-header) 컨테이너 폭 — 거의 풀폭 1600px
   ============================================================ */
body.site-onepick .ms-head-main {
  max-width:1600px !important;
  padding:18px 40px 14px !important;
  grid-template-columns:auto minmax(280px,1fr) auto !important;
  gap:28px !important;
}
body.site-onepick .site-onepick-nav > div {
  max-width:1600px !important;
}

/* ============================================================
   4. 헤더 비주얼 — 아싸뷰 흰 배경 + 시안/핑크 액센트
   ============================================================ */
body.site-onepick .ms-header {
  background:#fff !important;
  border-bottom:1px solid #eef1f6 !important;
  box-shadow:0 1px 0 rgba(15,23,42,0.02) !important;
  backdrop-filter:none !important;
}
body.site-onepick .ms-head-main .ms-brand-mark {
  width:44px !important;
  height:44px !important;
  border-radius:12px !important;
  background:linear-gradient(135deg,#ec4899,#f472b6) !important;
  box-shadow:0 6px 18px rgba(236,72,153,0.35) !important;
  color:#fff !important;
  font-size:18px !important;
}
body.site-onepick .ms-head-main .ms-brand-text strong {
  font-size:24px !important;
  background:linear-gradient(135deg,#ec4899,#f472b6) !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-clip:text !important;
  letter-spacing:-0.03em !important;
}
body.site-onepick .ms-head-main .ms-brand-text span {
  color:#64748b !important;
  font-weight:600 !important;
  font-size:12px !important;
}

body.site-onepick .ms-head-main .ms-search-box {
  height:44px !important;
  border:1.5px solid #e2e8f0 !important;
  border-radius:999px !important;
  background:#f8fafc !important;
  transition:border-color .15s, background .15s;
}
body.site-onepick .ms-head-main .ms-search-box:focus-within {
  border-color:#ec4899 !important;
  background:#fff !important;
}
body.site-onepick .ms-head-main .ms-search-box input {
  color:#0f172a !important;
  font-size:14px !important;
}
body.site-onepick .ms-head-main .ms-search-box input::placeholder {
  color:#94a3b8 !important;
}
body.site-onepick .ms-head-main .ms-search-box button {
  background:linear-gradient(135deg,#ec4899,#db2777) !important;
  border:none !important;
  border-radius:0 999px 999px 0 !important;
  color:#fff !important;
  font-weight:900 !important;
  width:86px !important;
}

/* action 버튼들 */
body.site-onepick .ms-head-main .ms-actions .ms-btn {
  background:#fff !important;
  border:1px solid #e2e8f0 !important;
  color:#334155 !important;
  border-radius:10px !important;
  font-weight:700 !important;
  height:40px !important;
  min-height:40px !important;
  font-size:13px !important;
}
body.site-onepick .ms-head-main .ms-actions a[href="/auth/register"],
body.site-onepick .ms-head-main .ms-actions .ms-btn.primary {
  background:linear-gradient(135deg,#ec4899,#db2777) !important;
  border:none !important;
  color:#fff !important;
  font-weight:900 !important;
  box-shadow:0 4px 12px rgba(236,72,153,0.3) !important;
}
body.site-onepick .ms-head-main .ms-ham span { background:#334155 !important; }

/* 카테고리 네비 (하단 탭바) */
body.site-onepick .site-onepick-nav {
  background:#fff !important;
  border-top:1px solid #f1f5f9 !important;
}
body.site-onepick .site-onepick-nav > div {
  padding:0 40px !important;
}
body.site-onepick .site-onepick-nav a {
  height:46px !important;
  padding:0 16px !important;
  font-size:13px !important;
  font-weight:700 !important;
  color:#64748b !important;
  background:transparent !important;
  border:none !important;
  border-bottom:2px solid transparent !important;
  border-radius:0 !important;
  transition:color .15s, border-color .15s !important;
}
body.site-onepick .site-onepick-nav a:hover {
  color:#ec4899 !important;
  border-bottom-color:#ec4899 !important;
}

/* ============================================================
   5. 서브페이지 컨테이너 폭 — 홈과 동일 1600px
   ============================================================ */
.site-onepick .list-shell {
  max-width:1600px !important;
  padding:24px 40px 72px !important;
}
.site-onepick .detail-wrap {
  max-width:1600px !important;
  padding:0 40px !important;
  grid-template-columns:minmax(0,1fr) 360px !important;
  gap:40px !important;
}
.site-onepick .reco-page {
  max-width:1600px !important;
  padding:32px 40px !important;
}
.site-onepick .main-wrap {
  max-width:1600px !important;
}
.site-onepick .my-layout {
  max-width:1600px !important;
  padding:24px 40px !important;
}
.site-onepick .footer-inner {
  max-width:1600px !important;
}
.site-onepick .header-inner,
.site-onepick .tab-bar-inner {
  max-width:1600px !important;
}

/* ============================================================
   6. 캠페인 리스트 페이지 (/campaigns) — 5 cols + 카드 스타일
   ============================================================ */
.site-onepick .list-shell .grid.cols-5,
.site-onepick .list-shell .grid.cols-4,
.site-onepick .list-shell .grid.cols-3 {
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:16px !important;
}
.site-onepick .list-shell .hero {
  border:1px solid #eef1f6 !important;
  border-radius:18px !important;
  background:#fff !important;
  padding:22px 24px !important;
}
.site-onepick .list-shell .hero h1 { color:#0f172a !important; letter-spacing:-0.025em; }
.site-onepick .list-shell .hero p { color:#64748b !important; }
.site-onepick .list-shell .filter {
  border:1px solid #eef1f6 !important;
  border-radius:14px !important;
  background:#fff !important;
}
.site-onepick .list-shell .sel,
.site-onepick .list-shell .inp {
  border:1px solid #e2e8f0 !important;
  border-radius:10px !important;
  background:#f8fafc !important;
}
.site-onepick .list-shell .sel:focus,
.site-onepick .list-shell .inp:focus {
  border-color:#ec4899 !important;
  background:#fff !important;
  outline:none;
}
.site-onepick .list-shell .btn {
  background:linear-gradient(135deg,#ec4899,#db2777) !important;
  border:none !important;
  border-radius:10px !important;
  box-shadow:0 4px 12px rgba(236,72,153,0.22) !important;
}
.site-onepick .list-shell .card {
  border-radius:16px !important;
  border:1px solid #eef1f6 !important;
  background:#fff !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
.site-onepick .list-shell .card:hover {
  transform:translateY(-4px) !important;
  border-color:#fbcfe8 !important;
  box-shadow:0 12px 28px rgba(236,72,153,0.16) !important;
}
.site-onepick .list-shell .card .title { color:#0f172a !important; }
.site-onepick .list-shell .card .promo {
  background:#fdf2f8 !important;
  color:#be185d !important;
}
.site-onepick .list-shell .card .badge.primary {
  background:#ec4899 !important;
  color:#fff !important;
}
.site-onepick .list-shell .pages a {
  border:1px solid #e2e8f0 !important;
  background:#fff !important;
  color:#475569 !important;
}
.site-onepick .list-shell .pages a:hover {
  border-color:#ec4899 !important;
  color:#ec4899 !important;
}
.site-onepick .list-shell .pages a.active {
  background:#ec4899 !important;
  border-color:#ec4899 !important;
  color:#fff !important;
}

/* ============================================================
   7. 캠페인 디테일 / AI 추천 페이지
   ============================================================ */
.site-onepick .detail-card,
.site-onepick .detail-section {
  background:#fff !important;
  border:1px solid #eef1f6 !important;
  border-radius:16px !important;
}
.site-onepick .reco-page .reco-card {
  border:1px solid #eef1f6 !important;
  border-radius:16px !important;
  background:#fff !important;
}

/* ============================================================
   8. 반응형
   ============================================================ */
@media(max-width:1400px) {
  body.site-onepick .ms-head-main { padding:16px 28px 12px !important; }
  body.site-onepick .site-onepick-nav > div { padding:0 28px !important; }
  .site-onepick .list-shell { padding:20px 28px 60px !important; }
  .site-onepick .detail-wrap { padding:0 28px !important; }
  .site-onepick .reco-page { padding:28px !important; }
  .site-onepick .my-layout { padding:20px 28px !important; }
  .site-onepick .list-shell .grid.cols-5,
  .site-onepick .list-shell .grid.cols-4,
  .site-onepick .list-shell .grid.cols-3 {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  }
}
@media(max-width:1100px) {
  .site-onepick .list-shell .grid.cols-5,
  .site-onepick .list-shell .grid.cols-4,
  .site-onepick .list-shell .grid.cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
  .site-onepick .detail-wrap { grid-template-columns:1fr !important; }
}
@media(max-width:900px) {
  body.site-onepick .ms-head-main { padding:12px 16px !important; }
  body.site-onepick .site-onepick-nav > div { padding:0 16px !important; }
  .site-onepick .list-shell { padding:14px 16px 56px !important; }
  .site-onepick .detail-wrap { padding:0 16px !important; }
  .site-onepick .reco-page { padding:18px 16px !important; }
  .site-onepick .my-layout { padding:16px !important; }
  .site-onepick .list-shell .grid.cols-5,
  .site-onepick .list-shell .grid.cols-4,
  .site-onepick .list-shell .grid.cols-3 {
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}
@media(max-width:640px) {
  .site-onepick .list-shell { padding:12px 12px 56px !important; }
  .site-onepick .list-shell .grid.cols-5,
  .site-onepick .list-shell .grid.cols-4,
  .site-onepick .list-shell .grid.cols-3 {
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
  }
}
