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

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

/* ============================================================
   1. CSS 변수 오버라이드 — 시안 팔레트
   ============================================================ */
body.site-onepick {
  --brand: #ff5a36 !important;
  --brand-deep: #9a3412 !important;
  --brand-light: #fff2ec !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, #9a3412, #ff5a36) !important;
}
body.site-onepick .ms-header {
  border-bottom: 1px solid rgba(255,90,54,0.18) !important;
}
body.site-onepick .ms-chip {
  background:#fff2ec !important;
  color:#9a3412 !important;
  border-color:rgba(255,90,54,0.25) !important;
}
body.site-onepick .hero-badge.primary,
body.site-onepick .campaign-badge.primary {
  background:#ff5a36 !important;
  color:#fff !important;
}
body.site-onepick .hero-promo,
body.site-onepick .campaign-body .promo {
  background:#fff2ec !important;
  color:#9a3412 !important;
}
body.site-onepick.auth-login .auth-brand,
body.site-onepick.auth-join .join-shell {
  background: linear-gradient(140deg, #9a3412, #ff5a36) !important;
}
body.site-onepick.auth-reg-influencer .reg-card,
body.site-onepick.auth-reg-advertiser .adv-reg-card {
  border-top: 4px solid #ff5a36 !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,#ff5a36,#ff8567) !important;
  box-shadow:0 6px 18px rgba(255,90,54,0.35) !important;
  color:#fff !important;
  font-size:18px !important;
}
body.site-onepick .ms-head-main .ms-brand-text strong {
  font-size:24px !important;
  font-weight:700 !important;
  background:linear-gradient(135deg,#ff5a36,#9a3412) !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
  background-clip:text !important;
  letter-spacing:-0.045em !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:#ff5a36 !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,#ff5a36,#e14624) !important;
  border:none !important;
  border-radius:0 999px 999px 0 !important;
  color:#fff !important;
  font-weight:700 !important;
  letter-spacing:-0.01em !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,#ff5a36,#e14624) !important;
  border:none !important;
  color:#fff !important;
  font-weight:700 !important;
  padding:0 22px !important;
  box-shadow:0 6px 18px rgba(255,90,54,0.32) !important;
  transition:opacity .18s ease, transform .18s ease, box-shadow .18s ease;
}
body.site-onepick .ms-head-main .ms-actions a[href="/auth/register"]:hover,
body.site-onepick .ms-head-main .ms-actions .ms-btn.primary:hover {
  opacity:0.9 !important;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(255,90,54,0.4) !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 {
  max-width:1600px !important;
  margin:0 auto !important;
  padding:0 40px !important;
  display:flex !important;
  gap:4px !important;
  overflow-x:auto !important;
  scrollbar-width:none !important;
}
body.site-onepick .site-onepick-nav > div::-webkit-scrollbar { display:none; }
body.site-onepick .site-onepick-nav a {
  display:inline-flex !important;
  align-items:center !important;
  white-space:nowrap !important;
  flex-shrink:0 !important;
  text-decoration:none !important;
  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:#ff5a36 !important;
  border-bottom-color:#ff5a36 !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 .my-layout .stat-card {
  border:none !important;
  box-shadow:
    rgba(0,0,0,0.05) 0px 0px 0px 1px,
    rgba(0,0,0,0.02) 0px 2px 4px -2px !important;
}
.site-onepick .my-layout .stat-card:hover {
  box-shadow:
    rgba(255,90,54,0.22) 0px 0px 0px 1px,
    rgba(255,90,54,0.1) 0px 12px 24px -8px !important;
}
.site-onepick .my-layout .mp-reco-panel {
  border-left:3px solid #ff5a36 !important;
  background:linear-gradient(90deg, rgba(255,90,54,0.05), transparent 50%) !important;
}
.site-onepick .my-layout .mp-grade-label,
.site-onepick .my-layout .stat-label {
  font-weight:600 !important;
  letter-spacing:-0.02em !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:none !important;
  border-radius:18px !important;
  background:linear-gradient(135deg, #fff2ec 0%, #ffe1d4 100%) !important;
  padding:28px 32px !important;
  box-shadow:
    rgba(255,90,54,0.12) 0px 0px 0px 1px,
    rgba(255,90,54,0.06) 0px 10px 24px -8px !important;
  position:relative;
  overflow:hidden;
}
.site-onepick .list-shell .hero::before {
  content:"⭐";
  position:absolute;
  top:12px; right:24px;
  font-size:3rem;
  opacity:0.12;
  pointer-events:none;
}
.site-onepick .list-shell .hero h1 {
  color:#9a3412 !important;
  font-weight:700 !important;
  font-size:1.5rem !important;
  letter-spacing:-0.045em !important;
}
.site-onepick .list-shell .hero p {
  color:#9a3412 !important;
  font-weight:500;
}
.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:#ff5a36 !important;
  background:#fff !important;
  outline:none;
}
.site-onepick .list-shell .btn {
  background:linear-gradient(135deg,#ff5a36,#e14624) !important;
  border:none !important;
  border-radius:10px !important;
  box-shadow:0 4px 12px rgba(255,90,54,0.22) !important;
}
.site-onepick .list-shell .card {
  border-radius:16px !important;
  border:none !important;
  background:#fff !important;
  box-shadow:
    rgba(0,0,0,0.05) 0px 0px 0px 1px,
    rgba(0,0,0,0.02) 0px 2px 4px -2px !important;
  transition:transform .18s ease, box-shadow .18s ease !important;
}
.site-onepick .list-shell .card:hover {
  transform:translateY(-2px) !important;
  box-shadow:
    rgba(255,90,54,0.22) 0px 0px 0px 1px,
    rgba(255,90,54,0.1) 0px 12px 24px -8px,
    rgba(0,0,0,0.04) 0px 4px 8px -2px !important;
}
.site-onepick .list-shell .card .title { color:#0f172a !important; }
.site-onepick .list-shell .card .promo {
  background:#fff2ec !important;
  color:#9a3412 !important;
}
.site-onepick .list-shell .card .badge.primary {
  background:#ff5a36 !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:#ff5a36 !important;
  color:#ff5a36 !important;
}
.site-onepick .list-shell .pages a.active {
  background:#ff5a36 !important;
  border-color:#ff5a36 !important;
  color:#fff !important;
}

/* ============================================================
   7. 캠페인 디테일 / AI 추천 페이지
   ============================================================ */
.site-onepick .detail-card,
.site-onepick .detail-section {
  background:#fff !important;
  border:none !important;
  border-radius:16px !important;
  box-shadow:
    rgba(0,0,0,0.05) 0px 0px 0px 1px,
    rgba(0,0,0,0.02) 0px 2px 4px -2px !important;
}
.site-onepick .detail-card h1,
.site-onepick .detail-card h2,
.site-onepick .detail-section h2 {
  font-weight:700 !important;
  letter-spacing:-0.035em !important;
}
.site-onepick .apply-card {
  box-shadow:
    rgba(255,90,54,0.16) 0px 0px 0px 1px,
    rgba(255,90,54,0.08) 0px 12px 28px -8px !important;
}
.site-onepick .btn-apply {
  background:linear-gradient(135deg,#ff5a36,#e14624) !important;
  color:#fff !important;
  border:none !important;
  border-radius:999px !important;
  padding:14px 28px !important;
  font-weight:700 !important;
  letter-spacing:-0.01em !important;
  box-shadow:0 6px 18px rgba(255,90,54,0.32) !important;
  transition:opacity .18s ease, transform .18s ease, box-shadow .18s ease !important;
}
.site-onepick .btn-apply:hover {
  opacity:0.92;
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(255,90,54,0.4) !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;
  }
}

/* ============================================================
   포커스 인디케이터 — onepick 브랜드 컬러 (#ff5a36)
   ============================================================ */
body.site-onepick a:focus-visible,
body.site-onepick button:focus-visible,
body.site-onepick input:focus-visible,
body.site-onepick textarea:focus-visible,
body.site-onepick select:focus-visible,
body.site-onepick [tabindex]:focus-visible {
  outline: 2px solid #ff5a36 !important;
  outline-offset: 2px !important;
}
body.site-onepick .campaign-card:focus-visible,
body.site-onepick .cp-card:focus-visible,
body.site-onepick .card:focus-visible,
body.site-onepick .nh3-card:focus-visible,
body.site-onepick .op-hero5-card:focus-visible,
body.site-onepick .op-brand-card:focus-visible,
body.site-onepick .op-midban-card:focus-visible,
body.site-onepick .uh3-card:focus-visible,
body.site-onepick .lh2-card:focus-visible {
  outline: none !important;
  box-shadow: 0 0 0 3px #ff5a36, 0 8px 24px rgba(0,0,0,0.08) !important;
}

/* ============================================================
   푸터 — 리뷰·소셜프루프 컨셉 (코럴 오렌지 액센트)
   ============================================================ */
body.site-onepick .footer {
  background: #1a1118 !important;
  border-top: 3px solid transparent !important;
  border-image: linear-gradient(90deg, #ff6a3d, #ff4d4f, #ff5a36) 1 !important;
}
body.site-onepick .footer-logo { color: #ff8567 !important; }
body.site-onepick .footer-tagline { color: rgba(255,133,103,0.9) !important; }
body.site-onepick .footer-links li a:hover,
body.site-onepick .footer-bottom-right a:hover { color: #ff8567 !important; }
body.site-onepick .footer-family-link:hover {
  background: rgba(255,90,54,0.12) !important;
  border-color: #ff5a36 !important;
}

/* ── 원픽 전용 4-column 소셜프루프 레이아웃 ── */
body.site-onepick .footer-top-onepick {
  display: grid !important;
  grid-template-columns: 1.5fr 1fr 1fr 1fr !important;
  gap: 36px !important;
  padding-bottom: 28px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
body.site-onepick .footer-onepick-stats {
  display: flex;
  flex-direction: column;
  gap: 14px;
  padding: 18px 20px;
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(255,90,54,0.08), rgba(255,90,54,0.08));
  border: 1px solid rgba(255,90,54,0.18);
  align-self: start;
}
body.site-onepick .fos-item {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding-left: 12px;
  border-left: 2px solid #ff8567;
}
body.site-onepick .fos-num {
  color: #ff8567;
  font-weight: 700;
  font-size: 0.95rem;
  letter-spacing: -0.03em;
}
body.site-onepick .fos-lbl {
  color: rgba(255,255,255,0.55);
  font-size: 0.78rem;
  font-weight: 600;
}
body.site-onepick .footer-onepick-cats li a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

@media (max-width: 900px) {
  body.site-onepick .footer-top-onepick {
    grid-template-columns: 1fr 1fr !important;
    gap: 24px !important;
  }
  body.site-onepick .footer-onepick-stats { grid-column: 1 / -1; flex-direction: row; }
  body.site-onepick .fos-item { flex: 1; }
}
@media (max-width: 560px) {
  body.site-onepick .footer-top-onepick { grid-template-columns: 1fr !important; }
  body.site-onepick .footer-onepick-stats { flex-direction: column; }
}
