/* Only the AI studio catalogue. Editors, dialogs and bottom navigation stay unchanged. */
.cv-studio-refined-tagline, .cv-studio-card-tag, .cv-studio-jump-icon { display: none; }

.cv-studio-refined #cvAiStudioScreen.cv-ms-catalogue.cv-studio-polished {
  --ms-gold: #e7cd91;
  --ms-line: #cbb78026;
  --ms-muted: #a3a69e;
  background: radial-gradient(ellipse at 100% 0, #c8a3570c, transparent 460px), #0b0d0c;
  color: #f4f3ec;
  padding-inline: 16px;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-shell { max-width: 620px; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-heading {
  padding: 5px 2px 19px;
  border: 0;
  margin: 0;
  min-height: 110px;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-heading > span {
  font-size: 9px;
  letter-spacing: .22em;
  color: #dbc58c;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-heading > span::before { display: none; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-heading h1 {
  margin: 8px 62px 10px 0;
  font-size: 34px;
  letter-spacing: -.055em;
  line-height: 1.1;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-heading > p:not(.cv-studio-refined-tagline) { display: none; }
.cv-studio-refined #cvAiStudioScreen p.cv-studio-refined-tagline {
  display: block;
  margin: 0;
  font-size: 11px;
  color: #a5a79e;
  max-width: none;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-emblem {
  width: 47px;
  height: 47px;
  top: 21px;
  right: 2px;
  border-radius: 14px;
  transform: none;
  color: #ead394;
  background: linear-gradient(135deg, #e6c57620, #a58a4610);
  box-shadow: inset 0 1px #fff1;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-emblem::before { display: none; }
.cv-studio-refined #cvAiStudioScreen .cv-studio-emblem svg { width: 25px; height: 25px; transform: none; }

/* The original controller reveals this side navigation after 180px of scrolling. */
.cv-studio-refined #cvAiStudioScreen .cv-studio-shortcuts { display: none; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-jump {
  position: fixed;
  top: 50%;
  right: max(5px, calc((100vw - 654px) / 2));
  transform: translateY(-50%);
  z-index: 2256;
  display: grid;
  gap: 3px;
  margin: 0;
  padding: 4px;
  width: 60px;
  border: 1px solid #dbc58c3d;
  border-radius: 18px;
  background: linear-gradient(155deg, #24291ff5, #10150ff5);
  box-shadow: inset 0 1px #fff1, 0 8px 24px #0005;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-jump:not([hidden]) {
  animation: cv-studio-jump-enter 240ms cubic-bezier(.2, .7, .2, 1) both;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-jump button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-width: 0;
  width: 100%;
  max-width: none;
  min-height: 52px;
  gap: 4px;
  padding: 7px 2px;
  border-radius: 12px;
  border: 1px solid transparent;
  background: transparent;
  color: #b7bcad;
  font-size: 9px;
  font-weight: 550;
  line-height: 1.2;
  white-space: nowrap;
  transition: color 150ms ease, background-color 150ms ease, border-color 150ms ease;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-jump-icon { display: flex; }
.cv-studio-refined #cvAiStudioScreen .cv-studio-jump-icon svg { width: 18px; height: 18px; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-jump button[aria-current="true"] {
  background: linear-gradient(135deg, #efdaa0, #d1b46f);
  border-color: #f7e3ad70;
  color: #232719;
  box-shadow: inset 0 1px #fff3;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-jump button:active { background-color: #d8bc742b; }
@keyframes cv-studio-jump-enter {
  from { opacity: 0; transform: translate(14px, -50%) scale(.97); }
  to { opacity: 1; transform: translate(0, -50%) scale(1); }
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-section {
  margin-bottom: 32px;
  scroll-margin-top: 16px;
}

/* Keep both genuine before/after videos and all original playback controls. */
.cv-studio-refined #cvAiStudioScreen #cvMs-character-video {
  position: relative;
  padding: 17px;
  border-radius: 24px;
  border-color: #e0c48038;
  background: linear-gradient(145deg, #29271e, #141713 48%, #101310);
  box-shadow: inset 0 1px #f2d9a00c;
}
.cv-studio-refined #cvAiStudioScreen .cv-character-intro { padding-bottom: 18px; }
.cv-studio-refined #cvAiStudioScreen .cv-character-kicker { margin-bottom: 14px; }
.cv-studio-refined #cvAiStudioScreen .cv-character-model {
  background: #e8cf9020;
  border: 1px solid #e9cf9040;
  padding: 7px 9px;
  border-radius: 8px;
  font-size: 11px;
}
.cv-studio-refined #cvAiStudioScreen .cv-character-kicker > span:last-child {
  font-size: 8px;
  letter-spacing: .16em;
  color: #b7b09b;
}
.cv-studio-refined #cvAiStudioScreen #cvMs-character-video .cv-character-intro h2 {
  font-size: clamp(22px, 6.1vw, 29px);
  line-height: 1.16;
  letter-spacing: -.045em;
  max-width: 14em;
}
.cv-studio-refined #cvAiStudioScreen .cv-character-intro h2 em { color: #e7cd91; }
.cv-studio-refined #cvAiStudioScreen .cv-character-tabs {
  background: #090c09;
  border-color: #ffffff0d;
  border-radius: 12px;
  margin-bottom: 8px;
}
.cv-studio-refined #cvAiStudioScreen .cv-character-tabs button { font-size: 11px; }
.cv-studio-refined #cvAiStudioScreen .cv-character-tabs button[aria-selected="true"] {
  background: #36352a;
  border-color: #e5ca8233;
  color: #f2dfa5;
}
.cv-studio-refined #cvAiStudioScreen .cv-character-rule { font-size: 10px; color: #b0b0a5; margin-bottom: 14px; }
.cv-studio-refined #cvAiStudioScreen .cv-character-compare { border-radius: 15px; border-color: #d7c08c26; }
.cv-studio-refined #cvAiStudioScreen .cv-character-cover-play {
  width: 48px;
  height: 48px;
  background: #ebd394;
  color: #181b13;
  border: 1px solid #fff5;
}
.cv-studio-refined #cvAiStudioScreen #cvMs-character-video .cv-character-start {
  border-radius: 13px;
  min-height: 48px;
  font-size: 13px;
  background: linear-gradient(110deg, #efdc9f, #d5b565);
  margin-top: 14px;
}

/* A numbered, easy-to-scan section hierarchy replaces the long list. */
.cv-studio-refined #cvAiStudioScreen .cv-ms-section > header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  gap: 6px 10px;
  padding-top: 17px;
  margin: 0 2px 15px;
  border-top: 1px solid #d9c08426;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-section > header::after {
  content: attr(data-chapter);
  grid-column: 2;
  grid-row: 1 / 3;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-section-icon { display: none; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-section > header h2 {
  grid-column: 1;
  font-size: 24px;
  font-weight: 650;
  letter-spacing: -.04em;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-section > header p {
  grid-column: 1;
  color: #a0a499;
  font-size: 11px;
  line-height: 1.5;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-section[data-studio-chapter] > header::after {
  color: #c3ac73;
  font-size: 12px;
  line-height: 29px;
  text-align: right;
  font-variant-numeric: tabular-nums;
}
.cv-studio-refined #cvAiStudioScreen #cvMs-reels > header::after { content: '01'; }
.cv-studio-refined #cvAiStudioScreen #cvMs-advertising > header::after { content: '02'; }
.cv-studio-refined #cvAiStudioScreen #cvMs-design > header::after { content: '03'; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: flex-start;
  position: relative;
  gap: 0;
  min-height: 0;
  width: 100%;
  padding: 0;
  border: 1px solid #c3b17c23;
  border-radius: 19px;
  background: linear-gradient(160deg, #1b201b, #131713);
  overflow: hidden;
  isolation: isolate;
  transition: transform 160ms ease, border-color 160ms ease;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card .cv-ms-media {
  flex: none;
  width: 100%;
  height: clamp(170px, 48vw, 225px);
  aspect-ratio: auto;
  align-self: stretch;
  border-radius: 0;
  box-shadow: none;
  background: #080b08;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-media > :is(img, video) { object-fit: cover; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #00000040, transparent 30%, transparent 75%, #14171370);
  pointer-events: none;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-card-tag {
  position: absolute;
  display: block;
  z-index: 1;
  top: 10px;
  left: 10px;
  right: auto;
  bottom: auto;
  transform: none;
  max-width: calc(100% - 20px);
  padding: 5px 7px;
  border: 1px solid #ffffff25;
  border-radius: 6px;
  background: #11170feb;
  color: #e7dac0;
  font-size: 8px;
  font-weight: 650;
  line-height: 1.3;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy {
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: 8px;
  padding: 14px 12px 12px;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy > strong {
  font-size: 15px;
  line-height: 1.25;
  font-weight: 650;
  letter-spacing: -.03em;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy > span {
  color: #a8afa1;
  font-size: 10px;
  line-height: 1.6;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy > .cv-ms-flow {
  margin-top: auto;
  padding-top: 10px;
  border-top-color: #dfce9317;
  color: #d6c08b;
  min-height: 42px;
  height: auto;
  font-size: 9px;
  font-weight: 500;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy > .cv-studio-demo {
  height: 42px;
  padding-top: 8px;
}
.cv-studio-refined #cvAiStudioScreen .cv-studio-demo > svg { max-width: 190px; height: 32px; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-card > i {
  position: absolute;
  top: calc(clamp(170px, 48vw, 225px) - 39px);
  right: 9px;
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border: 1px solid #ffffff35;
  border-radius: 50%;
  background: #10150fe6;
  color: #ecd9a8;
  font-size: 16px;
}
.cv-studio-refined #cvAiStudioScreen .cv-ms-translation { z-index: 1; font-size: 9px; padding: 5px; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-copy { z-index: 1; font-size: 10px; }

/* Design retains its original art and has room to breathe as a wide closing card. */
.cv-studio-refined #cvAiStudioScreen #cvMs-design .cv-ms-cards { grid-template-columns: minmax(0, 1fr); }
.cv-studio-refined #cvAiStudioScreen #cvMs-design .cv-ms-media { height: 210px; }
.cv-studio-refined #cvAiStudioScreen #cvMs-design .cv-ms-card > i { top: 171px; }
.cv-studio-refined #cvAiStudioScreen #cvMs-design .cv-ms-card-copy { padding: 16px; }
.cv-studio-refined #cvAiStudioScreen #cvMs-design .cv-ms-card-copy > strong { font-size: 22px; }
.cv-studio-refined #cvAiStudioScreen .cv-ms-design > span:not(.cv-studio-card-tag) {
  left: 12%;
  right: 12%;
  padding: 10px;
  font-size: 11px;
  letter-spacing: .09em;
  border-radius: 7px;
}
.cv-studio-refined #cvAiStudioScreen button:focus-visible { outline: 2px solid #edd394; outline-offset: 3px; }
@media (hover: hover) and (pointer: fine) {
  .cv-studio-refined #cvAiStudioScreen .cv-ms-card:hover { transform: translateY(-2px); border-color: #d8bf7d66; }
}
@media (max-width: 360px) {
  .cv-studio-refined #cvAiStudioScreen.cv-ms-catalogue.cv-studio-polished { padding-inline: 12px; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-cards { gap: 9px; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy { padding: 12px 10px 10px; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-card-copy > strong { font-size: 14px; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-jump { width: 56px; right: 4px; }
  .cv-studio-refined #cvAiStudioScreen #cvMs-character-video { padding: 14px 12px; border-radius: 20px; }
  .cv-studio-refined #cvAiStudioScreen .cv-character-tabs button { font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .cv-studio-refined #cvAiStudioScreen .cv-ms-card { transition: none; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-jump:not([hidden]) { animation: none; }
  .cv-studio-refined #cvAiStudioScreen .cv-ms-jump button { transition: none; }
}
