:root {
  --cc-newcondo-ink: #392c31;
  --cc-newcondo-muted: #76666c;
  --cc-newcondo-plum: #744b5b;
  --cc-newcondo-plum-dark: #53333f;
  --cc-newcondo-gold: #b89862;
  --cc-newcondo-paper: rgba(255, 253, 250, 0.94);
  --cc-newcondo-glass: rgba(39, 30, 34, 0.76);
  --cc-newcondo-shadow: 0 12px 38px rgba(26, 20, 23, 0.24);
}

html[data-cc-newcondo-page="1"],
html[data-cc-newcondo-page="1"] body {
  width: 100%;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  background: #1b445b;
}

body.cc-newcondo-page,
body.cc-newcondo-page * {
  box-sizing: border-box;
}

body.cc-newcondo-page {
  min-width: 0;
  color: var(--cc-newcondo-ink);
  font-family: "Noto Sans SC", "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;
}

body.cc-newcondo-page #wpadminbar {
  display: none !important;
}

.cc-newcondo-root {
  position: relative;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  overflow: hidden;
  background: #1b445b;
  /* Dialogs are inside this root, while the language control is under body.
     Do not trap every dialog in a lower stacking context. */
  isolation: auto;
}

.cc-newcondo-viewport {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: auto;
  overscroll-behavior: contain;
  touch-action: pan-x pan-y;
  cursor: grab;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 250, 246, 0.82) rgba(38, 31, 34, 0.34);
}

.cc-newcondo-viewport:focus-visible {
  outline: 2px solid rgba(255, 250, 246, 0.95);
  outline-offset: -3px;
}

.cc-newcondo-viewport.is-dragging {
  cursor: grabbing;
  user-select: none;
}

.cc-newcondo-viewport::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.cc-newcondo-viewport::-webkit-scrollbar-track {
  background: rgba(38, 31, 34, 0.34);
}

.cc-newcondo-viewport::-webkit-scrollbar-thumb {
  border: 2px solid transparent;
  border-radius: 999px;
  background: rgba(255, 250, 246, 0.82);
  background-clip: padding-box;
}

.cc-newcondo-track {
  display: flex;
  align-items: stretch;
  width: max-content;
  min-width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  background: #1b445b;
}

.cc-newcondo-panel {
  position: relative;
  flex: 0 0 auto;
  width: auto;
  height: 100%;
  margin: 0;
  padding: 0;
  aspect-ratio: var(--cc-newcondo-panel-ratio);
  overflow: visible;
  background: #1b445b;
}

/* The one-pixel overlap covers fractional browser-rendering seams. */
.cc-newcondo-panel:not(:last-child) {
  margin-right: -1px;
}

.cc-newcondo-image,
.cc-newcondo-overlay {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0;
  object-fit: fill;
  pointer-events: none;
  user-select: none;
  -webkit-user-drag: none;
}

.cc-newcondo-image { z-index: 0; }
.cc-newcondo-overlay { z-index: 2; }

