/* RankRealm typography system — Cinzel / Rajdhani / Inter.
   Keep decorative lettering on SHORT headings; readability wins for long movie titles.
   Webfonts are loaded in HTML from Google Fonts; system fallbacks remain available. */
:root {
  --rr-font-display: "Cinzel", Georgia, "Times New Roman", serif;
  --rr-font-ui: "Rajdhani", "Arial Narrow", "Segoe UI", Arial, sans-serif;
  --rr-font-body: "Inter", "Segoe UI", Arial, sans-serif;
  --rr-type-body-size: 14px;
  --rr-type-reading-line: 1.72;
  --rr-type-heading-tracking: .014em;
}
html {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}
body {
  font-family: var(--rr-font-body);
  font-size: var(--rr-type-body-size);
  font-weight: 400;
  line-height: 1.55;
  font-synthesis: none;
}
p, li, dd, dt, blockquote {
  font-family: var(--rr-font-body);
  line-height: var(--rr-type-reading-line);
}
h1, h2, h3 {
  color: #f6f0ff;
  font-family: var(--rr-font-display);
  font-weight: 700;
  letter-spacing: var(--rr-type-heading-tracking);
  text-wrap: balance;
}
h1 { line-height: 1.16; }
h2 { line-height: 1.22; }
h3 { line-height: 1.3; }
h2, h3 { overflow-wrap: anywhere; }
.eyebrow,
.rank-strip-caption,
.watch-fact,
.watch-facts,
.watch-provider,
.watch-next-copy small,
.catalog-subnav,
.watch-breadcrumb,
.creator-visit,
.creator-feature-heading .eyebrow {
  font-family: var(--rr-font-ui);
  font-weight: 700;
}
.eyebrow {
  font-size: 13px;
  letter-spacing: .15em;
  line-height: 1.3;
}
button,
input,
select,
textarea,
.premium,
.primary,
.hero-action,
.catalog-see-all,
.watch-share-copy,
.watch-genres a,
.watch-source-details summary,
.rank-strip-links a,
.genre-quicklinks a,
.catalog-pagination a,
.creator-collection>a {
  font-family: var(--rr-font-ui);
  font-weight: 700;
}
button,
.premium,
.primary,
.hero-action {
  letter-spacing: .025em;
}
input, select, textarea {
  font-size: 15px;
  font-weight: 500;
  letter-spacing: 0;
}
.header nav a,
.watch-social-left a,
.watch-share-links a,
.creator-name,
.creator-collection-identity p:not(.eyebrow) {
  font-family: var(--rr-font-body);
}
.creator-feature-heading h2,
.catalog .section-head h2,
.watch-up-next h2,
.foot-note h2 {
  font-family: var(--rr-font-display);
  font-weight: 700;
  letter-spacing: -.01em;
  line-height: 1.25;
}
.movies .movie strong,
.watch-next-copy strong,
.watch-layout-next .watch-headline h1,
.watch-headline h1,
.watch-related-card strong {
  font-family: var(--rr-font-body);
  font-weight: 800;
  letter-spacing: -.025em;
  text-wrap: wrap;
}
.watch-layout-next .watch-info-under .watch-headline h1 {
  font-size: clamp(23px, 2.1vw, 33px);
  line-height: 1.18;
}
.watch-summary-panel h2,
.watch-summary-panel h3,
.watch-summary-panel .watch-detail-heading {
  font-family: var(--rr-font-display);
  font-weight: 700;
  letter-spacing: .01em;
}
.watch-description,
.watch-summary-panel .watch-description,
.watch-source-details,
.watch-disclaimer,
.creator-collection p,
.watch-next-empty {
  font-family: var(--rr-font-body);
  font-size: 14px;
  line-height: 1.78;
}
.watch-next-copy strong {
  font-size: 12.5px;
  line-height: 1.42;
}
.watch-next-copy small {
  font-size: 12px;
  letter-spacing: .012em;
}
.movies-compact .movie strong {
  font-size: 12.5px;
  line-height: 1.45;
}
.watch-fact,
.rank-strip-caption,
.creator-collection .eyebrow {
  letter-spacing: .08em;
}
.admin .panel h2,
.admin .panel h3,
.admin h1 {
  font-family: var(--rr-font-display);
}
.admin .panel label,
.admin .review-item,
.admin .panel p {
  font-family: var(--rr-font-body);
}
@media (max-width: 700px) {
  .catalog .section-head h2,
  .creator-feature-heading h2,
  .watch-up-next h2 {
    font-size: clamp(20px, 5vw, 27px);
  }
  .watch-layout-next .watch-info-under .watch-headline h1 {
    font-size: clamp(22px, 5.5vw, 29px);
  }
  .watch-description,
  .watch-summary-panel .watch-description {
    font-size: 14px;
    line-height: 1.75;
  }
}

