/* ========== 内置CSS · 《爸妈逼我相亲，租借女友回家过年》 ========== */
/* 风格：咖啡暖色 + 冬日都市 + 双女主双色面板 */
/* 说明：变量置于:root；选择器无前缀；平台自动包裹.khorra-output */

:root{
  --bg:#f6f1e7; --surface:#fffdf8; --surface2:#f3eee2; --surface3:#ece4d3;
  --line:#e2d8c3; --line2:#d3c7ac;
  --text:#3d3a33; --dim:#8a8374; --faint:#a89f8d;
  --coffee:#8a5a34; --coffee2:#a9743f; --coffee-dim:#e8d5bd; --coffee-bg:#f7efe3;
  --yz:#c2713a; --yz2:#b05f28; --yz-dim:#f0dcc4;
  --sq:#5b6b8c; --sq2:#4a5a7d; --sq-dim:#cdd6e8;
  --pink:#c25f80; --pink2:#b04f70; --pink-dim:#eec9d6;
  --cyan:#2f8fc9; --cyan2:#3a9fdb; --cyan-dim:#b8d8ea;
  --purple:#7a68a8; --purple-dim:#d5cbeb;
  --green:#5f9e73; --red:#c96060;
  --dark-bg:#2e3d52; --dark-line:#42536c; --dark-text:#eef3f8;
}

.khorra-output{
  color:var(--text); line-height:1.9;
  background:rgba(246,242,233,.94);
  border-radius:12px;
  padding:10px 12px;
}

