.qc-reply {
  --qc-ink: #090706;
  --qc-lacquer: #160d0a;
  --qc-lacquer-2: #24120e;
  --qc-cinnabar: #7e2019;
  --qc-cinnabar-bright: #b63b2d;
  --qc-gold: #b98a3f;
  --qc-gold-bright: #e4c17a;
  --qc-gold-dim: #6e4e25;
  --qc-parchment: #d8c7a6;
  --qc-parchment-pale: #eee3cd;
  --qc-text: #eadfc9;
  display: block;
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  overflow: hidden;
  color: var(--qc-text);
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif;
  line-height: 1.65;
  isolation: isolate;
}

.qc-think {
  display: none !important;
}

.qc-court {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: calc(100% - 12px);
  margin: 12px 6px 14px;
  padding: 17px 19px 13px;
  overflow: visible;
  color: #ddcfb7;
  text-align: left;
  border: 1px solid #8e672d;
  border-left: 5px solid #7c211a;
  border-radius: 3px;
  background:
    linear-gradient(110deg, rgba(121,31,23,.18), transparent 22%),
    linear-gradient(180deg, #1d120e 0%, #0d0907 100%);
  box-shadow:
    inset 0 1px 0 rgba(184,139,67,.38),
    inset 0 0 32px rgba(0,0,0,.34),
    0 12px 25px rgba(0,0,0,.38);
}

.qc-court-head {
  position: relative;
  display: flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 32px;
  padding: 0 0 10px;
  border-bottom: 1px solid rgba(207,157,73,.38);
}

.qc-court-title {
  display: inline-flex;
  align-items: center;
  min-width: 0;
  gap: 11px;
  text-align: left;
}

.qc-court-title > i {
  display: inline-grid;
  flex: 0 0 28px;
  place-items: center;
  box-sizing: border-box;
  width: 28px;
  height: 28px;
  color: #f1d594;
  font-size: 13px;
  font-style: normal;
  font-weight: 700;
  border: 1px solid #bc8a3e;
  background: #651a15;
  box-shadow: inset 0 0 0 2px #2a0d09;
}

.qc-court-title > b {
  color: #efd18f;
  font-size: clamp(17px, 2.2vw, 21px);
  font-weight: 700;
  letter-spacing: .2em;
  text-shadow: 0 1px 0 #3e1c0e;
}

.qc-court-head > small {
  flex: 0 0 auto;
  color: #ad9369;
  font-size: 11px;
  letter-spacing: .08em;
}

.qc-events {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0;
  padding: 0;
}

.qc-event {
  position: relative;
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: start;
  gap: 11px;
  min-width: 0;
  padding: 12px 0;
  border: 0;
  border-bottom: 1px solid rgba(172,130,62,.22);
  background: transparent;
}

.qc-event-mark {
  display: grid;
  place-items: center;
  box-sizing: border-box;
  width: 32px;
  min-height: 32px;
  padding: 3px;
  color: #d8b367;
  font-size: 11px;
  line-height: 1.2;
  text-align: center;
  border: 1px solid #70502a;
  background: #16100b;
}

.qc-event-main {
  display: block;
  min-width: 0;
}

.qc-event-main > b {
  display: block;
  margin: 0;
  color: #e3c78e;
  font-size: 14px;
  letter-spacing: .04em;
}

.qc-event-main > span {
  display: block;
  margin-top: 4px;
  color: #c7b9a4;
  font-size: 12px;
  line-height: 1.65;
}

.qc-event-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 5px 12px;
  margin-top: 6px;
  color: #8e795d;
  font-size: 10px;
  line-height: 1.45;
}

.qc-event-meta > em {
  font-style: normal;
}

.qc-event-level {
  align-self: center;
  padding: 3px 6px;
  color: #ca7562;
  font-size: 10px;
  line-height: 1;
  border: 1px solid #683024;
  background: #1b0d0a;
}

:is(.qc-empty, empty) {
  margin: 8px 0 0;
  padding: 10px 11px;
  color: #927e64;
  font-size: 12px;
  text-align: left;
  border-left: 2px solid #6f4d23;
  background: rgba(255,255,255,.015);
}

.qc-court-summary {
  display: flex;
  box-sizing: border-box;
  justify-content: space-between;
  gap: 10px;
  padding-top: 10px;
  color: #9e8968;
  font-size: 11px;
  line-height: 1.55;
}

.qc-court-situation,
.qc-court-next {
  min-width: 0;
}

.qc-court-situation > b {
  margin-right: .8em;
  color: #c6a35e;
  font-weight: 600;
}

.qc-court-next {
  text-align: right;
}

