:root {
  --cc-wine: #6f2947;
  --cc-wine-deep: #4d1d31;
  --cc-rose: #ad5a7d;
  --cc-rose-deep: #7f3555;
  --cc-rose-soft: #efd1de;
  --cc-pink: #fff2f7;
  --cc-pink-2: #f8e4ec;
  --cc-cream: #fffaf4;
  --cc-gold: #c6a05f;
  --cc-gold-deep: #a77d3f;
  --cc-gold-light: #ead7aa;
  --cc-text: #583746;
  --cc-muted: #957985;
  --cc-line: rgba(190, 145, 76, .48);
  --cc-shadow: rgba(83, 31, 54, .15);
}

* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; }
html { background: #fff4f8; }
body {
  color: var(--cc-text);
  background:
    radial-gradient(circle at 10% 0%, rgba(255,255,255,.98), transparent 28%),
    radial-gradient(circle at 92% 8%, rgba(226,150,183,.20), transparent 27%),
    linear-gradient(180deg, #fff7fa 0%, #fff1f6 48%, #fff8f5 100%);
  font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", system-ui, sans-serif;
  overflow-x: hidden;
}
button, input, select, textarea { font: inherit; }
a { color: inherit; }

.cc-game-posts {
  position: relative;
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  padding: clamp(14px, 1.8vw, 30px) clamp(10px, 1.5vw, 24px) 70px;
  overflow: clip;
}

.cc-page-ornament::before,
.cc-page-ornament::after {
  content: "";
  position: fixed;
  z-index: -1;
  width: 340px;
  height: 340px;
  border-radius: 50%;
  pointer-events: none;
}
.cc-page-ornament::before {
  top: -150px;
  right: -120px;
  background: radial-gradient(circle, rgba(214,121,163,.20), transparent 68%);
}
.cc-page-ornament::after {
  left: -170px;
  bottom: -170px;
  background: radial-gradient(circle, rgba(215,184,112,.17), transparent 68%);
}

.cc-page-topbar,
.cc-hero,
.cc-layout {
  width: min(1780px, calc(100vw - 28px));
  margin-left: auto;
  margin-right: auto;
}

.cc-page-topbar {
  min-height: 60px;
  display: grid;
  grid-template-columns: minmax(145px, 1fr) auto minmax(145px, 1fr);
  align-items: center;
  gap: 18px;
  margin-bottom: 14px;
  padding: 10px 14px;
  border: 1px solid rgba(195,148,78,.48);
  border-radius: 16px;
  background: rgba(255,255,255,.84);
  box-shadow: 0 12px 30px rgba(99,45,68,.07), inset 0 1px 0 rgba(255,255,255,.96);
  backdrop-filter: blur(10px);
}
.cc-back-link {
  justify-self: start;
  text-decoration: none;
  color: var(--cc-wine);
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .02em;
}
.cc-back-link:hover { color: var(--cc-rose-deep); }
.cc-topbar-copy { text-align: center; line-height: 1.15; }
.cc-topbar-copy span { display: block; color: var(--cc-gold-deep); font-size: 9px; font-weight: 900; letter-spacing: .2em; text-transform: uppercase; }
.cc-topbar-copy strong { display: block; margin-top: 4px; color: var(--cc-wine-deep); font-family: Georgia, "Times New Roman", serif; font-size: 20px; letter-spacing: .08em; }
.cc-feed-status { justify-self: end; max-width: 300px; color: var(--cc-muted); font-size: 11px; font-weight: 750; text-align: right; }

.cc-hero {
  position: relative;
  min-height: clamp(170px, 18vw, 285px);
  margin-bottom: 22px;
  overflow: hidden;
  border: 1px solid rgba(191,145,78,.58);
  border-radius: 24px 24px 12px 12px;
  background: var(--cc-wine-deep);
  box-shadow: 0 20px 46px rgba(78,31,50,.16);
}
.cc-hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.cc-hero-shade { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(55,17,35,.83) 0%, rgba(76,24,47,.60) 38%, rgba(82,25,50,.18) 70%, rgba(82,25,50,.08) 100%); }
.cc-hero-copy { position: relative; z-index: 1; width: min(680px, 70%); min-height: inherit; display: flex; flex-direction: column; justify-content: center; padding: clamp(24px, 4vw, 62px); color: #fff9f5; }
.cc-hero-kicker { color: #f0d8a5; font-size: 10px; font-weight: 900; letter-spacing: .28em; }
.cc-hero h1 { margin: 8px 0 8px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(32px, 4vw, 62px); font-weight: 700; letter-spacing: .12em; text-shadow: 0 4px 18px rgba(0,0,0,.22); }
.cc-hero p { margin: 0; max-width: 600px; font-size: 13px; line-height: 1.75; color: rgba(255,250,247,.86); }

.cc-layout {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(270px, 1fr);
  align-items: start;
  gap: clamp(16px, 1.8vw, 28px);
}
.cc-post-column { min-width: 0; }
.cc-sidebar { min-width: 0; display: grid; gap: 18px; }

.cc-loading-card,
.cc-error-card {
  min-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 26px;
  border: 1px solid var(--cc-line);
  border-radius: 20px;
  background: rgba(255,255,255,.88);
  box-shadow: 0 14px 34px rgba(82,31,53,.08);
  text-align: left;
}
.cc-loading-mark { font-size: 26px; color: var(--cc-gold-deep); animation: ccPulse 1.4s ease-in-out infinite; }
.cc-loading-card strong, .cc-error-card strong { display: block; color: var(--cc-wine-deep); font-size: 17px; }
.cc-loading-card p, .cc-error-card p { margin: 5px 0 0; color: var(--cc-muted); font-size: 12px; }
.cc-error-card { display: block; text-align: center; }
.cc-error-card button { margin-top: 12px; min-height: 38px; padding: 0 16px; border: 1px solid rgba(111,41,71,.28); border-radius: 9px; background: #fff; color: var(--cc-wine); font-weight: 850; cursor: pointer; }

.cc-posts-list { min-width: 0; }
.cc-post-entry { position: relative; min-width: 0; }
.cc-post-entry + .cc-post-entry { margin-top: 42px; padding-top: 42px; border-top: 1px solid rgba(191,145,78,.43); }
.cc-post-entry::before { content: "✦"; position: absolute; top: -8px; left: 50%; transform: translateX(-50%); padding: 0 12px; background: #fff4f8; color: var(--cc-gold-deep); font-size: 11px; opacity: 0; }
.cc-post-entry + .cc-post-entry::before { opacity: 1; top: -7px; }
.cc-post-body { min-width: 0; overflow-wrap: anywhere; }
.cc-post-body img:not(.emoji):not(.wp-smiley) { max-width: 100%; height: auto; }
.cc-post-body iframe { max-width: 100%; }
.cc-post-body img.emoji,
.cc-post-body img.wp-smiley,
.cc-game-posts img.emoji,
.cc-game-posts img.wp-smiley {
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  min-width: 1em !important;
  max-width: 1em !important;
  min-height: 1em !important;
  max-height: 1em !important;
  margin: 0 .08em !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  object-fit: contain !important;
  vertical-align: -.12em !important;
  background: transparent !important;
}

/* WordPress 评论互动桥：初始不创建 iframe，点击才启动 PHP。 */
.p1000-game-posts-comment-slot {
  margin: 18px 0 4px;
  padding: 12px;
  border: 1px solid rgba(190,145,76,.38);
  border-radius: 16px;
  background: linear-gradient(145deg, rgba(255,255,255,.90), rgba(255,243,248,.86));
}
.p1000-game-posts-comment-control { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.p1000-game-posts-comment-button {
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid rgba(111,41,71,.30);
  border-radius: 10px;
  background: linear-gradient(180deg, #fff, #fff5f8);
  color: var(--cc-wine);
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 6px 16px rgba(82,31,53,.06);
}
.p1000-game-posts-comment-note { color: var(--cc-muted); font-size: 11px; font-weight: 700; }
.p1000-game-posts-comment-host { margin-top: 12px; }
/* 260823-1322：每日次数栏与 /game-swim 的 [prince_comments] 原版布局保持一致。 */
.p1000-game-posts-comment-daily-status {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1fr 1px 1fr;
  align-items: center;
  gap: 11px;
  margin: 0;
  padding: 7px 2px 3px;
  border: 0;
  border-bottom: 0;
  color: var(--pc-muted, var(--cc-muted, #8b7480));
  font-size: 10.5px;
  background: transparent;
}
.p1000-game-posts-comment-daily-status span {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 5px;
  white-space: nowrap;
}
.p1000-game-posts-comment-daily-status i {
  width: 1px;
  height: 16px;
  background: rgba(var(--cc-comment-theme-rgb,111,41,71),.34);
}
.p1000-game-posts-comment-daily-status strong {
  color: var(--pc-text, var(--cc-text));
  font-size: 13px;
  font-weight: 850;
}
.p1000-game-posts-comment-frame { display: block; width: 100%; min-height: 520px; border: 0; border-radius: 12px; background: #fff; }

/* 与当前 Makers VIP 测试一致：正文存在静态快照，默认软锁；月租状态有效后解除。 */
.p1000-vip-static-block {
  position: relative;
  isolation: isolate;
  min-height: 140px;
  margin: 16px 0;
  overflow: hidden;
  border-radius: 16px;
}
.p1000-vip-static-block > .p1000-vip-static-content { transition: filter .25s ease, opacity .25s ease; }
.p1000-vip-static-block.is-locked > .p1000-vip-static-content { filter: blur(10px); opacity: .46; pointer-events: none; user-select: none; }
.p1000-vip-lock-overlay {
  position: absolute;
  z-index: 20;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 20px;
  text-align: center;
  background: linear-gradient(180deg, rgba(255,250,252,.44), rgba(255,246,249,.78));
  backdrop-filter: blur(2px);
}
.p1000-vip-static-block.is-locked .p1000-vip-lock-overlay { display: flex; }
.p1000-vip-lock-card { max-width: 360px; padding: 18px 20px; border: 1px solid rgba(194,149,81,.62); border-radius: 15px; background: rgba(255,255,255,.94); box-shadow: 0 14px 36px rgba(75,30,50,.15); }
.p1000-vip-lock-card strong { display: block; color: var(--cc-wine-deep); font-size: 16px; }
.p1000-vip-lock-card span { display: block; margin-top: 6px; color: var(--cc-muted); font-size: 11px; line-height: 1.6; }

.cc-pagination { display: flex; align-items: center; justify-content: center; gap: 7px; flex-wrap: wrap; margin-top: 42px; padding-top: 24px; border-top: 1px solid rgba(190,145,76,.40); }
.cc-page-btn { min-width: 38px; height: 38px; padding: 0 10px; border: 1px solid rgba(111,41,71,.24); border-radius: 9px; background: rgba(255,255,255,.9); color: var(--cc-wine); font-weight: 850; cursor: pointer; }
.cc-page-btn:hover { border-color: var(--cc-gold); transform: translateY(-1px); }
.cc-page-btn.is-current { color: #fff; border-color: var(--cc-wine); background: linear-gradient(135deg, var(--cc-wine), var(--cc-rose-deep)); box-shadow: 0 8px 18px rgba(111,41,71,.18); }
.cc-page-btn:disabled { opacity: .35; cursor: default; transform: none; }
.cc-page-gap { padding: 0 3px; color: var(--cc-muted); }

.cc-side-panel {
  position: relative;
  overflow: hidden;
  padding: 16px;
  border: 1px solid rgba(190,145,76,.50);
  border-radius: 18px 18px 10px 10px;
  background:
    radial-gradient(circle at 100% 0%, rgba(224,150,182,.13), transparent 30%),
    rgba(255,255,255,.88);
  box-shadow: 0 14px 32px rgba(82,31,53,.08), inset 0 1px 0 rgba(255,255,255,.96);
}
.cc-side-heading { display: flex; align-items: center; gap: 10px; margin: -16px -16px 14px; padding: 13px 14px; border-bottom: 1px solid rgba(190,145,76,.40); background: linear-gradient(135deg, rgba(111,41,71,.96), rgba(133,56,89,.91)); color: #fffaf7; }
.cc-side-heading > div { min-width: 0; flex: 1; }
.cc-side-heading small { display: block; color: #ecd7a9; font-size: 8px; font-weight: 900; letter-spacing: .18em; text-transform: uppercase; }
.cc-side-heading h2 { margin: 2px 0 0; font-family: Georgia, "Times New Roman", serif; font-size: 17px; letter-spacing: .07em; }
.cc-side-mark { flex: 0 0 31px; width: 31px; height: 31px; display: grid; place-items: center; border: 1px solid rgba(239,216,165,.58); border-radius: 9px; color: #f0d9a7; background: rgba(255,255,255,.08); }
.cc-side-badge { flex: 0 0 auto; padding: 4px 7px; border: 1px solid rgba(238,216,171,.42); border-radius: 999px; color: #f5e6c5; font-size: 8px; font-weight: 850; white-space: nowrap; }
.cc-side-loading { display: block; padding: 12px 6px; color: var(--cc-muted); font-size: 11px; }

.cc-link-list { display: grid; gap: 8px; }
.cc-room-link {
  position: relative;
  display: grid !important;
  grid-template-columns: 62px minmax(0,1fr) 18px;
  align-items: center;
  gap: 9px;
  min-height: 62px !important;
  padding: 6px 8px 6px 6px !important;
  overflow: hidden;
  text-decoration: none;
  border: 1px solid rgba(196,155,91,.30) !important;
  border-radius: 11px !important;
  background: rgba(255,250,246,.76) !important;
  color: var(--cc-text) !important;
}
.cc-room-link::after { content: none !important; }
.cc-room-link:hover { background: #fff !important; border-color: rgba(173,90,125,.45) !important; }
.cc-room-visual { width: 62px; height: 48px; display: block; border-radius: 8px; background: linear-gradient(135deg,#f7dce7,#fff6ee); background-size: cover; background-position: center 50%; box-shadow: inset 0 0 0 1px rgba(255,255,255,.66); }
.cc-room-copy { min-width: 0; display: block; }
.cc-room-copy strong { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cc-wine-deep); font-size: 11px; font-weight: 900; }
.cc-room-copy small { display: block; margin-top: 3px; color: var(--cc-muted); font-size: 8px; font-weight: 750; }
.cc-room-arrow { color: var(--cc-gold-deep); font-size: 19px; line-height: 1; }

.cc-tag-list { display: flex; flex-wrap: wrap; gap: 7px; }
.cc-tag-list a { display: inline-flex; align-items: center; min-height: 31px; padding: 5px 9px; text-decoration: none; border: 1px solid rgba(173,90,125,.30); border-radius: 999px; background: linear-gradient(180deg, #fff, #fff5f8); color: var(--cc-rose-deep); font-size: 10px; font-weight: 850; }

.cc-swim-list { display: grid; gap: 10px; }
.cc-swim-item { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 9px; align-items: start; padding-bottom: 10px; border-bottom: 1px dashed rgba(190,145,76,.34); }
.cc-swim-item:last-child { border-bottom: 0; padding-bottom: 0; }
.cc-swim-avatar { width: 34px; height: 34px; overflow: hidden; border: 1px solid rgba(190,145,76,.45); border-radius: 50%; background: #fff4f8; }
.cc-swim-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cc-swim-avatar span { display: grid; width: 100%; height: 100%; place-items: center; color: var(--cc-rose); font-size: 15px; }
.cc-swim-copy strong { display: block; color: var(--cc-wine); font-size: 10px; }
.cc-swim-copy p { margin: 3px 0 0; color: #705462; font-size: 10px; line-height: 1.55; }

.cc-prince-list { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.cc-prince-card { display: flex; align-items: center; gap: 8px; min-width: 0; padding: 7px; border: 1px solid rgba(190,145,76,.26); border-radius: 10px; background: rgba(255,250,246,.68); }
.cc-prince-avatar { flex: 0 0 32px; width: 32px; height: 32px; overflow: hidden; border: 1px solid rgba(173,90,125,.28); border-radius: 50%; background: #fff; }
.cc-prince-avatar img { width: 100%; height: 100%; object-fit: cover; display: block; }
.cc-prince-name { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--cc-text); font-size: 10px; font-weight: 850; }
.cc-side-more { display: block; margin-top: 12px; padding-top: 10px; border-top: 1px solid rgba(190,145,76,.30); text-align: right; text-decoration: none; color: var(--cc-wine); font-size: 10px; font-weight: 900; }

.cc-empty-state { padding: 14px 8px; color: var(--cc-muted); font-size: 11px; line-height: 1.6; text-align: center; }

@keyframes ccPulse { 0%,100% { opacity:.45; transform:scale(.88) rotate(0deg); } 50% { opacity:1; transform:scale(1.15) rotate(18deg); } }

@media (min-width: 1080px) {
  .cc-sidebar { position: sticky; top: 16px; }
}
@media (max-width: 1079px) {
  .cc-layout { grid-template-columns: 1fr; }
  .cc-sidebar { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .cc-game-posts { padding-left: 8px; padding-right: 8px; }
  .cc-page-topbar, .cc-hero, .cc-layout { width: min(100%, calc(100vw - 16px)); }
  .cc-page-topbar { grid-template-columns: 1fr auto; }
  .cc-topbar-copy { display: none; }
  .cc-feed-status { max-width: 170px; font-size: 9px; }
  .cc-hero { min-height: 190px; }
  .cc-hero-copy { width: 88%; padding: 24px; }
  .cc-hero h1 { font-size: 34px; }
  .cc-hero p { font-size: 11px; }
  .cc-sidebar { grid-template-columns: 1fr; }
  .cc-post-entry + .cc-post-entry { margin-top: 30px; padding-top: 30px; }
  .p1000-game-posts-comment-frame { min-height: 590px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; }
}

.cc-filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
  padding: 11px 13px;
  border: 1px solid rgba(190,145,76,.45);
  border-radius: 12px;
  background: linear-gradient(90deg, rgba(255,255,255,.92), rgba(255,240,246,.84));
  box-shadow: 0 8px 20px rgba(82,31,53,.05);
}
.cc-filter-bar[hidden] { display: none !important; }
.cc-filter-label { color: var(--cc-muted); font-size: 11px; font-weight: 750; }
.cc-filter-label strong { color: var(--cc-wine); font-size: 12px; }
.cc-filter-bar button { min-height: 34px; padding: 0 11px; border: 1px solid rgba(111,41,71,.25); border-radius: 8px; background: #fff; color: var(--cc-wine); font-size: 10px; font-weight: 900; cursor: pointer; }
.cc-link-list a.is-active,
.cc-tag-list a.is-active { border-color: var(--cc-wine); box-shadow: 0 0 0 2px rgba(111,41,71,.10); }

/* =========================================================
   2026-08-18 15:51｜/game-posts/ 原版视觉与静态化稳定修复
   ========================================================= */
.cc-loading-card[hidden],
.cc-error-card[hidden],
.cc-room-more-panel[hidden],
.cc-topic-more-panel[hidden],
[hidden] { display: none !important; }

/* Archive Banner：延续 WordPress 原版的柔和金线、标题与玩家主题句。 */
.cc-archive-hero {
  min-height: 290px;
  border: 1px solid rgba(194,149,81,.68);
  border-radius: 22px;
  box-shadow: 0 18px 44px rgba(82,31,53,.12), inset 0 0 0 7px rgba(255,255,255,.18);
}
.cc-archive-hero::before {
  content:""; position:absolute; z-index:4; inset:11px; pointer-events:none;
  border:1px solid rgba(236,211,164,.48); border-radius:15px;
}
.cc-archive-hero .cc-hero-shade {
  background:
    linear-gradient(90deg, rgba(54,20,39,.79), rgba(64,26,46,.43) 48%, rgba(52,18,37,.27)),
    linear-gradient(180deg, rgba(28,8,22,.08), rgba(30,9,23,.52));
}
.cc-archive-hero .cc-hero-copy { width:min(670px,72%); padding:48px 55px; }
.cc-archive-hero .cc-hero-kicker { color:#f0d9aa; font-size:10px; font-weight:900; letter-spacing:.29em; }
.cc-archive-hero h1 { margin:9px 0 3px; font-size:clamp(44px,4.6vw,72px); font-weight:600; letter-spacing:.12em; text-shadow:0 5px 20px rgba(33,6,23,.46); }
.cc-hero-flourish { display:block; width:150px; margin:8px 0; color:#e3c98f; text-align:center; font-size:15px; }
.cc-hero-sentence { max-width:640px; margin:0 !important; color:#fff9f5 !important; font-size:14px !important; font-weight:700; line-height:1.9 !important; letter-spacing:.025em; text-shadow:0 2px 10px rgba(30,7,20,.66); }
.cc-hero-sentence .player { color:#f4d49f; font-weight:900; }

/* 右栏属于正文，不再 sticky / fixed。 */
.cc-sidebar { position:static !important; top:auto !important; align-self:start; }
@media (min-width:1080px) { .cc-sidebar { position:static !important; top:auto !important; } }

/* 每篇 Post 恢复为一个完整的优雅大卡片，而非横向分割线。 */
.cc-posts-list { display:grid; gap:32px; }
.cc-post-entry,
.cc-post-entry + .cc-post-entry {
  position:relative;
  margin:0 !important;
  padding:18px !important;
  overflow:hidden;
  border:1px solid rgba(194,149,81,.56);
  border-radius:22px;
  background:
    radial-gradient(circle at 100% 0, rgba(244,213,227,.25), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.96), rgba(255,249,246,.92));
  box-shadow:0 17px 42px rgba(83,31,54,.08), inset 0 0 0 7px rgba(255,255,255,.55);
}
.cc-post-entry::before {
  content:""; position:absolute; inset:9px; pointer-events:none; border:1px solid rgba(202,164,101,.26); border-radius:15px;
}
.cc-post-corner-star {
  position:absolute; z-index:18; top:12px; right:13px; display:grid; place-items:center; width:31px; height:31px;
  border:1px solid rgba(229,198,140,.72); border-radius:9px; color:#fff5dc;
  background:linear-gradient(145deg,#7c3152,#b85e83); box-shadow:0 7px 17px rgba(93,31,60,.2), inset 0 1px 0 rgba(255,255,255,.27);
  font-size:11px;
}
.cc-post-body { position:relative; z-index:2; min-width:0; width:100%; }
.cc-post-body img, .cc-post-body video, .cc-post-body canvas, .cc-post-body iframe { max-width:100%; }
.cc-post-body img { height:auto; }
.cc-post-body a { text-decoration:none; }

/* Super Card / 王子卡片跨分页保险。公共 CSS 从 manifest 还原；这里再保证链接与聊天按钮不会退回浏览器默认。 */
.cc-post-body [data-prince-user-id] {
  position:relative; z-index:2; visibility:visible !important; opacity:1 !important;
}
.cc-post-body button[data-prince-user-id],
.cc-post-body a[data-prince-user-id] {
  pointer-events:auto !important; cursor:pointer !important;
}
.cc-post-body a, .cc-post-body a:visited { text-decoration:none !important; }

/* 玩家头像：即使某篇自带 CSS 临时异常，也不能撑成巨图。 */
.cc-post-body img.player-avatar { object-fit:cover; }
.cc-post-body .cw3-avatar { width:50px !important; height:50px !important; max-width:50px !important; max-height:50px !important; object-fit:cover !important; }
.cc-post-body .cw3-profile-avatar { width:68px !important; height:68px !important; max-width:68px !important; max-height:68px !important; object-fit:cover !important; }
.cc-post-body .cw3-comments-avatar { width:66px !important; height:66px !important; max-width:66px !important; max-height:66px !important; object-fit:cover !important; }

/* 整篇 VIP：锁定时固定为小型预览，不随超长正文撑高；解锁后完整恢复原 Post。 */
.cc-post-entry[data-vip-post="1"] { min-height:0; }
.cc-post-entry[data-vip-post="1"].is-vip-locked { height:330px; min-height:330px; max-height:330px; }
.cc-post-entry[data-vip-post="1"].is-vip-locked .cc-post-body {
  height:292px; max-height:292px; overflow:hidden; filter:blur(10px); opacity:.42; pointer-events:none; user-select:none;
}
.cc-post-entry[data-vip-post="1"].is-vip-unlocked { height:auto; max-height:none; overflow:visible; }
.cc-post-entry[data-vip-post="1"].is-vip-unlocked .cc-post-body { height:auto; max-height:none; overflow:visible; filter:none; opacity:1; pointer-events:auto; user-select:auto; }
.cc-post-vip-overlay {
  position:absolute; z-index:30; inset:0; display:none; align-items:center; justify-content:center; padding:28px;
  background:linear-gradient(180deg,rgba(255,251,252,.46),rgba(255,244,249,.86)); backdrop-filter:blur(2px);
}
.cc-post-entry.is-vip-locked .cc-post-vip-overlay { display:flex; }
.cc-post-vip-card {
  width:min(360px,86%); padding:22px 26px; text-align:center; border:1px solid rgba(194,149,81,.65); border-radius:16px;
  background:rgba(255,255,255,.95); box-shadow:0 16px 38px rgba(75,30,50,.17), inset 0 0 0 4px rgba(255,246,249,.7);
}
.cc-post-vip-crown { display:block; margin-bottom:7px; color:var(--cc-gold-deep); font-size:22px; }
.cc-post-vip-card strong { display:block; color:var(--cc-wine-deep); font-size:18px; letter-spacing:.08em; }
.cc-post-vip-card small { display:block; margin-top:7px; color:var(--cc-muted); font-size:11px; }

/* 旧局部 VIP 兼容：同样固定为 300px。 */
.p1000-vip-static-block.is-locked { height:300px !important; min-height:300px !important; max-height:300px !important; overflow:hidden !important; }
.p1000-vip-static-block.is-locked > .p1000-vip-static-content { height:100% !important; max-height:100% !important; overflow:hidden !important; }
.p1000-vip-static-block.is-unlocked { height:auto !important; max-height:none !important; overflow:visible !important; }

/* 评论区：取消“点击打开”，靠近视口自动懒加载；同时由 JS 限制最多 2 个并发。 */
.p1000-game-posts-comment-slot {
  min-height:96px; margin:18px 0 2px; padding:10px; border:1px solid rgba(190,145,76,.36); border-radius:16px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(255,243,248,.88));
}
.cc-comment-auto-status { min-height:74px; display:grid; grid-template-columns:34px minmax(0,1fr); grid-template-rows:auto auto; align-content:center; column-gap:10px; padding:8px 10px; color:#8b6474; }
.cc-comment-auto-status > span { grid-row:1/3; display:grid; place-items:center; width:34px; height:34px; border:1px solid rgba(190,145,76,.35); border-radius:50%; color:#a35b7a; background:#fff; }
.cc-comment-auto-status strong { align-self:end; color:var(--cc-wine); font-size:12px; }
.cc-comment-auto-status small { align-self:start; color:var(--cc-muted); font-size:10px; }
.cc-comment-auto-status.is-error { display:block; min-height:58px; color:#9d5263; font-size:11px; }
.p1000-game-posts-comment-frame { display:block; width:100%; min-height:520px; border:0; border-radius:12px; background:#fff; }

/* ---------------------------------------------------------
   右栏：外层标题仍是 Archive 四角星标题，内部恢复原版豪华公共组件。
   --------------------------------------------------------- */
.cc-side-panel { padding:0 14px 15px; overflow:hidden; border-radius:18px; }
.cc-side-heading { margin:0 -14px 14px; }
.cc-deluxe-shell { position:relative; padding:10px; border:1px solid rgba(194,149,81,.7); border-radius:22px; background:linear-gradient(150deg,#fffdf9,#fff4f8 52%,#f9e3ec); box-shadow:0 13px 28px rgba(91,34,61,.10), inset 0 0 0 4px rgba(255,255,255,.56); }
.cc-deluxe-inner { position:relative; padding:16px 13px 13px; border:1px solid rgba(199,159,96,.43); border-radius:15px; background:rgba(255,255,255,.63); box-shadow:inset 0 1px 0 rgba(255,255,255,.96); }
.cc-deluxe-ornament { display:flex; align-items:center; justify-content:center; gap:7px; margin-bottom:11px; color:#c9a25f; font-size:13px; }
.cc-deluxe-ornament span { width:29px; height:1px; background:linear-gradient(90deg,transparent,rgba(197,154,88,.82)); }
.cc-deluxe-ornament span:last-child { background:linear-gradient(90deg,rgba(197,154,88,.82),transparent); }
.cc-deluxe-ornament b { font-weight:400; }
.cc-deluxe-ornament b + b { position:relative; }
.cc-deluxe-ornament b + b::after { content:"✦"; position:absolute; top:-6px; right:-6px; color:#c86f94; font-size:6px; }
.cc-deluxe-footer { display:flex; align-items:center; justify-content:center; gap:7px; margin-top:12px; color:#9a7a88; font-size:9px; letter-spacing:.07em; }
.cc-deluxe-footer::before,.cc-deluxe-footer::after{content:"";width:35px;height:1px;background:linear-gradient(90deg,transparent,rgba(197,154,88,.62));}
.cc-deluxe-footer::after{background:linear-gradient(90deg,rgba(197,154,88,.62),transparent);}

/* 共享设施：2 张大图 + 4 张小图。 */
.cc-room-featured { display:grid; gap:8px; }
.cc-room-small-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:8px; }
.cc-room-picture { position:relative; display:block; overflow:hidden; border:1px solid rgba(205,164,91,.76); border-radius:9px; color:#fff !important; background-color:#6f2947; background-size:cover; box-shadow:0 7px 16px rgba(91,34,61,.15), inset 0 0 0 1px rgba(255,255,255,.2); }
.cc-room-picture::after { content:""; position:absolute; inset:5px; border:1px solid rgba(255,234,188,.42); border-radius:6px; pointer-events:none; }
.cc-room-picture--featured { min-height:106px; }
.cc-room-picture--small { min-height:70px; }
.cc-room-picture--more { min-height:54px; margin-top:6px; }
.cc-room-picture strong { position:absolute; z-index:3; right:9px; bottom:8px; left:9px; color:#fff; font-size:13px; font-weight:900; text-shadow:0 2px 3px rgba(43,10,28,.98),0 0 10px rgba(43,10,28,.8); }
.cc-room-picture:hover { transform:translateY(-1px); filter:brightness(1.04) saturate(1.04); }
.cc-room-more-panel { max-height:260px; margin-top:7px; overflow:auto; padding-right:4px; }

/* Tags：2 张主题图 + 3 条宝石按钮 + 展开区。 */
.cc-topic-featured { display:grid; gap:9px; }
.cc-topic-picture { position:relative; display:block; min-height:106px; overflow:hidden; border:1px solid rgba(205,164,91,.76); border-radius:9px; background-color:#542036; background-size:cover; color:#fff !important; box-shadow:0 7px 16px rgba(91,34,61,.16); }
.cc-topic-picture::after { content:""; position:absolute; inset:5px; border:1px solid rgba(255,234,188,.42); border-radius:6px; }
.cc-topic-picture strong { position:absolute; z-index:3; right:30px; bottom:8px; left:9px; font-size:14px; font-weight:900; text-shadow:0 2px 3px rgba(43,10,28,.98),0 0 10px rgba(43,10,28,.8); }
.cc-topic-picture > span { position:absolute; z-index:3; right:10px; bottom:7px; color:#ffe6ad; font-size:20px; }
.cc-topic-primary { display:grid; gap:6px; margin-top:9px; }
.cc-topic-row { display:grid; grid-template-columns:27px minmax(0,1fr) 15px; align-items:center; gap:8px; min-height:43px; padding:6px 9px 6px 7px; border:1px solid rgba(197,151,86,.43); border-radius:10px; color:#724057 !important; background:linear-gradient(135deg,#fff,#fff1f7); box-shadow:0 5px 12px rgba(101,41,67,.07); }
.cc-topic-gem { display:grid; place-items:center; width:26px; height:26px; border:1px solid rgba(231,203,145,.73); border-radius:8px; color:#fff6dc; background:linear-gradient(145deg,#8a3b5b,#b85f84 55%,#6f2947); font-size:7px; }
.cc-topic-row strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.cc-topic-row b { color:#c9a25f; font-size:17px; font-weight:400; }
.cc-topic-more-panel { max-height:275px; overflow-y:auto; margin-top:7px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
.cc-topic-more-panel .cc-topic-row { grid-template-columns:22px minmax(0,1fr); min-height:40px; padding:5px 6px; font-size:11px; }
.cc-topic-more-panel .cc-topic-row b { display:none; }
.cc-topic-more-panel .cc-topic-gem { width:22px; height:22px; }
.cc-deluxe-more { display:grid; grid-template-columns:31px minmax(0,1fr) 24px; align-items:center; gap:9px; width:100%; min-height:48px; margin-top:9px; padding:7px 9px; border:1px solid rgba(197,151,86,.48); border-radius:12px; color:#6f2947; background:linear-gradient(135deg,#fff,#fff2f7); text-align:left; cursor:pointer; }
.cc-more-gem { display:grid; place-items:center; width:31px; height:31px; border:1px solid rgba(226,196,133,.64); border-radius:9px; color:#fff5dc; background:linear-gradient(145deg,#8a3b5b,#bd6e90); font-size:10px; }
.cc-deluxe-more strong { display:block; font-size:12px; }
.cc-deluxe-more small { display:block; margin-top:2px; color:#9a7a88; font-size:9px; }
.cc-deluxe-more > b { display:grid; place-items:center; width:23px; height:23px; border-radius:50%; color:#c9a25f; background:#fff8e7; font-weight:400; }
.cc-deluxe-more[aria-expanded="true"] > b { transform:rotate(180deg); }

/* 小泳池：汇聚所有 Post 评论，只读，内部可滚动；外部右栏随页面滚动。 */
.cc-swim-list { display:block; }
.cc-mini-pool-intro { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:10px; padding:8px 9px; border:1px solid rgba(93,139,179,.22); border-radius:10px; color:#587a98; background:linear-gradient(135deg,#f9fcff,#edf7ff); font-size:9px; }
.cc-mini-pool-intro strong { color:#3d6f98; font-size:10px; }
.cc-mini-pool-list { max-height:700px; overflow-y:auto; padding-right:5px; scrollbar-width:thin; scrollbar-color:#6ba4c4 #eef7fb; }
.cc-mini-pool-item { padding:10px 3px 11px; border-bottom:1px dashed rgba(86,137,176,.26); }
.cc-mini-pool-item:last-child { border-bottom:0; }
.cc-mini-pool-meta { display:flex; align-items:center; justify-content:space-between; gap:7px; }
.cc-mini-pool-user { display:flex; align-items:center; gap:5px; min-width:0; }
.cc-mini-pool-avatar { flex:0 0 24px; width:24px; height:24px; overflow:hidden; border:1px solid rgba(79,131,169,.36); border-radius:50%; background:#fff; }
.cc-mini-pool-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.cc-mini-pool-author,.cc-mini-pool-parent b { color:#467b63; font-size:9px; font-weight:900; }
.cc-mini-pool-author.is-player,.cc-mini-pool-parent b.is-player { color:#b05d85; }
.cc-mini-pool-parent { display:inline-flex; align-items:center; gap:4px; color:#85a4b8; font-size:8px; }
.cc-mini-pool-location { max-width:42%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#7893a5; font-size:8px; }
.cc-mini-pool-snippet { margin:6px 0 0; color:#526c7e; font-size:10px; line-height:1.65; white-space:pre-wrap; }

/* 住户名册：玩家 + 全部王子，单列纵向。 */
.cc-prince-list { display:grid; grid-template-columns:1fr !important; gap:11px; }
.cc-resident-card { position:relative; display:grid; grid-template-columns:68px minmax(0,1fr); gap:12px; align-items:center; min-height:132px; padding:15px 48px 15px 12px; border:1px solid rgba(164,121,163,.28); border-radius:12px; background:linear-gradient(145deg,#fff,#fbf5ff); box-shadow:0 7px 16px rgba(82,31,53,.04); }
.cc-resident-card--player { border-color:rgba(194,149,81,.58); background:linear-gradient(145deg,#fffaf3,#fff4f8); box-shadow:inset 3px 0 0 rgba(213,174,100,.58); }
.cc-resident-card.accent-1 { background:linear-gradient(145deg,#fff,#fff6fa); }
.cc-resident-card.accent-2 { background:linear-gradient(145deg,#fff,#f9f5ff); }
.cc-resident-card.accent-3 { background:linear-gradient(145deg,#fff,#fff4f8); }
.cc-resident-card.accent-4 { background:linear-gradient(145deg,#fff,#f6fbff); }
.cc-resident-avatar { width:62px; height:62px; overflow:hidden; border:1px solid rgba(194,149,81,.48); border-radius:10px; background:#fff; box-shadow:0 7px 16px rgba(82,31,53,.11); }
.cc-resident-avatar img { display:block; width:100%; height:100%; object-fit:cover; }
.cc-resident-copy { min-width:0; }
.cc-resident-room { position:absolute; top:8px; right:10px; max-width:105px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:3px 6px; border:1px solid rgba(194,149,81,.28); border-radius:7px; color:#8d7180; background:rgba(255,255,255,.84); font-size:8px; }
.cc-resident-copy h3 { margin:0; color:#7c3454; font-family:Georgia,"Times New Roman",serif; font-size:16px; line-height:1.25; }
.cc-resident-copy > strong { display:block; margin-top:3px; color:#9b7788; font-size:9px; }
.cc-resident-copy p { margin:6px 0 0; color:#6e5361; font-size:10px; line-height:1.65; }
.cc-resident-chat { position:absolute; right:10px; bottom:12px; display:grid; place-items:center; width:31px; height:31px; padding:0; border:1px solid rgba(142,71,105,.35); border-radius:9px; color:#7c3454; background:#fff; cursor:pointer; }
.cc-resident-chat svg { width:18px; height:18px; }
.cc-resident-player-mark { position:absolute; right:12px; bottom:12px; color:#c49a5b; font-size:18px; }

/* Loading / error 本身维持卡片，但正常成功后绝不占位。 */
.cc-loading-card[hidden], .cc-error-card[hidden] { display:none !important; }

@media (max-width:720px) {
  .cc-archive-hero .cc-hero-copy { width:94%; padding:34px 27px; }
  .cc-archive-hero h1 { font-size:42px; }
  .cc-post-entry { padding:12px !important; border-radius:16px; }
  .cc-post-entry::before { inset:6px; border-radius:12px; }
  .cc-post-corner-star { width:28px; height:28px; top:8px; right:8px; }
  .cc-topic-more-panel { grid-template-columns:1fr; }
  .cc-resident-card { grid-template-columns:56px minmax(0,1fr); padding-left:9px; }
  .cc-resident-avatar { width:52px; height:52px; }
}
/* Super Card 聊天气泡跨页视觉兜底。 */
.cc-post-body button[data-prince-user-id]:not(.p1000-sc8-chat-button),
.cc-post-body a[data-prince-user-id]:not(.p1000-sc8-chat-button) {
  display:inline-grid !important;
  place-items:center !important;
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  min-height:34px !important;
  padding:0 !important;
  border:1px solid rgba(120,63,91,.35) !important;
  border-radius:10px !important;
  color:#7b3654 !important;
  background:rgba(255,255,255,.92) !important;
  box-shadow:0 5px 14px rgba(82,31,53,.08) !important;
}
.cc-post-body button[data-prince-user-id]:not(.p1000-sc8-chat-button) svg,
.cc-post-body a[data-prince-user-id]:not(.p1000-sc8-chat-button) svg { width:18px !important; height:18px !important; display:block !important; }


/* =========================================================
   2026-08-18 15:51｜Game Posts 第二轮视觉与复杂 Post 修复
   ========================================================= */

/* 右上角不再显示任何 Makers 快照调试文字。 */
.cc-feed-status { display:none !important; }

/* 复杂整篇 VIP Post：若文章自带 CSS 尚在解析，本页也先保证关键双栏与媒体尺寸。 */
.cc-post-body .cw3-otome { width:100% !important; max-width:none !important; }
.cc-post-body .cw3-grid { display:grid; grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr); gap:18px; align-items:start; width:100%; min-width:0; }
.cc-post-body .cw3-left-stack,
.cc-post-body .cw3-right-stack,
.cc-post-body .cw3-media-stack { display:grid; gap:18px; min-width:0; align-content:start; }
.cc-post-body .cw3-banner { position:relative; width:100%; overflow:hidden; }
.cc-post-body .cw3-banner-image { display:block; width:100%; height:100%; object-fit:cover; }
.cc-post-body .cw3-vn-stage { position:relative; overflow:hidden; }
.cc-post-body .cw3-profile-head { display:grid; grid-template-columns:74px minmax(0,1fr); gap:15px; align-items:center; }
.cc-post-body .cw3-speech { display:grid; grid-template-columns:57px minmax(0,1fr); gap:15px; align-items:start; }
@media (max-width:900px) {
  .cc-post-body .cw3-grid { grid-template-columns:1fr; }
}

/* 共享设施：严格靠近原版 [chouchou_room_links] 比例。 */
.cc-room-featured { gap:10px; }
.cc-room-picture--featured { min-height:105px; margin-bottom:0; border-radius:8px; }
.cc-room-picture--small { min-height:78px; border-radius:8px; }
.cc-room-picture strong { right:13px; bottom:10px; left:13px; font-size:15px; letter-spacing:.035em; }
.cc-room-picture--featured strong { font-size:18px; }
.cc-room-more-link-grid {
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 14px;
  max-height:230px;
  margin-top:0;
  padding:7px 12px 8px;
  overflow-y:auto;
  border:1px solid rgba(197,151,86,.34);
  border-top:0;
  border-radius:0 0 11px 11px;
  background:rgba(255,252,249,.74);
}
.cc-room-more-link-grid[hidden] { display:none !important; }
.cc-room-more-link {
  display:grid;
  grid-template-columns:10px minmax(0,1fr) 12px;
  align-items:center;
  gap:6px;
  min-height:37px;
  color:#75425a !important;
  border-bottom:1px solid rgba(196,151,87,.18);
  text-decoration:none !important;
}
.cc-room-more-link span { color:#c59a5b; font-size:6px; }
.cc-room-more-link strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11.5px; font-weight:750; }
.cc-room-more-link b { color:#c59a5b; font-size:13px; font-weight:400; text-align:right; }
.cc-room-more-link:hover strong { color:#6f2947; }
.cc-room-gallery > .cc-deluxe-more[aria-expanded="true"] { border-radius:12px 12px 0 0; }

/* Tags：延续原版 2 张主题图、3 条标签、2 列滚动展开。 */
.cc-topic-picture { min-height:108px; border-radius:9px; }
.cc-topic-picture strong { font-size:14px; }
.cc-topic-row { min-height:43px; }
.cc-topic-row strong { font-size:13px; }
.cc-topic-more-panel { max-height:310px; padding:8px 7px; border-top:1px solid rgba(199,157,93,.24); background:rgba(255,252,250,.54); }
.cc-topic-more-panel .cc-topic-row { min-height:40px; font-size:11.5px; }
.cc-topic-more-panel .cc-topic-row strong { font-size:11.5px; }

/* 小泳池：全部文字加大，保证 Electron 1920x1080 下可读。 */
.cc-mini-pool-intro { padding:10px 11px; font-size:12px; line-height:1.45; }
.cc-mini-pool-intro strong { font-size:12px; }
.cc-mini-pool-item { padding:13px 4px 14px; }
.cc-mini-pool-meta { gap:9px; align-items:flex-start; }
.cc-mini-pool-user { gap:7px; }
.cc-mini-pool-avatar { flex-basis:30px; width:30px; height:30px; }
.cc-mini-pool-author,.cc-mini-pool-parent b { font-size:12px; line-height:1.4; }
.cc-mini-pool-parent { gap:5px; font-size:10.5px; }
.cc-mini-pool-location { max-width:43%; font-size:10.5px; line-height:1.45; }
.cc-mini-pool-snippet { margin-top:8px; font-size:13px; line-height:1.75; }

/* 住户名册：只显示简介，字体整体放大；聊天气泡保持可点击。 */
.cc-prince-list { gap:13px; }
.cc-resident-card { grid-template-columns:74px minmax(0,1fr); min-height:146px; padding:17px 54px 17px 13px; }
.cc-resident-avatar { width:68px; height:68px; }
.cc-resident-room { top:9px; right:11px; max-width:120px; padding:4px 7px; font-size:10px; }
.cc-resident-copy h3 { font-size:18px; line-height:1.28; }
.cc-resident-copy > strong { margin-top:4px; font-size:11px; }
.cc-resident-copy p { margin-top:7px; font-size:12.5px; line-height:1.72; }
.cc-resident-chat { right:11px; bottom:13px; width:37px; height:37px; border-radius:10px; box-shadow:0 6px 15px rgba(82,31,53,.09); }
.cc-resident-chat svg { width:20px; height:20px; }


@media (max-width:720px) {
  .cc-room-more-link-grid { grid-template-columns:1fr; }
  .cc-resident-card { grid-template-columns:58px minmax(0,1fr); padding-left:10px; }
  .cc-resident-avatar { width:54px; height:54px; }
}


/* =========================================================
   2026-08-18 15:51｜付费 Post / 原版 Tags / 王子聊天气泡稳定修复
   ========================================================= */

/* Archive 右栏直接复用 /game-main-hub 的原版 chouchou_topic_tags。 */
.cc-side-panel[data-panel="tags"] #ccTagsList { padding: 13px 12px 15px; }
.cc-side-panel[data-panel="tags"] .cctt-topic-tags {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
/* Archive 外层已有“住户主题活动”标题，内部保留原版王冠装饰但避免重复标题。 */
.cc-side-panel[data-panel="tags"] .cctt-heading-title { display: none !important; }
.cc-side-panel[data-panel="tags"] .cctt-heading { margin-bottom: 12px !important; }
.cc-side-panel[data-panel="tags"] .cctt-heading-line { width: 42px; flex-basis: 42px; }
.cc-side-panel[data-panel="tags"] .cctt-featured-card { min-height: 108px; }
.cc-side-panel[data-panel="tags"] .cctt-tag-link { font-size: 13px; }
.cc-side-panel[data-panel="tags"] .cctt-more-panel.is-open { max-height: 310px; }

/*
 * CW3 付费 Post：原组件使用 viewport @media；Electron/缩放环境中容易误判成窄屏。
 * 这里按文章实际容器宽度恢复原本桌面两栏。只在文章容器足够宽时生效。
 */
.cc-post-body { container-type: inline-size; }
@container (min-width: 820px) {
  .cc-post-body .cw3-otome .cw3-grid,
  .cc-post-body .cw3-otome .cw3-main-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1.28fr) minmax(330px, .72fr) !important;
    gap: 18px !important;
    align-items: start !important;
  }
  .cc-post-body .cw3-otome .cw3-left-stack,
  .cc-post-body .cw3-otome .cw3-right-stack,
  .cc-post-body .cw3-otome .cw3-media-stack {
    display: grid !important;
    gap: 18px !important;
    min-width: 0 !important;
    align-content: start !important;
  }
}

/* 不让 /game-posts/ 的通用图片规则破坏 CW3 自己的媒体尺寸规则。 */
.cc-post-body .cw3-otome .cw3-banner-image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.cc-post-body .cw3-otome .cw3-vn-cover-image,
.cc-post-body .cw3-otome .cw3-music-cover,
.cc-post-body .cw3-otome .cw3-video-frame img,
.cc-post-body .cw3-otome .cw3-video-frame video {
  max-width: 100% !important;
}

/* 住户名册：王子气泡明确保持可见、可点击。 */
.cc-resident-card--prince .cc-resident-chat {
  display: grid !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  z-index: 5;
}
.cc-resident-card--prince .cc-resident-chat:hover {
  color: #fff !important;
  border-color: rgba(126, 49, 83, .72) !important;
  background: linear-gradient(145deg, #a8587b, #7c3454) !important;
  transform: translateY(-1px);
}


/* =========================================================
   2026-08-18 15:51｜Electron 付费 Post 双栏强制恢复 + 右栏可读性
   ========================================================= */
/*
 * ChouChou Condo 游戏窗口存在系统 DPI / Electron 缩放差异。
 * CW3 原版的 @media(max-width:900px) 会在部分机器上误判成窄屏，
 * 将原本“左：视觉小说/正文/视频；右：简介/人物/音乐/评论”压成单列。
 * 游戏版固定以原版桌面构图为优先，不再允许该 VIP Post 在 Electron 中塌成单栏。
 */
.cc-post-body .cw3-otome > .cw3-grid.cw3-main-row,
.cc-post-body .cw3-otome .cw3-grid.cw3-main-row {
  display:grid !important;
  grid-template-columns:minmax(0,1.28fr) minmax(310px,.72fr) !important;
  gap:18px !important;
  align-items:start !important;
  width:100% !important;
  min-width:0 !important;
}
.cc-post-body .cw3-otome .cw3-main-row > .cw3-left-stack {
  grid-column:1 !important;
  grid-row:1 !important;
  display:grid !important;
  min-width:0 !important;
  gap:18px !important;
  align-content:start !important;
}
.cc-post-body .cw3-otome .cw3-main-row > .cw3-right-stack {
  grid-column:2 !important;
  grid-row:1 !important;
  display:grid !important;
  min-width:0 !important;
  gap:18px !important;
  align-content:start !important;
}
/* 原版右栏组件严格留在右栏，不得被通用文章样式拉成 100% 单列。 */
.cc-post-body .cw3-otome .cw3-right-stack > .cw3-info-card,
.cc-post-body .cw3-otome .cw3-right-stack > .cw3-music-feature,
.cc-post-body .cw3-otome .cw3-right-stack > .cw3-comments-card {
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
/* 游戏固定大画面优先；即使 Electron 报告窄 CSS viewport，也保持两栏。 */
@media (max-width:900px) {
  .cc-post-body .cw3-otome > .cw3-grid.cw3-main-row,
  .cc-post-body .cw3-otome .cw3-grid.cw3-main-row {
    grid-template-columns:minmax(0,1.28fr) minmax(300px,.72fr) !important;
  }
}

/* 小泳池：再次放大“全部文字”，提高 Electron 远距离阅读清晰度。 */
.cc-side-panel[data-panel="pool"] .cc-side-heading small { font-size:10px !important; }
.cc-side-panel[data-panel="pool"] .cc-side-heading h2 { font-size:20px !important; }
.cc-side-panel[data-panel="pool"] .cc-side-badge { font-size:10px !important; padding:5px 8px !important; }
.cc-mini-pool-intro { font-size:12.5px !important; line-height:1.55 !important; padding:10px 11px !important; }
.cc-mini-pool-intro strong { font-size:13px !important; }
.cc-mini-pool-avatar { flex-basis:30px !important; width:30px !important; height:30px !important; }
.cc-mini-pool-author,
.cc-mini-pool-parent b { font-size:12.5px !important; line-height:1.45 !important; }
.cc-mini-pool-parent { font-size:11.5px !important; line-height:1.45 !important; }
.cc-mini-pool-location { font-size:11.5px !important; line-height:1.45 !important; }
.cc-mini-pool-snippet { font-size:15px !important; line-height:1.72 !important; }
.cc-pool-panel .cc-side-more { font-size:12.5px !important; }

/* 住户名册：头像、房号、名字、身份、简介、聊天按钮全部再放大。 */
.cc-side-panel[data-panel="princes"] .cc-side-heading small { font-size:10px !important; }
.cc-side-panel[data-panel="princes"] .cc-side-heading h2 { font-size:20px !important; }
.cc-resident-card { grid-template-columns:78px minmax(0,1fr) !important; min-height:156px !important; padding:18px 58px 18px 14px !important; gap:13px !important; }
.cc-resident-avatar { width:72px !important; height:72px !important; }
.cc-resident-room { top:10px !important; right:12px !important; max-width:130px !important; padding:5px 8px !important; font-size:11.5px !important; }
.cc-resident-copy h3 { font-size:20px !important; line-height:1.28 !important; }
.cc-resident-copy > strong { margin-top:4px !important; font-size:13px !important; line-height:1.4 !important; }
.cc-resident-copy p { margin-top:8px !important; font-size:14px !important; line-height:1.72 !important; }
.cc-resident-chat { right:12px !important; bottom:14px !important; width:42px !important; height:42px !important; border-radius:11px !important; }
.cc-resident-chat svg { width:22px !important; height:22px !important; }

/* 生日限定 Tag 在普通日期被直接过滤；手动输入 birthday URL 时显示温和提示。 */
.cc-birthday-closed-state {
  display: grid !important;
  place-items: center !important;
  gap: 8px !important;
  min-height: 210px !important;
  padding: 32px !important;
  text-align: center !important;
  border: 1px solid rgba(198,160,95,.48) !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(255,255,255,.98), rgba(255,255,255,0) 42%),
    linear-gradient(145deg, #fffdf9, #fff1f6) !important;
  box-shadow: 0 14px 32px rgba(91,34,61,.09) !important;
}
.cc-birthday-closed-state::before {
  content: "♔";
  color: #c9a25f;
  font-size: 26px;
}
.cc-birthday-closed-state strong {
  color: #6f2947;
  font-family: "Noto Serif SC","Songti SC",Georgia,serif;
  font-size: 22px;
  letter-spacing: .08em;
}
.cc-birthday-closed-state span {
  color: #9a7a88;
  font-size: 13px;
}

/* 住户名册：头像与姓名都可进入对应个人页；玩家卡片增加长简介。 */
.cc-resident-avatar-link,
.cc-resident-name-link { text-decoration:none !important; color:inherit !important; }
.cc-resident-avatar-link { cursor:pointer; transition:transform .2s ease, box-shadow .2s ease; }
.cc-resident-avatar-link:hover { transform:translateY(-1px) scale(1.02); box-shadow:0 9px 20px rgba(82,31,53,.16); }
.cc-resident-name-link:hover { color:#9b4669 !important; }
.cc-resident-copy h3 .cc-resident-name-link { font:inherit; line-height:inherit; }
.cc-resident-short-intro { display:block !important; overflow-wrap:anywhere; white-space:normal !important; }
.cc-resident-long-intro { margin-top:7px !important; padding-top:7px; border-top:1px solid rgba(190,145,76,.18); }
.cc-resident-card--player { min-height:174px !important; }


/* =========================================================
   260819-1714｜小泳池配色统一：Condo 酒红 × 玫瑰 × 香槟金
   移除旧版蓝色泳池 UI，保持右栏与全站视觉一致。
   ========================================================= */
.cc-side-panel[data-panel="pool"] {
  border-color: rgba(190,145,76,.50) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(224,150,182,.15), transparent 31%),
    linear-gradient(180deg, rgba(255,253,249,.96), rgba(255,246,249,.94)) !important;
  box-shadow: 0 14px 32px rgba(82,31,53,.09), inset 0 1px 0 rgba(255,255,255,.96) !important;
}
.cc-side-panel[data-panel="pool"] .cc-side-heading {
  border-bottom-color: rgba(225,192,126,.50) !important;
  background:
    radial-gradient(circle at 7% 0%, rgba(255,255,255,.13), transparent 34%),
    linear-gradient(135deg, #793250 0%, #93405f 54%, #67263f 100%) !important;
}
.cc-side-panel[data-panel="pool"] .cc-side-mark {
  color:#f5ddb0 !important;
  border-color:rgba(239,216,165,.60) !important;
  background:rgba(255,255,255,.09) !important;
}
.cc-mini-pool-intro {
  border-color:rgba(190,145,76,.34) !important;
  color:#7b5868 !important;
  background:linear-gradient(135deg,#fffdf9,#fff1f6) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92) !important;
}
.cc-mini-pool-intro strong { color:#6f2947 !important; }
.cc-mini-pool-list {
  scrollbar-color:#a75073 #faedf2 !important;
}
.cc-mini-pool-list::-webkit-scrollbar-track { background:#faedf2 !important; }
.cc-mini-pool-list::-webkit-scrollbar-thumb {
  border:2px solid #faedf2 !important;
  border-radius:999px !important;
  background:#a75073 !important;
}
.cc-mini-pool-item { border-bottom-color:rgba(167,80,115,.22) !important; }
.cc-mini-pool-avatar {
  border-color:rgba(194,149,81,.54) !important;
  background:#fffaf6 !important;
  box-shadow:0 3px 9px rgba(82,31,53,.09) !important;
}
.cc-mini-pool-author,
.cc-mini-pool-parent b { color:#6f2947 !important; }
.cc-mini-pool-author.is-player,
.cc-mini-pool-parent b.is-player { color:#a75073 !important; }
.cc-mini-pool-parent { color:#a28794 !important; }
.cc-mini-pool-location { color:#9a7a88 !important; }
.cc-mini-pool-snippet { color:#5f4a55 !important; }
.cc-pool-panel .cc-side-more {
  border-top-color:rgba(190,145,76,.30) !important;
  color:#6f2947 !important;
}

/* =========================================================
   2026-08-19 17:38｜Post 评论框整层主题一致性
   - 外层 Makers slot 不再固定酒红/粉色；
   - 由 game-posts.js 把每篇 Post 的真实主色写入变量；
   - iframe 外壳、等待状态、细边框全部跟随同一主题。
   ========================================================= */
.p1000-game-posts-comment-slot {
  --cc-comment-theme: #6f2947;
  --cc-comment-theme-rgb: 111,41,71;
  border-color: rgba(var(--cc-comment-theme-rgb), .28) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(var(--cc-comment-theme-rgb), .075), transparent 38%),
    linear-gradient(145deg, rgba(255,255,255,.97), rgba(var(--cc-comment-theme-rgb), .045)) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.72),
    0 8px 22px rgba(var(--cc-comment-theme-rgb), .055) !important;
}
.p1000-game-posts-comment-slot .cc-comment-auto-status {
  color: rgba(var(--cc-comment-theme-rgb), .72) !important;
}
.p1000-game-posts-comment-slot .cc-comment-auto-status > span {
  border-color: rgba(var(--cc-comment-theme-rgb), .28) !important;
  color: var(--cc-comment-theme) !important;
  background: rgba(255,255,255,.92) !important;
}
.p1000-game-posts-comment-slot .cc-comment-auto-status strong {
  color: var(--cc-comment-theme) !important;
}
.p1000-game-posts-comment-slot .cc-comment-auto-status small {
  color: rgba(var(--cc-comment-theme-rgb), .68) !important;
}
.p1000-game-posts-comment-slot .cc-comment-auto-status.is-error {
  color: var(--cc-comment-theme) !important;
}
.p1000-game-posts-comment-slot .p1000-game-posts-comment-frame {
  border: 0 !important;
  background: rgba(var(--cc-comment-theme-rgb), .025) !important;
  box-shadow: none !important;
}



/* =========================================================
   260828-1448 · Condo single static Post reader
   /game-posts/?post_id=123&condo=1 reuses the proven Makers snapshot runtime,
   but removes the old list/archive chrome. The parent Condo owns navigation.
========================================================= */
html.cc-condo-single-reader-html,
body.cc-condo-single-reader-body {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 100% !important;
  background: #fffdf9 !important;
  overflow-x: hidden !important;
}

body.cc-condo-single-reader-body .cc-game-posts.cc-condo-single-reader {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #fffdf9 !important;
}

.cc-game-posts.cc-condo-single-reader .cc-page-ornament,
.cc-game-posts.cc-condo-single-reader .cc-page-topbar,
.cc-game-posts.cc-condo-single-reader .cc-hero,
.cc-game-posts.cc-condo-single-reader .cc-sidebar,
.cc-game-posts.cc-condo-single-reader #ccFilterBar,
.cc-game-posts.cc-condo-single-reader #ccPagination {
  display: none !important;
}

.cc-game-posts.cc-condo-single-reader .cc-layout {
  display: block !important;
  width: 100% !important;
  max-width: 1480px !important;
  margin: 0 auto !important;
  padding: clamp(10px, 1.8vw, 24px) !important;
}

.cc-game-posts.cc-condo-single-reader .cc-post-column,
.cc-game-posts.cc-condo-single-reader .cc-posts-list,
.cc-game-posts.cc-condo-single-reader .cc-post-entry,
.cc-game-posts.cc-condo-single-reader .cc-post-body {
  width: 100% !important;
  max-width: none !important;
}

.cc-game-posts.cc-condo-single-reader .cc-post-entry {
  margin: 0 !important;
}

/* Condo owns the only visible language switcher. Keep the translation engine
   loaded so the iframe follows the same googtrans cookie, but hide its UI. */
body.cc-condo-single-reader-body .gtranslate_wrapper,
body.cc-condo-single-reader-body .gt_float_switcher,
body.cc-condo-single-reader-body .gt_switcher,
body.cc-condo-single-reader-body .gt_selector,
body.cc-condo-single-reader-body .goog-te-gadget,
body.cc-condo-single-reader-body [class*="gtranslate"] {
  display: none !important;
}

/* Super Card's small prince-chat button stays active; only the old global
   floating launcher is suppressed. Clicking a prince's small chat icon still
   opens #chat-box-wrapper directly and X closes it again. */
body.cc-condo-single-reader-body #chat-float-btn {
  display: none !important;
}

.cc-game-posts.cc-condo-single-reader #ccPostsLoading {
  display: none !important;
}