/* Compact navigation actions: match the lighter fantasy typography without
   changing the header, title, search placement, or movie-card geometry. */
.header .premium{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 12px;
  border-radius:7px;
  font-family:var(--rr-font-ui);
  font-size:12px;
  font-weight:700;
  line-height:1.15;
  white-space:nowrap;
  box-shadow:0 0 10px #8b45df20;
}
.catalog .section-head form{
  display:flex;
  align-items:center;
  gap:7px;
}
.catalog .section-head form input{
  width:180px;
  min-height:35px;
  padding:7px 10px;
  border-radius:7px;
  font-family:var(--rr-font-body);
  font-size:12px;
  font-weight:400;
  line-height:1.3;
}
.catalog .section-head form button{
  min-height:35px;
  padding:7px 13px;
  border-radius:7px;
  font-family:var(--rr-font-ui);
  font-size:12px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
}
@media(max-width:700px){
  .header .premium{min-height:32px;padding:6px 10px;font-size:12px}
  .catalog .section-head form{width:100%;max-width:360px}
  .catalog .section-head form input{width:100%;min-width:0;flex:1}
  .catalog .section-head form button{flex:0 0 auto}
}

/* Member navigation and movie saving controls; keep the header compact. */
.header-member-actions{display:flex;align-items:center;gap:clamp(7px,1.1vw,15px)}
.header-member-link{
  color:#e5d1ff;
  font:700 14px/1.2 var(--rr-font-ui,"Segoe UI",sans-serif);
  white-space:nowrap;
  padding:7px 9px;
  border:1px solid #644885;
  border-radius:7px;
  background:#1b1129bf;
}
.header-member-link:hover,
.header-member-link:focus-visible{
  border-color:#d2a1ff;
  background:#32204b;
}
.watch-favorite-form{display:inline-flex;align-items:center;margin:0}
.watch-favorite-button,
.watch-share-links .watch-favorite-button{
  display:inline-flex;align-items:center;justify-content:center;
  gap:6px;min-height:32px;
  border:1px solid #a57b40;
  border-radius:7px;
  padding:6px 12px;
  background:#24172e;color:#f5d29e;
  font:700 13px/1.2 var(--rr-font-ui,"Segoe UI",sans-serif);
  white-space:nowrap;
  text-decoration:none;
}
.watch-favorite-button:hover,
.watch-favorite-button:focus-visible{
  background:#452957;
  border-color:#edc17d;
  box-shadow:0 0 10px #e1ad5c52;
}
.watch-favorite-button.is-saved{
  color:#ffe6b0;
  border-color:#efb55b;
  background:#49311e;
}
.member-flash{
  border:1px solid #ae8245;
  border-radius:7px;
  background:#292030;
  padding:10px 14px;
  color:#ffdea5;
  font:600 13px/1.5 var(--rr-font-body,"Segoe UI",sans-serif);
  margin:12px 0;
}
@media(max-width:650px){
  .header-member-actions{gap:5px}
  .header-member-link{font-size:12px;padding:6px 7px}
  .watch-favorite-button{padding:5px 9px}
}

