/* 路径：/static/css/question_bank.css */

/* 基础全局样式继承自 base.css，这里针对题库管理页面做专门的调整 */

/* 页面容器 */
.question-bank-container {
  max-width: 1200px;
  margin: 20px auto;
  padding: 20px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

/* 页面标题 */
.question-bank-container h2 {
  font-size: 28px;
  color: #333;
  margin-bottom: 20px;
  border-bottom: 2px solid #e0e0e0;
  padding-bottom: 10px;
}

/* “添加题库”按钮 */
#addCategoryBtn {
  display: inline-block;
  background-color: #4caf50;
  color: #fff;
  padding: 10px 20px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  margin-bottom: 20px;
  transition: background 0.3s ease;
}

#addCategoryBtn:hover {
  background-color: #45a049;
}

/* 分类列表 */
#categoriesList {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center; /* 居中对齐 */
}

/* 单个分类项，宽度修改为80% */
.category-item {
  background: #fafafa;
  border: 1px solid #ddd;
  border-radius: 4px;
  padding: 15px;
  width: 80%;            /* 修改为80% */
  box-sizing: border-box;
  position: relative;
  transition: transform 0.2s ease;
}

.category-item:hover {
  transform: translateY(-3px);
}

.category-item h3 {
  font-size: 20px;
  margin: 0 0 10px 0;
  color: #333;
}

.category-item p {
  font-size: 14px;
  color: #666;
  margin: 0;
}

/* 分类项操作按钮 */
.category-item .btn-group {
  position: absolute;
  top: 10px;
  right: 10px;
  display: flex;
  gap: 5px;
}

.category-item .btn-group button {
  border: none;
  border-radius: 3px;
  padding: 5px 10px;
  font-size: 12px;
  cursor: pointer;
  transition: background 0.3s ease;
  color: #fff;
}

/* 查看按钮：橙色 */
.category-item .btn-group button.viewBtn {
  background-color: #ff9800;
}

.category-item .btn-group button.viewBtn:hover {
  background-color: #fb8c00;
}

/* 录题按钮：紫色 */
.category-item .btn-group button.recordBtn {
  background-color: #9c27b0;
}

.category-item .btn-group button.recordBtn:hover {
  background-color: #8e24aa;
}
/* 批量导入按钮：不要用灰色（青绿色） */
.category-item .btn-group button.batchImportBtn {
  background-color: #009688; /* teal */
}
.category-item .btn-group button.batchImportBtn:hover {
  background-color: #00897b;
}

/* AI录题按钮：黑底黄字 */
.category-item .btn-group button.aiRecordBtn {
  background-color: #111;
  color: #FFD400;
  border: 1px solid #FFD400;
}
.category-item .btn-group button.aiRecordBtn:hover {
  background-color: #000;
}

/* 编辑按钮：蓝色 */
.category-item .btn-group button.editBtn {
  background-color: #2196f3;
}

.category-item .btn-group button.editBtn:hover {
  background-color: #1e88e5;
}

/* 删除按钮：红色 */
.category-item .btn-group button.deleteBtn,
.category-item .btn-group button.delete {
  background-color: #f44336;
}

.category-item .btn-group button.deleteBtn:hover,
.category-item .btn-group button.delete:hover {
  background-color: #e53935;
}

/* 模态框样式 */
#categoryModal {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0,0,0,0.5);
  display: none; /* 默认隐藏 */
  align-items: center;
  justify-content: center;
  z-index: 1000;
}

#categoryModal .modal-content {
  background: #fff;
  padding: 20px;
  border-radius: 6px;
  width: 400px;
  max-width: 90%;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

#categoryModal .modal-content h3 {
  margin-top: 0;
  font-size: 22px;
  color: #333;
  margin-bottom: 15px;
}

/* 模态框表单 */
#categoryModal form {
  display: block;
}

#categoryModal label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold;
  color: #555;
}

#categoryModal input[type="text"] {
  width: 100%;
  padding: 8px;
  margin-bottom: 15px;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-sizing: border-box;
}

/* 模态框按钮 */
#categoryModal button {
  background-color: #4caf50;
  color: #fff;
  padding: 8px 16px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  margin-right: 10px;
  transition: background 0.3s ease;
}

#categoryModal button:hover {
  background-color: #45a049;
}

#cancelCategoryBtn {
  background-color: #f44336;
}

#cancelCategoryBtn:hover {
  background-color: #e53935;
}

/* 响应式调整 */
@media screen and (max-width: 768px) {
  .category-item {
    width: 80%; /* 在平板上也采用80%的宽度 */
  }
}

@media screen and (max-width: 480px) {
  .category-item {
    width: 100%; /* 手机上全宽显示 */
  }
}

/* ===== AI 自动录题（演示）弹窗样式：由 CSS 统一管理 ===== */
.ai-record-modal-mask{
  position:fixed; inset:0;
  background:rgba(0,0,0,.55);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:9999;
}
.ai-record-modal-mask.is-open{
  display:flex;
}
.ai-record-modal{
  /* 宽度策略：可通过 modifier class 设置变量，不改 JS */
  width:min(var(--ai-record-modal-max-width, 860px), 92vw);
  background:#fff;
  border-radius:12px;
  box-shadow:0 10px 40px rgba(0,0,0,.25);
  overflow:hidden;
}
/* 语义化尺寸：中等弹窗 */
.ai-record-modal--md{
  --ai-record-modal-max-width: 860px;
}
.ai-record-modal-header{
  padding:14px 16px;
  border-bottom:1px solid #eee;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.ai-record-modal-title{font-size:16px;font-weight:800;}
.ai-record-section-title{
  font-weight:700;
  margin-bottom:8px;
}
.ai-record-modal textarea{
  width:100%;
  min-height:180px;
  resize:vertical;
  border:1px solid #ddd;
  border-radius:8px;
  padding:10px;
  font-size:14px;
  line-height:1.5;
}
.ai-record-modal-hint{margin-top:8px;color:#666;font-size:12px;}
.ai-record-modal-footer{
  padding:12px 16px;
  border-top:1px solid #eee;
  display:flex;
  gap:10px;
  justify-content:flex-end;
  align-items:center;
}
.ai-record-btn-primary{
  background:#111;
  color:#FFD400;
  border:1px solid #FFD400;
  border-radius:8px;
  padding:8px 12px;
  font-weight:800;
  cursor:pointer;
}
.ai-record-btn-secondary{
  background:#f6f6f6;
  color:#333;
  border:1px solid #ddd;
  border-radius:8px;
  padding:8px 12px;
  font-weight:700;
  cursor:pointer;
}
.ai-record-status{
  margin-top:10px;
  font-size:12px;
  color:#333;
  white-space:pre-wrap;
}