.qc-text {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: calc(100% - 8px);
  margin: 10px 4px 17px;
  padding: 34px clamp(21px, 5vw, 50px) 36px;
  overflow: hidden;
  color: #e8ddc8;
  font-size: clamp(15px, 1.55vw, 18px);
  line-height: 1.95;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: left;
  border: 1px solid rgba(180,137,66,.5);
  border-radius: 5px;
  background:
    linear-gradient(90deg, rgba(138,92,38,.17) 0 9px, transparent 9px calc(100% - 9px), rgba(138,92,38,.17) calc(100% - 9px)),
    radial-gradient(circle at 8% 14%, rgba(187,138,61,.08) 0 2px, transparent 3px 42px),
    radial-gradient(circle at 92% 82%, rgba(187,138,61,.07) 0 2px, transparent 3px 48px),
    linear-gradient(102deg, #100b09, #1a120e 48%, #0d0908);
  box-shadow:
    inset 16px 0 28px rgba(0,0,0,.4),
    inset -16px 0 28px rgba(0,0,0,.4),
    inset 0 1px 0 rgba(255,225,163,.12),
    0 12px 25px rgba(0,0,0,.36);
}

.qc-text::before,
.qc-text::after {
  content: "";
  position: absolute;
  left: 14px;
  width: calc(100% - 28px);
  height: 8px;
  background:
    linear-gradient(90deg, transparent, #8d672e 9%, #d0a659 18%, #604019 48%, #d0a659 82%, #8d672e 91%, transparent),
    linear-gradient(90deg, transparent 2%, #411b13 2% 98%, transparent 98%);
  border-radius: 50%;
  opacity: .86;
}

.qc-text::before { top: 10px; }
.qc-text::after { bottom: 10px; transform: rotate(180deg); }

.qc-text { text-shadow: 0 1px 1px rgba(0,0,0,.72); }

.qc-text > para {
  display: block;
  margin: 0 0 .9em;
  text-indent: 2em;
  white-space: pre-wrap;
}

.qc-text > para:last-child {
  margin-bottom: 0;
}

.qc-reply > p:empty,
.qc-reply > br {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.qc-panel {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: calc(100% - 10px);
  margin: 8px 5px;
  overflow: visible;
  color: #ded2bc;
  border: 1px solid rgba(122,92,51,.55);
  border-radius: 3px;
  background: #0c0907;
  box-shadow: 0 6px 15px rgba(0,0,0,.32), inset 0 0 18px rgba(0,0,0,.3);
}

.qc-summary {
  position: relative;
  z-index: 2;
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 31px minmax(0, 1fr) 31px;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 40px;
  max-height: 42px;
  padding: 5px 8px;
  overflow: hidden;
  color: #e4d0a1;
  text-align: left;
  list-style: none;
  cursor: pointer;
  user-select: none;
  border: 1px solid rgba(158,122,67,.48);
  border-left-width: 5px;
  border-right-width: 5px;
  border-left-color: #70251d;
  border-right-color: #70251d;
  border-radius: 2px;
  background:
    radial-gradient(ellipse at 50% -30%, rgba(195,151,77,.07), transparent 58%),
    linear-gradient(90deg, #14100c, #211810 45%, #18120d 72%, #110e0b);
  box-shadow:
    inset 0 1px 0 rgba(255,225,168,.09),
    inset 0 -1px 0 rgba(114,81,39,.3),
    0 4px 10px rgba(0,0,0,.28);
  transition: border-color .18s ease, box-shadow .18s ease;
}

.qc-summary::marker,
.qc-character-tab::marker,
.qc-adult-tab::marker,
.qc-roster-tab::marker,
.qc-memory-tab::marker { content: ""; }

.qc-summary::-webkit-details-marker,
.qc-character-tab::-webkit-details-marker,
.qc-adult-tab::-webkit-details-marker,
.qc-roster-tab::-webkit-details-marker,
.qc-memory-tab::-webkit-details-marker { display: none; }

.qc-summary::before,
.qc-summary::after {
  content: "";
  position: absolute;
  top: 7px;
  bottom: 7px;
  width: 1px;
  background: linear-gradient(180deg, transparent, rgba(199,153,74,.48), transparent);
  pointer-events: none;
}

.qc-summary::before { left: 39px; }
.qc-summary::after { right: 39px; }

.qc-summary:hover {
  border-color: rgba(196,151,76,.7);
  border-left-color: #8a3024;
  border-right-color: #8a3024;
  box-shadow: inset 0 1px 0 rgba(255,230,177,.14), 0 6px 15px rgba(0,0,0,.34);
}

.qc-summary:focus-visible,
.qc-character-tab:focus-visible,
.qc-adult-tab:focus-visible,
.qc-roster-tab:focus-visible,
.qc-memory-tab:focus-visible {
  outline: 2px solid #d7aa5d;
  outline-offset: 2px;
}

.qc-num {
  display: grid;
  box-sizing: border-box;
  place-items: center;
  width: 27px;
  height: 27px;
  color: #e6c67f;
  font-size: 12px;
  line-height: 1;
  border: 1px solid #8e6733;
  border-radius: 0;
  background: linear-gradient(145deg, #321711, #140c09);
  box-shadow: inset 0 0 0 2px rgba(7,5,4,.7);
  clip-path: none;
}

.qc-title {
  min-width: 0;
  color: #dcc394;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .18em;
  line-height: 1;
  text-align: left;
  text-shadow: 0 1px 0 #25120b;
}

.qc-seal {
  display: grid;
  box-sizing: border-box;
  place-items: center;
  width: 27px;
  height: 27px;
  color: #d7b46e;
  border: 1px solid #8b6432;
  border-radius: 2px;
  background: linear-gradient(145deg, #20110d, #100907);
  box-shadow: inset 0 0 0 2px rgba(91,34,24,.48);
}

.qc-seal::after {
  content: "启";
  color: #d7b46e;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
}

.qc-panel[open] > .qc-summary {
  border-bottom-color: #9c7137;
  border-left-color: #872d23;
  border-right-color: #872d23;
  background:
    radial-gradient(ellipse at 50% -20%, rgba(181,131,58,.09), transparent 60%),
    linear-gradient(90deg, #21120e, #2a1911 46%, #1a100d);
}

.qc-panel[open] > .qc-summary .qc-seal::after {
  content: "合";
  color: #d6543d;
}

.qc-panel-body {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 1fr;
  gap: 10px;
  width: 100%;
  padding: 16px clamp(12px, 2.5vw, 25px) 20px;
  overflow: visible;
  color: #d5cab6;
  border-top: 1px solid rgba(196,149,71,.2);
  background:
    radial-gradient(circle at 8% 9%, rgba(157,104,43,.06), transparent 24%),
    linear-gradient(145deg, #110c09, #080605 74%);
  animation: none;
}

.qc-person-card,
.qc-family-overview,
.qc-character-body,
.qc-faction-list,
.qc-memory-subbody,
.qc-adult-body {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 1fr;
  gap: 0;
  min-width: 0;
}

.qc-person-card {
  padding: clamp(12px, 2.2vw, 20px);
  border: 1px solid rgba(172,129,61,.3);
  border-radius: 3px;
  background:
    linear-gradient(90deg, rgba(112,38,27,.13), transparent 22%),
    linear-gradient(145deg, rgba(43,27,18,.84), rgba(12,8,6,.94));
  box-shadow: inset 0 1px 0 rgba(255,229,179,.05), 0 8px 20px rgba(0,0,0,.22);
}

.qc-person-head {
  display: flex;
  box-sizing: border-box;
  align-items: center;
  gap: 12px;
  min-width: 0;
  padding: 5px 4px 13px;
  margin-bottom: 5px;
  border-bottom: 1px solid rgba(190,145,70,.22);
}

.qc-monogram {
  display: grid;
  box-sizing: border-box;
  flex: 0 0 48px;
  height: 48px;
  place-items: center;
  color: #e4c37b;
  font-size: 20px;
  font-weight: 700;
  border: 1px solid #8d6735;
  border-radius: 0;
  background:
    linear-gradient(135deg, rgba(126,42,30,.34), transparent),
    #180e0a;
  box-shadow: inset 0 0 0 3px rgba(6,4,3,.66), 0 5px 12px rgba(0,0,0,.25);
  clip-path: none;
}

.qc-person-title {
  display: grid;
  min-width: 0;
  gap: 4px;
}

.qc-person-title > b {
  color: #e6cd9b;
  font-size: clamp(16px, 2vw, 21px);
  letter-spacing: .11em;
}

.qc-person-title > span {
  color: #b6a17d;
  font-size: 11px;
  letter-spacing: .08em;
}

.qc-person-title > em {
  color: #8f7858;
  font-size: 10px;
  font-style: normal;
  overflow-wrap: anywhere;
}

:is(.qc-row, row),
.qc-status,
:is(.qc-progress, bar) {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
}

:is(.qc-row, row) {
  display: grid;
  grid-template-columns: minmax(82px, .2fr) minmax(0, 1fr);
  align-items: start;
  gap: 11px;
  padding: 8px 9px;
  border-bottom: 1px solid rgba(184,138,64,.13);
  background: linear-gradient(90deg, rgba(154,101,39,.045), transparent 76%);
}

:is(.qc-row, row) > b,
.qc-status > b {
  color: #b48e53;
  font-size: 11px;
  letter-spacing: .08em;
}

:is(.qc-row, row) > em,
.qc-status > em {
  min-width: 0;
  color: #d5c9b5;
  font-size: 12px;
  font-style: normal;
  line-height: 1.65;
  overflow-wrap: anywhere;
}

:is(.qc-progress, bar) {
  padding: 9px;
  border-bottom: 1px solid rgba(184,138,64,.14);
}

:is(.qc-progress-head, barhead) {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 7px;
}

:is(.qc-progress-head, barhead) > b {
  color: #b78f53;
  font-size: 11px;
  letter-spacing: .08em;
}

:is(.qc-progress-head, barhead) > em {
  color: #c7b593;
  font-size: 10px;
  font-style: normal;
  text-align: right;
}

:is(.qc-progress, bar) > meter {
  display: block;
  width: 100%;
  height: 7px;
  overflow: hidden;
  border: 0;
  border-radius: 99px;
  background: #1b140f;
  appearance: none;
}

:is(.qc-progress, bar) > meter::-webkit-meter-bar {
  border: 1px solid rgba(150,110,51,.34);
  border-radius: 99px;
  background: #1b140f;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.7);
}

:is(.qc-progress, bar) > meter::-webkit-meter-optimum-value,
:is(.qc-progress, bar) > meter::-webkit-meter-suboptimum-value,
:is(.qc-progress, bar) > meter::-webkit-meter-even-less-good-value {
  border-radius: 99px;
  background: linear-gradient(90deg, #6e251d, #aa6532 60%, #d1a65c);
}

.qc-status-list {
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 1fr;
  gap: 6px;
  margin: 9px 0;
}

.qc-status {
  display: grid;
  grid-template-columns: minmax(82px, .2fr) minmax(0, 1fr);
  gap: 11px;
  padding: 8px 9px;
  border: 1px solid rgba(161,119,54,.21);
  border-left: 3px solid #76562d;
  background: rgba(255,255,255,.012);
}

:is(.qc-tag, tag) {
  display: inline-flex;
  align-items: center;
  padding: 2px 7px;
  color: #d2b571;
  font-style: normal;
  border: 1px solid rgba(185,137,64,.36);
  border-radius: 2px;
  background: rgba(119,45,29,.17);
}

.qc-quote {
  box-sizing: border-box;
  margin-top: 11px;
  padding: 12px 14px;
  color: #b9a68a;
  font-size: 12px;
  font-style: italic;
  line-height: 1.7;
  border-left: 3px solid #76291f;
  background: linear-gradient(90deg, rgba(110,38,27,.18), transparent);
}

.qc-character,
.qc-roster,
.qc-memory-sub,
.qc-adult {
  position: relative;
  display: block;
  box-sizing: border-box;
  min-width: 0;
  overflow: visible;
  border: 1px solid rgba(161,120,57,.3);
  border-radius: 3px;
  background: #0d0907;
}

.qc-character-tab,
.qc-roster-tab,
.qc-memory-tab,
.qc-adult-tab {
  display: grid;
  box-sizing: border-box;
  align-items: center;
  width: 100%;
  min-width: 0;
  color: #d3bd91;
  list-style: none;
  cursor: pointer;
  user-select: none;
  background: linear-gradient(90deg, rgba(112,39,28,.2), rgba(52,31,19,.22), transparent);
}

.qc-character-tab {
  grid-template-columns: 28px minmax(0, 1fr) auto;
  gap: 9px;
  min-height: 38px;
  padding: 5px 9px;
}

.qc-character-mark {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  color: #dfbd75;
  font-size: 11px;
  border: 1px solid #80602f;
  background: #1e100c;
}

.qc-character-tab > b {
  min-width: 0;
  color: #dec694;
  font-size: 13px;
  letter-spacing: .11em;
}

.qc-character-tab > em {
  color: #8f7a5c;
  font-size: 10px;
  font-style: normal;
  text-align: right;
}

.qc-character[open] > .qc-character-tab,
.qc-roster[open] > .qc-roster-tab,
.qc-memory-sub[open] > .qc-memory-tab,
.qc-adult[open] > .qc-adult-tab {
  color: #e4ca95;
  border-bottom: 1px solid rgba(185,139,66,.28);
  background: linear-gradient(90deg, rgba(128,43,30,.28), rgba(76,48,25,.17), transparent);
}

.qc-character-body {
  padding: clamp(11px, 2vw, 18px);
  overflow: visible;
}

.qc-adult {
  margin-top: 11px;
  border-color: rgba(125,45,37,.5);
}

.qc-adult-tab {
  grid-template-columns: minmax(0, 1fr) auto;
  min-height: 34px;
  padding: 6px 9px;
  color: #c89583;
  letter-spacing: .15em;
}

.qc-adult-tab > span {
  display: grid;
  width: 21px;
  height: 21px;
  place-items: center;
  color: #e7b8a5;
  font-size: 9px;
  border: 1px solid #87483c;
  border-radius: 50%;
}

.qc-adult-body {
  padding: 7px 11px 11px;
  background: linear-gradient(145deg, rgba(88,30,25,.17), rgba(13,8,7,.9));
}

.qc-dynasty-media {
  position: relative;
  box-sizing: border-box;
  margin: 0 0 12px;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(184,137,63,.52);
  border-radius: 3px;
  background: #080605;
  box-shadow: 0 10px 24px rgba(0,0,0,.38), inset 0 0 0 1px rgba(226,185,105,.12);
}

.qc-dynasty-image {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  aspect-ratio: 4 / 3;
  color: transparent;
  font-size: 0;
  border-radius: 0;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  filter: sepia(.06) saturate(.9) contrast(1.06) brightness(.88);
}

.qc-dynasty-image[data-stage="☀"] {
  background-image: url("https://img.remit.ee/api/file/BQACAgUAAyEGAASHRsPbAAEY059qdz-SF44lIeuHxOMPAYLTPgIhvQACuSoAAvmbuFdmZ18alpy4ej0E.png");
}

.qc-dynasty-image[data-stage="⚔"] {
  background-image: url("https://img.remit.ee/api/file/BQACAgUAAyEGAASHRsPbAAEY06Jqdz_TfryK1NeGFBTM1JF-Qr4arAACvCoAAvmbuFen8-tHZ-G67z0E.png");
}

.qc-dynasty-image[data-stage="☄"] {
  background-image: url("https://img.remit.ee/api/file/BQACAgUAAyEGAASHRsPbAAEY06Rqdz_zkEWBti7_8YMXdjD8u4QloQACvioAAvmbuFc6mOfyD-OOEj0E.png");
}

.qc-dynasty-media > figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 34px;
  padding: 14px 14px 7px;
  color: #f0d69c;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .16em;
  text-align: left;
  background: linear-gradient(180deg, transparent, rgba(7,4,3,.9) 58%, #080605);
  text-shadow: 0 1px 2px #000;
}

.qc-dynasty > .qc-panel-body {
  gap: 0;
}

.qc-dynasty > .qc-panel-body > :is(.qc-row, row) {
  grid-template-columns: minmax(88px,.2fr) minmax(0,1fr);
  gap: 0;
  margin: 0;
  padding: 0;
  border: 0;
  border-right: 1px solid rgba(164,122,56,.25);
  border-bottom: 1px solid rgba(164,122,56,.25);
  border-left: 3px solid #5d2119;
  background: linear-gradient(90deg, rgba(111,42,27,.1), rgba(255,255,255,.01) 38%, transparent);
}

.qc-dynasty > .qc-panel-body > :is(.qc-row, row):first-of-type {
  border-top: 1px solid rgba(184,138,64,.3);
  border-left-color: #a87936;
  background: linear-gradient(90deg, rgba(139,83,32,.17), rgba(73,37,19,.08) 48%, transparent);
}

.qc-dynasty > .qc-panel-body > :is(.qc-row, row) > b {
  display: flex;
  align-items: center;
  padding: 9px 11px;
  border-right: 1px solid rgba(164,122,56,.2);
  background: rgba(0,0,0,.13);
}

.qc-dynasty > .qc-panel-body > :is(.qc-row, row) > em {
  display: flex;
  align-items: center;
  padding: 9px 12px;
}

.qc-dynasty > .qc-panel-body > :is(.qc-row, row):first-of-type > em {
  color: #e1be76;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
}

.qc-dynasty > .qc-panel-body > .qc-faction-list {
  margin-top: 15px;
}

.qc-faction-list {
  gap: 10px;
  margin-top: 4px;
}

.qc-faction {
  position: relative;
  display: grid;
  box-sizing: border-box;
  grid-template-columns: 1fr;
  min-width: 0;
  padding: clamp(11px, 2vw, 18px);
  overflow: visible;
  border: 1px solid rgba(168,126,60,.27);
  border-left: 4px solid #80602f;
  border-radius: 3px;
  background:
    linear-gradient(100deg, rgba(120,74,29,.12), transparent 35%),
    linear-gradient(145deg, #17100c, #0a0706);
  box-shadow: inset 0 1px 0 rgba(255,224,165,.045), 0 6px 16px rgba(0,0,0,.2);
}

.qc-faction-military {
  border-left-color: #844129;
  background:
    linear-gradient(100deg, rgba(126,48,28,.14), transparent 35%),
    linear-gradient(145deg, #170e0b, #090605);
}

.qc-faction-eunuch {
  border-left-color: #64533c;
  background:
    linear-gradient(100deg, rgba(81,69,48,.13), transparent 35%),
    linear-gradient(145deg, #14110d, #080706);
}

.qc-faction-head {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
  margin-bottom: 7px;
  padding: 0 3px 10px;
  border-bottom: 1px solid rgba(184,138,66,.22);
}

.qc-faction-head > span {
  display: grid;
  flex: 0 0 34px;
  height: 34px;
  place-items: center;
  color: #dfbd74;
  font-size: 15px;
  border: 1px solid #866330;
  border-radius: 0;
  background: #1a0f0b;
  clip-path: none;
}

.qc-faction-head > div {
  display: grid;
  min-width: 0;
  gap: 3px;
}

.qc-faction-head b {
  color: #dec38e;
  font-size: 15px;
  letter-spacing: .11em;
}

.qc-faction-head em {
  color: #8f7b5d;
  font-size: 10px;
  font-style: normal;
}

.qc-family-overview {
  padding: 2px 5px 9px;
  border: 1px solid rgba(164,122,56,.22);
  background: rgba(255,255,255,.012);
}

.qc-roster-tab,
.qc-memory-tab {
  grid-template-columns: 26px minmax(0, 1fr) auto;
  gap: 8px;
  min-height: 37px;
  padding: 6px 9px;
}

.qc-memory-tab {
  grid-template-columns: minmax(0, 1fr);
  color: #cdb487;
  letter-spacing: .1em;
}

.qc-roster-tab > span {
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  color: #d9b56d;
  font-size: 10px;
  border: 1px solid #775a31;
}

.qc-roster-tab > b {
  min-width: 0;
  color: #d5bd8c;
  font-size: 12px;
  letter-spacing: .09em;
}

.qc-roster-tab > em {
  color: #86755d;
  font-size: 9px;
  font-style: normal;
  text-align: right;
}

.qc-roster-body {
  box-sizing: border-box;
  min-width: 0;
  padding: 9px;
  overflow: hidden;
}

:is(.qc-table-wrap, tablewrap) {
  display: block;
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-color: #72532d #15100c;
  scrollbar-width: thin;
}

.qc-roster-table,
.qc-memory-table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
  table-layout: auto;
  color: #cbbda7;
  font-size: 10px;
  line-height: 1.55;
}

.qc-memory-table { min-width: 620px; }

.qc-roster-table th,
.qc-roster-table td,
.qc-memory-table th,
.qc-memory-table td {
  padding: 7px 8px;
  text-align: left;
  vertical-align: top;
  overflow-wrap: anywhere;
  border: 1px solid rgba(170,127,59,.21);
}

.qc-roster-table th,
.qc-memory-table th {
  color: #d0ae68;
  font-weight: 700;
  white-space: nowrap;
  background: rgba(113,67,28,.17);
}

.qc-roster-table tr:nth-child(even) td,
.qc-memory-table tr:nth-child(even) td { background: rgba(255,255,255,.012); }

.qc-memory-subbody {
  gap: 0;
  padding: 9px;
  overflow: visible;
}

.qc-memory-heading {
  margin: 9px 0 6px;
  padding: 6px 8px;
  color: #c6a45f;
  font-size: 11px;
  letter-spacing: .12em;
  border-left: 3px solid #72562e;
  background: linear-gradient(90deg, rgba(122,78,29,.13), transparent);
}

.qc-advice .pga {
  display: flex;
  box-sizing: border-box;
  flex-direction: column;
  gap: 7px;
  min-width: 0;
  width: 100%;
}

.qc-advice .pga > pre,
.qc-advice .pga > div {
  position: relative;
  box-sizing: border-box;
  min-width: 0;
  margin: 0;
  overflow: hidden;
  color: #d4c7b3;
  border: 1px solid rgba(155,118,64,.36);
  border-left: 3px solid #7b2a21;
  border-radius: 3px;
  background:
    linear-gradient(90deg, rgba(113,39,28,.11), transparent 25%),
    #100d0a;
  box-shadow: 0 4px 11px rgba(0,0,0,.2);
}

.qc-advice .pga > pre {
  padding: 10px 13px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font: 500 12px/1.65 "Noto Serif SC", "Songti SC", serif;
}

.qc-advice .pga > pre:nth-of-type(4),
.qc-advice .pga > div:nth-child(4) { border-left-color: #a03b2d; }

.qc-advice .pga > pre:nth-of-type(5),
.qc-advice .pga > div:nth-child(5) { border-left-color: #695433; }

.qc-advice .pga > div {
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  grid-template-rows: minmax(50px, auto);
}

.qc-advice .pga > div > div:first-child {
  position: static;
  display: flex;
  grid-column: 1;
  grid-row: 1;
  align-items: center;
  justify-content: center;
  min-width: 0;
  min-height: 50px;
  padding: 0;
  color: #c89b50;
  border-right: 1px solid rgba(155,118,64,.32);
  background: #17110d;
}

.qc-advice .pga > div > pre {
  position: static;
  display: flex;
  grid-column: 2;
  grid-row: 1;
  align-items: center;
  min-width: 0;
  min-height: 50px;
  margin: 0;
  padding: 10px 48px 10px 13px;
  overflow: hidden;
  white-space: pre-wrap;
  background: transparent;
  border: 0;
}

.qc-advice .pga pre code {
  display: block;
  min-width: 0;
  width: 100%;
  padding: 0;
  color: #d4c7b3;
  font: 500 12px/1.65 "Noto Serif SC", "Songti SC", serif;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  background: transparent;
}

.qc-advice .pga > div button {
  position: absolute;
  z-index: 3;
  top: 50%;
  right: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  min-width: 30px;
  height: 28px;
  min-height: 28px;
  margin: 0;
  padding: 0;
  color: #cba45f;
  font-size: 0;
  border: 1px solid rgba(185,139,66,.4);
  border-radius: 3px;
  background: #21150f;
  transform: translateY(-50%);
  cursor: pointer;
}

.qc-advice .pga > div button::after {
  content: "";
  font-size: 0;
}

.qc-advice .pga > div button:hover,
.qc-advice .pga > div button:focus-visible {
  color: #f0d59b;
  border-color: #c99a50;
  outline: none;
  box-shadow: 0 0 0 2px rgba(166,105,42,.2);
}

/* riliChat 在平台中生成的真实代码块结构。 */
.qc-advice .pga > pre.rili-code-block {
  position: relative !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

.qc-advice .pga > pre.rili-code-block > .rili-code-block__inner {
  position: static !important;
  display: grid !important;
  grid-template-columns: 40px minmax(0, 1fr) !important;
  grid-template-rows: minmax(50px, auto) !important;
  min-width: 0 !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__header {
  position: static !important;
  display: flex !important;
  grid-column: 1 !important;
  grid-row: 1 !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  color: #c89b50 !important;
  border: 0 !important;
  border-right: 1px solid rgba(155,118,64,.32) !important;
  background: #17110d !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__label {
  display: inline-flex !important;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font: 700 11px/1 Consolas, monospace !important;
  background: transparent !important;
  border: 0 !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__actions,
.qc-advice .pga > pre.rili-code-block .rili-code-block__action-item,
.qc-advice .pga > pre.rili-code-block .tooltip-container {
  position: static !important;
  display: block !important;
  width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button {
  position: absolute !important;
  z-index: 3 !important;
  top: 50% !important;
  right: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  min-width: 30px !important;
  height: 30px !important;
  min-height: 30px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #cba45f !important;
  font-size: 0 !important;
  border: 1px solid rgba(185,139,66,.4) !important;
  border-radius: 3px !important;
  background: #21150f !important;
  opacity: .88 !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button::after {
  content: "";
  font-size: 0;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button:hover,
.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button:focus-visible,
.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button[data-copied="true"] {
  color: #f0d59b !important;
  border-color: #c99a50 !important;
  opacity: 1 !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(166,105,42,.2) !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__copy-button[data-copied="true"]::after {
  content: "";
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__body {
  position: static !important;
  display: flex !important;
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-items: center !important;
  min-width: 0 !important;
  min-height: 50px !important;
  margin: 0 !important;
  padding: 10px 48px 10px 13px !important;
  overflow: hidden !important;
  color: #d4c7b3 !important;
  background: transparent !important;
  border: 0 !important;
}

.qc-advice .pga > pre.rili-code-block .rili-code-block__body > code {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit !important;
  font: 500 12px/1.65 "Noto Serif SC", "Songti SC", serif !important;
  white-space: pre-wrap !important;
  overflow-wrap: anywhere !important;
  background: transparent !important;
  border: 0 !important;
}

.qc-reply :is(.tip, tip) {
  display: none;
  position: absolute;
  left: 0;
  bottom: calc(100% + 6px);
  z-index: 2147483646;
  box-sizing: border-box;
  min-width: 150px;
  max-width: min(260px, calc(100vw - 24px));
  padding: 9px 11px;
  color: #b8aa94;
  white-space: normal;
  overflow-wrap: anywhere;
  pointer-events: none;
  border: 1px solid #a77b3b;
  border-radius: 3px;
  background:
    linear-gradient(145deg, rgba(91,34,26,.2), transparent 45%),
    #17110e;
  box-shadow: 0 13px 32px rgba(0,0,0,.56);
}

.qc-reply :is(.tip, tip) > b {
  display: block;
  margin-bottom: 4px;
  color: #d3aa61;
  font-size: 11px;
  letter-spacing: .06em;
}

.qc-reply :is(.tip, tip) > em {
  display: block;
  color: #b8aa94;
  font-size: 10px;
  font-style: normal;
  line-height: 1.55;
}

.qc-reply :is(.qc-row, row):hover > :is(.tip, tip),
.qc-reply :is(.qc-progress, bar):hover > :is(.tip, tip),
.qc-reply .qc-status:hover > :is(.tip, tip),
.qc-reply :is(.qc-tag, tag):hover > :is(.tip, tip),
.qc-reply :is(.qc-row, row):focus-within > :is(.tip, tip),
.qc-reply :is(.qc-progress, bar):focus-within > :is(.tip, tip),
.qc-reply .qc-status:focus-within > :is(.tip, tip) {
  display: block;
}

.qc-reply,
.qc-panel,
.qc-panel-body,
.qc-person-card,
.qc-character,
.qc-character-body,
.qc-faction,
.qc-family-overview,
.qc-memory-sub,
.qc-memory-subbody {
  overflow: visible;
}

@supports selector(.is-assistant:has(.qc-reply :is(.tip, tip))) {
  .qc-panel-body:has(:is(.tip, tip)):hover {
    position: relative;
    z-index: 3;
  }

  #customized-answer-content:has(.qc-reply) {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #customized-answer-content:has(.qc-reply) > :has(.qc-reply),
  #customized-answer-content:has(.qc-reply) .markdown-body:has(.qc-reply) {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  #customized-answer-content:has(.qc-reply) .qc-reply {
    box-sizing: border-box !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  #customized-answer-content:has(.qc-reply) .qc-reply > .qc-court {
    width: calc(100% - 12px) !important;
    margin: 12px 6px 14px !important;
  }

  #customized-answer-content:has(.qc-reply) .qc-reply > .qc-text {
    width: calc(100% - 8px) !important;
    margin: 10px 4px 17px !important;
  }

  #customized-answer-content:has(.qc-reply) .qc-reply > details.qc-panel {
    width: calc(100% - 10px) !important;
    margin: 8px 5px !important;
  }

  .is-assistant:has(.qc-reply :is(.tip, tip)):hover,
  #customized-answer-content:has(.qc-reply :is(.tip, tip)):hover,
  .mufy_ai_message_bubble:has(.qc-reply :is(.tip, tip)):hover {
    position: relative;
    z-index: 2147483000;
    overflow: visible;
  }

  .qc-panel:has(:is(.tip, tip)):hover,
  .qc-character:has(:is(.tip, tip)):hover,
  .qc-faction:has(:is(.tip, tip)):hover,
  .qc-memory-sub:has(:is(.tip, tip)):hover {
    z-index: 2147482000;
    overflow: visible;
  }
}

@keyframes qc-gold-breathe {
  0%, 100% { filter: brightness(.96); }
  50% { filter: brightness(1.06); }
}

@media (max-width: 620px) {
  .qc-court { width: calc(100% - 8px); margin-inline: 4px; padding: 15px 13px 12px; }
  .qc-court-head { align-items: flex-start; flex-direction: row; gap: 8px; }
  .qc-court-head > small { max-width: 44%; text-align: right; }
  .qc-court-title { gap: 8px; }
  .qc-court-title > b { letter-spacing: .13em; }
  .qc-event { grid-template-columns: 32px minmax(0, 1fr); gap: 9px; }
  .qc-event-main { padding-right: 31px; }
  .qc-event-level { position: absolute; top: 13px; right: 0; }
  .qc-event-meta { gap: 4px 8px; }
  .qc-court-summary { display: block; }
  .qc-court-next { display: block; margin-top: 3px; text-align: left; }
  .qc-text { width: calc(100% - 4px); margin-inline: 2px; padding: 30px 19px 32px; }
  .qc-panel { width: calc(100% - 6px); margin-inline: 3px; }
  .mufy_ai_message_bubble:has(.qc-reply) .qc-reply > .qc-court,
  #customized-answer-content:has(.qc-reply) .qc-reply > .qc-court { width: calc(100% - 8px) !important; margin-inline: 4px !important; }
  .mufy_ai_message_bubble:has(.qc-reply) .qc-reply > .qc-text,
  #customized-answer-content:has(.qc-reply) .qc-reply > .qc-text { width: calc(100% - 4px) !important; margin-inline: 2px !important; }
  .mufy_ai_message_bubble:has(.qc-reply) .qc-reply > details.qc-panel,
  #customized-answer-content:has(.qc-reply) .qc-reply > details.qc-panel { width: calc(100% - 6px) !important; margin-inline: 3px !important; }
  .qc-summary { grid-template-columns: 27px minmax(0, 1fr) 27px; gap: 7px; padding-inline: 6px; }
  .qc-summary::before { left: 34px; }
  .qc-summary::after { right: 34px; }
  .qc-title { font-size: 13px; letter-spacing: .14em; }
  .qc-num, .qc-seal { width: 25px; height: 25px; }
  .qc-panel-body { grid-template-columns: 1fr; padding: 12px 9px 15px; }
  .qc-person-card, .qc-character-body, .qc-faction { padding: 11px; }
  .qc-person-head { align-items: flex-start; gap: 9px; }
  .qc-monogram { flex-basis: 40px; height: 40px; font-size: 17px; }
  .qc-person-title > b { font-size: 16px; }
  :is(.qc-row, row), .qc-status { grid-template-columns: minmax(70px, .27fr) minmax(0, 1fr); gap: 8px; padding-inline: 7px; }
  .qc-character-tab { grid-template-columns: 26px minmax(0, 1fr); }
  .qc-character-tab > em { grid-column: 2; text-align: left; }
  .qc-roster-tab { grid-template-columns: 24px minmax(0, 1fr); }
  .qc-roster-tab > em { grid-column: 2; text-align: left; }
  :is(.qc-table-wrap, tablewrap) { max-width: 100%; overflow-x: auto; }
  .qc-reply :is(.tip, tip) { left: 0; max-width: min(240px, calc(100vw - 24px)); }
  .qc-advice .pga > div,
  .qc-advice .pga > pre.rili-code-block > .rili-code-block__inner { grid-template-columns: 34px minmax(0, 1fr) !important; }
  .qc-advice .pga > div > pre,
  .qc-advice .pga > pre.rili-code-block .rili-code-block__body { padding-right: 43px !important; }
}

@media (prefers-reduced-motion: reduce) {
  .qc-summary,
  .qc-panel-body,
  .qc-advice .pga > pre,
  .qc-advice .pga > div {
    animation: none;
    transition: none;
  }
}

/**
 * 《权臣模拟器》· 平台壳层 · rili版本 · 权臣宫廷换肤
 * 底稿：严格沿用《全民公路求生》rili平台结构，仅替换宫廷配色与题签
 *
 * 用法：先贴 内置CSS.css，再追加本文件（与风月全站壳二选一）
 * 配色：玄墨 #080605 · 御案 #17100c · 宫墙 #6f1e18 · 金笺 #ded0b6
 */

/* ========== 主区：玄色宫绢 + 暗金边光 ========== */
.w-full.h-full.relative.bg-background {
  background:
    radial-gradient(circle at 9% 8%, rgba(185, 140, 66, 0.11), transparent 22%),
    radial-gradient(circle at 92% 92%, rgba(111, 30, 24, 0.12), transparent 26%),
    repeating-linear-gradient(135deg, rgba(185, 140, 66, 0.018) 0 1px, transparent 1px 12px),
    linear-gradient(180deg, #0d0907, #070504 58%, #0b0705) !important;
  color: #ded0b6 !important;
}

/* ========== 顶栏 · 宫门横匾 ========== */
header.flex.h-12.items-center,
header.flex.items-center.justify-between,
header.flex.h-12.items-center.justify-between {
  position: relative !important;
  min-height: 56px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 0 12px !important;
  background:
    linear-gradient(90deg, rgba(111,30,24,.28), transparent 20%, transparent 80%, rgba(111,30,24,.18)),
    linear-gradient(180deg, #25130e, #0c0806 72%) !important;
  border-bottom: 1px solid #b98c42 !important;
  box-shadow:
    0 1px 0 #4c1713,
    0 8px 24px rgba(8, 6, 4, 0.45) !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* 左侧方印 */
header.flex.h-12.items-center::before,
header.flex.items-center.justify-between::before {
  content: "权" !important;
  flex: 0 0 auto !important;
  width: 23px !important;
  height: 23px !important;
  margin-right: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #f1d99f !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  border: 1px solid #d4ad62 !important;
  border-radius: 2px !important;
  background: linear-gradient(145deg, #7d241c, #3d100c) !important;
  box-shadow:
    inset 0 0 0 2px #4c1713,
    0 0 0 1px rgba(240,214,156,.25) !important;
  transform: none !important;
  filter: none !important;
  opacity: 0.95 !important;
}

/* 右上角旧题签移除 */
header.flex.h-12.items-center::after,
header.flex.items-center.justify-between::after {
  content: none !important;
  display: none !important;
}

.sticky.w-full.top-0.flex.items-center,
nav.sticky.top-0.w-full,
.sticky.top-0.w-full.z-50 {
  background: linear-gradient(180deg, #241610, #080605) !important;
  border-bottom: 1px solid #76542e !important;
  box-shadow:
    0 1px 0 #4c1713,
    0 8px 24px rgba(8, 6, 4, 0.4) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

header.flex.h-12.items-center button,
header.flex.items-center.justify-between button,
header.flex.h-12.items-center a,
header.flex.items-center.justify-between a,
nav.sticky.top-0.w-full button,
.sticky.top-0.w-full.z-50 button {
  min-width: 36px !important;
  min-height: 34px !important;
  padding: 6px 8px !important;
  margin: 0 3px !important;
  border-radius: 0 !important;
  border: 1px solid #4a321f !important;
  background: #100b08 !important;
  color: #aa9b80 !important;
  box-shadow: inset 0 1px 0 rgba(208, 198, 188, 0.04) !important;
  transition: border-color 0.15s ease, color 0.15s ease, background 0.15s ease !important;
}

header.flex.h-12.items-center button:hover,
header.flex.items-center.justify-between button:hover,
header.flex.h-12.items-center a:hover,
header.flex.items-center.justify-between a:hover,
nav.sticky.top-0.w-full button:hover,
.sticky.top-0.w-full.z-50 button:hover {
  background: #241610 !important;
  border-color: #6f1e18 !important;
  color: #ded0b6 !important;
}

header.flex.h-12.items-center button svg,
header.flex.items-center.justify-between button svg,
nav.sticky.top-0.w-full button svg,
.sticky.top-0.w-full.z-50 button svg {
  width: 17px !important;
  height: 17px !important;
  color: currentColor !important;
  stroke: currentColor !important;
}

/* ========== 消息金笺 ========== */
.is-user > div[class*="group-[.is-user]"],
.is-user [class*="group-[.is-user]:bg-secondary"],
.is-user [class*="group-[.is-user]:rounded-lg"] {
  position: relative !important;
  background:
    linear-gradient(#8d6a37,#8d6a37) 8px 8px/18px 1px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) 8px 8px/1px 18px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) calc(100% - 26px) 8px/18px 1px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) calc(100% - 9px) 8px/1px 18px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) 8px calc(100% - 9px)/18px 1px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) 8px calc(100% - 26px)/1px 18px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) calc(100% - 26px) calc(100% - 9px)/18px 1px no-repeat,
    linear-gradient(#8d6a37,#8d6a37) calc(100% - 9px) calc(100% - 26px)/1px 18px no-repeat,
    linear-gradient(145deg, #f7ecd2, #ead6aa) !important;
  background-color: #f1e2c0 !important;
  color: #4c2d1b !important;
  -webkit-text-fill-color: #4c2d1b !important;
  border: 1px solid #b58a4c !important;
  border-bottom: 3px solid #9b7136 !important;
  border-radius: 3px !important;
  box-shadow: 2px 3px 0 rgba(113,76,33,.48), 0 10px 24px rgba(25,12,7,.18) !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
  overflow: visible !important;
}

/* AI 输出：玄墨奏牍 */
.is-assistant > div[class*="group-[.is-assistant]"],
.is-assistant [class*="group-[.is-assistant]:bg-card"],
.is-assistant [class*="group-[.is-assistant]:rounded-lg"],
.is-assistant .border.border-muted {
  position: relative !important;
  background:
    linear-gradient(#9b7136,#9b7136) 8px 8px/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) 8px 8px/1px 18px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 26px) 8px/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 9px) 8px/1px 18px no-repeat,
    linear-gradient(#9b7136,#9b7136) 8px calc(100% - 9px)/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) 8px calc(100% - 26px)/1px 18px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 26px) calc(100% - 9px)/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 9px) calc(100% - 26px)/1px 18px no-repeat,
    linear-gradient(155deg, #1d110c, #090605 78%) !important;
  background-color: #100b08 !important;
  color: #ded0b6 !important;
  -webkit-text-fill-color: #ded0b6 !important;
  border: 1px solid #4a321f !important;
  border-left: 3px solid #6f1e18 !important;
  border-bottom: 2px solid #76542e !important;
  border-radius: 3px !important;
  box-shadow: 0 10px 26px rgba(8, 6, 4, 0.46) !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
  overflow: visible !important;
  padding: 10px 12px !important;
}

.is-assistant > div[class*="group-[.is-assistant]"]::before {
  content: "朱 · 批" !important;
  position: absolute !important;
  top: -11px !important;
  left: 16px !important;
  z-index: 3 !important;
  padding: 3px 13px !important;
  color: #f0d69c !important;
  background: linear-gradient(180deg, #5b1813, #2d0d09) !important;
  border: 1px solid #9b7136 !important;
  border-radius: 2px 2px 0 0 !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: .18em !important;
  pointer-events: none !important;
}

.is-assistant > div[class*="group-[.is-assistant]"]::after {
  content: "" !important;
  position: absolute !important;
  top: -9px !important;
  right: 14px !important;
  z-index: 3 !important;
  width: 17px !important;
  height: 17px !important;
  border: 1px solid #8f3a36 !important;
  border-radius: 50% !important;
  background: radial-gradient(circle at 35% 30%, #9d3c3d, #61191d 60%, #360b0e) !important;
  box-shadow: inset 0 1px 2px rgba(255,210,190,.25), 0 2px 5px rgba(0,0,0,.35) !important;
  pointer-events: none !important;
}

.group.scroll-mt-\[96px\].rounded-xl,
div.w-full.h-full.flex.group.rounded-xl {
  border-radius: 0 !important;
}

/* ========== 消息操作条 ========== */
div.bg-muted.rounded.flex,
.is-user ~ div .bg-muted.rounded.flex,
.is-assistant ~ div .bg-muted.rounded.flex,
div.flex.items-center.gap-1 .bg-muted.rounded.flex {
  background: #100b08 !important;
  border: 1px solid #4a321f !important;
  border-radius: 0 !important;
  box-shadow: 0 4px 12px rgba(8, 6, 4, 0.35) !important;
  padding: 3px !important;
}

div.bg-muted.rounded.flex > button,
div.bg-muted.rounded.flex button {
  min-width: 30px !important;
  min-height: 28px !important;
  border-radius: 0 !important;
  border: 1px solid transparent !important;
  background: transparent !important;
  color: #9c8d76 !important;
}

div.bg-muted.rounded.flex > button:hover,
div.bg-muted.rounded.flex button:hover,
div.bg-muted.rounded.flex button.hover\:bg-card\/80:hover {
  background: #241610 !important;
  border-color: #6f1e18 !important;
  color: #ded0b6 !important;
}

div.bg-muted.rounded.flex button svg {
  color: currentColor !important;
  stroke: currentColor !important;
}

/* ========== 底部输入台 · 御案金笺 ========== */
#prompt-input {
  position: relative !important;
  background:
    linear-gradient(#9b7136,#9b7136) 8px 8px/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) 8px 8px/1px 18px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 26px) calc(100% - 9px)/18px 1px no-repeat,
    linear-gradient(#9b7136,#9b7136) calc(100% - 9px) calc(100% - 26px)/1px 18px no-repeat,
    linear-gradient(165deg, #241610 0%, #080605 48%, #070504 100%) !important;
  border: 1px solid #76542e !important;
  border-radius: 3px !important;
  box-shadow:
    0 0 0 1px rgba(196, 90, 56, 0.12) inset,
    0 14px 36px rgba(8, 6, 4, 0.5) !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
  overflow: visible !important;
  padding-top: 10px !important;
}

/* 右：蜡封圆点 */
#prompt-input::before {
  content: "" !important;
  position: absolute !important;
  top: -10px !important;
  right: 16px !important;
  z-index: 3 !important;
  width: 19px !important;
  height: 19px !important;
  background: radial-gradient(circle at 35% 30%, #b84d50, #7b2026 58%, #4b1015) !important;
  border: 1px solid #9d4a45 !important;
  border-radius: 50% !important;
  box-shadow:
    inset 0 1px 2px rgba(255,220,200,.35),
    0 2px 5px rgba(54,12,15,.4) !important;
  pointer-events: none !important;
}

/* 左：御案题签 */
#prompt-input::after {
  content: "御令" !important;
  position: absolute !important;
  top: -10px !important;
  left: 14px !important;
  z-index: 3 !important;
  padding: 3px 13px !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  color: #f0d69c !important;
  background: linear-gradient(180deg, #6f1e18, #3b0d09) !important;
  border: 1px solid #9b7136 !important;
  border-radius: 2px 2px 0 0 !important;
  clip-path: none !important;
  box-shadow: 0 3px 8px rgba(0,0,0,.28) !important;
  pointer-events: none !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
}

#prompt-input [data-slot="input-group"] {
  background: #070504 !important;
  border: 1px solid #21130d !important;
  border-radius: 0 !important;
  box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.45) !important;
  overflow: hidden !important;
}

#prompt-input [data-slot="input-group"]:focus-within {
  border-color: #6f1e18 !important;
  box-shadow:
    inset 0 2px 8px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(196, 90, 56, 0.25) !important;
}

#prompt-input-header {
  background: #100b08 !important;
  color: #aa9b80 !important;
  border-bottom: 1px dashed #4a321f !important;
  padding: 10px !important;
  gap: 8px !important;
}

#prompt-input-header button {
  min-height: 30px !important;
  padding: 4px 11px !important;
  background: #17100c !important;
  color: #aa9b80 !important;
  border: 1px solid #4a321f !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  font-family: "IBM Plex Mono", ui-monospace, "Courier New", monospace !important;
}

#prompt-input-header button:hover {
  background: #241610 !important;
  border-color: #6f1e18 !important;
  color: #ded0b6 !important;
}

#prompt-input-header button svg {
  color: currentColor !important;
  stroke: currentColor !important;
}

#prompt-input [data-slot="input-group-control"],
#prompt-input textarea {
  background: transparent !important;
  color: #ded0b6 !important;
  border: 0 !important;
  box-shadow: none !important;
  font-family: "Noto Serif SC", "Source Han Serif SC", "Songti SC", STSong, serif !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  min-height: 68px !important;
}

#prompt-input textarea::placeholder {
  color: #786a57 !important;
  font-style: normal !important;
}

#prompt-input-footer {
  background: #100b08 !important;
  border-top: 1px solid #4a321f !important;
  padding: 10px 12px !important;
  gap: 8px !important;
}

#prompt-input-footer button {
  min-height: 30px !important;
  border-radius: 0 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  font-family: "IBM Plex Mono", ui-monospace, monospace !important;
}

#prompt-input-footer button:not([aria-label="发送"]) {
  background: #17100c !important;
  color: #9c8d76 !important;
  border: 1px solid #4a321f !important;
  padding: 4px 10px !important;
}

#prompt-input-footer button:not([aria-label="发送"]):hover {
  border-color: #b98c42 !important;
  color: #e2bd73 !important;
  background: #1c0f0b !important;
}

#prompt-input-footer button[aria-haspopup],
#prompt-input-footer button[data-state] {
  border-radius: 0 !important;
  border-color: #76542e !important;
  color: #aa9b80 !important;
  background: #17100c !important;
}

#prompt-input button[aria-label="发送"],
#prompt-input-footer button[aria-label="发送"] {
  min-width: 42px !important;
  min-height: 42px !important;
  background: #6f1e18 !important;
  color: #080605 !important;
  border: 1px solid #d4ad62 !important;
  border-radius: 0 !important;
  box-shadow: 0 4px 14px rgba(8, 6, 4, 0.4) !important;
  font-weight: 700 !important;
}

#prompt-input button[aria-label="发送"]:hover,
#prompt-input-footer button[aria-label="发送"]:hover {
  background: #d4ad62 !important;
  border-color: #f0d69c !important;
}

#prompt-input button[aria-label="发送"] svg {
  color: #080605 !important;
  stroke: #080605 !important;
}

/* ========== 侧栏 ========== */
[data-sidebar="sidebar"],
.bg-sidebar {
  background: #100b08 !important;
  border-color: #4a321f !important;
  color: #aa9b80 !important;
}