/* --- 기본 설정 및 레이아웃 --- */
.NursingResearchGuide { line-height: 1.7; color: var(--text-color-dark); font-size: var(--font-size-base); background-color: #ffffff; border-radius: var(--border-radius-lg); -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; /* Color Palette: 차분하고 전문적인 톤으로 조정 */ --primary-color: #0d6efd; /* 더 선명하고 표준적인 파랑 */ --secondary-color: #f8f9fa; /* 부드러운 회색 배경 */ --accent-color: #d63384; /* 세련된 핑크 */ --text-color-dark: #212529; /* 높은 가독성의 진한 검정 */ --text-color-medium: #6c757d; /* 부드러운 중간 회색 */ --text-color-light: #adb5bd; /* 연한 회색 */ --border-color: #dee2e6; /* 은은한 경계선 */ /* Functional Colors */ --success-color: #198754; --info-color: #0dcaf0; --warning-color: #ffc107; --danger-color: #dc3545; /* Spacing System: 일관된 여백을 위한 변수 */ --spacing-xs: 4px; --spacing-sm: 8px; --spacing-md: 16px; --spacing-lg: 24px; --spacing-xl: 40px; /* Typography Scale: px 단위로 명확하게 지정 */ --font-size-sm: 16px; /* 가장 작은 크기 */ --font-size-base: 20px; /* 기본 본문 크기 */ --font-size-lg: 24px; /* 작은 제목 */ --font-size-xl: 28px; /* 중간 제목 */ --font-size-xxl: 32px; /* 섹션 제목 */ --font-size-display: 40px; /* 메인 타이틀 */ /* Border Radius: 일관된 둥글기 */ --border-radius-sm: 0.25rem; --border-radius-md: 0.5rem; --border-radius-lg: 0.75rem; /* Box Shadow: 은은하고 입체적인 그림자 */ --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05); --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.1); --shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.1); }
.NursingResearchGuide *, .NursingResearchGuide *::before, .NursingResearchGuide *::after { box-sizing: border-box; }
.NursingResearchGuide a { color: var(--primary-color); text-decoration: none; font-weight: 500; transition: all 0.2s ease; }
.NursingResearchGuide a:hover { text-decoration: underline; opacity: 0.8; }

/* --- 헤더 --- */
.NursingResearchGuide .article-header { text-align: center; margin-bottom: var(--spacing-xl); padding: var(--spacing-xl) var(--spacing-lg); background-color: var(--secondary-color); border-radius: var(--border-radius-md); border: 1px solid var(--border-color); }
.NursingResearchGuide .article-title { display: none; }
.NursingResearchGuide .category-breadcrumb { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--spacing-sm); font-size: var(--font-size-sm); }
.NursingResearchGuide .category-breadcrumb span { background-color: #ffffff; padding: var(--spacing-xs) var(--spacing-sm); border-radius: 2rem; border: 1px solid var(--border-color); color: var(--text-color-medium); }
.NursingResearchGuide .category-breadcrumb span:not(:last-child)::after { content: '›'; margin-left: var(--spacing-sm); color: var(--text-color-light); }

/* --- 콘텐츠 섹션 --- */
.NursingResearchGuide .content-section { margin-bottom: var(--spacing-xl); }
.NursingResearchGuide .section-title { font-size: var(--font-size-xl); color: var(--text-color-dark); font-weight: 700; margin: 0 0 var(--spacing-lg) 0; padding-bottom: var(--spacing-md); border-bottom: 2px solid var(--border-color); }

/* --- 토픽 컨테이너 --- */
.NursingResearchGuide .topic-container { margin: var(--spacing-lg) 0; padding: var(--spacing-lg); background-color: #ffffff; border-radius: var(--border-radius-md); border: 1px solid var(--border-color); }
.NursingResearchGuide .topic-title { font-size: var(--font-size-xl); color: var(--primary-color); font-weight: 600; margin: 0 0 var(--spacing-md) 0; }

/* --- 강조 요소들: 간결하고 의미있게 --- */
.NursingResearchGuide .research-highlight { background-color: rgba(var(--warning-color), 0.1); color: #664d03; padding: 0.1em 0.4em; border-radius: var(--border-radius-sm); font-weight: 600; }
.NursingResearchGuide .definition { font-weight: 600; color: var(--primary-color); border-bottom: 2px dotted var(--primary-color); cursor: help; }

/* --- 공통 컴포넌트 스타일 (정보 박스, 팁, 시나리오 등) --- */
.NursingResearchGuide .key-takeaways, .NursingResearchGuide .memory-box, .NursingResearchGuide .research-scenario, .NursingResearchGuide .research-checklist, .NursingResearchGuide .faq-section { margin: var(--spacing-lg) 0; padding: var(--spacing-lg); border-radius: var(--border-radius-md); border-left: 5px solid; }
.NursingResearchGuide .key-takeaways h4, .NursingResearchGuide .memory-box h4, .NursingResearchGuide .research-scenario h4, .NursingResearchGuide .research-checklist h4, .NursingResearchGuide .faq-section .topic-title { font-size: var(--font-size-lg); margin: 0 0 var(--spacing-md) 0; font-weight: 600; }
.NursingResearchGuide .key-takeaways ul, .NursingResearchGuide .memory-box ul, .NursingResearchGuide .research-checklist ul, .NursingResearchGuide .research-scenario ol { padding-left: var(--spacing-md); margin: 0; }

/* --- 개별 컴포넌트 스타일 --- */
.NursingResearchGuide .key-takeaways { background-color: #e8f5e9; border-color: var(--success-color); }
.NursingResearchGuide .memory-box { background-color: #fff8e1; border-color: var(--warning-color); }
.NursingResearchGuide .research-scenario { background-color: #e0f7fa; border-color: var(--info-color); }
.NursingResearchGuide .research-checklist { background-color: var(--secondary-color); border-color: var(--primary-color); }
.NursingResearchGuide .research-checklist li { display: flex; align-items: center; margin-bottom: var(--spacing-sm); }
.NursingResearchGuide .research-checklist input[type="checkbox"] { margin-right: var(--spacing-sm); width: 1.2em; height: 1.2em; accent-color: var(--primary-color); }
.NursingResearchGuide .faq-section { background-color: #f8f9fa; border-color: var(--text-color-light); }
.NursingResearchGuide .faq-section .topic-title { color: var(--text-color-dark); }
.NursingResearchGuide .faq-section .topic-title::before { content: 'Q.'; color: var(--primary-color); font-weight: bold; margin-right: var(--spacing-sm); }

/* --- 연구 단계 --- */
.NursingResearchGuide .research-steps { counter-reset: step-counter; margin: var(--spacing-lg) 0; padding: var(--spacing-lg); background-color: #fff; border: 1px solid var(--border-color); border-radius: var(--border-radius-md); }
.NursingResearchGuide .research-steps .step { position: relative; padding-left: 3rem; margin-bottom: var(--spacing-lg); }
.NursingResearchGuide .research-steps .step:last-child { margin-bottom: 0; }
.NursingResearchGuide .research-steps .step::before { counter-increment: step-counter; content: counter(step-counter); position: absolute; left: 0; top: 0; width: 2.2rem; height: 2.2rem; display: flex; align-items: center; justify-content: center; background-color: var(--primary-color); color: #fff; border-radius: 50%; font-weight: bold; }
.NursingResearchGuide .research-steps .step h4 { margin: 0 0 var(--spacing-xs) 0; font-size: var(--font-size-lg); font-weight: 600; }

/* --- 비교 테이블 --- */
.NursingResearchGuide .comparison-table { margin: var(--spacing-lg) 0; overflow-x: auto; border: 1px solid var(--border-color); border-radius: var(--border-radius-md); }
.NursingResearchGuide .comparison-table table { width: 100%; border-collapse: collapse; min-width: 600px; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.NursingResearchGuide .comparison-table thead, .NursingResearchGuide .comparison-table tbody { display: table; width: 100%; min-width: 600px; }
.NursingResearchGuide .comparison-table th { background-color: var(--secondary-color); text-align: left; padding: var(--spacing-md); font-weight: 600; white-space: nowrap; }
.NursingResearchGuide .comparison-table td { padding: var(--spacing-md); border-top: 1px solid var(--border-color); vertical-align: top; }
.NursingResearchGuide .comparison-table tr:hover { background-color: var(--secondary-color); }

/* --- 푸터 --- */
.NursingResearchGuide .article-footer { display: none; }
.NursingResearchGuide .motivation-text { font-size: var(--font-size-lg); color: var(--text-color-medium); max-width: 700px; margin: 0 auto; }

/* --- 접근성 & 유틸리티 --- */
.NursingResearchGuide *:focus-visible { outline: 3px solid var(--accent-color); outline-offset: 2px; border-radius: var(--border-radius-sm); }
.NursingResearchGuide .text-center { text-align: center; }
.NursingResearchGuide .font-bold { font-weight: 700; }

/* ?? Images ?? */
.NursingResearch img { max-width: 100%; height: auto; border-radius: 6px; margin: 10px 0; }
.NursingResearch img.full-width { width: 100%; border-radius: 8px; }
.NursingResearch .image-caption { text-align: center; font-size: 0.85em; color: #888; margin-top: 4px; }

/* ?? Table Container (scroll wrapper) ?? */
.NursingResearch .table-container { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 20px 0; }
.NursingResearch .table-container table { width: 100%; min-width: 500px; }

/* --- 반응형 디자인 --- */

@media (max-width: 768px) {
  :root { --font-size-base: 18px; --font-size-display: 36px; }
  .NursingResearchGuide { margin: 0; border-radius: 0; box-shadow: none; padding: var(--spacing-sm); }
  .NursingResearchGuide .key-takeaways, .NursingResearchGuide .memory-box, .NursingResearchGuide .research-scenario, .NursingResearchGuide .research-checklist, .NursingResearchGuide .faq-section { padding: var(--spacing-md); }
}

/* --- 인쇄용 스타일 --- */

@media print {
  body { background-color: #fff; color: #000; }
  .NursingResearchGuide { box-shadow: none; margin: 0; padding: 0; max-width: 100%; font-size: 12pt; }
  .NursingResearchGuide a { color: #000; text-decoration: underline; }
  .NursingResearchGuide .article-header, .NursingResearchGuide .topic-container, .NursingResearchGuide .key-takeaways, .NursingResearchGuide .memory-box, .NursingResearchGuide .research-scenario, .NursingResearchGuide .research-checklist, .NursingResearchGuide .faq-section { background-color: #f8f8f8 !important; border: 1px solid #ddd !important; padding: 1rem; page-break-inside: avoid; }
  .NursingResearchGuide .article-footer { display: none; }
  .NursingResearchGuide .comparison-table th, .NursingResearchGuide .comparison-table td { border: 1px solid #ddd; }
}
