#right-panel {
  width: calc(100vw - var(--sidebar-width, 240px) - var(--leftbar-width, 360px));
  height: 100vh;
  overflow-y: auto;
  background-color: #f8f9fa;
  position: relative;
  font-family: "SimSun", "宋体", serif;
}

.rp-control-bar {
  display: flex;
  justify-content: flex-end;
  padding: 0.5rem 1rem;
  background: white;
  border-bottom: 1px solid #dee2e6;
  position: sticky;
  top: 0;
  z-index: 100;
}

.rp-function-buttons {
  display: flex;
  gap: 0.5rem;
}

.rp-view-container {
  padding: 1rem;
  height: calc(100vh - 60px);
  overflow-y: auto;
  overflow-x: hidden;
  display: flex;
  justify-content: center;
  align-items: flex-start;
}

.rp-paper-container {
  transform-origin: center center;
}

.rp-exam-paper {
  width: 84rem;
  height: auto;
  min-height: 59.4rem;
  background: white;
  box-shadow: 0 0 10px rgba(0,0,0,0.1);
  position: relative;
  font-size: 10.5pt;
  line-height: 1.4;
}

.rp-paper-page {
  display: flex;
  min-height: 59.4rem;
  margin-bottom: 2rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
  page-break-after: always;
}

.rp-page-column {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: auto;
  min-height: 59.4rem;
}

.rp-page-column:first-child {
  padding: 3rem 1.5rem 3rem 3rem;
  border-right: 1px dashed #ccc;
}

.rp-page-column:last-child {
  padding: 3rem 3rem 3rem 1.5rem;
}

/* 头部信息 */
.rp-header-info { 
  margin-bottom: 1.5rem;
}

.rp-default-content {
  margin-bottom: 1.5rem;
  line-height: 1.6;
  padding: 0;
  border: none;
}

.rp-api-output {
  margin-top: 1rem;
  border: 1px solid #ddd;
  border-radius: 2px;
  overflow: hidden;
  display: none;
}

.rp-api-output-header {
  background: #f5f5f5;
  padding: 0.5rem;
  font-weight: bold;
  border-bottom: 1px solid #ddd;
  font-size: 10pt;
}