.cc-newcondo-hotspots,
.cc-newcondo-prince-hotspots {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.cc-newcondo-hotspots { z-index: 5; }
.cc-newcondo-prince-hotspots { z-index: 4; }

.cc-newcondo-hotspot {
  position: absolute;
  left: var(--cc-newcondo-hotspot-x);
  top: var(--cc-newcondo-hotspot-y);
  z-index: 6;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 31px;
  margin: 0;
  padding: 6px 12px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(84, 57, 67, 0.55);
  border-radius: 8px;
  outline: 0;
  background: rgba(255, 253, 250, 0.94);
  box-shadow: 0 2px 10px rgba(41, 27, 33, 0.22), 0 1px 0 rgba(255,255,255,.9) inset;
  color: var(--cc-newcondo-ink);
  font-family: inherit;
  font-size: 13px;
  font-weight: 650;
  line-height: 1.15;
  letter-spacing: 0.01em;
  white-space: nowrap;
  pointer-events: auto;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease, color 150ms ease;
}

.cc-newcondo-hotspot:hover,
.cc-newcondo-hotspot:active {
  transform: translate(-50%, -50%);
  border-color: rgba(91, 51, 67, 0.85);
  background: #fffdfa;
  box-shadow: 0 4px 16px rgba(41, 27, 33, 0.3), 0 1px 0 #fff inset;
  color: var(--cc-newcondo-plum-dark);
}

.cc-newcondo-hotspot:focus-visible {
  transform: translate(-50%, -50%);
  outline: 3px solid rgba(255, 252, 246, 0.98);
  outline-offset: 2px;
  border-color: var(--cc-newcondo-plum);
}

.cc-newcondo-hotspot[hidden] { display: none !important; }

.cc-newcondo-prince-hotspot {
  position: absolute;
  z-index: 5;
  left: var(--cc-newcondo-prince-x);
  top: 81.5%;
  width: clamp(34px, 5.3%, 76px);
  height: 17.5%;
  padding: 0;
  transform: translateX(-50%);
  border: 1px solid transparent;
  border-radius: 45% 45% 18px 18px;
  outline: 0;
  background: transparent;
  box-shadow: none;
  color: transparent;
  pointer-events: auto;
  cursor: pointer;
}

.cc-newcondo-prince-hotspot span {
  position: absolute;
  left: 50%;
  bottom: 3px;
  transform: translateX(-50%);
  padding: 2px 5px;
  border-radius: 999px;
  background: rgba(53, 39, 45, 0.76);
  color: #fff;
  font: 650 9px/1 system-ui, sans-serif;
  opacity: 0;
  transition: opacity 150ms ease;
}

.cc-newcondo-prince-hotspot:hover,
.cc-newcondo-prince-hotspot:focus-visible,
.cc-newcondo-prince-hotspot.is-selected {
  border-color: rgba(255, 250, 244, 0.85);
  background: linear-gradient(180deg, transparent 25%, rgba(255,255,255,.08));
  box-shadow: 0 0 0 2px rgba(95, 58, 72, 0.5), 0 0 18px rgba(255, 249, 238, 0.6);
}

.cc-newcondo-debug .cc-newcondo-prince-hotspot span { opacity: 1; }

.cc-newcondo-rent-notice {
  position: absolute;
  z-index: 7;
  left: 68.6%;
  top: 62.6%;
  display: flex;
  align-items: center;
  transform: translateX(-50%);
  overflow: hidden;
  border: 1px solid rgba(89, 58, 69, 0.52);
  border-radius: 7px;
  background: rgba(255, 253, 249, 0.94);
  box-shadow: 0 3px 13px rgba(37, 27, 31, 0.23);
  white-space: nowrap;
}

.cc-newcondo-rent-notice[hidden] { display: none !important; }
.cc-newcondo-rent-notice button { border: 0; background: transparent; color: var(--cc-newcondo-ink); cursor: pointer; }
.cc-newcondo-rent-open { padding: 6px 7px 6px 10px; font-family: inherit; font-size: 11px; font-weight: 600; line-height: 1.1; }
.cc-newcondo-rent-close { align-self: stretch; padding: 3px 7px; border-left: 1px solid rgba(90,60,70,.18) !important; font: 500 15px/1 system-ui, sans-serif; }

.cc-newcondo-daily {
  position: absolute;
  z-index: 6;
  left: 32.5%;
  top: 59.2%;
  width: min(340px, 30%);
  padding: 9px 13px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,255,255,.64);
  border-radius: 10px;
  background: rgba(250, 252, 249, 0.84);
  box-shadow: 0 5px 20px rgba(25, 52, 63, 0.17);
  color: #39434a;
  text-align: center;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.cc-newcondo-daily p { margin: 0; font-size: 12px; line-height: 1.42; }
.cc-newcondo-daily p + p { margin-top: 4px; color: #5c4b51; }
.cc-newcondo-daily.is-hidden { display: none; }

.cc-newcondo-swan-toggle {
  position: absolute;
  z-index: 6;
  left: 32.7%;
  top: 66.3%;
  width: 8.4%;
  min-width: 54px;
  height: 7.8%;
  transform: translate(-50%, -50%);
  border: 0;
  outline: 0;
  background: transparent;
  color: transparent;
  cursor: pointer;
}

.cc-newcondo-swan-toggle span {
  position: absolute;
  left: 50%;
  bottom: -2px;
  transform: translateX(-50%);
  padding: 4px 7px;
  border: 1px solid rgba(91, 67, 74, 0.35);
  border-radius: 6px;
  background: rgba(255,255,255,.88);
  color: #524249;
  font-family: inherit;
  font-size: 10px;
  font-weight: 600;
  line-height: 1;
  opacity: 0;
  white-space: nowrap;
  transition: opacity 140ms ease;
}

.cc-newcondo-swan-toggle:hover span,
.cc-newcondo-swan-toggle:focus-visible span { opacity: 1; }
.cc-newcondo-swan-toggle:focus-visible { outline: 2px solid rgba(255,255,255,.92); border-radius: 45%; }

.cc-newcondo-zoom-controls {
  position: fixed;
  z-index: 80;
  top: max(12px, env(safe-area-inset-top));
  left: max(12px, env(safe-area-inset-left));
  display: flex;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 9px;
  background: rgba(43, 34, 38, 0.75);
  box-shadow: 0 5px 18px rgba(17, 14, 15, 0.24);
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
}

.cc-newcondo-zoom-controls button {
  min-width: 38px;
  height: 36px;
  margin: 0;
  padding: 0 10px;
  border: 0;
  border-right: 1px solid rgba(255,255,255,.16);
  background: transparent;
  color: #fffdfa;
  font: 600 18px/1 system-ui, sans-serif;
  cursor: pointer;
}

.cc-newcondo-zoom-controls button:last-child { border-right: 0; }
.cc-newcondo-zoom-controls button:hover { background: rgba(255,255,255,.13); }
.cc-newcondo-zoom-controls button:focus-visible { outline: 2px solid #fff; outline-offset: -3px; }
.cc-newcondo-zoom-controls .cc-newcondo-zoom-value { min-width: 62px; font-size: 11px; letter-spacing: .02em; }

.cc-newcondo-profile {
  position: fixed;
  /* The small prince profile is also a popup, above the home translator. */
  z-index: 2000;
  right: max(15px, env(safe-area-inset-right));
  bottom: max(18px, calc(env(safe-area-inset-bottom) + 10px));
  width: min(380px, calc(100vw - 30px));
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.68);
  border-radius: 14px;
  background: rgba(255, 253, 250, 0.94);
  box-shadow: var(--cc-newcondo-shadow);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: width 180ms ease, transform 180ms ease, opacity 180ms ease;
}

.cc-newcondo-profile-tools { position: absolute; z-index: 2; top: 8px; right: 8px; display: flex; gap: 4px; }
.cc-newcondo-profile-tools button { width: 28px; height: 28px; padding: 0; border: 1px solid rgba(77,55,63,.18); border-radius: 7px; background: rgba(255,255,255,.66); color: #58424b; font: 500 16px/1 system-ui, sans-serif; cursor: pointer; }
.cc-newcondo-profile-body { display: flex; gap: 13px; padding: 19px 78px 14px 17px; }
.cc-newcondo-profile-body img { flex: 0 0 74px; width: 74px; height: 74px; border: 1px solid rgba(92,63,74,.18); border-radius: 12px; object-fit: cover; background: #eee8e5; }
.cc-newcondo-profile-copy { min-width: 0; }
.cc-newcondo-profile-eyebrow { display: block; margin-bottom: 3px; color: var(--cc-newcondo-gold); font: 700 9px/1.2 system-ui, sans-serif; letter-spacing: .16em; }
.cc-newcondo-profile h2 { margin: 0; color: #442f37; font-size: 19px; line-height: 1.2; }
.cc-newcondo-profile-title { margin: 3px 0 0; color: var(--cc-newcondo-plum); font-size: 12px; font-weight: 650; }
.cc-newcondo-profile-description { margin: 7px 0 0; color: #62545a; font-size: 12px; line-height: 1.55; }
.cc-newcondo-profile-actions { display: flex; border-top: 1px solid rgba(83,54,65,.12); }
.cc-newcondo-profile-actions button { flex: 1; min-height: 39px; border: 0; border-right: 1px solid rgba(83,54,65,.12); background: rgba(250,246,243,.8); color: var(--cc-newcondo-plum-dark); font-family: inherit; font-size: 12px; font-weight: 650; line-height: 1; cursor: pointer; }
.cc-newcondo-profile-actions button:last-child { border-right: 0; }
.cc-newcondo-profile-actions button:hover { background: #fff; }

.cc-newcondo-profile.is-collapsed { width: 190px; }
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-description,
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-title,
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-eyebrow,
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-body img,
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-actions { display: none; }
.cc-newcondo-profile.is-collapsed .cc-newcondo-profile-body { padding: 14px 70px 14px 14px; }
.cc-newcondo-profile.is-collapsed h2 { font-size: 14px; }
.cc-newcondo-profile[hidden] { display: none !important; }

.cc-newcondo-profile-restore {
  position: fixed;
  z-index: 74;
  right: max(15px, env(safe-area-inset-right));
  bottom: max(18px, calc(env(safe-area-inset-bottom) + 10px));
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.65);
  border-radius: 8px;
  background: rgba(49,38,43,.76);
  color: #fff;
  font-family: inherit;
  font-size: 11px;
  font-weight: 600;
  line-height: 1;
  cursor: pointer;
  backdrop-filter: blur(8px);
}

.cc-newcondo-version {
  position: fixed;
  z-index: 85;
  left: max(12px, env(safe-area-inset-left));
  bottom: max(16px, calc(env(safe-area-inset-bottom) + 8px));
  display: flex;
  align-items: flex-end;
  gap: 7px;
}

.cc-newcondo-version-panel { display: flex; flex-direction: column; gap: 2px; padding: 7px 9px; border: 1px solid rgba(255,255,255,.45); border-radius: 7px; background: rgba(42,33,37,.74); color: #fff; box-shadow: 0 4px 14px rgba(15,12,13,.2); font: 500 10px/1.25 system-ui, sans-serif; backdrop-filter: blur(7px); }
.cc-newcondo-version-panel strong { font-weight: 650; letter-spacing: .04em; }
.cc-newcondo-version > button { width: 23px; height: 23px; padding: 0; border: 1px solid rgba(255,255,255,.48); border-radius: 999px; background: rgba(42,33,37,.6); cursor: pointer; }
.cc-newcondo-version > button span { display: block; width: 6px; height: 6px; margin: auto; border-radius: 50%; background: rgba(255,255,255,.82); }

.cc-newcondo-load-status,
.cc-newcondo-scroll-hint,
.cc-newcondo-toast {
  position: fixed;
  z-index: 90;
  left: 50%;
  display: flex;
  align-items: center;
  gap: 8px;
  max-width: min(90vw, 560px);
  transform: translateX(-50%);
  border: 1px solid rgba(255,255,255,.58);
  border-radius: 999px;
  background: var(--cc-newcondo-glass);
  box-shadow: 0 5px 22px rgba(19,13,17,.26);
  color: #fffaf7;
  font-size: 12px;
  line-height: 1.2;
  text-align: center;
  backdrop-filter: blur(9px);
  -webkit-backdrop-filter: blur(9px);
}

.cc-newcondo-load-status { top: max(12px, env(safe-area-inset-top)); padding: 8px 13px; transition: opacity 220ms ease, visibility 220ms ease; }
.cc-newcondo-load-status.is-ready { opacity: 0; visibility: hidden; pointer-events: none; }
.cc-newcondo-load-status.has-error { background: rgba(104,31,49,.92); }
.cc-newcondo-scroll-hint { bottom: max(24px, calc(env(safe-area-inset-bottom) + 14px)); padding: 9px 15px; pointer-events: none; transition: opacity 300ms ease, visibility 300ms ease; }
.cc-newcondo-scroll-hint.is-dismissed { opacity: 0; visibility: hidden; }
.cc-newcondo-toast { bottom: max(30px, calc(env(safe-area-inset-bottom) + 22px)); padding: 10px 16px; }
.cc-newcondo-toast[hidden] { display: none !important; }

.cc-newcondo-directory,
.cc-newcondo-reader,
.cc-newcondo-widget-guide {
  position: fixed;
  inset: 0;
  z-index: 3000;
  display: grid;
  place-items: center;
  padding: 20px;
}

.cc-newcondo-directory[hidden],
.cc-newcondo-reader[hidden],
.cc-newcondo-widget-guide[hidden] { display: none !important; }

.cc-newcondo-modal-backdrop { position: absolute; inset: 0; background: rgba(28,22,25,.68); backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
.cc-newcondo-directory-dialog,
.cc-newcondo-reader-dialog,
.cc-newcondo-widget-guide > section { position: relative; z-index: 1; width: min(980px, 100%); max-height: min(88vh, 880px); overflow: auto; border: 1px solid rgba(255,255,255,.72); border-radius: 18px; background: #fbf8f5; box-shadow: 0 28px 80px rgba(20,15,17,.42); }
.cc-newcondo-directory-dialog { padding: 34px; }
.cc-newcondo-directory-dialog > header { padding-right: 70px; }
.cc-newcondo-directory-dialog > header > span,
.cc-newcondo-widget-kicker { color: var(--cc-newcondo-gold); font: 750 10px/1.2 system-ui, sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.cc-newcondo-directory-dialog h2,
.cc-newcondo-widget-guide h2 { margin: 6px 0 4px; color: #422f36; font-size: clamp(22px, 3vw, 34px); }
.cc-newcondo-directory-dialog header p { margin: 0; color: var(--cc-newcondo-muted); font-size: 13px; }

.cc-newcondo-modal-close { position: absolute; z-index: 3; top: 14px; right: 14px; display: inline-flex; align-items: center; gap: 5px; min-height: 34px; padding: 5px 10px; border: 1px solid rgba(77,54,63,.2); border-radius: 8px; background: rgba(255,255,255,.8); color: #533d46; font-family: inherit; font-size: 12px; font-weight: 600; line-height: 1; cursor: pointer; }
.cc-newcondo-modal-close span:first-child { font: 500 17px/1 system-ui, sans-serif; }
.cc-newcondo-directory-loading { margin-top: 22px; padding: 22px; border-radius: 12px; background: #f1ebe7; color: #76636b; text-align: center; }

.cc-newcondo-directory-content { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin-top: 24px; }
.cc-newcondo-post-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid rgba(86,59,69,.14); border-radius: 12px; background: #fff; box-shadow: 0 5px 18px rgba(42,29,34,.08); color: inherit; text-decoration: none; cursor: pointer; }
.cc-newcondo-post-image { position: relative; aspect-ratio: 16 / 10; overflow: hidden; background: #ece6e2; }
.cc-newcondo-post-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cc-newcondo-post-image.is-empty::after { content: "ChouChou Condo"; position: absolute; inset: 0; display: grid; place-items: center; color: #aa929b; font: 650 12px/1 system-ui, sans-serif; letter-spacing: .08em; }
.cc-newcondo-post-copy { display: flex; flex: 1; flex-direction: column; padding: 13px; }
.cc-newcondo-post-meta { display: flex; align-items: center; gap: 7px; margin-bottom: 7px; }
.cc-newcondo-post-meta img { width: 25px; height: 25px; border-radius: 50%; object-fit: cover; background: #eee; }
.cc-newcondo-post-meta span { min-width: 0; overflow: hidden; color: #746169; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.cc-newcondo-post-card h3 { margin: 0; color: #49343c; font-size: 15px; line-height: 1.38; }
.cc-newcondo-post-card p { margin: 7px 0 0; color: #7b6b71; font-size: 11px; line-height: 1.5; }
.cc-newcondo-post-badges { display: flex; flex-wrap: wrap; gap: 5px; margin-top: auto; padding-top: 10px; }
.cc-newcondo-badge { padding: 3px 7px; border-radius: 999px; background: #eee8e5; color: #6e5961; font-size: 10px; font-weight: 650; }
.cc-newcondo-badge-romance { background: #f4e4e9; color: #855064; }
.cc-newcondo-badge-daily { background: #e8efeb; color: #4c6c5a; }
.cc-newcondo-empty { grid-column: 1 / -1; padding: 34px; border: 1px dashed rgba(94,65,75,.24); border-radius: 12px; color: #76666c; text-align: center; }

.cc-newcondo-story-chapter { grid-column: 1 / -1; padding: 18px; border: 1px solid rgba(86,59,69,.14); border-radius: 12px; background: #fff; }
.cc-newcondo-story-chapter h3 { margin: 0 0 4px; color: #4a343d; font-size: 18px; }
.cc-newcondo-story-chapter > p { margin: 0 0 13px; color: #7b6a71; font-size: 12px; }
.cc-newcondo-story-sections { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.cc-newcondo-story-section { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; padding: 9px 11px; border: 1px solid rgba(82,58,67,.12); border-radius: 8px; background: #faf7f5; color: #513b43; text-align: left; cursor: pointer; }
.cc-newcondo-story-section small { flex: 0 0 auto; color: #a0838e; }

.cc-newcondo-prince-list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 10px; }
.cc-newcondo-prince-list button { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 10px; border: 1px solid rgba(83,58,67,.13); border-radius: 10px; background: #fff; color: #503943; text-align: left; cursor: pointer; }
.cc-newcondo-prince-list img { flex: 0 0 42px; width: 42px; height: 42px; border-radius: 9px; object-fit: cover; background: #eee; }
.cc-newcondo-prince-list strong { display: block; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.cc-newcondo-prince-list span { display: block; overflow: hidden; margin-top: 3px; color: #8a747c; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }

.cc-newcondo-reader-dialog { width: min(1120px, 100%); height: min(92vh, 900px); overflow: hidden; background: #fff; }
.cc-newcondo-reader-dialog iframe { display: block; width: 100%; height: 100%; border: 0; background: #fff; }
.cc-newcondo-reader-heading{position:absolute;inset:0 0 auto;height:52px;display:flex;align-items:center;padding:0 64px 0 22px;background:#fffaf7;border-bottom:1px solid #b995a223;z-index:4}
.cc-newcondo-reader-heading[hidden]{display:none!important}
.cc-newcondo-reader-heading h2{margin:0;color:#775062;font:500 15px/1.4 system-ui,sans-serif}
.cc-newcondo-reader.has-title .cc-newcondo-reader-dialog>iframe{margin-top:52px;height:calc(100% - 52px)!important}
.cc-newcondo-reader.has-title .cc-newcondo-reader-loading{top:52px}
.cc-newcondo-reader.has-title .cc-newcondo-reader-dialog>button[data-newcondo-reader-close]{top:7px;right:12px;z-index:5;width:38px;height:38px;padding:0;border:0;background:transparent;box-shadow:none;justify-content:center;color:#805a69}
.cc-newcondo-reader.has-title .cc-newcondo-reader-dialog>button[data-newcondo-reader-close] span{font:300 26px/1 system-ui,sans-serif}
.cc-newcondo-reader-loading { position: absolute; z-index: 2; inset: 0; display: grid; place-items: center; background: #f7f3f0; color: #765f68; font-size: 13px; transition: opacity 160ms ease, visibility 160ms ease; }
.cc-newcondo-reader-loading.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }

.cc-newcondo-widget-guide > section { width: min(540px, 100%); padding: 34px; }
.cc-newcondo-widget-guide p { color: #76646b; line-height: 1.6; }
.cc-newcondo-widget-actions { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 9px; margin-top: 18px; }
.cc-newcondo-widget-actions button { min-height: 44px; border: 1px solid rgba(82,57,66,.18); border-radius: 9px; background: #fff; color: #543d46; font-family: inherit; font-size: 12px; font-weight: 650; line-height: 1; cursor: pointer; }

html.cc-newcondo-modal-open,
html.cc-newcondo-modal-open body { overflow: hidden !important; }

/* The native GTranslate component remains visible above the map. */
body.cc-newcondo-page > .gtranslate_wrapper,
body.cc-newcondo-page > .gt_switcher_wrapper,
body.cc-newcondo-page > #gtranslate_wrapper,
body.cc-newcondo-page > [id^="gt-wrapper-"],
body.cc-newcondo-page > #gt_float_wrapper,
body.cc-newcondo-page .gt_float_switcher {
  position: fixed !important;
  z-index: 5000 !important;
  top: max(12px, env(safe-area-inset-top)) !important;
  right: max(12px, env(safe-area-inset-right)) !important;
  left: auto !important;
  bottom: auto !important;
}

.cc-newcondo-debug .cc-newcondo-panel::after { content: ""; position: absolute; inset: 0; z-index: 3; background-image: linear-gradient(to right, rgba(255,0,139,.34) 1px, transparent 1px), linear-gradient(to bottom, rgba(255,0,139,.34) 1px, transparent 1px); background-size: 10% 10%; pointer-events: none; }
.cc-newcondo-debug-label { position: absolute; z-index: 9; top: 8px; left: 8px; padding: 5px 8px; border-radius: 5px; background: #b61167; color: #fff; font: 700 12px/1 system-ui, sans-serif; pointer-events: none; }

@media (max-width: 760px) {
  .cc-newcondo-hotspot { min-height: 28px; padding: 5px 9px; font-size: 11px; }
  .cc-newcondo-profile { width: min(330px, calc(100vw - 24px)); right: 12px; bottom: 14px; }
  .cc-newcondo-profile-body { padding: 15px 70px 12px 13px; }
  .cc-newcondo-profile-body img { flex-basis: 58px; width: 58px; height: 58px; }
  .cc-newcondo-profile h2 { font-size: 16px; }
  .cc-newcondo-directory,
  .cc-newcondo-reader,
  .cc-newcondo-widget-guide { padding: 8px; }
  .cc-newcondo-directory-dialog { padding: 24px 15px 18px; }
  .cc-newcondo-directory-content { grid-template-columns: 1fr; }
  .cc-newcondo-story-sections,
  .cc-newcondo-prince-list { grid-template-columns: 1fr; }
  .cc-newcondo-daily { width: 34%; padding: 6px 8px; }
  .cc-newcondo-daily p { font-size: 10px; }
}

@media (max-height: 560px) {
  .cc-newcondo-hotspot { min-height: 26px; padding: 4px 8px; font-size: 10px; }
  .cc-newcondo-profile { max-height: 48vh; }
  .cc-newcondo-profile-description { display: -webkit-box; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  .cc-newcondo-scroll-hint { bottom: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  .cc-newcondo-load-status,
  .cc-newcondo-scroll-hint,
  .cc-newcondo-profile,
  .cc-newcondo-hotspot { transition: none; }
}

/* ================================================================
   New Condo 1.9.6 · visual parity with the protected CondoMap UI
   These rules intentionally reproduce the proven 1.8.16 directory,
   four-point-star button, Prince list, romance pointer and version switch.
   ================================================================ */

/* The room labels stay HTML text and at a fixed UI size while the artwork is
   resized. Only their percentage anchor follows each individual panel. */
.cc-newcondo-root .cc-newcondo-hotspot {
  gap: .42em;
  min-height: 29px;
  padding: .40em 1.04em .43em;
  border: 1px solid rgba(196, 146, 77, .82);
  border-radius: 999px;
  background:
    linear-gradient(100deg, rgba(255,255,255,.90) 0 8%, transparent 9% 90%, rgba(255,255,255,.54) 91%),
    linear-gradient(180deg, rgba(255,252,242,.92), rgba(247,228,222,.90));
  box-shadow:
    0 0 0 2px rgba(255,250,235,.38),
    0 5px 14px rgba(91,45,63,.18),
    inset 0 1px 0 rgba(255,255,255,.94);
  color: #71304d;
  font-family: Baskerville, "Noto Serif SC", "Songti SC", Georgia, serif;
  font-size: 13px;
  font-weight: 760;
  letter-spacing: .045em;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.cc-newcondo-root .cc-newcondo-hotspot::before {
  content: "✦";
  display: inline-block;
  color: #bc8840;
  font: 700 .82em/1 Georgia, serif;
  text-shadow: 0 0 5px rgba(239,198,103,.62);
}

.cc-newcondo-root .cc-newcondo-hotspot:hover,
.cc-newcondo-root .cc-newcondo-hotspot:active,
.cc-newcondo-root .cc-newcondo-hotspot:focus-visible {
  transform: translate(-50%, -50%);
  border-color: rgba(190,139,84,.96);
  outline: 0;
  background:
    linear-gradient(100deg, rgba(255,255,255,.94) 0 8%, transparent 9% 90%, rgba(255,255,255,.60) 91%),
    linear-gradient(180deg, rgba(255,254,250,.96), rgba(247,225,213,.94));
  box-shadow:
    0 7px 18px rgba(104,77,50,.20),
    0 0 0 2px rgba(231,199,160,.22),
    inset 0 1px 0 rgba(255,255,255,.96);
  color: #6c4b38;
}

/* A selected Prince is identified only by the floating jewel-heart. The
   previous white hit-area rectangle is deliberately removed. */
.cc-newcondo-root .cc-newcondo-prince-hotspot,
.cc-newcondo-root .cc-newcondo-prince-hotspot:hover,
.cc-newcondo-root .cc-newcondo-prince-hotspot:focus-visible,
.cc-newcondo-root .cc-newcondo-prince-hotspot.is-selected {
  border: 0;
  outline: 0;
  background: transparent;
  box-shadow: none;
}

.cc-newcondo-root .cc-newcondo-prince-debug-id { display: none; }
.cc-newcondo-debug .cc-newcondo-prince-debug-id { display: block; opacity: 1; }

.cc-newcondo-root .cc-newcondo-romance-pointer {
  position: absolute;
  top: 4%;
  left: 50%;
  z-index: 7;
  display: grid;
  width: 46px;
  height: 46px;
  place-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  opacity: 0;
  pointer-events: none;
  filter: drop-shadow(0 0 7px rgba(255,190,211,.96)) drop-shadow(0 0 13px rgba(225,162,75,.58)) drop-shadow(0 5px 9px rgba(82,39,55,.30));
  transform: translate(-50%, -45%) scale(.82);
  transition: opacity .18s ease, transform .24s cubic-bezier(.2,.8,.2,1);
}

.cc-newcondo-root .cc-newcondo-romance-pointer b {
  position: relative;
  display: grid;
  width: 100%;
  height: 100%;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: transparent;
  box-shadow: none;
}

.cc-newcondo-root .cc-newcondo-romance-pointer b::before {
  content: "";
  position: absolute;
  inset: 7px;
  border-radius: 50%;
  background: radial-gradient(circle,rgba(250,113,158,.48),rgba(236,158,184,.18) 46%,transparent 72%);
  box-shadow: 0 0 11px rgba(248,173,197,.76),0 0 18px rgba(221,174,91,.34);
}

.cc-newcondo-root .cc-newcondo-romance-pointer svg {
  display: block;
  width: 100%;
  height: 100%;
  overflow: visible;
}

.cc-newcondo-root .cc-newcondo-heart-orbit {
  fill: none;
  stroke: rgba(255,255,255,.98);
  stroke-width: 2.15;
  filter: drop-shadow(0 0 3px #ef7da5);
}

.cc-newcondo-root .cc-newcondo-heart-orbit-inner {
  fill: none;
  stroke: rgba(240,159,187,.92);
  stroke-width: 1;
  stroke-dasharray: 2.3 2.7;
}

.cc-newcondo-root .cc-newcondo-heart-core {
  fill: #ec6d96;
  stroke: rgba(255,255,255,.98);
  stroke-width: 1.45;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 5px rgba(239,103,148,.86));
}

.cc-newcondo-root .cc-newcondo-heart-shine {
  fill: none;
  stroke: rgba(255,255,255,.94);
  stroke-width: 1.8;
  stroke-linecap: round;
}

.cc-newcondo-root .cc-newcondo-heart-gem {
  fill: #f1cf81;
  stroke: rgba(255,255,255,.98);
  stroke-width: .85;
  stroke-linejoin: round;
  filter: drop-shadow(0 0 3px rgba(246,210,128,.88));
}

.cc-newcondo-root .cc-newcondo-heart-spark { fill: #fff8ef; stroke: #e9bd68; stroke-width: .7; filter: drop-shadow(0 0 3px #ef95b4); }

.cc-newcondo-root .cc-newcondo-romance-pointer::before,
.cc-newcondo-root .cc-newcondo-romance-pointer::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: -4px;
  border-radius: 50%;
  background: repeating-conic-gradient(from 0deg,rgba(251,219,147,.92) 0 1deg,transparent 1deg 22.5deg);
  opacity: .72;
  -webkit-mask: radial-gradient(circle,transparent 0 46%,#000 48% 51%,transparent 54%);
  mask: radial-gradient(circle,transparent 0 46%,#000 48% 51%,transparent 54%);
}
.cc-newcondo-root .cc-newcondo-romance-pointer::after { inset: -7px; background: radial-gradient(circle,rgba(244,123,164,.26),rgba(244,204,128,.15) 42%,transparent 70%); opacity: 1; -webkit-mask: none; mask: none; }

.cc-newcondo-root .cc-newcondo-prince-hotspot.is-selected .cc-newcondo-romance-pointer,
.cc-newcondo-root .cc-newcondo-prince-hotspot:focus-visible .cc-newcondo-romance-pointer {
  opacity: 1;
  transform: translate(-50%, -45%) scale(1);
  animation: cc-newcondo-romance-pointer-float 1.8s ease-in-out infinite;
}

@keyframes cc-newcondo-romance-pointer-float {
  0%, 100% { margin-top: 0; }
  50% { margin-top: -6px; }
}

/* Date and AI greeting are two independent glass sentences across the lake.
   The transparent wrapper itself never blocks the map or room buttons. */
.cc-newcondo-root .cc-newcondo-daily {
  position: absolute;
  z-index: 6;
  inset: 0;
  width: auto;
  padding: 0;
  transform: none;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  pointer-events: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.cc-newcondo-root .cc-newcondo-daily p {
  position: absolute;
  top: 63.5%;
  max-width: 35%;
  margin: 0;
  padding: 7px 12px 8px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255,255,255,.66);
  border-radius: 999px;
  background: rgba(250,252,249,.90);
  box-shadow: 0 5px 20px rgba(25,52,63,.16), inset 0 1px 0 rgba(255,255,255,.92);
  color: #39434a;
  font: 650 11px/1.35 "Noto Serif SC", "Songti SC", serif;
  text-align: center;
  white-space: normal;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}

.cc-newcondo-root .cc-newcondo-daily .cc-newcondo-daily-date { left: 20%; }
.cc-newcondo-root .cc-newcondo-daily .cc-newcondo-daily-greeting {
  left: 67%;
  margin: 0;
  color: #5c4b51;
}
.cc-newcondo-root .cc-newcondo-daily.is-hidden { display: none; }

.cc-newcondo-root .cc-newcondo-swan-toggle {
  left: 14.5%;
  top: 68.3%;
  width: 12%;
  min-width: 48px;
  height: 9%;
}

.cc-newcondo-root .cc-newcondo-swan-toggle span {
  background: rgba(255,255,255,.90);
}

/* Prince profile: the introduction is closed at startup; when opened, only
   the biography pane scrolls, using the right-side scrollbar requested. */
.cc-newcondo-root .cc-newcondo-profile {
  max-height: min(72vh, 440px);
  border-color: rgba(210,180,143,.78);
  background: rgba(255,253,250,.90);
  box-shadow: 0 20px 55px rgba(35,20,28,.26), inset 0 1px 0 rgba(255,255,255,.96);
}

.cc-newcondo-root .cc-newcondo-profile-body { align-items: flex-start; }
.cc-newcondo-root .cc-newcondo-profile-copy {
  display: flex;
  min-width: 0;
  flex: 1;
  flex-direction: column;
}

.cc-newcondo-root .cc-newcondo-profile-description {
  display: block;
  max-height: 142px;
  padding: 0 8px 0 0;
  overflow-x: hidden;
  overflow-y: auto;
  white-space: pre-line;
  scrollbar-width: thin;
  scrollbar-color: rgba(153,82,111,.64) rgba(232,217,220,.54);
  -webkit-line-clamp: initial;
}

.cc-newcondo-root .cc-newcondo-profile-description::-webkit-scrollbar { width: 6px; }
.cc-newcondo-root .cc-newcondo-profile-description::-webkit-scrollbar-track { border-radius: 999px; background: rgba(232,217,220,.54); }
.cc-newcondo-root .cc-newcondo-profile-description::-webkit-scrollbar-thumb { border-radius: 999px; background: rgba(153,82,111,.64); }
.cc-newcondo-root .cc-newcondo-profile-tools button,
.cc-newcondo-root .cc-newcondo-profile-actions button { background: rgba(255,255,255,.90); }

.cc-newcondo-root .cc-newcondo-prince-list-launch[hidden] { display: none !important; }
.cc-newcondo-root .cc-newcondo-prince-list-launch {
  position: fixed;
  z-index: 74;
  right: max(15px, env(safe-area-inset-right));
  bottom: max(18px, calc(env(safe-area-inset-bottom) + 10px));
  display: grid;
  width: min(265px, calc(100vw - 30px));
  min-height: 52px;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 9px 12px;
  border: 1px solid rgba(255,230,169,.92);
  border-radius: 14px;
  background: linear-gradient(125deg,rgba(116,42,73,.90),rgba(185,83,124,.90));
  box-shadow: 0 8px 19px rgba(70,32,49,.27), inset 0 1px 0 rgba(255,255,255,.36), inset 0 0 0 2px rgba(121,48,76,.17);
  color: #fffaf0;
  text-align: left;
  cursor: pointer;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.cc-newcondo-root .cc-newcondo-prince-list-launch::after {
  content: "";
  position: absolute;
  inset: 3px;
  border: 1px solid rgba(255,239,204,.27);
  border-radius: inherit;
  pointer-events: none;
}

.cc-newcondo-root .cc-prince-list-crown { color: #ffe8ad; font-size: 22px; }
.cc-newcondo-root .cc-prince-list-copy { display: block; min-width: 0; }
.cc-newcondo-root .cc-prince-list-copy strong { display: block; font: 900 16px/1.15 "Noto Serif SC", serif; letter-spacing: .06em; }
.cc-newcondo-root .cc-prince-list-arrow { font: 300 30px/1 Georgia, serif; transition: transform .2s ease; }
.cc-newcondo-root .cc-newcondo-prince-list-launch:hover,
.cc-newcondo-root .cc-newcondo-prince-list-launch:focus-visible { filter: brightness(1.08); transform: translateY(-1px); }
.cc-newcondo-root .cc-newcondo-prince-list-launch:hover .cc-prince-list-arrow,
.cc-newcondo-root .cc-newcondo-prince-list-launch:focus-visible .cc-prince-list-arrow { transform: translateX(3px); }

/* Original low-key version switch. It starts off and becomes noticeable only
   on hover/focus or after the version panel is opened. */
.cc-newcondo-root .cc-newcondo-version {
  left: max(10px, env(safe-area-inset-left));
  bottom: max(10px, env(safe-area-inset-bottom));
  align-items: flex-end;
  gap: 7px;
  pointer-events: none;
}

.cc-newcondo-root .cc-newcondo-version-panel {
  display: grid;
  min-width: 142px;
  gap: 2px;
  padding: 7px 10px;
  border: 1px solid rgba(112,79,62,.26);
  border-radius: 8px;
  background: rgba(38,31,28,.78);
  box-shadow: 0 5px 18px rgba(28,20,18,.18);
  color: rgba(255,249,238,.92);
  font: 500 9px/1.28 "Noto Sans SC", sans-serif;
  letter-spacing: .025em;
  pointer-events: auto;
}

.cc-newcondo-root .cc-newcondo-version-panel[hidden] { display: none !important; }
.cc-newcondo-root .cc-newcondo-version-panel strong { font-size: 10px; font-weight: 760; }
.cc-newcondo-root .cc-newcondo-version-panel span { color: rgba(255,244,226,.70); }
.cc-newcondo-root .cc-newcondo-version > button {
  position: relative;
  width: 28px;
  height: 15px;
  border: 1px solid rgba(104,78,64,.28);
  border-radius: 999px;
  background: rgba(54,45,40,.26);
  box-shadow: inset 0 1px 2px rgba(35,25,22,.18);
  opacity: .48;
  pointer-events: auto;
  transition: opacity .16s ease, background .16s ease;
}

.cc-newcondo-root .cc-newcondo-version > button:hover,
.cc-newcondo-root .cc-newcondo-version > button:focus-visible,
.cc-newcondo-root .cc-newcondo-version > button[aria-pressed="true"] { opacity: 1; }
.cc-newcondo-root .cc-newcondo-version > button span {
  position: absolute;
  left: 2px;
  top: 2px;
  width: 9px;
  height: 9px;
  margin: 0;
  background: rgba(255,248,232,.72);
  box-shadow: 0 1px 3px rgba(39,25,19,.28);
  transition: transform .16s ease, background .16s ease;
}
.cc-newcondo-root .cc-newcondo-version > button[aria-pressed="true"] { border-color: rgba(180,137,76,.58); background: rgba(101,52,73,.72); }
.cc-newcondo-root .cc-newcondo-version > button[aria-pressed="true"] span { transform: translateX(13px); background: #f4d88d; }

/* CondoMap 1.8.16 post directory: same dialog, list card, index, featured
   image, author meta, premium lock and read affordance. */
.cc-newcondo-root .cc-newcondo-directory {
  z-index: 2147482800;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: clamp(8px,3vw,34px);
}

.cc-newcondo-root .cc-newcondo-directory .cc-story-directory-backdrop {
  background: rgba(37,25,31,.62);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.cc-newcondo-root .cc-newcondo-directory-dialog {
  width: min(920px, calc(100vw - 28px));
  max-height: calc(100dvh - 28px);
  padding: clamp(24px,3vw,44px);
  border: 1px solid rgba(213,181,135,.85);
  border-radius: clamp(15px,1.7vw,28px);
  background: linear-gradient(145deg,rgba(255,253,248,.94),rgba(251,240,232,.92));
  box-shadow: 0 28px 90px rgba(28,17,22,.34), inset 0 1px 0 rgba(255,255,255,.98);
  color: #674b3a;
  font-family: "Noto Serif SC", "Songti SC", "Microsoft YaHei", serif;
  line-height: 1.5;
}

.cc-newcondo-root .cc-newcondo-directory .cc-story-directory-close {
  position: sticky;
  top: 0;
  float: right;
  z-index: 5;
  display: inline-flex;
  min-height: 0;
  align-items: center;
  gap: .32em;
  padding: .45em .78em;
  border: 1px solid rgba(195,151,95,.68);
  border-radius: 999px;
  background: rgba(255,252,246,.90);
  color: #7b5260;
  font: 800 13px/1 "Noto Sans SC", sans-serif;
}

.cc-newcondo-root .cc-story-directory-head { padding-right: 82px; }
.cc-newcondo-root .cc-story-directory-kicker { display: block; color: #b1844e; font: 800 clamp(12px,1.25vw,18px)/1.1 Georgia,"Times New Roman",serif; letter-spacing: .08em; }
.cc-newcondo-root .cc-newcondo-directory-dialog .cc-story-directory-head h2 { margin: .35em 0 .16em; color: #7f3656; font-size: clamp(24px,3vw,42px); line-height: 1.16; }
.cc-newcondo-root .cc-newcondo-directory-dialog .cc-story-directory-head p { margin: 0; color: #8a725d; font-size: clamp(13px,1.2vw,17px); }
.cc-newcondo-root .cc-newcondo-directory-loading,
.cc-newcondo-root .cc-newcondo-empty {
  margin-top: 24px;
  padding: 26px 18px;
  border: 1px dashed rgba(190,143,83,.46);
  border-radius: 14px;
  background: rgba(255,255,252,.72);
  color: #856a59;
  text-align: center;
  font: 700 14px/1.5 "Noto Sans SC", sans-serif;
}

.cc-newcondo-root .cc-newcondo-directory-content {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 12px;
  margin-top: clamp(22px,2.5vw,34px);
}

.cc-newcondo-root .cc-story-section-card.cc-directory-post-card {
  display: grid;
  width: 100%;
  grid-template-columns: 3.1em minmax(82px,112px) minmax(0,1fr) auto auto;
  align-items: center;
  gap: clamp(12px,1.6vw,22px);
  padding: 12px;
  border: 1px solid rgba(211,181,141,.64);
  border-radius: 14px;
  background: rgba(255,255,252,.86);
  color: inherit;
  text-align: left;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
}

.cc-newcondo-root .cc-story-section-thumb {
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  border-radius: 9px;
  background: linear-gradient(145deg,#f8e9de,#ead5ce);
}

.cc-newcondo-root .cc-story-section-copy { min-width: 0; }
.cc-newcondo-root .cc-story-section-title { display: block; margin: 0; color: #704458; font-size: clamp(16px,1.5vw,21px); font-weight: 850; line-height: 1.25; }
.cc-newcondo-root .cc-story-section-excerpt { display: -webkit-box; overflow: hidden; margin-top: .42em; color: #7f6a5a; font-size: 13px; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.cc-newcondo-root .cc-story-section-open { color: #a57248; font: 800 13px/1 "Noto Sans SC", sans-serif; white-space: nowrap; }
.cc-newcondo-root .cc-directory-index { color: #b47c3d; font: 850 12px/1 Georgia, serif; letter-spacing: .06em; text-align: center; }
.cc-newcondo-root .cc-directory-meta { display: flex; align-items: center; gap: 7px; margin-top: 6px; color: #a07b67; font: 700 11px/1.25 "Noto Sans SC", sans-serif; }
.cc-newcondo-root .cc-directory-author-avatar { display: block; width: 23px; height: 23px; flex: 0 0 auto; border-radius: 50%; object-fit: cover; }
.cc-newcondo-root .cc-newcondo-post-badges { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; padding: 0; }
.cc-newcondo-root .cc-newcondo-badge { padding: 3px 7px; border-radius: 999px; background: rgba(238,232,229,.90); color: #6e5961; font: 650 10px/1.2 "Noto Sans SC", sans-serif; }
.cc-newcondo-root .cc-newcondo-badge-romance { background: rgba(244,228,233,.90); color: #855064; }
.cc-newcondo-root .cc-newcondo-badge-daily { background: rgba(232,239,235,.90); color: #4c6c5a; }

@media (hover:hover) and (pointer:fine) {
  .cc-newcondo-root .cc-story-section-card.cc-directory-post-card:hover,
  .cc-newcondo-root .cc-story-section-card.cc-directory-post-card:focus-visible {
    border-color: rgba(190,141,83,.90);
    background: rgba(255,253,248,.96);
    box-shadow: 0 8px 22px rgba(79,48,39,.12);
    transform: translateY(-1px);
  }
}

.cc-newcondo-root .cc-newcondo-story-group {
  min-width: 0;
  padding: 16px;
  border: 1px solid rgba(211,181,141,.45);
  border-radius: 16px;
  background: rgba(255,255,252,.56);
}
.cc-newcondo-root .cc-newcondo-story-group-head { margin-bottom: 12px; }
.cc-newcondo-root .cc-newcondo-story-group-head > span { color: #b1844e; font: 800 11px/1.2 Georgia,serif; letter-spacing: .08em; }
.cc-newcondo-root .cc-newcondo-story-group-head h3 { margin: 4px 0 0; color: #7f3656; font-size: 20px; }
.cc-newcondo-root .cc-newcondo-story-group-head p { margin: 4px 0 0; color: #8a725d; font-size: 12px; }
.cc-newcondo-root .cc-newcondo-story-group-list { display: grid; gap: 10px; }

/* Rich Prince directory copied from the existing moving-walkway directory. */
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-newcondo-directory-content {
  grid-template-columns: repeat(2,minmax(0,1fr));
  align-items: start;
  gap: 10px;
}
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-story-directory-head h2 {
  max-width: min(780px,calc(100% - 16px));
  font-size: clamp(17px,1.75vw,25px);
  line-height: 1.28;
}
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-story-directory-head p {
  max-width: min(820px,100%);
  max-height: 4.9em;
  overflow-y: auto;
  padding: 7px 12px 7px 0;
  font-size: clamp(11px,1vw,14px);
  line-height: 1.55;
  scrollbar-width: thin;
  scrollbar-color: rgba(160,96,120,.62) rgba(240,226,219,.72);
}
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-story-directory-head p::-webkit-scrollbar { width: 6px; }
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-story-directory-head p::-webkit-scrollbar-track { background: rgba(240,226,219,.72); border-radius: 999px; }
.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-story-directory-head p::-webkit-scrollbar-thumb { background: rgba(160,96,120,.62); border-radius: 999px; }

.cc-newcondo-root .cc-prince-list-card {
  display: grid;
  width: 100%;
  grid-template-columns: 44px minmax(0,1fr) auto auto auto;
  align-items: center;
  gap: 9px;
  padding: 8px 9px;
  border: 1px solid rgba(195,145,105,.4);
  border-radius: 12px;
  background: linear-gradient(120deg,rgba(255,255,252,.92),rgba(252,237,241,.90));
  color: #71324e;
  text-align: left;
  box-shadow: 0 7px 18px rgba(79,39,54,.08);
}
.cc-newcondo-root .cc-prince-list-avatar { display: grid; width: 44px; height: 44px; place-items: center; border: 2px solid #fff; border-radius: 50%; background: #f6e4e9; object-fit: cover; color: #9d4f72; font-size: 20px; box-shadow: 0 0 0 1px rgba(180,116,82,.48),0 4px 10px rgba(81,38,53,.13); }
.cc-newcondo-root .cc-prince-list-card-copy { min-width: 0; }
.cc-newcondo-root .cc-prince-list-card-copy strong { display: block; overflow: hidden; color: #71324e; font: 900 clamp(13px,1.05vw,17px)/1.2 "Noto Serif SC",serif; text-overflow: ellipsis; white-space: nowrap; }
.cc-newcondo-root .cc-prince-list-expand { display: grid; width: 28px; height: 28px; place-items: center; padding: 0; border: 1px solid rgba(174,91,126,.45); border-radius: 50%; background: #fffaf7; color: #a24f74; font: 500 20px/1 Georgia,serif; cursor: pointer; }
.cc-newcondo-root .cc-prince-list-action { flex: 0 0 auto; }
.cc-newcondo-root .cc-prince-list-details { grid-column: 1/-1; padding: 7px 5px 1px; border-top: 1px solid rgba(184,126,101,.22); }
.cc-newcondo-root .cc-prince-list-details[hidden] { display: none !important; }
.cc-newcondo-root .cc-prince-list-details strong { display: block; color: #9a4b6d; font: 800 14px/1.4 "Noto Sans SC",sans-serif; }
.cc-newcondo-root .cc-prince-list-details p { margin: 6px 0 8px; color: #765f58; font: 600 13px/1.58 "Noto Sans SC",sans-serif; white-space: pre-line; }
.cc-newcondo-root .cc-prince-list-card-open { display: grid; width: 28px; height: 28px; place-items: center; padding: 5px; border: 1px solid rgba(174,91,126,.55); border-radius: 50%; background: linear-gradient(120deg,#984466,#c5678d); color: #fffaf5; cursor: pointer; }
.cc-newcondo-root .cc-prince-list-card-open svg { display: block; width: 100%; height: 100%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.65; }
.cc-newcondo-root .cc-prince-list-chat.cc-prince-chat-trigger {
  display: grid;
  width: 30px;
  min-width: 30px;
  height: 30px;
  min-height: 30px;
  place-items: center;
  padding: 6px;
  border: 1px solid rgba(190,145,82,.58);
  border-radius: 999px;
  background: linear-gradient(145deg,rgba(255,253,247,.98),rgba(248,232,221,.96));
  color: #87415d;
  box-shadow: 0 5px 14px rgba(91,48,59,.10),inset 0 1px 0 #fff;
  font: 720 11px/1 "Noto Serif SC","Songti SC",serif;
  letter-spacing: .08em;
}
.cc-newcondo-root .cc-prince-list-chat.cc-prince-chat-trigger svg { width: 15px; height: 15px; color: #bd8b3f; stroke-width: 1.55; }
.cc-newcondo-root .cc-prince-list-chat.cc-prince-chat-trigger:hover,
.cc-newcondo-root .cc-prince-list-chat.cc-prince-chat-trigger:focus-visible { border-color: rgba(196,151,74,.82); background: linear-gradient(145deg,#fffdf7,#f6e1df); color: #71314b; box-shadow: 0 8px 18px rgba(92,45,61,.15),0 0 0 2px rgba(226,190,125,.16); }
.cc-newcondo-root .cc-prince-list-expand:hover,
.cc-newcondo-root .cc-prince-list-expand:focus-visible,
.cc-newcondo-root .cc-prince-list-card-open:hover,
.cc-newcondo-root .cc-prince-list-card-open:focus-visible { filter: brightness(1.06); transform: translateY(-1px); }

@media (max-width: 767px) {
  .cc-newcondo-root .cc-newcondo-hotspot { min-height: 26px; padding: .36em .82em .39em; font-size: 11px; }
  .cc-newcondo-root .cc-newcondo-daily p { top: 64%; max-width: 39%; padding: 5px 8px 6px; font-size: 9px; }
  .cc-newcondo-root .cc-newcondo-daily .cc-newcondo-daily-date { left: 21%; }
  .cc-newcondo-root .cc-newcondo-daily .cc-newcondo-daily-greeting { left: 67%; }
  .cc-newcondo-root .cc-newcondo-prince-list-launch { width: min(225px,calc(100vw - 24px)); min-height: 44px; padding: 7px 10px; }
  .cc-newcondo-root .cc-prince-list-crown { font-size: 18px; }
  .cc-newcondo-root .cc-prince-list-copy strong { font-size: 13px; }
  .cc-newcondo-root .cc-prince-list-arrow { font-size: 24px; }
  .cc-newcondo-root .cc-newcondo-directory { padding: 6px; }
  .cc-newcondo-root .cc-newcondo-directory-dialog { width: calc(100vw - 12px); max-height: calc(100dvh - 12px); padding: 20px 14px; border-radius: 16px; }
  .cc-newcondo-root .cc-story-directory-head { padding-right: 66px; }
  .cc-newcondo-root .cc-story-section-card.cc-directory-post-card { grid-template-columns: 2.2em 64px minmax(0,1fr) auto; gap: 7px; padding: 9px; }
  .cc-newcondo-root .cc-directory-post-card .cc-story-section-open { display: none; }
  .cc-newcondo-root .cc-directory-post-card > .cc-premium-lock-icon--story { grid-column: 4; }
  .cc-newcondo-root .cc-story-section-excerpt { -webkit-line-clamp: 1; font-size: 11px; }
  .cc-newcondo-root .cc-directory-meta { gap: 4px; margin-top: 3px; font-size: 9px; }
  .cc-newcondo-root .cc-directory-author-avatar { width: 18px; height: 18px; }
  .cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-newcondo-directory-content { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .cc-newcondo-root .cc-prince-list-card { grid-template-columns: 38px minmax(0,1fr) auto auto auto; gap: 7px; padding: 7px 8px; }
  .cc-newcondo-root .cc-prince-list-avatar { width: 38px; height: 38px; }
  .cc-newcondo-root .cc-prince-list-expand,
  .cc-newcondo-root .cc-prince-list-card-open { width: 26px; height: 26px; }
  .cc-newcondo-root .cc-prince-list-chat.cc-prince-chat-trigger { width: 26px; min-width: 26px; height: 26px; min-height: 26px; padding: 5px; }
}

@media (max-height: 560px) {
  .cc-newcondo-root .cc-newcondo-profile-description {
    display: block;
    max-height: 72px;
    overflow-y: auto;
    -webkit-line-clamp: initial;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cc-newcondo-root .cc-newcondo-romance-pointer { animation: none !important; transition: none; }
}

/* ================================================================
   New Condo 1.9.3 · navigation, loading and quiet-control refinements
   ================================================================ */

/* The swan itself is a generous invisible hit target. The visible control is
   kept immediately beside it and the single greeting appears only on demand. */
.cc-newcondo-root .cc-newcondo-swan-hit,
.cc-newcondo-root .cc-newcondo-greeting-toggle {
  position: absolute;
  z-index: 7;
  transform: translate(-50%,-50%);
  cursor: pointer;
}
.cc-newcondo-root .cc-newcondo-swan-hit {
  left: 16.2%;
  top: 67.3%;
  width: 10%;
  min-width: 54px;
  height: 10%;
  border: 0;
  border-radius: 50%;
  background: transparent;
}
.cc-newcondo-root .cc-newcondo-greeting-toggle {
  left: 22.4%;
  top: 68.2%;
  min-height: 27px;
  padding: 5px 10px;
  border: 1px solid rgba(76,69,65,.38);
  border-radius: 7px;
  background: rgba(31,34,35,.82);
  box-shadow: 0 5px 16px rgba(20,28,31,.2), inset 0 1px rgba(255,255,255,.13);
  color: rgba(255,250,238,.94);
  font: 650 10px/1 "Noto Serif SC","Songti SC",serif;
  letter-spacing: .04em;
  white-space: nowrap;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
}
.cc-newcondo-root .cc-newcondo-greeting-toggle[aria-pressed="true"] { border-color: rgba(222,191,133,.74); color: #f6dda4; }
.cc-newcondo-root .cc-newcondo-swan-hit:focus-visible,
.cc-newcondo-root .cc-newcondo-greeting-toggle:focus-visible { outline: 2px solid rgba(255,243,207,.92); outline-offset: 2px; }
.cc-newcondo-root .cc-newcondo-daily p {
  top: 63.4%;
  left: 45% !important;
  width: max-content;
  max-width: 52%;
  background: rgba(250,252,249,.90);
}

/* Full-width biography below the compact portrait header. */
.cc-newcondo-root .cc-newcondo-profile { width: min(465px,calc(100vw - 28px)); }
.cc-newcondo-root .cc-newcondo-profile-body { display: block; padding: 17px 48px 14px 17px; }
.cc-newcondo-root .cc-newcondo-profile-head { display: flex; align-items: center; gap: 13px; min-width: 0; }
.cc-newcondo-root .cc-newcondo-profile-head > img { flex: 0 0 74px; }
.cc-newcondo-root .cc-newcondo-profile-description { width: 100%; max-height: 170px; margin-top: 13px; padding-right: 11px; }
.cc-newcondo-root .cc-newcondo-profile-tools { right: 10px; }

/* Earlier quiet black Prince-list control: crown and label only. */
.cc-newcondo-root .cc-newcondo-prince-list-launch {
  display: inline-flex;
  width: auto;
  min-width: 142px;
  min-height: 39px;
  grid-template-columns: none;
  justify-content: center;
  gap: 8px;
  padding: 7px 13px;
  border-color: rgba(220,193,144,.58);
  border-radius: 9px;
  background: rgba(30,29,30,.86);
  box-shadow: 0 7px 20px rgba(14,13,14,.25), inset 0 1px rgba(255,255,255,.10);
  color: rgba(255,249,236,.94);
}
.cc-newcondo-root .cc-newcondo-prince-list-launch::after { content: none; }
.cc-newcondo-root .cc-prince-list-crown { color: #d9bc7e; font-size: 18px; }
.cc-newcondo-root .cc-prince-list-copy strong { font-size: 13px; font-weight: 720; letter-spacing: .08em; }

/* Music stays off at startup and is visually quieter than the version switch. */
.cc-newcondo-root .cc-newcondo-music {
  position: fixed;
  z-index: 76;
  left: max(10px,env(safe-area-inset-left));
  bottom: max(37px,calc(env(safe-area-inset-bottom) + 31px));
}
.cc-newcondo-root .cc-newcondo-music audio { display: none; }
.cc-newcondo-root .cc-newcondo-music button {
  display: grid;
  width: 30px;
  height: 30px;
  align-items: center;
  justify-items: center;
  padding: 6px;
  border: 1px solid rgba(103,81,69,.25);
  border-radius: 999px;
  background: rgba(42,36,34,.50);
  color: rgba(214,211,208,.72);
  cursor: pointer;
  opacity: .58;
  backdrop-filter: blur(7px);
  -webkit-backdrop-filter: blur(7px);
  transition: opacity .16s ease,background .16s ease,color .16s ease;
}
.cc-newcondo-root .cc-newcondo-music button svg { display: block; width: 100%; height: 100%; fill: currentColor; filter: drop-shadow(0 1px 2px rgba(0,0,0,.38)); }
.cc-newcondo-root .cc-newcondo-music button:hover,
.cc-newcondo-root .cc-newcondo-music button:focus-visible,
.cc-newcondo-root .cc-newcondo-music button.is-playing { opacity: 1; }
.cc-newcondo-root .cc-newcondo-music button.is-playing { border-color: rgba(218,179,91,.68); background: rgba(50,42,37,.82); color: #edc86e; box-shadow: 0 0 12px rgba(231,190,91,.30), inset 0 1px rgba(255,255,255,.10); }

/* Reader is guaranteed above the directory; cards still close the directory
   before navigating so assistive technology also sees only one active dialog. */
.cc-newcondo-root .cc-newcondo-reader { z-index: 2147483000; }
.cc-newcondo-root .cc-newcondo-widget-guide { z-index: 2147483000; }
.cc-newcondo-root .cc-newcondo-reader-loading {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #171719;
  color: rgba(255,255,255,.90);
}
.cc-newcondo-root .cc-newcondo-reader-loading-preview { position: absolute; inset: -1px; z-index: 0; display: block; width: calc(100% + 2px); height: calc(100% + 2px); overflow: hidden; box-sizing: border-box; background: #171719; contain: paint; }
.cc-newcondo-root .cc-newcondo-reader-loading-preview[hidden] { display: none !important; }
.cc-newcondo-root .cc-newcondo-reader-loading-cover,
.cc-newcondo-root [data-newcondo-reader-loading-cover] { position: absolute !important; inset: 0 !important; display: block !important; width: 100% !important; min-width: 100% !important; max-width: none !important; height: 100% !important; min-height: 100% !important; max-height: none !important; margin: 0 !important; padding: 0 !important; border: 0 !important; object-fit: cover !important; object-position: 50% 50% !important; transform: none !important; }
.cc-newcondo-root .cc-newcondo-reader-loading.is-post-cover .cc-newcondo-reader-loading-preview {
  display: block;
  padding: 0;
  background: #171719;
}
.cc-newcondo-root .cc-newcondo-reader-loading.is-post-cover .cc-newcondo-reader-loading-cover {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: cover;
  object-position: center;
  filter: none;
}
.cc-newcondo-root .cc-newcondo-reader-loading.is-meeting-cover .cc-newcondo-reader-loading-preview { background: #202123; }
.cc-newcondo-root .cc-newcondo-reader-loading.is-meeting-cover .cc-newcondo-reader-loading-cover { object-fit: contain !important; object-position: 50% 50% !important; }
.cc-newcondo-root .cc-newcondo-reader-loading.is-post-cover .cc-newcondo-reader-loading-label {
  position: absolute;
  left: 50%;
  bottom: 13px;
  margin: 0;
  transform: translateX(-50%);
}
.cc-newcondo-root .cc-newcondo-reader-loading.is-post-cover .cc-newcondo-reader-loading-ring {
  position: absolute;
  right: 18px;
  bottom: 18px;
  margin: 0;
}
.cc-newcondo-root .cc-newcondo-reader-loading-preview::after { content: ""; position: absolute; inset: 0; background: linear-gradient(to bottom,rgba(9,8,9,.08),rgba(9,8,9,.18)); pointer-events: none; }
.cc-newcondo-root .cc-newcondo-reader-loading-shimmer { position: absolute; inset: 0; transform: translateX(-120%); background: linear-gradient(100deg,transparent 28%,rgba(255,255,255,.12) 47%,transparent 66%); animation: cc-newcondo-reader-shimmer 1.65s ease-in-out infinite; }
.cc-newcondo-root .cc-newcondo-reader-loading-label { position: relative; z-index: 2; max-width: min(82%,520px); margin-top: 86px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.32); border-radius: 999px; background: rgba(20,18,19,.62); box-shadow: 0 8px 24px rgba(0,0,0,.22); text-align: center; backdrop-filter: blur(7px); -webkit-backdrop-filter: blur(7px); }
.cc-newcondo-root .cc-newcondo-reader-loading-ring { position: relative; z-index: 2; width: 26px; height: 26px; margin-top: 12px; border: 2px solid rgba(255,255,255,.26); border-top-color: rgba(255,244,217,.94); border-radius: 50%; animation: cc-newcondo-reader-spin .75s linear infinite; }
@keyframes cc-newcondo-reader-spin { to { transform: rotate(360deg); } }
@keyframes cc-newcondo-reader-shimmer { 55%,100% { transform: translateX(120%); } }

/* GTranslate belongs to the map chrome, not to modal content. Keep it in the
   document so the selected language remains intact, but place every Condo
   dialog (including Prince Chat) above it. */
html.cc-newcondo-modal-open body.cc-newcondo-page .gtranslate_wrapper,
html.cc-newcondo-modal-open body.cc-newcondo-page .gt_switcher_wrapper,
html.cc-newcondo-modal-open body.cc-newcondo-page #gtranslate_wrapper,
html.cc-newcondo-modal-open body.cc-newcondo-page [id^="gt-wrapper-"],
html.cc-newcondo-modal-open body.cc-newcondo-page #gt_float_wrapper,
html.cc-newcondo-modal-open body.cc-newcondo-page .gt_float_switcher,
html.cc-source-prince-chat-open body.cc-newcondo-page .gtranslate_wrapper,
html.cc-source-prince-chat-open body.cc-newcondo-page .gt_switcher_wrapper,
html.cc-source-prince-chat-open body.cc-newcondo-page #gtranslate_wrapper,
html.cc-source-prince-chat-open body.cc-newcondo-page [id^="gt-wrapper-"],
html.cc-source-prince-chat-open body.cc-newcondo-page #gt_float_wrapper,
html.cc-source-prince-chat-open body.cc-newcondo-page .gt_float_switcher { z-index: 80 !important; }

@media (max-width:767px) {
  .cc-newcondo-root .cc-newcondo-greeting-toggle { left: 23.5%; min-height: 23px; padding: 4px 7px; font-size: 8px; }
  .cc-newcondo-root .cc-newcondo-daily p { max-width: 64%; font-size: 9px; }
  .cc-newcondo-root .cc-newcondo-profile-body { padding: 14px 43px 12px 13px; }
  .cc-newcondo-root .cc-newcondo-profile-head > img { flex-basis: 58px; width: 58px; height: 58px; }
  .cc-newcondo-root .cc-newcondo-prince-list-launch { width: auto; min-width: 126px; min-height: 36px; }
}

@media (prefers-reduced-motion:reduce) {
  .cc-newcondo-root .cc-newcondo-reader-loading-ring,
  .cc-newcondo-root .cc-newcondo-reader-loading-shimmer { animation: none !important; }
}

/* ================================================================
   New Condo 1.9.6 · developer studio and desktop refinements
   ================================================================ */
.cc-newcondo-root .cc-newcondo-zoom-controls button:disabled {
  color: rgba(255,255,255,.30);
  cursor: default;
  opacity: .48;
}

.cc-newcondo-root .cc-newcondo-developer {
  position: fixed;
  z-index: 2147483000;
  inset: 0;
  display: grid;
  place-items: center;
  padding: clamp(8px,3vw,30px);
}
.cc-newcondo-root .cc-newcondo-developer[hidden] { display: none !important; }
.cc-newcondo-root .cc-newcondo-developer-dialog {
  position: relative;
  z-index: 1;
  width: min(1120px,100%);
  height: min(92vh,920px);
  overflow-x: hidden;
  overflow-y: auto;
  border: 1px solid rgba(240,216,177,.78);
  border-radius: 18px;
  background: #fffaf8;
  box-shadow: 0 28px 80px rgba(20,15,17,.46);
  scrollbar-width: thin;
  scrollbar-color: rgba(154,99,119,.62) rgba(240,226,219,.72);
}
.cc-newcondo-root .cc-newcondo-developer-dialog > .cc-newcondo-modal-close { position: sticky; z-index: 10002; top: 12px; float: right; margin: 12px 12px -50px 0; }

.cc-newcondo-root #eider-studio-page {
  --eider-wine: #8b3d55;
  --eider-wine-deep: #772d46;
  --eider-rose: #f7edef;
  --eider-gold: #ac8858;
  width: min(1040px,calc(100% - 28px));
  margin: 14px auto 34px;
  color: #5d4a51;
  font-family: "Noto Serif SC","Source Han Serif SC","Songti SC","Microsoft YaHei",serif;
}
.cc-newcondo-root #eider-studio-page .eider-tabs {
  position: sticky;
  z-index: 10001;
  top: 0;
  display: inline-flex;
  overflow: hidden;
  margin: 0 0 10px;
  border: 1px solid #dfc5cc;
  border-radius: 9px;
  background: #fff;
  box-shadow: 0 7px 18px rgba(82,48,59,.09);
}
.cc-newcondo-root #eider-studio-page .eider-tab {
  min-width: 118px;
  height: 36px;
  padding: 0 18px;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: #87566a;
  font: 500 13px/36px "Microsoft YaHei","PingFang SC",sans-serif;
  cursor: pointer;
}
.cc-newcondo-root #eider-studio-page .eider-tab + .eider-tab { border-left: 1px solid #ead8dd; }
.cc-newcondo-root #eider-studio-page .eider-tab.is-active { background: #f8edef; color: var(--eider-wine-deep); box-shadow: inset 0 -2px #a65c71; }
.cc-newcondo-root #eider-studio-page .eider-panel[hidden] { display: none !important; }
.cc-newcondo-root #eider-studio-page .eider-panel.is-active { animation: cc-eider-fade .22s ease; }
@keyframes cc-eider-fade { from { opacity: 0; } to { opacity: 1; } }
.cc-newcondo-root #eider-studio-page .eider-banner { overflow: hidden; margin-bottom: 12px; border: 1px solid #e4ccb0; border-radius: 16px; background: #fff; }
.cc-newcondo-root #eider-studio-page .eider-banner img { display: block; width: 100%; height: auto; }
.cc-newcondo-root #eider-studio-page .eider-document { box-sizing: border-box; padding: clamp(17px,2.6vw,28px); border: 1px solid #e3c79e; border-radius: 18px; background: linear-gradient(180deg,#fffaf8,#fff8f6); box-shadow: 0 12px 28px rgba(83,58,64,.06); }
.cc-newcondo-root #eider-studio-page .eider-document-header { padding: 0 1px 14px; border-bottom: 1px solid #eedde1; }
.cc-newcondo-root #eider-studio-page .eider-eyebrow { display: block; margin-bottom: 3px; color: var(--eider-gold); font: 500 9px/1.4 Georgia,serif; letter-spacing: .18em; }
.cc-newcondo-root #eider-studio-page .eider-document-header h1 { margin: 0 0 3px; color: var(--eider-wine); font-size: clamp(24px,3vw,31px); font-weight: 500; }
.cc-newcondo-root #eider-studio-page .eider-document-header p { margin: 0; color: #936775; font-size: 13px; line-height: 1.55; }
.cc-newcondo-root #eider-studio-page .eider-box { margin-top: 10px; padding: 13px 16px; border: 1px solid #ead7dc; border-radius: 12px; background: rgba(255,255,255,.84); }
.cc-newcondo-root #eider-studio-page .eider-box h2 { margin: 0 0 6px; color: var(--eider-wine); font-size: 17px; font-weight: 500; }
.cc-newcondo-root #eider-studio-page .eider-box h2 small { margin-left: 6px; color: var(--eider-gold); font: 500 10px/1 Georgia,serif; letter-spacing: .08em; }
.cc-newcondo-root #eider-studio-page .eider-box p { margin: 0 0 5px; color: #5d4b52; font-size: 14px; line-height: 1.55; }
.cc-newcondo-root #eider-studio-page .eider-box p:last-child { margin-bottom: 0; }
.cc-newcondo-root #eider-studio-page .eider-box strong { color: #7d344d; }
.cc-newcondo-root #eider-studio-page .eider-members-heading { margin: 22px 0 9px; }
.cc-newcondo-root #eider-studio-page .eider-members-heading h2 { margin: 0; color: var(--eider-wine); font-size: 22px; font-weight: 500; }
.cc-newcondo-root #eider-studio-page .eider-member-list { display: grid; gap: 9px; }
.cc-newcondo-root #eider-studio-page .eider-member-card { display: grid; min-height: 128px; grid-template-columns: 98px minmax(0,1fr); align-items: center; gap: 17px; padding: 13px 18px; border: 1px solid #ead6db; border-radius: 12px; background: rgba(255,255,255,.90); transition: border-color .18s ease,box-shadow .18s ease; }
.cc-newcondo-root #eider-studio-page .eider-member-card:hover { border-color: #d8b3bd; box-shadow: 0 8px 20px rgba(95,52,68,.07); }
.cc-newcondo-root #eider-studio-page .eider-member-avatar { display: grid; width: 86px; height: 86px; place-items: center; overflow: hidden; border: 3px solid #fff; border-radius: 50%; background: #f8edef; color: #a26c7c; font: 500 16px/1 Georgia,serif; box-shadow: 0 0 0 1px #d9b8c0; }
.cc-newcondo-root #eider-studio-page .eider-member-avatar img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cc-newcondo-root #eider-studio-page .eider-member-avatar img[hidden],
.cc-newcondo-root #eider-studio-page .eider-member-avatar span[hidden] { display: none !important; }
.cc-newcondo-root #eider-studio-page .eider-member-content { min-width: 0; }
.cc-newcondo-root #eider-studio-page .eider-member-index { color: var(--eider-gold); font: 500 8px/1.3 Georgia,serif; letter-spacing: .18em; }
.cc-newcondo-root #eider-studio-page .eider-member-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding-bottom: 7px; border-bottom: 1px solid #f0e1e4; }
.cc-newcondo-root #eider-studio-page .eider-member-head h3 { margin: 2px 0 0; color: var(--eider-wine); font-size: 20px; font-weight: 500; }
.cc-newcondo-root #eider-studio-page .eider-member-head > span { flex: 0 0 auto; padding: 4px 9px; border: 1px solid #e7d0d6; border-radius: 6px; background: #fffafa; color: #8b5d6c; font: 500 11px/1.3 "Microsoft YaHei",sans-serif; }
.cc-newcondo-root #eider-studio-page .eider-member-actions { display: flex; flex: 0 0 auto; align-items: center; gap: 7px; }
.cc-newcondo-root #eider-studio-page .eider-member-actions > span { padding: 4px 9px; border: 1px solid #e7d0d6; border-radius: 6px; background: #fffafa; color: #8b5d6c; font: 500 11px/1.3 "Microsoft YaHei",sans-serif; }
.cc-newcondo-root #eider-studio-page .eider-member-chat { width: 31px; min-width: 31px; height: 31px; min-height: 31px; border-color: rgba(177,132,67,.48); border-radius: 9px; background: linear-gradient(145deg,#fffdf7,#f7e9cb); color: #986d31; box-shadow: 0 5px 13px rgba(116,73,39,.11),inset 0 1px #fff; }
.cc-newcondo-root #eider-studio-page .eider-member-chat:hover,
.cc-newcondo-root #eider-studio-page .eider-member-chat:focus-visible { border-color: rgba(150,96,118,.62); color: #873f59; box-shadow: 0 7px 17px rgba(111,55,76,.14),inset 0 1px #fff; outline-color: rgba(174,117,140,.20); }
.cc-newcondo-root #eider-studio-page .eider-member-content > p { margin: 7px 0 0; color: #66535a; font-size: 13px; line-height: 1.55; }
.cc-newcondo-root #eider-studio-page .eider-player-card { background: linear-gradient(90deg,#fff,#fffafa); }
.cc-newcondo-root #eider-studio-page .eider-work-list { display: grid; gap: 11px; margin-top: 12px; }
.cc-newcondo-root #eider-studio-page .eider-work-card { display: grid; grid-template-columns: minmax(290px,42%) minmax(0,1fr); overflow: hidden; border: 1px solid #ead6db; border-radius: 12px; background: rgba(255,255,255,.92); }
.cc-newcondo-root #eider-studio-page .eider-work-card > img { display: block; width: 100%; height: 100%; min-height: 230px; object-fit: cover; }
.cc-newcondo-root #eider-studio-page .eider-work-card > div { padding: clamp(17px,2.5vw,25px); }
.cc-newcondo-root #eider-studio-page .eider-work-card div > span { color: var(--eider-gold); font: 500 8px/1.3 Georgia,serif; letter-spacing: .18em; }
.cc-newcondo-root #eider-studio-page .eider-work-card h2 { margin: 4px 0 8px; color: var(--eider-wine); font-size: clamp(19px,2.3vw,25px); font-weight: 500; }
.cc-newcondo-root #eider-studio-page .eider-work-card b { display: inline-block; padding: 4px 9px; border: 1px solid #e6d0d6; border-radius: 6px; background: #fffafa; color: #8c5b6c; font: 500 11px/1.3 "Microsoft YaHei",sans-serif; }
.cc-newcondo-root #eider-studio-page .eider-work-card p { margin: 10px 0 0; color: #66535a; font-size: 13px; line-height: 1.58; }

@media (max-width:760px) {
  .cc-newcondo-root .cc-newcondo-developer { padding: 6px; }
  .cc-newcondo-root .cc-newcondo-developer-dialog { width: calc(100vw - 12px); height: calc(100dvh - 12px); border-radius: 14px; }
  .cc-newcondo-root #eider-studio-page { width: calc(100% - 18px); margin-top: 9px; }
  .cc-newcondo-root #eider-studio-page .eider-tab { min-width: 94px; height: 33px; padding: 0 12px; font-size: 12px; line-height: 33px; }
  .cc-newcondo-root #eider-studio-page .eider-document { padding: 13px; border-radius: 14px; }
  .cc-newcondo-root #eider-studio-page .eider-box p { font-size: 12px; }
  .cc-newcondo-root #eider-studio-page .eider-member-card { min-height: 0; grid-template-columns: 64px minmax(0,1fr); gap: 11px; padding: 10px; }
  .cc-newcondo-root #eider-studio-page .eider-member-avatar { width: 60px; height: 60px; }
  .cc-newcondo-root #eider-studio-page .eider-member-head { display: block; }
  .cc-newcondo-root #eider-studio-page .eider-member-head h3 { font-size: 17px; }
  .cc-newcondo-root #eider-studio-page .eider-member-head > span { display: inline-block; margin-top: 5px; padding: 3px 7px; font-size: 10px; }
  .cc-newcondo-root #eider-studio-page .eider-member-actions { justify-content: flex-start; margin-top: 5px; }
  .cc-newcondo-root #eider-studio-page .eider-member-actions > span { padding: 3px 7px; font-size: 10px; }
  .cc-newcondo-root #eider-studio-page .eider-member-content > p { font-size: 11px; }
  .cc-newcondo-root #eider-studio-page .eider-work-card { grid-template-columns: 1fr; }
  .cc-newcondo-root #eider-studio-page .eider-work-card > img { min-height: 0; aspect-ratio: 1232/706; }
}

/* Mobile Reader controls must not cover the Post's top-right favourite
   button. Keep Close permanently reachable on the opposite side. */
@media (max-width:767px) {
  .cc-newcondo-root .cc-newcondo-reader-dialog > .cc-newcondo-modal-close {
    left: max(9px,env(safe-area-inset-left));
    right: auto;
    top: max(9px,env(safe-area-inset-top));
  }
}
/* Simple high-contrast heart over the resident group image. */
.cc-newcondo-root .cc-newcondo-romance-pointer svg{filter:drop-shadow(0 1px 2px #542d45aa);width:30px;height:30px}
.cc-newcondo-root .cc-newcondo-heart-core{fill:#e65385;stroke:#fff;stroke-width:4;paint-order:stroke fill;filter:none}
.cc-newcondo-root [data-newcondo-rent-notice]{display:none!important}
.cc-newcondo-root .cc-directory-post-card{grid-template-columns:30px 84px minmax(0,1fr) auto}
@media(max-width:640px){.cc-newcondo-root .cc-directory-post-card{grid-template-columns:22px 58px minmax(0,1fr) auto}}
.cc-newcondo-root .cc-newcondo-romance-pointer{filter:none}
.cc-newcondo-root .cc-newcondo-romance-pointer b::before,.cc-newcondo-root .cc-newcondo-romance-pointer::before,.cc-newcondo-root .cc-newcondo-romance-pointer::after{display:none}
.cc-newcondo-directory-loading.has-facility-cover{position:relative;padding:0;overflow:hidden;background:#eee5db}
.cc-newcondo-directory-loading.has-facility-cover img{display:block;width:100%;height:min(58vh,620px);object-fit:cover}
.cc-newcondo-directory-loading.has-facility-cover>span{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);padding:9px 18px;border-radius:22px;background:#fffaf0e8;color:#775c45;white-space:nowrap;font-size:13px}
/* Dreamy heart: luminous ring, pink halo and four small star points. */
.cc-newcondo-root .cc-newcondo-romance-pointer svg{width:46px;height:46px;overflow:visible;filter:drop-shadow(0 0 3px #fff) drop-shadow(0 0 8px #ff91ad)}
.cc-newcondo-root .cc-newcondo-romance-pointer b{background:radial-gradient(circle,#ffabcab8 5%,#ff8dab66 42%,transparent 72%);border-radius:50%}
.cc-newcondo-root .cc-newcondo-heart-core{fill:#ff638c;stroke:#fff;stroke-width:2.6;filter:drop-shadow(0 0 3px #fff)}
.cc-newcondo-root .cc-heart-orbit{fill:none;stroke:#fff4f7;stroke-width:1.2;opacity:.95}.cc-newcondo-root .cc-heart-stars{fill:#fff;stroke:#ffd2e1;stroke-width:.7}.cc-newcondo-root .cc-heart-shine{fill:none;stroke:#fff;stroke-width:2.5;stroke-linecap:round}

/* 1.9.28 · Limited event and birthday controls deliberately invert the
   permanent ivory room buttons so the temporary entrances are unmistakable. */
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="event"],
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"] {
  z-index: 9;
  min-height: 32px;
  padding: .48em 1.16em .52em;
  border-color: rgba(243,220,159,.96);
  background: linear-gradient(125deg,#5b213b 0%,#823454 48%,#a64d70 100%);
  color: #fff9e9;
  text-shadow: 0 1px 3px rgba(38,9,23,.56);
  box-shadow: 0 0 0 2px rgba(255,246,214,.32),0 10px 26px rgba(67,23,43,.35),inset 0 1px 0 rgba(255,255,255,.24);
}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="event"]::before,
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"]::before {
  color: #f5d991;
  text-shadow: 0 0 8px rgba(255,227,151,.8);
}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="event"]:hover,
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="event"]:focus-visible,
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"]:hover,
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"]:focus-visible {
  border-color: #fff0b7;
  background: linear-gradient(125deg,#682641,#91405e 48%,#b85d7d 100%);
  color: #fffdf4;
  box-shadow: 0 0 0 3px rgba(255,246,214,.38),0 13px 31px rgba(67,23,43,.43),inset 0 1px 0 rgba(255,255,255,.3);
}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"] {
  animation: cc-newcondo-seasonal-glow 2.1s ease-in-out infinite;
}
@keyframes cc-newcondo-seasonal-glow {
  50% { box-shadow: 0 0 0 4px rgba(255,246,214,.48),0 14px 34px rgba(107,35,67,.48),0 0 22px rgba(239,152,190,.5); }
}

.cc-newcondo-seasonal-modal[hidden] { display: none !important; }
.cc-newcondo-seasonal-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483600;
  display: grid;
  place-items: center;
  padding: max(18px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
  font-family: "Noto Serif SC","Songti SC",Georgia,serif;
}
.cc-newcondo-seasonal-backdrop { position: absolute; inset: 0; background: rgba(43,24,34,.60); backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px); }
.cc-newcondo-seasonal-card { position: relative; width: min(680px,calc(100vw - 28px)); max-height: min(88dvh,820px); overflow: auto; border: 1px solid rgba(224,187,124,.90); border-radius: 24px; background: linear-gradient(145deg,#fffdf8,#fceff3); box-shadow: 0 30px 90px rgba(35,15,26,.42),inset 0 1px 0 #fff; color: #5e3143; }
.cc-newcondo-seasonal-image { display: block; width: 100%; max-height: min(48vh,410px); object-fit: cover; background: #f3e7e4; }
.cc-newcondo-seasonal-image[hidden] { display: none !important; }
.cc-newcondo-seasonal-copy { padding: clamp(22px,4vw,38px); text-align: center; }
.cc-newcondo-seasonal-kicker { margin: 0 0 8px; color: #b07a3d; font: 800 12px/1.4 ui-sans-serif,system-ui,sans-serif; letter-spacing: .16em; text-transform: uppercase; }
.cc-newcondo-seasonal-title { margin: 0; color: #702c4a; font-size: clamp(25px,5vw,40px); line-height: 1.25; }
.cc-newcondo-seasonal-intro { max-width: 560px; margin: 14px auto 0; color: #765665; font: 500 clamp(14px,2.4vw,17px)/1.8 ui-sans-serif,system-ui,sans-serif; white-space: pre-line; }
.cc-newcondo-seasonal-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin-top: 22px; }
.cc-newcondo-seasonal-action,
.cc-newcondo-seasonal-dismiss { min-height: 42px; padding: 0 20px; border-radius: 999px; font: 750 14px/1 ui-sans-serif,system-ui,sans-serif; cursor: pointer; }
.cc-newcondo-seasonal-action { border: 1px solid #8f3d61; background: linear-gradient(125deg,#6a2744,#a24d70); color: #fffaf0; box-shadow: 0 8px 20px rgba(104,35,65,.22); }
.cc-newcondo-seasonal-dismiss { border: 1px solid rgba(171,128,83,.50); background: #fffaf4; color: #805868; }
.cc-newcondo-seasonal-close { position: absolute; z-index: 2; top: 12px; right: 12px; width: 40px; height: 40px; padding: 0; border: 1px solid rgba(201,156,98,.65); border-radius: 50%; background: rgba(255,252,247,.92); color: #77334f; font: 300 25px/1 Arial,sans-serif; cursor: pointer; box-shadow: 0 5px 16px rgba(62,25,43,.16); }

@media (max-width:700px) {
  .cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="event"],
  .cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"] { min-height: 28px; padding: .4em .9em; font-size: 10px; }
  .cc-newcondo-seasonal-modal { padding: 0; }
  .cc-newcondo-seasonal-card { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); border-radius: 18px; }
  .cc-newcondo-seasonal-copy { padding: 22px 18px 24px; }
  .cc-newcondo-seasonal-image { max-height: 42vh; }
  .cc-newcondo-seasonal-actions { flex-direction: column; }
  .cc-newcondo-seasonal-action,
  .cc-newcondo-seasonal-dismiss { width: 100%; }
}
@media (prefers-reduced-motion:reduce) {
  .cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-conditional="birthday"] { animation: none; }
}

/* Expanded portrait cards, matching the learning roster's structure. */
.is-prince-list-mode .cc-story-section-list,.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-newcondo-directory-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;align-items:stretch}
.is-prince-list-mode .cc-prince-list-card,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-card{display:flex;flex-direction:column;align-items:center;gap:10px;height:auto;min-width:0;padding:22px 20px 18px;border:1px solid rgba(185,143,151,.3);border-radius:18px;background:linear-gradient(155deg,#fffdfb,#fbf3f6);box-shadow:0 5px 18px rgba(98,55,72,.05);text-align:center}
.is-prince-list-mode .cc-prince-list-avatar,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-avatar{display:block;width:84px;height:84px;min-width:84px;flex:0 0 84px;aspect-ratio:1;border:3px solid #fff;border-radius:50%;object-fit:cover;box-shadow:0 0 0 1px #e5cdd7}
.is-prince-list-mode .cc-prince-list-card-copy,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-card-copy{width:100%;min-width:0}
.is-prince-list-mode .cc-prince-list-card-copy strong,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-card-copy strong{font-size:19px;line-height:1.4;white-space:normal;overflow-wrap:anywhere}
.is-prince-list-mode .cc-prince-list-details,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-details{display:block;width:100%;padding:0;border:0;text-align:left}
.is-prince-list-mode .cc-prince-list-details strong,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-details strong{text-align:center;font-size:13px;font-weight:500;letter-spacing:.03em}
.is-prince-list-mode .cc-prince-list-details p,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-details p{margin:8px 0 12px;font-size:14px;font-weight:400;line-height:1.7;white-space:pre-line;overflow-y:auto;overflow-x:hidden;height:144px;max-height:144px;padding-right:8px;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#bb849c #f3e7ec;overflow-wrap:anywhere}
.is-prince-list-mode .cc-prince-list-actions{display:flex;gap:10px;width:100%;margin-top:auto;padding-top:5px}
.is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action{display:flex;flex:1;align-items:center;justify-content:center;gap:6px;width:auto;height:38px;min-height:38px;padding:7px 12px;border:1px solid #a76782;border-radius:10px;background:#a76782;color:#fff;box-shadow:none;font:500 14px/1.2 system-ui,sans-serif;cursor:pointer}
.is-prince-list-mode .cc-prince-list-actions .cc-prince-list-chat,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-actions .cc-prince-list-chat{background:#a76782;border-color:#a76782;color:white}
.is-prince-list-mode .cc-prince-list-actions svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;flex:none}
@media(max-width:580px){.is-prince-list-mode .cc-story-section-list,.cc-newcondo-root .cc-newcondo-directory.is-prince-list-mode .cc-newcondo-directory-content{grid-template-columns:minmax(0,1fr);gap:12px}.is-prince-list-mode .cc-prince-list-card,.cc-newcondo-root .is-prince-list-mode .cc-prince-list-card{padding:18px}}

.is-prince-list-mode .cc-prince-list-card,.is-prince-list-mode .cc-prince-list-card *{box-sizing:border-box}
.is-prince-list-mode .cc-prince-list-avatar-fallback{display:grid;place-items:center}

/* Roster: matching actions and keyboard-accessible scrolling biographies. */
.is-prince-list-mode .cc-prince-list-details p::-webkit-scrollbar{width:6px}
.is-prince-list-mode .cc-prince-list-details p::-webkit-scrollbar-track{background:#f3e7ec;border-radius:6px}
.is-prince-list-mode .cc-prince-list-details p::-webkit-scrollbar-thumb{background:#bb849c;border-radius:6px}
.is-prince-list-mode .cc-prince-list-details p:focus-visible{outline:2px solid #a76782;outline-offset:3px;border-radius:4px}
.is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action:hover,
.cc-newcondo-root .is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action:hover{background:#92566f;border-color:#92566f;color:#fff;filter:none;transform:none;box-shadow:none}
.is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action:focus-visible,
.cc-newcondo-root .is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action:focus-visible{background:#92566f;border-color:#92566f;color:#fff;outline:2px solid #a76782;outline-offset:3px;box-shadow:none}
.is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action svg,
.cc-newcondo-root .is-prince-list-mode .cc-prince-list-actions .cc-prince-list-action svg{color:inherit;width:17px;height:17px}
.is-prince-list-mode .cc-prince-list-card-copy .ccrm-affinity{justify-content:center}

/* Resident archive: shared page controls; wrap on narrow screens. */
.cc-resident-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;grid-column:1/-1;padding:22px 10px 12px;margin-top:12px;border-top:1px solid #d7b9c8;color:#65364c}
.cc-resident-pagination[hidden]{display:none!important}
.cc-resident-pagination button{appearance:none;min-width:38px;min-height:38px;padding:7px 12px;border:1px solid #b88ca2;border-radius:10px;background:#fff8fc;color:#65364c;font:600 14px/1.4 system-ui,sans-serif;cursor:pointer;box-shadow:none}
.cc-resident-pagination button:hover:not(:disabled),.cc-resident-pagination button[aria-current=page]{background:#793350;color:#fff;border-color:#793350}
.cc-resident-pagination button:focus-visible{outline:2px solid #793350;outline-offset:3px}
.cc-resident-pagination button:disabled{opacity:.45;cursor:default}
.cc-resident-pagination small{flex-basis:100%;text-align:center;color:#715966;font:12px/1.7 system-ui,sans-serif}
@media(max-width:480px){.cc-resident-pagination{gap:5px;padding-inline:0}.cc-resident-pagination button{padding:6px 9px;min-width:32px;font-size:12px}}

/* The personalized library name stays on the floor cornice; long names do not cover adjoining rooms. */
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-hotspot="library"]{max-width:min(390px,calc(100vw - 28px));}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-hotspot="library"] .cc-library-label{display:inline-flex;align-items:center;gap:0;min-width:0;white-space:nowrap;}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-hotspot="library"] .cc-library-label>span{flex:0 0 auto;}
.cc-newcondo-root .cc-newcondo-hotspot[data-newcondo-hotspot="library"] .cc-library-label>.cc-library-player-name{flex:0 1 auto;min-width:0;max-width:9em;overflow:hidden;text-overflow:ellipsis;}