/* ---------- 1. 根排版 ---------- */
.body-rule{
  margin:10px 0; padding:10px 14px;
  background:#fdf6ea; border:1px dashed #d8c39a; border-left:4px solid var(--coffee2);
  color:#7a5a34; font-size:.8rem; line-height:1.8; border-radius:0 8px 8px 0;
}
.narrative-p{
  margin:10px 0; font-size:.94rem; line-height:2; color:var(--text);
  text-indent:2em;
}
.inner-monologue{
  margin:10px 0; padding:10px 14px;
  background:linear-gradient(135deg,#f0e6f7,#e8dbf0);
  border-left:3px solid var(--purple);
  color:#6a5578; font-size:.86rem; line-height:1.9;
  border-radius:0 8px 8px 0;
}

/* ---------- 2. 前置检查 ---------- */
details.cot-check-details{
  margin:8px 0; background:var(--dark-bg); border:1px solid var(--dark-line);
  border-radius:8px; padding:0; overflow:hidden;
}
details.cot-check-details > summary{
  cursor:pointer; padding:10px 14px; color:#cfe0f0; font-size:.8rem;
  font-weight:700; letter-spacing:.1em; list-style:none;
  background:linear-gradient(120deg,#35465e,#2a3a4f);
}
details.cot-check-details > summary::-webkit-details-marker{ display:none; }
details.cot-check-details[open] > summary{ border-bottom:1px solid var(--dark-line); }
details.cot-check-details .details-body{ padding:10px 14px; }
details.cot-check-details .cot-exec-content{
  font-size:.72rem; line-height:2; color:#b8c9dd; white-space:pre-wrap;
  font-family:Consolas,'Courier New',monospace;
}
details.cot-check-details .cot-exec-content b{ color:#ffd27a; }

/* ---------- 3. 时间锚头 ---------- */
.time-header{
  margin:12px 0; padding:12px 16px;
  background:linear-gradient(135deg,#3a4a63,#26354a);
  border:1px solid var(--dark-line); border-left:4px solid var(--coffee2);
  border-radius:6px; color:var(--dark-text);
}
.time-row-main{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.time-day{ font-size:.88rem; font-weight:700; color:#ffd27a; letter-spacing:.08em; }
.time-sep{ color:#6d7f96; }
.time-period{ font-size:.76rem; color:#cfe0f0; }
.time-clock{
  font-size:.72rem; color:#ffe3a8; background:rgba(255,210,122,.12);
  border:1px solid rgba(255,210,122,.32); padding:1px 10px; border-radius:10px;
}
.time-round{
  font-size:.72rem; color:#ffd27a; background:rgba(255,210,122,.1);
  border:1px solid rgba(255,210,122,.3); padding:1px 10px; border-radius:10px;
  font-weight:700; letter-spacing:.06em;
}
.time-row-loc{ margin-top:6px; font-size:.78rem; color:#b8c9dd; }
.time-row-weather{ margin-top:2px; font-size:.74rem; color:#a3b4c8; }
.time-row-deadline{
  margin-top:6px; font-size:.74rem; color:#ffb98a; font-weight:700;
  background:rgba(255,120,80,.1); border:1px solid rgba(255,120,80,.3);
  padding:3px 10px; border-radius:8px; display:inline-block;
}
.time-row-affinity{
  margin-top:6px; font-size:.72rem; color:#b8c9dd;
  background:rgba(120,180,140,.08); border:1px solid rgba(120,180,140,.28);
  padding:3px 10px; border-radius:8px; display:inline-block;
}
.time-row-affinity b{ color:#9fd8b4; font-weight:700; }
.time-divider{
  margin:8px 0; height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,190,90,.55),transparent);
}

/* ---------- 4. 对话气泡 ---------- */
.yz-msg{ margin:10px 0; }
.yz-name{
  display:block; font-size:.74rem; font-weight:700; letter-spacing:.14em;
  color:var(--yz); line-height:1.4; margin-bottom:2px;
}
.yz-text{
  display:block; max-width:88%;
  background:linear-gradient(135deg,#fbf0e0,#f6e4cc);
  border:1px solid #ecd5b8; border-left:3px solid var(--yz2);
  border-radius:4px 14px 14px 14px;
  padding:8px 14px; color:#6a4426; line-height:1.8; font-size:.9rem;
}
.sq-msg{ margin:10px 0; }
.sq-name{
  display:block; font-size:.74rem; font-weight:700; letter-spacing:.14em;
  color:var(--sq); line-height:1.4; margin-bottom:2px;
}
.sq-text{
  display:block; max-width:88%;
  background:linear-gradient(135deg,#eef1f8,#e3e8f2);
  border:1px solid #cdd6e8; border-left:3px solid var(--sq2);
  border-radius:4px 14px 14px 14px;
  padding:8px 14px; color:#48536a; line-height:1.8; font-size:.9rem;
}
.us-msg{ margin:10px 0; }
.us-name{ display:block; text-align:right; font-size:.72rem; font-weight:700; letter-spacing:.14em; color:var(--cyan); margin-bottom:2px; }
.us-text{
  display:block; margin-left:auto; max-width:80%; text-align:left;
  background:linear-gradient(135deg,#eef7fb,#e3f0f7);
  border:1px solid #cfe4f0; border-right:3px solid var(--cyan);
  border-radius:14px 4px 14px 14px; padding:8px 14px;
  color:#3f5a6e; line-height:1.8; font-size:.9rem;
}
.npc-msg{ margin:6px 0 6px 12px; text-align:left; }
.npc-name{ font-size:.72rem; font-weight:700; letter-spacing:.14em; color:var(--dim); display:block; margin-bottom:2px; }
.npc-text{
  display:inline-block; max-width:85%; text-align:left;
  background:rgba(255,255,255,.8); border:1px solid var(--line);
  border-radius:14px; padding:8px 14px; color:#5a564c; line-height:1.8; font-size:.9rem;
}

/* ---------- 5. 好感度条（共用） ---------- */
.aff-bar{ margin:10px 0; }
.aff-bar-label{ font-size:.7rem; font-weight:700; letter-spacing:.12em; margin-bottom:4px; }
.yz-panel .aff-bar-label{ color:var(--yz); }
.sq-panel .aff-bar-label{ color:var(--sq); }
.aff-track{
  height:8px; border-radius:6px; overflow:hidden;
  background:#ece4d3; border:1px solid #ddd2ba;
}
.aff-fill{ height:100%; border-radius:6px; transition:width .3s ease; }
.yz-fill{ background:linear-gradient(90deg,#e8b87e,#c2713a); }
.sq-fill{ background:linear-gradient(90deg,#8f9fc4,#4a5a7d); }
.aff-state{ margin-top:4px; font-size:.7rem; color:var(--dim); }

/* ---------- 6. 通用面板骨架 ---------- */
details.panel-details{
  margin:10px 0; border:1px solid #d6ccb6; border-radius:8px;
  background:#f7f4ec; overflow:hidden;
  box-shadow:0 1px 6px rgba(90,80,60,.08);
}
details.panel-details > summary{
  cursor:pointer; padding:11px 16px; list-style:none;
  background:linear-gradient(120deg,#2e4a6e,#3a5a80);
  color:#f2f6fa; font-size:.86rem; font-weight:700; letter-spacing:.08em;
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
}
details.panel-details > summary::-webkit-details-marker{ display:none; }
details.panel-details > summary::before{ content:"▾ "; color:#ffd27a; }
details.panel-details[open] > summary::before{ content:"▸ "; }
details.panel-details > summary .panel-summary-sub{
  margin-left:auto; font-size:.62rem; font-weight:400; letter-spacing:.2em;
  color:#9fb4cc; font-family:Consolas,monospace;
}
details.panel-details .panel-body{ padding:14px 16px; }

/* ---------- 6.5 记忆存档面板（外置MOD v2.0） ---------- */
details.memory-panel{ border-color:#cbbfe2; background:#f6f3fb; }
details.memory-panel > summary{
  background:linear-gradient(120deg,#5b4a8a,#6d5aa8);
  color:#f0ecff;
}
details.memory-panel > summary::before{ color:#d5c8ff; }
details.memory-panel > summary .panel-summary-sub{ color:#c4b8e8; }
details.memory-stm, details.memory-ltm{
  margin:8px 0; border:1px solid #d8cbe8; border-radius:8px; background:#fbf9fe; overflow:hidden;
}
details.memory-stm > summary, details.memory-ltm > summary{
  cursor:pointer; list-style:none; padding:9px 12px;
  font-size:.76rem; font-weight:700; letter-spacing:.06em;
  color:#6d5aa8; background:linear-gradient(120deg,#efe8fa,#e6dcf5);
}
details.memory-stm > summary::-webkit-details-marker, details.memory-ltm > summary::-webkit-details-marker{ display:none; }
details.memory-stm > summary::before, details.memory-ltm > summary::before{ content:"▾ "; color:#a08fd0; }
details.memory-stm[open] > summary::before, details.memory-ltm[open] > summary::before{ content:"▸ "; }
.memory-scroll{
  overflow-x:auto; -webkit-overflow-scrolling:touch;
  padding:8px 10px;
}
.memory-scroll::-webkit-scrollbar{ height:6px; }
.memory-scroll::-webkit-scrollbar-thumb{ background:#c9bce4; border-radius:4px; }
.memory-scroll::-webkit-scrollbar-track{ background:#f0eafb; }
.memory-table{
  border-collapse:collapse; width:100%; min-width:560px; font-size:.72rem; line-height:1.75;
}
.memory-table th{
  position:sticky; top:0; background:#5b4a8a; color:#f0ecff;
  padding:6px 10px; text-align:left; font-weight:700; white-space:nowrap;
  border:1px solid #6d5aa8; letter-spacing:.04em;
}
.memory-table td{
  padding:6px 10px; border:1px solid #e0d6f0; color:#4a463d; vertical-align:top;
  background:#fff;
}
.memory-table tr:nth-child(even) td{ background:#faf7fe; }
.memory-table td:first-child{ white-space:nowrap; font-weight:700; color:#7a68a8; }
.memory-table td:nth-child(2){ white-space:nowrap; }
.memory-table td:last-child{ min-width:260px; }
.memory-note{
  margin:8px 4px 2px; padding:8px 12px; border-radius:6px;
  background:#f6f3fb; border:1px solid #e0d6f0;
  font-size:.7rem; color:#7a68a8; line-height:1.8;
}
/* 移动端：记忆面板保持可横滑，标题字号微调 */
@media (max-width:640px){
  details.memory-stm > summary, details.memory-ltm > summary{ font-size:.72rem; }
  .memory-table{ min-width:520px; font-size:.68rem; }
  .memory-table th, .memory-table td{ padding:5px 8px; }
}

/* ---------- 7. 叶栀档案（咖啡暖橙） ---------- */
details.yz-panel{
  margin:10px 0; border:1px solid #e3c8a6; border-radius:8px;
  background:#fbf3e8; overflow:hidden;
  box-shadow:0 1px 6px rgba(194,113,58,.10);
}
details.yz-panel > summary{
  cursor:pointer; padding:11px 16px; list-style:none;
  background:linear-gradient(120deg,#b05f28,#8f4a1e);
  color:#fff3e6; font-size:.86rem; font-weight:700; letter-spacing:.08em;
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
}
details.yz-panel > summary::-webkit-details-marker{ display:none; }
details.yz-panel > summary::before{ content:"▾ "; color:#ffd9a8; }
details.yz-panel[open] > summary::before{ content:"▸ "; }
details.yz-panel > summary .panel-summary-sub{
  margin-left:auto; font-size:.62rem; font-weight:400; letter-spacing:.2em;
  color:#f0c9a0; font-family:Consolas,monospace;
}
details.yz-panel .panel-body{ padding:14px 16px; }
.yz-head{ display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.yz-badge{
  width:60px; height:60px; border-radius:50%; flex-shrink:0;
  object-fit:cover; object-position:center top;
  border:2px solid #e8c9a0; box-shadow:0 2px 10px rgba(194,113,58,.2);
  background:#fbf0e0;
}
.yz-headinfo{ display:flex; flex-direction:column; gap:3px; }
.yz-hname{ font-size:1.1rem; font-weight:800; color:#8a4a1c; letter-spacing:.16em; }
.yz-class{ font-size:.72rem; color:#a97a4e; }
.yz-next{
  display:inline-block; font-size:.68rem; color:#fff;
  background:linear-gradient(120deg,#e8933a,#ffab4a);
  padding:2px 10px; border-radius:10px; letter-spacing:.08em; font-weight:700;
  width:fit-content; box-shadow:0 1px 6px rgba(232,147,58,.3);
}
.yz-status{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.yz-status span{
  font-size:.72rem; color:var(--text); background:var(--surface2);
  border:1px solid var(--line); padding:3px 10px; border-radius:8px;
}
.yz-status b{ color:var(--yz); }
.yz-sub{ display:flex; flex-direction:column; gap:8px; }
.yz-sub .sub-block{ padding:9px 12px; border-radius:6px; }
.yz-sub .sub-block:nth-child(1){ background:#faf7ef; border:1px solid var(--line); }
.yz-sub .sub-block.thoughts{ background:#fbf0e0; border:1px solid #ecd5b8; }
.sub-label{ font-size:.7rem; font-weight:700; color:var(--yz); letter-spacing:.12em; margin-bottom:3px; }
.sub-text{ font-size:.8rem; color:var(--text); line-height:1.8; }

/* ---------- 8. 宋清欢档案（深夜蓝紫） ---------- */
details.sq-panel{
  margin:10px 0; border:1px solid #c3cfe4; border-radius:8px;
  background:#f4f6fb; overflow:hidden;
  box-shadow:0 1px 6px rgba(91,107,140,.10);
}
details.sq-panel > summary{
  cursor:pointer; padding:11px 16px; list-style:none;
  background:linear-gradient(120deg,#4a5a7d,#37425f);
  color:#eef2fb; font-size:.86rem; font-weight:700; letter-spacing:.08em;
  display:flex; align-items:center; gap:8px; flex-wrap:wrap;
}
details.sq-panel > summary::-webkit-details-marker{ display:none; }
details.sq-panel > summary::before{ content:"▾ "; color:#b8c8ea; }
details.sq-panel[open] > summary::before{ content:"▸ "; }
details.sq-panel > summary .panel-summary-sub{
  margin-left:auto; font-size:.62rem; font-weight:400; letter-spacing:.2em;
  color:#a9b8da; font-family:Consolas,monospace;
}
details.sq-panel .panel-body{ padding:14px 16px; }
.sq-head{ display:flex; align-items:center; gap:12px; margin-bottom:10px; }
.sq-badge{
  width:60px; height:60px; border-radius:50%; flex-shrink:0;
  object-fit:cover; object-position:center top;
  border:2px solid #c3cfe4; box-shadow:0 2px 10px rgba(91,107,140,.2);
  background:#eef1f8;
}
.sq-headinfo{ display:flex; flex-direction:column; gap:3px; }
.sq-hname{ font-size:1.1rem; font-weight:800; color:#3d4a6b; letter-spacing:.16em; }
.sq-class{ font-size:.72rem; color:#6d7a99; }
.sq-next{
  display:inline-block; font-size:.68rem; color:#fff;
  background:linear-gradient(120deg,#6d7fae,#4a5a7d);
  padding:2px 10px; border-radius:10px; letter-spacing:.08em; font-weight:700;
  width:fit-content; box-shadow:0 1px 6px rgba(74,90,125,.3);
}
.sq-status{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:10px; }
.sq-status span{
  font-size:.72rem; color:var(--text); background:var(--surface2);
  border:1px solid var(--line); padding:3px 10px; border-radius:8px;
}
.sq-status b{ color:var(--sq); }
.sq-sub{ display:flex; flex-direction:column; gap:8px; }
.sq-sub .sub-block{ padding:9px 12px; border-radius:6px; }
.sq-sub .sub-block:nth-child(1){ background:#faf7ef; border:1px solid var(--line); }
.sq-sub .sub-block.thoughts{ background:#eef1f8; border:1px solid #cdd6e8; }
.sq-panel .sub-label{ color:var(--sq); }

/* ---------- 9. 记录面板 ---------- */
details.record-panel{ border-color:#cbbfe2; background:#f6f3fb; }
details.record-panel > summary{
  background:linear-gradient(120deg,#5b4a8a,#6d5aa8);
  color:#f0ecff;
}
details.record-panel > summary::before{ color:#d5c8ff; }
details.record-panel > summary .panel-summary-sub{ color:#c4b8e8; }
.mem-sec{ margin-bottom:12px; }
.mem-sec:last-child{ margin-bottom:0; }
.mem-sec-label{
  font-size:.7rem; font-weight:700; color:#7a68a8;
  letter-spacing:.12em; margin-bottom:6px;
}
.aff-mini{
  padding:6px 10px; margin-bottom:5px; border-radius:6px;
  background:#f7f9fc; border:1px solid #dbe3ec; border-left:3px solid var(--green);
  font-size:.74rem; color:#4a6272; line-height:1.7;
}
.aff-mini:last-child{ margin-bottom:0; }
.event-row{
  padding:6px 10px; margin-bottom:5px; border-radius:6px;
  background:#f7f9fc; border:1px solid #dbe3ec;
  font-size:.74rem; color:#5a616e; line-height:1.7;
}
.event-row:last-child{ margin-bottom:0; }
.event-time{ color:#2f8fc9; font-weight:700; margin-right:4px; }
.warn-row{
  padding:6px 10px; margin-bottom:5px; border-radius:6px;
  background:#fdf3f3; border:1px solid #eccccc; border-left:3px solid var(--red);
  font-size:.74rem; color:#8f4a4a; line-height:1.7;
}
.warn-row:last-child{ margin-bottom:0; }
.todo-row{
  padding:6px 10px; margin-bottom:5px; border-radius:6px;
  background:#f0f7fb; border:1px solid #cfe0ec; border-left:3px solid var(--cyan);
  font-size:.74rem; color:#4a6272; line-height:1.7;
}
.todo-row:last-child{ margin-bottom:0; }

/* ---------- 10. 选择面板 ---------- */
.choice-panel{
  margin:14px 0; padding:12px 14px; background:#f7f3e9;
  border:1px solid #d6ccb6; border-radius:8px;
  box-shadow:0 1px 6px rgba(90,80,60,.08);
}
.choice-header{ margin-bottom:10px; }
.choice-title{ font-size:.82rem; font-weight:700; color:#2f6f9e; letter-spacing:.08em; }
.choice-list{ display:flex; flex-direction:column; gap:8px; }
.choice-card{
  display:flex; align-items:center; gap:10px; padding:10px 12px;
  border:1px solid var(--line); border-radius:8px; background:#fff;
  cursor:pointer; transition:all .2s ease;
}
.choice-card:hover{ border-color:#a8cfe8; box-shadow:0 2px 10px rgba(47,143,201,.12); }
.choice-card[data-choice="1"]{ border-left:3px solid var(--yz); }
.choice-card[data-choice="2"]{ border-left:3px solid var(--sq); }
.choice-card[data-choice="3"]{ border-left:3px solid var(--pink); }
.choice-card.choice-skip{ border-left:3px dashed #c5bdb0; opacity:.75; }
.choice-left{ flex:1; min-width:0; }
.choice-label{
  display:block; font-size:.66rem; color:var(--yz); font-weight:700;
  letter-spacing:.14em; margin-bottom:2px;
}
.choice-card[data-choice="2"] .choice-label{ color:var(--sq); }
.choice-card[data-choice="3"] .choice-label{ color:var(--pink); }
.choice-card.choice-skip .choice-label{ color:#a89f8d; }
.choice-text{ display:block; font-size:.8rem; color:var(--text); line-height:1.8; }
.choice-arrow{ color:#c5bdb0; font-size:.9rem; }

/* ---------- 11. 移动端适配 ---------- */
@media (max-width:640px){
  .khorra-output{ line-height:1.85; }
  .narrative-p{ font-size:.88rem; line-height:1.95; }
  .inner-monologue{ font-size:.82rem; padding:9px 12px; }
  .yz-msg,.sq-msg,.us-msg{ margin:9px 0; }
  .yz-name,.sq-name,.us-name{ font-size:.7rem; }
  .yz-text,.sq-text{ max-width:96%; font-size:.88rem; padding:7px 12px; }
  .us-text{ max-width:calc(100% - 30px); font-size:.88rem; padding:7px 12px; }
  .npc-name{ font-size:.68rem; }
  .npc-text{ font-size:.86rem; }
  .yz-text,.sq-text,.us-text,.npc-text{ overflow-wrap:break-word; word-break:break-word; }
  .time-header{ padding:10px 12px; }
  .time-row-main{ gap:6px; }
  .time-day{ font-size:.82rem; }
  .time-period{ font-size:.7rem; }
  .time-clock{ font-size:.66rem; padding:1px 8px; }
  .time-round{ font-size:.66rem; padding:1px 8px; }
  .time-row-loc{ font-size:.74rem; }
  .time-row-weather{ font-size:.7rem; }
  .time-row-deadline{ font-size:.7rem; }
  .time-row-affinity{ font-size:.68rem; }
  details.yz-panel > summary,details.sq-panel > summary,details.panel-details > summary{ padding:10px 12px; font-size:.82rem; }
  details.yz-panel .panel-body,details.sq-panel .panel-body,details.panel-details .panel-body{ padding:12px 12px; }
  .yz-head,.sq-head{ gap:10px; }
  .yz-badge,.sq-badge{ width:48px; height:48px; font-size:1.35rem; }
  .yz-hname,.sq-hname{ font-size:.98rem; }
  .yz-class,.sq-class{ font-size:.68rem; }
  .yz-next,.sq-next{ font-size:.64rem; padding:2px 8px; }
  .yz-status,.sq-status{ gap:6px; }
  .yz-status span,.sq-status span{ font-size:.68rem; padding:3px 8px; }
  .sub-label{ font-size:.66rem; }
  .sub-text{ font-size:.78rem; }
  .aff-bar-label{ font-size:.66rem; }
  .aff-state{ font-size:.66rem; }
  .mem-sec{ margin-bottom:10px; }
  .mem-sec-label{ font-size:.66rem; }
  .event-row,.todo-row,.warn-row,.aff-mini{ font-size:.7rem; padding:5px 9px; }
  .choice-panel{ padding:10px 10px; }
  .choice-card{ padding:9px 10px; gap:8px; }
  .choice-label{ font-size:.62rem; }
  .choice-text{ font-size:.78rem; }
  details.cot-check-details > summary{ padding:9px 12px; font-size:.76rem; }
  details.cot-check-details .cot-exec-content{ font-size:.66rem; }
}
@media (max-width:400px){
  .yz-text,.sq-text{ max-width:98%; }
  .us-text{ max-width:calc(100% - 16px); }
  .time-clock{ display:inline-block; margin-top:2px; }
  .yz-status span,.sq-status span{ flex:1 1 42%; }
  .choice-card .choice-arrow{ display:none; }
  details.yz-panel > summary .panel-summary-sub,
  details.sq-panel > summary .panel-summary-sub,
  details.panel-details > summary .panel-summary-sub{ display:none; }
}

/* ---------- 12. 跨平台适配补丁 ---------- */
.khorra-output{
  color:#3d3a33;
  background:rgba(246,242,233,.95) !important;
  border-radius:12px !important;
  padding:10px 12px !important;
  position:relative;
  z-index:1;
}
details.yz-panel > summary{
  color:#fff3e6 !important;
  background:#b05f28 !important;
  background:linear-gradient(120deg,#b05f28,#8f4a1e) !important;
}
details.sq-panel > summary{
  color:#eef2fb !important;
  background:#4a5a7d !important;
  background:linear-gradient(120deg,#4a5a7d,#37425f) !important;
}
details.panel-details > summary{
  color:#f2f6fa !important;
  background:#2e4a6e !important;
  background:linear-gradient(120deg,#2e4a6e,#3a5a80) !important;
}
details.record-panel > summary{
  color:#f0ecff !important;
  background:#5b4a8a !important;
  background:linear-gradient(120deg,#5b4a8a,#6d5aa8) !important;
}
details.cot-check-details{
  background:#2e3d52 !important;
  border:1px solid #42536c !important;
}
details.cot-check-details > summary{
  color:#cfe0f0 !important;
  background:#35465e !important;
}
.time-header{
  color:#eef3f8 !important;
  background:#2e3d52 !important;
  background:linear-gradient(135deg,#3a4a63,#26354a) !important;
}
.narrative-p,.us-text,.yz-text,.sq-text,.npc-text,.sub-text,.choice-text,
.xy-item-name,.xy-order,.event-row,.todo-row,.warn-row,.aff-mini,
.yz-status span,.sq-status span{
  color:#3d3a33;
}