/* Gold-accented movie playlist organizer in the existing player action bar. */
.watch-collection-form{display:inline-flex;gap:5px;align-items:center;flex-wrap:wrap;margin:0}
.watch-collection-form select{
  width:clamp(120px,11vw,175px);
  max-width:175px;
  min-height:32px;
  border:1px solid #8e6538;
  border-radius:7px;
  padding:5px 7px;
  background:#21162f;
  color:#f1dbb5;
  font:700 12px var(--rr-font-ui,"Segoe UI",sans-serif);
}
.watch-collection-button{
  min-height:32px;
  border:1px solid #c5975a;
  border-radius:7px;
  padding:6px 10px;
  background:#4b2d34;
  color:#ffe3b0;
  font:700 12px var(--rr-font-ui,"Segoe UI",sans-serif);
}
.watch-collection-button:disabled{opacity:.4;cursor:not-allowed}
.watch-collection-manage,.watch-share-links .watch-collection-manage{
  font:700 12px var(--rr-font-ui,"Segoe UI",sans-serif);
  color:#d5b0f1;
  white-space:nowrap;
  text-decoration:underline;
}
.watch-playlist-progress{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin:12px 0 0;
  padding:12px 14px;
  border:1px solid #906639;
  border-radius:9px;
  background:linear-gradient(110deg,#302039,#20182c);
  color:#eed8ff;
  font-size:12px;
}
.watch-playlist-progress a{color:#f1cf94;font-weight:750;text-decoration:underline}
.watch-playlist-next{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  color:#f5d4a2!important;
  font:700 13px var(--rr-font-ui,"Segoe UI",sans-serif);
}

/* Explicit, one-click movie destination chooser. Uses the gold fantasy wrapper
   without interfering with the YouTube player or the original sidebar. */
.watch-save-collection{
  position:relative;
  isolation:isolate;
  margin:17px 2px 14px;
  padding:17px 20px 20px;
  background:linear-gradient(120deg,#20152df2,#130e24ef);
  border:1px solid #956c3f;
  border-radius:10px;
  box-shadow:0 0 15px #d49b4130;
}
.watch-save-collection::after{
  content:"";
  position:absolute;
  inset:-4px;
  z-index:2;
  pointer-events:none;
  border:16px solid transparent;
  border-image-source:url("frames/channel-card-gold.png");
  border-image-slice:16% 12% 16% 12%;
  border-image-width:16px;
  border-image-repeat:stretch;
  filter:drop-shadow(0 0 4px #d59b4e74);
}
.watch-save-collection-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:12px;
  margin-bottom:13px;
}
.watch-save-collection-heading .eyebrow{
  font-size:10px;
  margin:0 0 4px;
}
.watch-save-collection-heading h2{
  font-size:clamp(17px,1.5vw,21px);
  margin:0 0 4px;
  color:#f5d7a3;
}
.watch-save-collection-heading p:not(.eyebrow){
  font:400 12px/1.5 var(--rr-font-body,"Segoe UI",sans-serif);
  color:#c9b8d6;
  margin:0;
}
.watch-save-collection-heading>a,
.watch-save-empty a{
  color:#efc78e;
  font:700 13px var(--rr-font-ui,"Segoe UI",sans-serif);
  white-space:nowrap;
  text-decoration:underline;
}
.watch-folder-choices{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.watch-folder-choices form{margin:0}
.watch-folder-choice{
  display:flex;
  align-items:center;
  gap:7px;
  min-height:39px;
  border:1px solid #86639b;
  border-radius:8px;
  background:#2a1b3c;
  color:#f0ddfc;
  padding:8px 11px;
  font:700 13px/1.3 var(--rr-font-ui,"Segoe UI",sans-serif);
  text-align:left;
  max-width:100%;
}
.watch-folder-choice:hover,
.watch-folder-choice:focus-visible{
  border-color:#e4af70;
  background:#423053;
  box-shadow:0 0 9px #dca65b45;
}
.watch-folder-choice.is-saved{
  background:#4a3229;
  border-color:#e2b270;
  color:#ffe7bc;
}
.watch-folder-choice>small{
  color:#c5a8d5;
  font:600 11px var(--rr-font-ui,"Segoe UI",sans-serif);
}
.watch-folder-choice.is-saved>small{color:#f4c18b}
.watch-save-empty{display:flex;align-items:center;gap:15px;flex-wrap:wrap;font-size:13px;color:#c8b4d6}
@media(max-width:650px){
  .watch-save-collection{padding:16px 12px;margin:13px 0}
  .watch-save-collection::after{border-image-width:12px;inset:-3px}
  .watch-folder-choice{padding:7px 9px}
  .watch-folder-choice>small{display:none}
}

/* Unified navigation: small fantasy tabs with clear active state.
   Nav is centered, while profile and premium stay on the right. */
.header .realm-primary-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:clamp(4px,.7vw,11px);
  flex-wrap:wrap;
}
.header .realm-primary-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:7px clamp(9px,.8vw,14px);
  border:1px solid transparent;
  border-radius:7px;
  color:#d1c2e7;
  background:transparent;
  font:700 14px/1.2 var(--rr-font-ui,"Segoe UI",sans-serif);
  letter-spacing:.035em;
  white-space:nowrap;
  transition:color .18s,border-color .18s,background .18s;
}
.header .realm-primary-nav a:hover,
.header .realm-primary-nav a:focus-visible{
  color:#ffe2ae;
  border-color:#694689;
  background:#3220448c;
}
.header .realm-primary-nav a[aria-current="page"]{
  color:#f9d69a;
  background:linear-gradient(180deg,#3320487d,#24152b8c);
  border-color:#775078;
}
.header .realm-primary-nav a[aria-current="page"]::after{
  content:"";
  position:absolute;
  left:15%;
  right:15%;
  bottom:2px;
  height:2px;
  border-radius:3px;
  background:linear-gradient(90deg,transparent,#f7c57d,transparent);
  box-shadow:0 0 7px #b36dea;
}
.header .header-member-actions{
  flex-shrink:0;
}
.header .header-member-link[aria-current="page"]{
  border-color:#ba8353;
  color:#ffe3b7;
}
@media(max-width:850px){
  .header{gap:8px}
  .header .realm-primary-nav{gap:3px}
  .header .realm-primary-nav a{font-size:12px;padding:6px 8px}
}
@media(max-width:640px){
  .header{flex-wrap:wrap}
  .header .realm-primary-nav{order:3;width:100%;justify-content:center}
  .header .realm-primary-nav a{min-height:30px}
}
@media(prefers-reduced-motion:reduce){
  .header .realm-primary-nav a{transition:none}
}

/* Live, published-only movie total in the main navigation. */
.header .realm-primary-nav a.header-movie-count{
  display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;
  min-height:35px;padding:6px 12px;margin-left:3px;
  color:#f6eaff;border:1px solid #9d58e3;border-radius:18px;
  background:linear-gradient(115deg,#2f154be8,#5b268abf 62%,#271044ef);
  box-shadow:0 0 12px #953bf276,inset 0 0 12px #ab65f438;
  text-shadow:0 0 9px #bb82ff92;
}
.header .realm-primary-nav a.header-movie-count:hover,
.header .realm-primary-nav a.header-movie-count:focus-visible{
  color:#fff;border-color:#d2a1ff;background:#54228b;
  box-shadow:0 0 19px #a847f2a8,inset 0 0 12px #d99cff3b;
}
.header .header-movie-count strong{
  color:#fff;font:800 16px/1 var(--rr-font-ui,"Segoe UI",sans-serif);
  font-variant-numeric:tabular-nums;
}
.header .header-movie-count .header-count-icon{
  color:#db9fff;font-size:14px;line-height:1;
}
.header .header-movie-count .header-count-label{
  color:#e5c9ff;font:800 9px/1 var(--rr-font-ui,"Segoe UI",sans-serif);
  letter-spacing:.09em;
}
@media(max-width:750px){
  .header .realm-primary-nav a.header-movie-count{
    min-height:30px;padding:5px 9px;margin-left:0;gap:5px;
  }
  .header .header-movie-count strong{font-size:13px}
  .header .header-movie-count .header-count-label{font-size:8px}
}
@media(max-width:390px){
  .header .header-movie-count .header-count-label{display:none}
}