.rp-api-output-content {
  padding: 0.5rem;
  font-family: "Courier New", monospace;
  font-size: 9pt;
  max-height: 150px;
  background: white;
  user-select: none;
  pointer-events: none;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.rp-api-output-content::-webkit-scrollbar { display: none; }

.rp-questions-container {
  flex: 1;
  overflow: hidden;
}

.rp-placeholder-card {
  padding: 3rem;
  border: 2px dashed #ccc;
  border-radius: 4px;
  text-align: center;
  color: #777;
  margin-bottom: 1rem;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #f9f9f9;
  height: 100%;
}

.rp-page-number {
  text-align: center;
  margin-top: auto;
  padding-top: 1rem;
  font-size: 9pt;
  color: #666;
}

/* 大标题样式 */
.rp-big-title {
  padding: 0.5rem 0;
  font-weight: bold;
  margin-top: 1rem;
  margin-bottom: 0.5rem;
  border-bottom: none;
}

/* 卡片样式 */
.rp-card {
  position: relative;
  padding: 0;
  border: none;
  border-radius: 0;
  flex-shrink: 0;
  box-sizing: border-box;
  margin-bottom: 8px;
  background: transparent;
  page-break-inside: avoid;
}

.rp-card-main {
  line-height: 1.5;
  margin-bottom: 0.5rem;
  min-height: 1.5em;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.rp-option {
  margin-left: 1.5rem;
  font-size: 0.9em;
  color: #495057;
  line-height: 1.4;
  margin-bottom: 0.25rem;
  min-height: 1.4em;
}

.rp-space {
  margin-top: 0.5rem;
}

.rp-space-label {
  font-weight: 600;
  margin-bottom: 0.25rem;
  min-height: 1.4em;
}

.rp-space-area {
  min-height: 100px;
  padding: 0.5rem;
  background: #f8f9fa;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  line-height: 1.4;
}

.rp-scale-controls {
  position: fixed;
  bottom: 2rem;
  right: 1rem;
  display: flex;
  gap: 0.25rem;
  background: white;
  padding: 0.5rem;
  border-radius: 4px;
  box-shadow: 0 2px 5px rgba(0,0,0,0.1);
  z-index: 1000;
}

.rp-ai-notice {
  text-align: center;
  margin-top: 1rem;
  color: #6c757d;
  font-size: 9pt;
  width: 100%;
  padding: 0.5rem;
  background: rgba(255,255,255,1);
  border-top: 1px solid #dee2e6;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 999;
}

/* 选择题选项横向排列 */
.rp-options-horizontal {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  margin: 0.5rem 0;
  margin-left: 1.5rem;
}

.rp-option-horizontal {
  flex: 0 0 auto;
  font-size: 0.9em;
  color: #495057;
  line-height: 1.4;
  min-height: 1.4em;
}

/* 填空题答案下划线样式 */
.rp-card-main u {
  text-decoration: none;
  border-bottom: 1px solid #000;
  padding: 0 2px;
}

/* 英语听力题特殊样式 */
.rp-listening-question {
  background: #f0f8ff;
  padding: 0.5rem;
  border-radius: 4px;
  margin-bottom: 0.5rem;
}

.rp-listening-label {
  font-weight: bold;
  color: #0066cc;
  margin-bottom: 0.25rem;
}

/* 作文题特殊样式 */
.rp-composition-question .rp-space-area {
  min-height: 300px;
  background: #fff9e6;
}

/* 材料分析题特殊样式 */
.rp-material-question {
  border-left: 3px solid #007bff;
  padding-left: 1rem;
  margin-bottom: 1rem;
}

.rp-material-content {
  background: #f8f9fa;
  padding: 0.75rem;
  border-radius: 4px;
  margin-bottom: 0.5rem;
  font-style: italic;
}

/* 实验题特殊样式 */
.rp-experiment-question {
  border: 1px dashed #28a745;
  padding: 0.75rem;
  border-radius: 4px;
  margin-bottom: 0.5rem;
}

.rp-experiment-label {
  font-weight: bold;
  color: #28a745;
  margin-bottom: 0.25rem;
}

/* 文言文特殊样式 */
.rp-classical-chinese {
  font-family: "SimSun", "宋体", serif;
  line-height: 2;
  text-indent: 2em;
}

.rp-annotation {
  font-size: 0.9em;
  color: #666;
  margin-top: 0.25rem;
}

/* 答案页面特殊样式 */
.rp-answer-page .rp-header-info h3 {
  color: #dc3545;
}

.rp-answer-card {
  margin-bottom: 1rem;
}

.rp-answer-content {
  /* 完全移除所有样式，保持纯文本 */
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  line-height: 1.5;
}

/* 长内容分页支持 */
.rp-content-continued {
  border-top: 1px dashed #ccc;
  padding-top: 0.5rem;
  margin-top: 0.5rem;
  font-style: italic;
  color: #666;
}

.rp-content-break {
  height: 0;
  margin: 0;
  padding: 0;
}

/* 答案页面分隔线 */
.rp-answer-section-divider {
  border-top: 2px solid #dc3545;
  margin: 2rem 0;
  padding-top: 1rem;
}
/* 选择题答案横向排列 */
.rp-answer-card .rp-card-main {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
}

.rp-answer-card .rp-answer-content {
  flex: 1;
}
.message-content h1,.message-content h2,.message-content h3,.message-content h4,.message-content h5,.message-content h6{margin:1em 0 0.5em 0;font-weight:600;line-height:1.25;}
    .message-content h1{font-size:1.5em;border-bottom:1px solid #eaecef;padding-bottom:0.3em;}
    .message-content h2{font-size:1.3em;border-bottom:1px solid #eaecef;padding-bottom:0.3em;}
    .message-content h3{font-size:1.2em;}
    .message-content h4{font-size:1.1em;}
    .message-content h5{font-size:1em;}
    .message-content h6{font-size:0.9em;color:#6a737d;}
    .message-content p{margin:0.5em 0;line-height:1.6;}
    .message-content ul,.message-content ol{margin:0.5em 0;padding-left:2em;}
    .message-content li{margin:0.25em 0;}
    .message-content blockquote{margin:1em 0;padding:0 1em;border-left:4px solid #dfe2e5;background-color:#f8f9fa;color:#6a737d;}
    .message-content table{border-collapse:collapse;margin:1em 0;width:100%;}
    .message-content table th,.message-content table td{border:1px solid #dfe2e5;padding:0.5em 1em;text-align:left;}
    .message-content table th{background-color:#f6f8fa;font-weight:600;}
    .message-content table tr:nth-child(even){background-color:#f8f9fa;}
    .message-content hr{height:1px;background-color:#e1e4e8;border:0;margin:1.5em 0;}
    .message-content strong{font-weight:600;}
    .message-content em{font-style:italic;}
    .message-content code{background-color:rgba(175,184,193,0.2);border-radius:3px;padding:0.2em 0.4em;font-size:0.9em;font-family:'SFMono-Regular','Consolas','Liberation Mono','Menlo',monospace;}
    .code-block-container{background:#f8f9fa;border:1px solid #e9ecef;border-radius:6px;margin:1em 0;overflow:hidden;}
    .code-language{background:#495057;color:white;padding:4px 8px;font-size:0.8em;font-family:'Courier New',monospace;}
    .code-content{padding:1em;margin:0;overflow-x:auto;font-family:'Courier New',monospace;font-size:0.9em;line-height:1.4;background:#f8f9fa;color:#333;}
    .message-content pre{background:#f8f9fa;border-radius:6px;padding:1em;overflow:auto;margin:1em 0;}
    .message-content pre code{background:none;padding:0;border-radius:0;}
