/* ============================================================
   school-bullying-report.css
   校园欺凌举报与处置流程 · 警示牌风格
   警示黄 #EAB308 + 守护绿 #16A34A + 深蓝 #1E3A8A
   （深主题深蓝底覆盖）
   ============================================================ */

.sbr {
  --sbr-yellow: #eab308;
  --sbr-yellow-deep: #a87e05;
  --sbr-yellow-soft: #fef3c2;
  --sbr-yellow-line: #f2d877;
  --sbr-green: #16a34a;
  --sbr-green-deep: #0d7a37;
  --sbr-green-soft: #e3f6ea;
  --sbr-green-line: #b7e3c8;
  --sbr-blue: #1e3a8a;
  --sbr-blue-deep: #15295f;
  --sbr-blue-soft: #e4eaf8;
  --sbr-blue-line: #c5d0ec;
  --sbr-red: #dc2626;
  --sbr-red-soft: #fde8e8;
  --sbr-ink: #15213b;
  --sbr-ink-soft: #5c6b87;
  --sbr-line: #e1e6f2;
  --sbr-bg: #f5f7fd;
  --sbr-card: #ffffff;
  --sbr-shadow: 0 2px 10px rgba(30, 58, 138, .07), 0 1px 3px rgba(30, 58, 138, .04);
  --sbr-shadow-lg: 0 14px 32px rgba(30, 58, 138, .12), 0 4px 10px rgba(30, 58, 138, .06);
  --sbr-radius: 14px;
  --sbr-radius-sm: 10px;
}

.sbr {
  max-width: 1160px;
  margin: 0 auto;
  padding: 28px 20px 40px;
  color: var(--sbr-ink);
  font-family: -apple-system, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  background: var(--sbr-bg);
  font-size: 14.5px;
  line-height: 1.75;
}
.sbr-wrap { position: relative; z-index: 1; }

