/* gesp.css —— GESP 一级站补充样式（积木图、题目图、编程题卡） */

/* scratchblocks 渲染结果 */
pre.blocks{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;
  margin:12px 0;overflow-x:auto;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;color:#57534E;line-height:1.8}
svg.sb-svg{display:block;max-width:100%;height:auto;background:#fff;border:1px solid var(--line);
  border-radius:14px;padding:10px;margin:12px 0;box-sizing:border-box}
pre.sb-err{border-color:var(--red);color:var(--red)}

/* 题目配图（官方原卷裁剪） */
.qfig{margin:12px 0;display:flex;flex-direction:column;gap:10px}
.qfig img{display:block;max-width:100%;max-height:340px;width:auto;margin:0 auto;
  background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;box-sizing:border-box}
.qfig.optfigs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media (min-width:560px){.qfig.optfigs{grid-template-columns:1fr 1fr}}
.qfig.optfigs img{max-width:100%;max-height:180px;margin:0 auto}

/* 判断题两个大按钮 */
.tfbtns{display:flex;gap:10px;margin-top:12px}
.tfbtns .opt{flex:1;justify-content:center;font-size:18px;font-weight:800;padding:15px 10px}

/* 编程题任务卡 */
.codecard{border:1.5px solid var(--blue-line);border-radius:16px;overflow:hidden;margin:12px 0;background:#fff}
.codecard .cc-head{background:var(--blue-bg);padding:11px 14px;font-weight:800;display:flex;align-items:center;gap:8px}
.codecard .cc-body{padding:6px 14px 14px}
.codecard h4{font-size:14.5px;margin:14px 0 4px;color:var(--blue)}
.codecard ol{margin:4px 0 4px 20px}
.codecard li{margin:5px 0;font-size:15px}
.codecard .prep li{font-size:14.5px;color:var(--ink2)}
.refbox{margin-top:10px}
.refbox .ref-toggle{width:100%;text-align:center;background:var(--amber-bg);border:1.5px dashed var(--amber-line);
  color:var(--amber);font-weight:800;font-size:15px;border-radius:12px;padding:12px;font-family:inherit}
.refbox .ref-body{display:none;margin-top:10px}
.refbox.open .ref-body{display:block}
.refbox .ref-cap{font-size:12.5px;color:var(--ink3);text-align:center;margin:8px 0 2px}
.refbox img{display:block;max-width:100%;background:#fff;border:1px solid var(--line);border-radius:12px;padding:6px;
  box-sizing:border-box;margin:8px auto}

/* 课程页 */
.goalbox{background:var(--green-bg);border:1.5px solid var(--green-line);border-radius:14px;
  padding:11px 14px;font-size:15px;margin:12px 0}
.goalbox b:first-child{color:var(--green)}
.warnlist{background:var(--red-bg);border:1.5px solid var(--red-line);border-radius:14px;padding:11px 14px;margin:12px 0}
.warnlist .wl-title{font-weight:800;color:var(--red);margin-bottom:4px}
.warnlist ul{margin:4px 0 2px}
.warnlist li{font-size:14.5px}

/* 随堂判分区 */
.quizbox{margin-top:8px}
.quizbox .verdict-line{margin-top:10px;font-weight:800}
.quizbox .verdict-line.ok{color:var(--green)}
.quizbox .verdict-line.no{color:var(--red)}

/* 首页统计 */
.stat-tip{font-size:12.5px;color:var(--ink2);margin:4px 2px 0}

/* 成绩单 */
.papernote{font-size:13px;color:var(--ink2);background:var(--blue-bg);border-radius:12px;padding:10px 12px;margin:10px 0}

/* ---- 内联积木（正文中替代文字描述） ---- */
.sbcode{display:inline-block;vertical-align:middle;margin:0 2px;font-family:ui-monospace,Menlo,monospace;
  font-size:12px;color:#94A3B8;line-height:1.4}
svg.sb-svg-inline{display:inline-block;vertical-align:middle;max-width:100%;height:auto;margin:0 1px}

/* ---- 课程页示意图 ---- */
.figbox-svg{margin:14px 0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:10px}
.figbox-svg svg{display:block;width:100%;height:auto}

/* ---- 科普视频卡 ---- */
.videocard{display:flex;gap:11px;align-items:center;padding:12px 14px;margin:12px 0;
  background:#fff;border:1.5px solid var(--blue-line);border-radius:14px;text-decoration:none;color:var(--ink)}
.videocard:active{background:var(--blue-bg)}
.videocard .vk{flex:0 0 auto;width:44px;height:44px;border-radius:12px;background:var(--blue-bg);
  display:flex;align-items:center;justify-content:center;font-size:20px}
.videocard .vt{flex:1;min-width:0}
.videocard .vt b{display:block;font-size:14.5px;line-height:1.45}
.videocard .vt em{display:block;font-style:normal;font-size:12px;color:var(--ink2);margin-top:2px}

/* ---- 动手编程任务卡 ---- */
.taskcard{border:1.5px solid var(--green-line);border-radius:16px;overflow:hidden;margin:14px 0;background:#fff}
.taskcard .tk-head{background:var(--green-bg);padding:10px 14px;font-weight:800;color:var(--green);font-size:15.5px}
.taskcard .tk-body{padding:6px 14px 14px}
.taskcard .tk-desc{font-size:15px;margin:8px 0}
.taskcard .tk-hint{font-size:13.5px;color:var(--amber);background:var(--amber-bg);border:1px dashed var(--amber-line);
  border-radius:10px;padding:8px 11px;margin:8px 0}
.taskcard .ref-toggle{width:100%;text-align:center;background:var(--green-bg);border:1.5px dashed var(--green-line);
  color:var(--green);font-weight:800;font-size:14.5px;border-radius:12px;padding:11px;font-family:inherit;margin-top:4px}
.taskcard .ref-body{display:none;margin-top:10px}
.taskcard.open .ref-body{display:block}
.taskcard .ref-cap{font-size:12px;color:var(--ink3);text-align:center;margin:6px 0 0}

/* ---- 资料链接区 ---- */
.docsbox{margin:14px 0}
.docsbox a{display:flex;gap:10px;align-items:center;padding:11px 12px;margin-bottom:8px;background:#fff;
  border:1.5px solid var(--line);border-radius:13px;text-decoration:none;color:var(--ink)}
.docsbox a:active{background:#FAF8F3}
.docsbox .dk{flex:0 0 auto;font-size:11.5px;font-weight:800;padding:4px 8px;border-radius:7px;background:#EEF1F4;color:#6B6862;white-space:nowrap}
.docsbox .dt{flex:1;min-width:0;font-size:14.5px;font-weight:700;line-height:1.45}
.docsbox .dt em{display:block;font-style:normal;font-weight:500;font-size:12px;color:var(--ink2);margin-top:1px}
