@media print {
  /* 숨길 요소 */
  nav, footer, .btn, .timer-btns, #timerMount,
  .no-print, .navbar, .form-select, .form-label,
  #yearSelect, #examSelect, #examInfo,
  #noSelectionMsg, #loadingMsg,
  #questionListContainer, .eval-card .card-header .btn,
  .modal-footer, .modal-header .btn-close {
    display: none !important;
  }

  /* 페이지 여백 */
  @page { margin: 15mm 20mm; }

  body {
    font-family: 'Malgun Gothic', '맑은 고딕', sans-serif;
    font-size: 11pt;
    color: #000;
    background: #fff !important;
  }

  .container { max-width: 100% !important; padding: 0 !important; }

  /* 카드 테두리 단순화 */
  .card {
    border: 1px solid #ccc !important;
    box-shadow: none !important;
    break-inside: avoid;
  }

  .card-header {
    background: #eee !important;
    color: #000 !important;
    padding: 6pt 10pt !important;
    font-size: 12pt;
    font-weight: bold;
  }

  /* 문제 영역 */
  .question-box {
    border-left: 3pt solid #333 !important;
    padding: 8pt !important;
    background: #f9f9f9 !important;
    font-size: 11pt;
    margin-bottom: 12pt;
  }

  /* 답안 영역 */
  .answer-area {
    border: 1pt solid #999 !important;
    min-height: 60mm;
    width: 100%;
    padding: 8pt;
    font-size: 10pt;
  }

  /* 평가 결과 */
  .eval-section { break-inside: avoid; }
  .eval-title { background: #eee !important; color: #000 !important; }

  /* 모범답안 */
  .ma-section { break-inside: avoid; }
  .ma-title {
    background: #e8eeff !important;
    color: #000 !important;
    border-left-color: #555 !important;
  }

  /* 테이블 */
  table { border-collapse: collapse !important; width: 100% !important; }
  table th, table td {
    border: 1pt solid #999 !important;
    padding: 4pt 6pt !important;
    font-size: 10pt;
  }
  table th { background: #ddd !important; }

  /* 인쇄 헤더 */
  .print-header {
    display: block !important;
    text-align: center;
    border-bottom: 2pt solid #333;
    padding-bottom: 8pt;
    margin-bottom: 14pt;
  }

  .print-header h1 { font-size: 16pt; margin: 0; }
  .print-header p  { font-size: 10pt; color: #555; margin: 4pt 0 0; }

  /* 페이지 나누기 */
  .page-break-before { page-break-before: always; }
  .page-break-after  { page-break-after: always; }

  /* mark 태그 */
  mark { background: none !important; font-weight: bold; }

  /* 숨겨진 것 표시 */
  #evaluationContainer,
  #modelAnswerContainer { display: block !important; }
}