/* ========== Hero：警示牌风顶栏 ========== */
.sbr-hero {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  padding: 44px 46px 36px;
  margin-bottom: 26px;
  background:
    repeating-linear-gradient(-45deg, #faf4d8 0 10px, #fdf7d8 10px 20px),
    linear-gradient(180deg, #fffdf0 0%, #f5f7fd 100%);
  border: 1px solid var(--sbr-yellow-line);
  text-align: center;
}
.sbr-hero::before {
  content: "";
  position: absolute; left: 0; right: 0; top: 0; height: 6px;
  background: repeating-linear-gradient(-45deg, var(--sbr-yellow) 0 14px, var(--sbr-blue) 14px 28px);
  opacity: .9;
}

.sbr-strip {
  display: flex; justify-content: center; flex-wrap: wrap; gap: 10px;
  margin-bottom: 22px;
}
.sbr-strip-mark {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 6px 14px;
  font-size: 12.5px; font-weight: 700;
  color: var(--sbr-blue);
  background: #fff;
  border: 1px solid var(--sbr-blue-line);
  border-radius: 999px;
  letter-spacing: .3px;
  box-shadow: 0 2px 6px rgba(30, 58, 138, .06);
}
.sbr-strip-warn { color: var(--sbr-red); border-color: #f2c5c0; background: var(--sbr-red-soft); }

.sbr-badge {
  display: inline-block;
  padding: 5px 14px;
  font-size: 12px;
  color: var(--sbr-yellow-deep);
  background: var(--sbr-yellow-soft);
  border: 1px solid var(--sbr-yellow-line);
  border-radius: 999px;
  letter-spacing: .4px;
  margin-bottom: 14px;
  font-weight: 600;
}

.sbr-hero h1 {
  font-size: 32px;
  line-height: 1.3;
  margin: 0 0 14px;
  font-weight: 800;
  letter-spacing: .5px;
  color: var(--sbr-ink);
}
.sbr-hero h1 i {
  font-style: normal;
  background: linear-gradient(90deg, var(--sbr-yellow) 0%, var(--sbr-green) 55%, var(--sbr-blue) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.sbr-hero p {
  margin: 0 auto;
  font-size: 14.5px;
  line-height: 1.8;
  color: var(--sbr-ink-soft);
  max-width: 780px;
}
.sbr-hero p em { font-style: normal; font-weight: 600; color: var(--sbr-blue); }

/* ========== 卡片通用 ========== */
.sbr-card {
  background: var(--sbr-card);
  border: 1px solid var(--sbr-line);
  border-radius: var(--sbr-radius);
  padding: 24px 26px 22px;
  box-shadow: var(--sbr-shadow);
  margin-bottom: 24px;
}
.sbr-card h2 {
  margin: 0 0 18px;
  font-size: 17px; font-weight: 700;
  color: var(--sbr-ink);
  padding-bottom: 10px;
  border-bottom: 1px dashed var(--sbr-line);
}
.sbr-card h2 span {
  font-size: 12px; font-weight: 500;
  color: var(--sbr-yellow-deep);
  background: var(--sbr-yellow-soft);
  padding: 2px 10px; border-radius: 999px;
  margin-left: 8px;
}

/* ========== 输入区 ========== */
.sbr-field { display: flex; flex-direction: column; gap: 8px; margin-top: 14px; }
.sbr-lab { font-size: 13px; font-weight: 700; color: var(--sbr-ink); }
.sbr-hint { font-size: 11.5px; font-weight: 500; color: var(--sbr-ink-soft); margin-left: 6px; }

.sbr-textarea {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid var(--sbr-line);
  border-radius: var(--sbr-radius-sm);
  background: #fff;
  font-size: 13.5px;
  line-height: 1.75;
  color: var(--sbr-ink);
  font-family: inherit;
  resize: vertical;
  transition: border-color .15s, box-shadow .15s;
}
.sbr-textarea:focus {
  outline: none;
  border-color: var(--sbr-yellow);
  box-shadow: 0 0 0 3px rgba(234, 179, 8, .18);
}
.sbr-textarea::placeholder { color: #a7b1c7; }

/* 场景 & 证据宫格 */
.sbr-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.sbr-grid-3 { grid-template-columns: repeat(3, 1fr); }
.sbr-cell {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: 4px;
  padding: 13px 8px 11px;
  border: 1px solid var(--sbr-line);
  border-radius: 12px;
  background: #f8faff;
  cursor: pointer;
  user-select: none;
  font-family: inherit;
  transition: all .16s;
  position: relative;
  min-height: 78px;
}
.sbr-cell:hover { border-color: var(--sbr-yellow); background: var(--sbr-yellow-soft); transform: translateY(-1px); }
.sbr-cell:focus-visible { outline: 2px solid var(--sbr-yellow); outline-offset: 2px; }
.sbr-cell.on {
  background: linear-gradient(160deg, var(--sbr-yellow) 0%, var(--sbr-yellow-deep) 100%);
  border-color: var(--sbr-yellow-deep);
  box-shadow: 0 6px 14px rgba(234, 179, 8, .32);
}
.sbr-cell.on::after {
  content: "✓";
  position: absolute; top: 6px; right: 7px;
  font-size: 11px; font-weight: 800;
  color: var(--sbr-yellow-deep);
  background: #fff;
  width: 18px; height: 18px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
}
.sbr-cell-icon { font-size: 22px; line-height: 1.2; }
.sbr-cell-name { font-size: 13px; font-weight: 700; color: var(--sbr-ink); }
.sbr-cell.on .sbr-cell-name { color: #fff; }

/* 年龄段 */
.sbr-seg {
  display: inline-flex;
  border: 1px solid var(--sbr-line);
  border-radius: 10px;
  background: #f8faff;
  overflow: hidden;
  width: fit-content;
}
.sbr-seg-btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 7px 12px;
  font-size: 12.5px; font-weight: 600;
  color: var(--sbr-ink-soft);
  cursor: pointer;
  user-select: none;
  border-right: 1px solid var(--sbr-line);
  transition: all .15s;
  white-space: nowrap;
}
.sbr-seg-btn:last-child { border-right: none; }
.sbr-seg-btn input { position: absolute; opacity: 0; pointer-events: none; }
.sbr-seg-btn:hover { color: var(--sbr-yellow-deep); }
.sbr-seg-btn:has(input:checked) {
  background: var(--sbr-yellow);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.22);
}

/* 按钮 */
.sbr-row {
  display: flex; flex-wrap: wrap; gap: 10px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px dashed var(--sbr-line);
}
.sbr-btn {
  padding: 11px 22px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  border: 1px solid transparent;
  transition: all .18s;
  font-family: inherit;
}
.sbr-btn-go {
  background: linear-gradient(90deg, var(--sbr-yellow) 0%, var(--sbr-yellow-deep) 100%);
  color: #fff; border: none;
  box-shadow: 0 4px 10px rgba(234, 179, 8, .3);
}
.sbr-btn-go:hover { transform: translateY(-1px); box-shadow: 0 6px 14px rgba(234, 179, 8, .42); }
.sbr-btn-ghost { background: #fff; border: 1px solid var(--sbr-line); color: var(--sbr-ink-soft); }
.sbr-btn-ghost:hover { border-color: var(--sbr-yellow); color: var(--sbr-yellow-deep); }
.sbr-btn-sm { padding: 6px 14px; font-size: 12.5px; }

/* ========== 结果区 ========== */
.sbr-summary-ph { text-align: center; padding: 36px 16px; color: var(--sbr-ink-soft); }
.sbr-summary-ph p { margin: 10px auto 0; font-size: 13.5px; line-height: 1.8; max-width: 720px; }
.sbr-ph-icon { font-size: 42px; margin-bottom: 8px; }
.sbr-ph-icon::before { content: "🛡️"; display: inline-block; transform: scale(1.2); }
.sbr-result { margin-top: 4px; }

.sbr-section { margin-bottom: 24px; }
.sbr-section h3 {
  font-size: 14px; font-weight: 800;
  color: var(--sbr-ink);
  margin: 0 0 14px;
  padding-left: 10px;
  border-left: 3px solid var(--sbr-yellow);
}
.sbr-section h3 .sbr-hint { font-size: 12px; font-weight: 500; color: var(--sbr-ink-soft); margin-left: 8px; }

/* ========== 1. 定性参考大卡 ========== */
.sbr-qual-card {
  border-radius: 14px;
  padding: 20px 24px;
  box-shadow: var(--sbr-shadow);
  border-left: 5px solid var(--sbr-yellow);
  background: linear-gradient(180deg, #fffdf0 0%, #ffffff 72%);
}
.sbr-qual-card.sbr-qual-no {
  border-left-color: var(--sbr-green);
  background: linear-gradient(180deg, #f2fbf5 0%, #ffffff 72%);
}
.sbr-qual-head { display: flex; align-items: center; gap: 14px; margin-bottom: 12px; }
.sbr-qual-badge {
  font-size: 12px; font-weight: 700;
  padding: 4px 14px; border-radius: 999px;
  background: var(--sbr-yellow);
  color: #fff;
  letter-spacing: .5px;
}
.sbr-qual-no .sbr-qual-badge { background: var(--sbr-green); }
.sbr-qual-title { font-size: 18px; font-weight: 800; color: var(--sbr-ink); }
.sbr-qual-diff {
  font-size: 13px; line-height: 1.8; color: var(--sbr-ink-soft);
  background: var(--sbr-yellow-soft);
  border: 1px dashed var(--sbr-yellow-line);
  border-radius: 10px;
  padding: 12px 14px;
}
.sbr-qual-no .sbr-qual-diff { background: var(--sbr-green-soft); border-color: var(--sbr-green-line); }
.sbr-qual-diff b { color: var(--sbr-blue); }

/* 四要件比对 */
.sbr-qual-checks {
  display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px;
  margin-top: 14px;
}
.sbr-qual-check {
  display: flex; gap: 10px; align-items: flex-start;
  padding: 10px 13px;
  border: 1px solid var(--sbr-line);
  border-radius: 10px;
  background: #fff;
}
.sbr-qc-icon {
  flex-shrink: 0;
  width: 22px; height: 22px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 800; color: #fff;
}
.sbr-qc-yes .sbr-qc-icon { background: var(--sbr-green); }
.sbr-qc-no .sbr-qc-icon { background: var(--sbr-red); }
.sbr-qc-body { flex: 1; min-width: 0; }
.sbr-qc-title { font-size: 13px; font-weight: 700; color: var(--sbr-ink); margin-bottom: 2px; }
.sbr-qc-desc { font-size: 12.5px; line-height: 1.65; color: var(--sbr-ink-soft); }

/* ========== 2. 受理主体 ========== */
.sbr-accept { display: flex; flex-direction: column; gap: 12px; }
.sbr-accept-step {
  display: flex; gap: 14px; align-items: flex-start;
  padding: 14px 18px;
  border: 1px solid var(--sbr-line);
  border-radius: 12px;
  background: #fff;
  position: relative;
}
.sbr-accept-step.sbr-urgent {
  border-left: 5px solid var(--sbr-red);
  background: linear-gradient(180deg, var(--sbr-red-soft) 0%, #ffffff 70%);
}
.sbr-accept-step.sbr-prim {
  border-left: 5px solid var(--sbr-yellow);
  background: linear-gradient(180deg, var(--sbr-yellow-soft) 0%, #ffffff 70%);
}
.sbr-accept-step.sbr-sec {
  border-left: 5px solid var(--sbr-blue);
  background: linear-gradient(180deg, var(--sbr-blue-soft) 0%, #ffffff 70%);
}
.sbr-step-num {
  flex-shrink: 0;
  width: 32px; height: 32px; border-radius: 50%;
  background: var(--sbr-blue);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 14px; font-weight: 800;
}
.sbr-urgent .sbr-step-num { background: var(--sbr-red); }
.sbr-prim .sbr-step-num { background: var(--sbr-yellow); color: #fff; }
.sbr-sec .sbr-step-num { background: var(--sbr-blue); }
.sbr-step-body { flex: 1; min-width: 0; }
.sbr-step-title { font-size: 15px; font-weight: 800; color: var(--sbr-ink); margin-bottom: 3px; }
.sbr-step-title small {
  font-size: 11.5px; font-weight: 700;
  color: var(--sbr-red);
  background: var(--sbr-red-soft);
  padding: 1px 9px; border-radius: 999px;
  margin-left: 8px; vertical-align: 1px;
}
.sbr-step-meta {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 4px;
}
.sbr-step-chip {
  font-size: 11.5px; font-weight: 700;
  padding: 2px 10px; border-radius: 999px;
  background: #fff;
  border: 1px solid var(--sbr-line);
  color: var(--sbr-ink-soft);
}
.sbr-step-chip b { color: var(--sbr-blue); }
.sbr-step-desc { font-size: 13.5px; line-height: 1.8; color: var(--sbr-ink-soft); margin: 0; }
.sbr-step-desc b { color: var(--sbr-blue); }

/* ========== 3. 学校四步义务 ========== */
.sbr-school { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.sbr-duty {
  padding: 14px 14px 14px;
  border-radius: 12px;
  border: 1px solid var(--sbr-line);
  background: #fff;
  position: relative;
}
.sbr-duty-num {
  position: absolute; top: -10px; left: 14px;
  background: var(--sbr-green);
  color: #fff;
  font-size: 11px; font-weight: 800;
  padding: 2px 10px; border-radius: 999px;
  letter-spacing: .5px;
}
.sbr-duty-title { font-size: 14px; font-weight: 800; color: var(--sbr-ink); margin: 8px 0 6px; }
.sbr-duty-body { font-size: 12.5px; line-height: 1.7; color: var(--sbr-ink-soft); margin: 0; }
.sbr-duty-body b { color: var(--sbr-blue); }
.sbr-duty-tag {
  display: inline-block;
  margin-top: 8px;
  font-size: 11px; font-weight: 700;
  color: var(--sbr-yellow-deep);
  background: var(--sbr-yellow-soft);
  border: 1px solid var(--sbr-yellow-line);
  padding: 2px 8px; border-radius: 6px;
}

/* ========== 4. 举报信 ========== */
.sbr-letter-head {
  display: flex; justify-content: flex-end; margin-bottom: 8px;
}
.sbr-letter {
  font-family: "Helvetica Neue", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
  font-size: 13.5px;
  line-height: 1.85;
  color: var(--sbr-ink);
  background: #fffdf0;
  border: 1px solid var(--sbr-yellow-line);
  border-radius: 12px;
  padding: 22px 24px;
  white-space: pre-wrap;
  word-break: break-word;
  margin: 0;
  max-height: 520px;
  overflow: auto;
  box-shadow: inset 0 0 0 4px rgba(234, 179, 8, .08);
}

/* ========== 5. 证据固定方法 ========== */
.sbr-evidence { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.sbr-ev {
  border: 1px solid var(--sbr-line);
  border-radius: 12px;
  background: #fff;
  padding: 14px 16px;
}
.sbr-ev-head { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.sbr-ev-icon { font-size: 20px; }
.sbr-ev-title { font-size: 14px; font-weight: 800; color: var(--sbr-ink); }
.sbr-ev-steps { margin: 0; padding-left: 20px; }
.sbr-ev-steps li {
  font-size: 12.5px; line-height: 1.75; color: var(--sbr-ink-soft);
  margin-bottom: 4px;
}
.sbr-ev-steps b { color: var(--sbr-blue); }

/* ========== 6. 后续救济路径 ========== */
.sbr-relief {
  display: flex; flex-direction: column; gap: 0;
  border: 1px solid var(--sbr-line);
  border-radius: 12px;
  overflow: hidden;
}
.sbr-relief-item {
  display: flex; gap: 14px;
  padding: 14px 18px;
  position: relative;
  border-bottom: 1px dashed var(--sbr-line);
}
.sbr-relief-item:last-child { border-bottom: none; }
.sbr-relief-item::before {
  content: "→";
  position: absolute; left: 14px; top: -8px;
  font-size: 14px; font-weight: 800;
  color: var(--sbr-green);
  background: #fff;
  width: 18px; height: 18px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
}
.sbr-relief-item:first-child::before { display: none; }
.sbr-rf-dot {
  flex-shrink: 0;
  width: 28px; height: 28px; border-radius: 50%;
  background: var(--sbr-green);
  color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 12px; font-weight: 800;
  margin-top: 1px;
}
.sbr-rf-body { flex: 1; min-width: 0; }
.sbr-rf-title { font-size: 14px; font-weight: 800; color: var(--sbr-ink); margin-bottom: 3px; }
.sbr-rf-title small {
  font-size: 11.5px; font-weight: 700;
  color: var(--sbr-yellow-deep);
  background: var(--sbr-yellow-soft);
  padding: 1px 8px; border-radius: 999px;
  margin-left: 8px;
}
.sbr-rf-desc { font-size: 13px; line-height: 1.75; color: var(--sbr-ink-soft); margin: 0; }
.sbr-rf-desc b { color: var(--sbr-blue); }

/* ========== 风险提示 ========== */
.sbr-disclaimer {
  padding: 14px 18px;
  background: #fff8e7;
  border: 1px dashed var(--sbr-yellow-line);
  border-radius: 12px;
  text-align: center;
}
.sbr-disclaimer p { margin: 0; font-size: 13px; color: var(--sbr-ink-soft); line-height: 1.8; }
.sbr-disclaimer b { color: var(--sbr-yellow-deep); }

/* ========== 响应式 ========== */
@media (max-width: 960px) {
  .sbr-hero { padding: 30px 22px; }
  .sbr-hero h1 { font-size: 26px; }
  .sbr-grid { grid-template-columns: repeat(3, 1fr); }
  .sbr-school { grid-template-columns: repeat(2, 1fr); }
  .sbr-qual-checks { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .sbr-grid { grid-template-columns: repeat(2, 1fr); }
  .sbr-cell { min-height: 68px; }
  .sbr-cell-icon { font-size: 19px; }
  .sbr-school { grid-template-columns: 1fr; }
  .sbr-evidence { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .sbr { padding: 16px 12px 24px; }
  .sbr-card { padding: 16px 16px 14px; }
  .sbr-btn { padding: 9px 16px; font-size: 13px; }
  .sbr-seg { width: 100%; overflow-x: auto; }
  .sbr-seg-btn { flex: 1; justify-content: center; }
}

/* ========== 深主题覆盖 ========== */
:root[data-theme="dark"] .sbr {
  --sbr-yellow: #f0c43d;
  --sbr-yellow-deep: #f4d36b;
  --sbr-yellow-soft: #3a2f10;
  --sbr-yellow-line: #5a471a;
  --sbr-green: #2fbf6b;
  --sbr-green-deep: #7fdcac;
  --sbr-green-soft: #10301f;
  --sbr-green-line: #1d5038;
  --sbr-blue: #6f97f0;
  --sbr-blue-deep: #9dbcf7;
  --sbr-blue-soft: #16243f;
  --sbr-blue-line: #2b3d63;
  --sbr-red: #ef7b7b;
  --sbr-red-soft: #3a1c1e;
  --sbr-ink: #e4ebf7;
  --sbr-ink-soft: #94a3bd;
  --sbr-line: #2b3d63;
  --sbr-bg: #0c1424;
  --sbr-card: #16213a;
  --sbr-shadow: 0 2px 8px rgba(0,0,0,.32);
  --sbr-shadow-lg: 0 14px 32px rgba(0,0,0,.5);
}
:root[data-theme="dark"] .sbr-hero {
  background:
    repeating-linear-gradient(-45deg, #2e2510 0 10px, #3a2f10 10px 20px),
    linear-gradient(180deg, #111b30 0%, #0c1424 100%);
  border-color: #5a471a;
}
:root[data-theme="dark"] .sbr-badge { color: #f0c43d; background: #3a2f10; border-color: #5a471a; }
:root[data-theme="dark"] .sbr-strip-mark { color: #9dbcf7; background: #16213a; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-strip-warn { color: #ef7b7b; background: #3a1c1e; border-color: #4a2a2e; }
:root[data-theme="dark"] .sbr-card { background: #16213a; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-card h2 span { color: #f0c43d; background: #3a2f10; border-color: #5a471a; }
:root[data-theme="dark"] .sbr-textarea { background: #111b30; border-color: #2b3d63; color: var(--sbr-ink); }
:root[data-theme="dark"] .sbr-textarea::placeholder { color: #5d6b85; }
:root[data-theme="dark"] .sbr-cell { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-cell:hover { background: #3a2f10; border-color: var(--sbr-yellow); }
:root[data-theme="dark"] .sbr-cell-name { color: var(--sbr-ink); }
:root[data-theme="dark"] .sbr-cell.on { background: linear-gradient(160deg, #a87e05 0%, #7a5b04 100%); border-color: #c49a08; }
:root[data-theme="dark"] .sbr-cell.on::after { color: #111b30; background: #f0c43d; }
:root[data-theme="dark"] .sbr-seg { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-seg-btn { color: var(--sbr-ink-soft); border-right-color: #2b3d63; }
:root[data-theme="dark"] .sbr-seg-btn:has(input:checked) { background: var(--sbr-yellow); color: #111b30; }
:root[data-theme="dark"] .sbr-btn-ghost { background: #111b30; border-color: #2b3d63; color: var(--sbr-ink-soft); }
:root[data-theme="dark"] .sbr-btn-go { background: linear-gradient(90deg, #a87e05 0%, #7a5b04 100%); }
:root[data-theme="dark"] .sbr-qual-card { background: linear-gradient(180deg, #3a2f10 0%, #16213a 72%); border-left-color: var(--sbr-yellow); }
:root[data-theme="dark"] .sbr-qual-card.sbr-qual-no { background: linear-gradient(180deg, #10301f 0%, #16213a 72%); border-left-color: var(--sbr-green); }
:root[data-theme="dark"] .sbr-qual-title { color: #dce6f5; }
:root[data-theme="dark"] .sbr-qual-diff { background: #3a2f10; border-color: #5a471a; color: #94a3bd; }
:root[data-theme="dark"] .sbr-qual-diff b { color: #f4d36b; }
:root[data-theme="dark"] .sbr-qual-check { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-qc-title { color: var(--sbr-ink); }
:root[data-theme="dark"] .sbr-accept-step { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-accept-step.sbr-urgent { background: linear-gradient(180deg, #3a1c1e 0%, #16213a 70%); }
:root[data-theme="dark"] .sbr-accept-step.sbr-prim { background: linear-gradient(180deg, #3a2f10 0%, #16213a 70%); }
:root[data-theme="dark"] .sbr-accept-step.sbr-sec { background: linear-gradient(180deg, #16243f 0%, #16213a 70%); }
:root[data-theme="dark"] .sbr-step-title { color: #dce6f5; }
:root[data-theme="dark"] .sbr-step-chip { background: #111b30; border-color: #2b3d63; color: #94a3bd; }
:root[data-theme="dark"] .sbr-step-chip b { color: #f0c43d; }
:root[data-theme="dark"] .sbr-step-desc { color: #94a3bd; }
:root[data-theme="dark"] .sbr-step-desc b { color: #9dbcf7; }
:root[data-theme="dark"] .sbr-school { border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-duty { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-duty-title { color: #dce6f5; }
:root[data-theme="dark"] .sbr-duty-body { color: #94a3bd; }
:root[data-theme="dark"] .sbr-duty-body b { color: #9dbcf7; }
:root[data-theme="dark"] .sbr-duty-tag { color: #f4d36b; background: #3a2f10; border-color: #5a471a; }
:root[data-theme="dark"] .sbr-letter { background: #1a1608; border-color: #5a471a; color: #e4ebf7; }
:root[data-theme="dark"] .sbr-ev { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-ev-title { color: #dce6f5; }
:root[data-theme="dark"] .sbr-ev-steps li { color: #94a3bd; }
:root[data-theme="dark"] .sbr-ev-steps b { color: #f4d36b; }
:root[data-theme="dark"] .sbr-relief { background: #111b30; border-color: #2b3d63; }
:root[data-theme="dark"] .sbr-relief-item { border-bottom-color: #2b3d63; }
:root[data-theme="dark"] .sbr-rf-title { color: #dce6f5; }
:root[data-theme="dark"] .sbr-rf-title small { color: #f4d36b; background: #3a2f10; }
:root[data-theme="dark"] .sbr-rf-desc { color: #94a3bd; }
:root[data-theme="dark"] .sbr-rf-desc b { color: #9dbcf7; }
:root[data-theme="dark"] .sbr-disclaimer { background: #3a2f10; border-color: #5a471a; }
:root[data-theme="dark"] .sbr-disclaimer b { color: #f4d36b; }
