/* ============================================================
   GAMEBOY.KR 개편 P6 — MC 서버(/mc-server/ 4뷰) 본문 리스타일 오버레이
   ------------------------------------------------------------
   · gameboy-mc-management 플러그인 mc-forms.css(856줄, .gbmcm-* 다크 하드코딩, :root·var·!important·라이트분기 전무) 위 오버라이드.
   · 원본 page-mc-server.php / mc-forms.css 미수정, 시각만.
   · 스코프 = body.gbmcm-page(플러그인이 항상 부착). enqueue=wp_enqueue_scripts(prio99) deps ['gb-redesign-chrome','gbmcm-frontend-css']
     (mc-forms.css는 deps無라 chrome보다 먼저 로드 → 둘 다 뒤에 와야 함)·?v=filemtime. 프리뷰 게이트로만 로드(익명 누출0).
   · 가상페이지: get_header/get_footer 호출되어 chrome 적용됨. ob_start 정규식은 canonical/robots/article만 제거(stylesheet 무관).
   · 4뷰 = ?responses(관리자)>?my(로그인)>?form>목록. 현재 폼 3개 전부 closed. 헤드리스=목록·폼(closed)만, my/responses=운영자 로그인 검수.
   · 색: 퍼플족(#8b5cf6/#a78bfa/#7c3aed/#6d28d9/#c4b5fd)→--gb-pur·연보라텍스트 #c4b9ff / 주CTA(신청·제출)=핑크 / 내신청보기=퍼플 /
     응답확인=시안 / open=그린·closed=무채·pending(로그인안내)=앰버·자가취소/오류/거부=절제빨강 #d98a8a / auto-fill=그린.
     장식(list-header·accent-bar 그라데·btn-primary 글로우/lift·card hover섀도) 평탄화, 기능(field focus 표시·focus 링·closed dim·disabled) 보존.
   · ⚠️ 인라인 한계(미오버라이드): 응답확인/내신청 뷰의 상태 배지색·response-card border-left·stat-num·mark-id 보라·승인안내 보라CTA·
     팔로워 배지는 PHP echo 인라인(클래스無/색 직주입) → 컨테이너/라벨만 토큰화, 상태색은 인라인 의미색 보존(로그인·관리자 게이트라 니치).
   ============================================================ */

/* ── 0) 컨테이너 폭(포커스형으로 좁힘) + 베이스 ── */
body.gbmcm-page .gbmcm-front-container {
  max-width: 920px;
  margin: 22px auto 56px;
  font-family: 'Pretendard', 'Pretendard Variable', -apple-system, BlinkMacSystemFont,
    'Apple SD Gothic Neo', 'Noto Sans KR', system-ui, sans-serif;
}

/* ── 1) 카드 공통 ── */
body.gbmcm-page .gbmcm-front-card { background: var(--gb-bg2); border: 1px solid var(--gb-line); }
body.gbmcm-page .gbmcm-front-card:hover { box-shadow: none; } /* 장식 섀도 제거 */

/* ── 2) 목록 헤더 ── */
body.gbmcm-page .gbmcm-list-header { background: var(--gb-bg2); border-left: 4px solid var(--gb-pur); } /* 그라데 → 플랫 */
body.gbmcm-page .gbmcm-list-header h1 { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-list-header p { color: var(--gb-mut); }

/* ── 3) 신청서 목록 아이템 + 상태배지 ── */
body.gbmcm-page .gbmcm-form-item.gbmcm-open { border-left: 3px solid var(--gb-green); }
body.gbmcm-page .gbmcm-form-item.gbmcm-closed { border-left: 3px solid var(--gb-line3); } /* opacity:.65 기능 dim 보존 */
body.gbmcm-page .gbmcm-form-title { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-form-info { color: var(--gb-mut); }
body.gbmcm-page .badge-open { background: rgba(27,189,138,.15); color: var(--gb-green); }
body.gbmcm-page .badge-closed { background: rgba(138,138,150,.15); color: var(--gb-mut); }
body.gbmcm-page .badge-applied { background: rgba(146,41,247,.15); color: #c4b9ff; }

/* ── 4) 폼 헤더 + 안내(WYSIWYG) ── */
body.gbmcm-page .gbmcm-form-accent-bar { background: var(--gb-pur); } /* 3색 그라데 → 플랫 퍼플 */
body.gbmcm-page .gbmcm-form-header h1 { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-form-desc { color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-form-desc a { color: #c4b9ff; }
body.gbmcm-page .gbmcm-form-desc a:hover { color: #d8cdff; }
body.gbmcm-page .gbmcm-form-desc strong { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-form-desc em,
body.gbmcm-page .gbmcm-form-desc ul,
body.gbmcm-page .gbmcm-form-desc ol { color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-form-desc blockquote { border-left: 3px solid var(--gb-pur); background: rgba(146,41,247,.06); color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-form-meta { color: var(--gb-mut); }

/* ── 5) 필드 카드 + 입력 ── */
body.gbmcm-page .gbmcm-field-accent { background: var(--gb-pur); } /* focus 표시(opacity 0→1 보존) */
body.gbmcm-page .gbmcm-field-label { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-field-desc { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-input,
body.gbmcm-page .gbmcm-textarea,
body.gbmcm-page .gbmcm-select {
  background: var(--gb-bg3);
  border: 1px solid var(--gb-line2);
  color: var(--gb-txt);
}
body.gbmcm-page .gbmcm-input:focus,
body.gbmcm-page .gbmcm-textarea:focus,
body.gbmcm-page .gbmcm-select:focus {
  border-color: var(--gb-pur);
  box-shadow: 0 0 0 3px rgba(146,41,247,.15); /* focus 링(a11y) 유지·토큰색 */
}
body.gbmcm-page .gbmcm-radio-label,
body.gbmcm-page .gbmcm-checkbox-label { background: var(--gb-bg3); border: 1px solid var(--gb-line); color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-radio-label:hover,
body.gbmcm-page .gbmcm-checkbox-label:hover { background: var(--gb-bg4); border-color: rgba(146,41,247,.3); }
body.gbmcm-page .gbmcm-radio-label input:checked + span,
body.gbmcm-page .gbmcm-checkbox-label input:checked + span { color: #c4b9ff; }
body.gbmcm-page .gbmcm-auto-fill { color: var(--gb-green); } /* 자동입력 표시(그린) */

/* ── 6) 버튼 ── */
/* 기본(보조) 버튼 */
body.gbmcm-page .gbmcm-btn { background: var(--gb-bg3); border: 1px solid var(--gb-line2); color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-btn:hover { background: var(--gb-bg4); color: var(--gb-txt); }
/* 주 CTA(신청·제출) = 핑크(그라데·글로우·lift 제거) */
body.gbmcm-page .gbmcm-btn-primary { background: var(--gb-pink); border-color: transparent; color: #fff; box-shadow: none; }
body.gbmcm-page .gbmcm-btn-primary:hover { background: #d41f87; transform: none; box-shadow: none; color: #fff; }
/* 내 신청 보기 = 퍼플(상태/조회) */
body.gbmcm-page .gbmcm-btn-view { background: rgba(146,41,247,.1); border: 1px solid rgba(146,41,247,.35); color: #c4b9ff; }
body.gbmcm-page .gbmcm-btn-view:hover { background: rgba(146,41,247,.2); border-color: rgba(146,41,247,.5); color: #d8cdff; }
/* 응답 확인 = 시안(정보) */
body.gbmcm-page .gbmcm-btn-responses { background: rgba(39,192,214,.1); border: 1px solid rgba(39,192,214,.35); color: var(--gb-cyan); }
body.gbmcm-page .gbmcm-btn-responses:hover { background: rgba(39,192,214,.2); border-color: rgba(39,192,214,.5); color: #6fdcec; }
/* 자가취소(위험) = 절제빨강 아웃라인(원본 솔리드 빨강 완화) */
body.gbmcm-page .gbmcm-btn-danger { background: rgba(217,138,138,.14); border: 1px solid rgba(217,138,138,.4); color: #d98a8a; }
body.gbmcm-page .gbmcm-btn-danger:hover { background: rgba(217,138,138,.24); border-color: rgba(217,138,138,.6); color: #e6a3a3; }

/* ── 7) 상태 카드(성공/오류/로그인) ── */
body.gbmcm-page .gbmcm-success-card { border-left: 4px solid var(--gb-green); }
body.gbmcm-page .gbmcm-success-card h2 { color: var(--gb-green); }
body.gbmcm-page .gbmcm-success-card p { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-error-card { border-left: 4px solid #d98a8a; }
body.gbmcm-page .gbmcm-error-card h2 { color: #d98a8a; }
body.gbmcm-page .gbmcm-login-required { border-left: 4px solid var(--gb-amber); }
body.gbmcm-page .gbmcm-login-required h3 { color: var(--gb-amber); }
body.gbmcm-page .gbmcm-login-required p { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-required-note { color: var(--gb-mut2); }

/* ── 8) 응답확인 뷰(클래스 기반만; 상태 배지·stat-num·border-left는 PHP 인라인색이라 미오버라이드) ── */
body.gbmcm-page .gbmcm-stat-label { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-response-header { border-bottom: 1px solid var(--gb-line); }
body.gbmcm-page .gbmcm-response-id { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-response-name { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-response-date { color: var(--gb-mut2); }
body.gbmcm-page .gbmcm-response-field { background: var(--gb-bg3); }
body.gbmcm-page .gbmcm-response-label { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-response-value { color: var(--gb-txt); }
body.gbmcm-page .gbmcm-response-review { background: var(--gb-bg3); color: var(--gb-mut); }

/* ── 9) 메모 섹션(관리자) ── */
body.gbmcm-page .gbmcm-front-memo-section { border-top: 1px solid var(--gb-line); }
body.gbmcm-page .gbmcm-front-memo-header { color: var(--gb-mut); }
body.gbmcm-page .gbmcm-front-memo-count { background: var(--gb-bg4); }
body.gbmcm-page .gbmcm-front-memo-item { background: var(--gb-bg3); border: 1px solid var(--gb-line); }
body.gbmcm-page .gbmcm-front-memo-author { color: #c4b9ff; }
body.gbmcm-page .gbmcm-front-memo-time { color: var(--gb-mut2); }
body.gbmcm-page .gbmcm-front-memo-del { color: var(--gb-mut2); }
body.gbmcm-page .gbmcm-front-memo-del:hover { color: #d98a8a; }
body.gbmcm-page .gbmcm-front-memo-text { color: var(--gb-txt2); }
body.gbmcm-page .gbmcm-front-memo-input { background: var(--gb-bg3); border: 1px solid var(--gb-line2); color: var(--gb-txt); }
body.gbmcm-page .gbmcm-front-memo-input:focus { border-color: var(--gb-pur); }
body.gbmcm-page .gbmcm-front-memo-add-btn { background: rgba(146,41,247,.2); border: 1px solid rgba(146,41,247,.35); color: #c4b9ff; }
body.gbmcm-page .gbmcm-front-memo-add-btn:hover { background: rgba(146,41,247,.3); border-color: rgba(146,41,247,.5); }
