:root,
html[data-cinefy-theme="ember"] {
  --theme-bg-rgb: 20 9 10;
  --theme-surface-rgb: 31 14 15;
  --theme-surface-strong-rgb: 70 47 44;
  --theme-nav-rgb: 32 16 17;
  --theme-text-rgb: 255 243 241;
  --theme-muted-rgb: 215 193 189;
  --theme-outline-rgb: 175 135 130;
  --theme-accent-rgb: 232 59 36;
  --theme-accent-strong-rgb: 159 23 13;
  --theme-accent-soft-rgb: 255 154 141;
  --theme-glow-rgb: 255 255 255;
}

html[data-cinefy-theme="ocean"] {
  --theme-bg-rgb: 8 16 26;
  --theme-surface-rgb: 15 28 42;
  --theme-surface-strong-rgb: 37 58 80;
  --theme-nav-rgb: 10 21 33;
  --theme-text-rgb: 241 247 255;
  --theme-muted-rgb: 181 202 225;
  --theme-outline-rgb: 120 148 179;
  --theme-accent-rgb: 55 125 255;
  --theme-accent-strong-rgb: 20 71 166;
  --theme-accent-soft-rgb: 157 206 255;
  --theme-glow-rgb: 151 220 255;
}

html[data-cinefy-theme="emerald"] {
  --theme-bg-rgb: 8 18 14;
  --theme-surface-rgb: 14 31 23;
  --theme-surface-strong-rgb: 34 63 48;
  --theme-nav-rgb: 12 24 19;
  --theme-text-rgb: 244 255 250;
  --theme-muted-rgb: 185 216 200;
  --theme-outline-rgb: 120 162 141;
  --theme-accent-rgb: 34 197 94;
  --theme-accent-strong-rgb: 22 128 61;
  --theme-accent-soft-rgb: 142 239 186;
  --theme-glow-rgb: 193 255 214;
}

html[data-cinefy-theme="aurora"] {
  --theme-bg-rgb: 17 10 29;
  --theme-surface-rgb: 29 18 47;
  --theme-surface-strong-rgb: 63 45 96;
  --theme-nav-rgb: 23 14 36;
  --theme-text-rgb: 248 244 255;
  --theme-muted-rgb: 208 190 232;
  --theme-outline-rgb: 150 126 188;
  --theme-accent-rgb: 139 92 246;
  --theme-accent-strong-rgb: 91 33 182;
  --theme-accent-soft-rgb: 203 170 255;
  --theme-glow-rgb: 226 210 255;
}

html[data-cinefy-theme="sunset"] {
  --theme-bg-rgb: 24 12 9;
  --theme-surface-rgb: 37 18 13;
  --theme-surface-strong-rgb: 82 49 32;
  --theme-nav-rgb: 31 15 11;
  --theme-text-rgb: 255 245 239;
  --theme-muted-rgb: 231 196 179;
  --theme-outline-rgb: 184 137 112;
  --theme-accent-rgb: 249 115 22;
  --theme-accent-strong-rgb: 194 65 12;
  --theme-accent-soft-rgb: 255 192 143;
  --theme-glow-rgb: 255 226 178;
}

html[data-cinefy-theme="rose"] {
  --theme-bg-rgb: 24 10 18;
  --theme-surface-rgb: 40 15 29;
  --theme-surface-strong-rgb: 82 35 59;
  --theme-nav-rgb: 31 12 22;
  --theme-text-rgb: 255 242 248;
  --theme-muted-rgb: 231 187 208;
  --theme-outline-rgb: 187 126 156;
  --theme-accent-rgb: 236 72 153;
  --theme-accent-strong-rgb: 190 24 93;
  --theme-accent-soft-rgb: 251 182 224;
  --theme-glow-rgb: 255 220 238;
}

html[data-cinefy-theme="noir"] {
  --theme-bg-rgb: 9 9 11;
  --theme-surface-rgb: 24 24 27;
  --theme-surface-strong-rgb: 63 63 70;
  --theme-nav-rgb: 15 15 18;
  --theme-text-rgb: 244 244 245;
  --theme-muted-rgb: 212 212 216;
  --theme-outline-rgb: 161 161 170;
  --theme-accent-rgb: 212 212 216;
  --theme-accent-strong-rgb: 113 113 122;
  --theme-accent-soft-rgb: 244 244 245;
  --theme-glow-rgb: 255 255 255;
}

html[data-cinefy-theme="golden-age"] {
  --theme-bg-rgb: 22 16 8;
  --theme-surface-rgb: 40 28 12;
  --theme-surface-strong-rgb: 92 67 31;
  --theme-nav-rgb: 28 20 10;
  --theme-text-rgb: 255 247 224;
  --theme-muted-rgb: 232 212 158;
  --theme-outline-rgb: 181 145 79;
  --theme-accent-rgb: 245 196 81;
  --theme-accent-strong-rgb: 183 121 31;
  --theme-accent-soft-rgb: 253 231 161;
  --theme-glow-rgb: 255 240 190;
}

html[data-cinefy-theme="noir"] .bg-gradient-to-r.from-primary.to-primary-deep,
html[data-cinefy-theme="noir"] .bg-gradient-to-r.from-primary.to-red-900,
html[data-cinefy-theme="noir"] .bg-primary.text-white,
html[data-cinefy-theme="noir"] .bg-cine-red.text-white,
html[data-cinefy-theme="noir"] .bg-red-600.text-white,
html[data-cinefy-theme="noir"] .bg-red-700.text-white,
html[data-cinefy-theme="noir"] .signin-submit-button,
html[data-cinefy-theme="noir"] .hero-list-button.is-added,
html[data-cinefy-theme="noir"] .details-list-button.is-added {
  background-image: none !important;
  background-color: rgb(102 102 109) !important;
  border-color: rgb(244 244 245 / 0.22) !important;
  color: rgb(255 255 255) !important;
  box-shadow: 0 18px 36px rgb(0 0 0 / 0.22) !important;
}

html[data-cinefy-theme="noir"] .hover\:bg-red-500:hover,
html[data-cinefy-theme="noir"] .hover\:bg-red-600:hover,
html[data-cinefy-theme="noir"] .hover\:bg-red-700:hover,
html[data-cinefy-theme="noir"] .bg-gradient-to-r.from-primary.to-primary-deep:hover,
html[data-cinefy-theme="noir"] .bg-gradient-to-r.from-primary.to-red-900:hover,
html[data-cinefy-theme="noir"] .bg-primary.text-white:hover,
html[data-cinefy-theme="noir"] .bg-red-600.text-white:hover,
html[data-cinefy-theme="noir"] .bg-red-700.text-white:hover,
html[data-cinefy-theme="noir"] .signin-submit-button:hover,
html[data-cinefy-theme="noir"] .hero-list-button.is-added:hover,
html[data-cinefy-theme="noir"] .details-list-button.is-added:hover {
  background-image: none !important;
  background-color: rgb(124 124 132) !important;
  border-color: rgb(255 255 255 / 0.32) !important;
  color: rgb(255 255 255) !important;
  filter: none !important;
}

html {
  color-scheme: dark;
}

body {
  overflow-x: hidden;
}

:where(a, button, input, select, textarea, [tabindex]):focus-visible {
  outline: 2px solid rgb(var(--theme-accent-soft-rgb));
  outline-offset: 3px;
}

.fill-icon {
  font-variation-settings: "FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24;
}

body[data-page="home"],
body[data-page="perfil"],
body[data-page="usuario"],
body[data-page="lista"],
body[data-page="buscar"],
body[data-page="detalhes"],
body[data-page="modoleitor"],
body[data-page="amigos"],
body[data-page="404"] {
  background:
    radial-gradient(circle at top left, rgb(var(--theme-accent-rgb) / 0.2), transparent 28%),
    radial-gradient(circle at top right, rgb(var(--theme-glow-rgb) / 0.08), transparent 22%),
    linear-gradient(180deg, rgb(var(--theme-bg-rgb) / 0.96), rgb(var(--theme-bg-rgb) / 1)),
    rgb(var(--theme-bg-rgb)) !important;
  color: rgb(var(--theme-text-rgb));
}

body[data-page="login"],
body[data-page="cadastro"] {
  color: rgb(var(--theme-text-rgb));
  background:
    radial-gradient(circle at top, rgb(var(--theme-glow-rgb) / 0.16), transparent 18%),
    linear-gradient(135deg, rgb(var(--theme-bg-rgb) / 0.82), rgb(var(--theme-accent-rgb) / 0.32)),
    var(--cine-bg) center/cover no-repeat fixed !important;
}

.glass-card,
.glass-panel,
.section-shell,
.soft-card,
.auth-shell {
  background: linear-gradient(180deg, rgb(var(--theme-surface-rgb) / 0.84), rgb(var(--theme-surface-rgb) / 0.68)) !important;
  border-color: rgb(var(--theme-outline-rgb) / 0.18) !important;
  box-shadow: 0 24px 70px rgb(0 0 0 / 0.28);
  border-radius: 2rem !important;
}

.section-heading {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
  padding-left: 1rem;
}

.section-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.22rem;
  width: 0.28rem;
  height: 1.9rem;
  border-radius: 999px;
  background: linear-gradient(180deg, rgb(var(--theme-accent-soft-rgb)), rgb(var(--theme-accent-rgb)));
  box-shadow: 0 0 0 1px rgb(var(--theme-accent-rgb) / 0.14), 0 10px 22px rgb(var(--theme-accent-rgb) / 0.22);
}

.section-heading > :is(h1, h2, h3) {
  margin: 0;
}

.section-heading > p {
  margin: 0;
}

.cinefy-brand-mark {
  display: inline-flex;
  align-items: center;
  width: max-content;
  max-width: 100%;
  gap: 0.42em;
  overflow: visible;
  padding: 0.08em 0.26em 0.14em 0.04em;
  line-height: 1.02;
  white-space: nowrap;
  transition: filter 160ms ease, transform 160ms ease;
}

.cinefy-brand-mark__core {
  display: inline-block;
  overflow: visible;
  padding-right: 0.08em;
  padding-bottom: 0.08em;
  color: transparent !important;
  background-image: linear-gradient(
    135deg,
    rgb(var(--theme-accent-soft-rgb)),
    rgb(var(--theme-accent-rgb)) 42%,
    rgb(var(--theme-accent-strong-rgb))
  );
  -webkit-background-clip: text;
  background-clip: text;
  font-family: "Sora", sans-serif;
  font-style: italic;
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.04em;
  text-shadow: 0 14px 32px rgb(var(--theme-accent-rgb) / 0.18);
}

.cinefy-brand-mark__suffix {
  display: inline-block;
  flex: 0 0 auto;
  padding: 0.42em 0.82em 0.38em 0.92em;
  border: 1px solid rgb(var(--theme-accent-rgb) / 0.22);
  border-radius: 999px;
  background:
    linear-gradient(180deg, rgb(var(--theme-surface-strong-rgb) / 0.64), rgb(var(--theme-surface-rgb) / 0.9)),
    linear-gradient(135deg, rgb(var(--theme-accent-rgb) / 0.12), rgb(var(--theme-accent-soft-rgb) / 0.08));
  color: rgb(var(--theme-text-rgb) / 0.92);
  font-family: "Outfit", sans-serif;
  font-size: 0.34em;
  font-style: normal;
  font-weight: 700;
  letter-spacing: 0.28em;
  line-height: 1;
  text-indent: 0.28em;
  text-transform: uppercase;
  text-shadow: none;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.04), 0 10px 22px rgb(0 0 0 / 0.16);
  transform: translateY(0.02em);
}

.cinefy-brand-mark:hover {
  filter: brightness(1.06);
  transform: translateY(-0.5px);
}

.cinefy-user-link {
  color: inherit;
  text-decoration: none;
}

.cinefy-user-link-card {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 0.9rem;
  border-radius: 1.2rem;
  margin: -0.5rem;
  padding: 0.5rem;
  transition:
    background-color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.cinefy-user-link-card:hover {
  background: rgb(var(--theme-surface-strong-rgb) / 0.18);
  transform: translateY(-1px);
}

.cinefy-user-link-card:focus-visible {
  outline-offset: 4px;
}

.cinefy-in-list-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  border-radius: 999px;
  border: 1px solid rgb(var(--theme-accent-soft-rgb) / 0.32);
  background: linear-gradient(180deg, rgb(var(--theme-accent-rgb) / 0.9), rgb(var(--theme-accent-strong-rgb) / 0.9));
  color: rgb(255 255 255 / 0.98);
  box-shadow: 0 12px 26px rgb(var(--theme-accent-strong-rgb) / 0.24);
  backdrop-filter: blur(10px);
}

.cinefy-metadata-pill {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2rem;
  border-radius: 999px;
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.26);
  background: linear-gradient(180deg, rgb(var(--theme-surface-rgb) / 0.82), rgb(var(--theme-surface-rgb) / 0.68));
  color: rgb(var(--theme-text-rgb) / 0.96);
  padding: 0.42rem 0.82rem;
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.14em;
  line-height: 1;
  text-transform: uppercase;
  box-shadow: 0 10px 22px rgb(0 0 0 / 0.18);
  backdrop-filter: blur(10px);
}

.cinefy-metadata-pill--strong {
  border-color: rgb(var(--theme-accent-soft-rgb) / 0.28);
  background: linear-gradient(180deg, rgb(var(--theme-surface-strong-rgb) / 0.92), rgb(var(--theme-surface-rgb) / 0.88));
  color: rgb(var(--theme-text-rgb));
}

.auth-shell {
  background: rgb(var(--theme-surface-rgb) / 0.64) !important;
  border-color: rgb(var(--theme-outline-rgb) / 0.22) !important;
}

.form-panel {
  background: linear-gradient(180deg, rgb(var(--theme-surface-rgb) / 0.38), rgb(var(--theme-surface-rgb) / 0.18)) !important;
}

.field,
.social-button {
  background: rgb(var(--theme-surface-rgb) / 0.32) !important;
  border-color: rgb(var(--theme-outline-rgb) / 0.26) !important;
}

.field:focus-within {
  border-color: rgb(var(--theme-accent-soft-rgb) / 0.7) !important;
  box-shadow: 0 0 0 3px rgb(var(--theme-accent-rgb) / 0.16) !important;
}

.social-button:hover {
  background: rgb(var(--theme-surface-strong-rgb) / 0.34) !important;
}

.bg-background,
.bg-background-dark,
.bg-\[\#14090a\] {
  background-color: rgb(var(--theme-bg-rgb)) !important;
}

.bg-surface,
.bg-\[\#1d0f10\],
.bg-\[\#170c0d\],
.bg-\[\#201011\],
.bg-\[\#241213\],
.bg-\[\#241314\],
.bg-\[\#2a1516\],
.bg-\[\#2c1718\] {
  background-color: rgb(var(--theme-surface-rgb) / 0.92) !important;
}

.bg-\[\#341a1b\] {
  background-color: rgb(var(--theme-surface-strong-rgb) / 0.94) !important;
}

.bg-\[\#2a1718\] {
  background-color: rgb(var(--theme-surface-strong-rgb) / 0.86) !important;
}

.bg-zinc-950\/60 {
  background-color: rgb(var(--theme-surface-rgb) / 0.6) !important;
}

.bg-zinc-950\/70,
.bg-zinc-950\/78,
.bg-zinc-950\/80 {
  background-color: rgb(var(--theme-surface-rgb) / 0.72) !important;
}

.bg-zinc-900\/90 {
  background-color: rgb(var(--theme-surface-strong-rgb) / 0.76) !important;
}

.bg-zinc-800 {
  background-color: rgb(var(--theme-surface-strong-rgb)) !important;
}

.text-on-background,
.text-cine-text,
.text-ink,
.text-slate-100,
.text-\[\#fff3f1\] {
  color: rgb(var(--theme-text-rgb)) !important;
}

.text-zinc-100,
.text-zinc-200 {
  color: rgb(var(--theme-text-rgb) / 0.92) !important;
}

.text-zinc-300 {
  color: rgb(var(--theme-text-rgb) / 0.78) !important;
}

.text-zinc-400 {
  color: rgb(var(--theme-muted-rgb) / 0.92) !important;
}

.text-zinc-500 {
  color: rgb(var(--theme-muted-rgb) / 0.72) !important;
}

.text-cine-muted {
  color: rgb(var(--theme-muted-rgb)) !important;
}

.border-zinc-700,
.border-zinc-800,
.border-\[\#5a2b2d\],
.border-\[\#6c3437\] {
  border-color: rgb(var(--theme-outline-rgb) / 0.46) !important;
}

.text-red-200,
.text-red-300 {
  color: rgb(var(--theme-accent-soft-rgb)) !important;
}

.text-red-400,
.text-red-500,
.text-red-600,
.text-cine-red {
  color: rgb(var(--theme-accent-rgb)) !important;
}

.bg-red-600,
.bg-red-600\/10,
.bg-red-600\/20,
.bg-cine-red,
.bg-primary {
  background-color: rgb(var(--theme-accent-rgb)) !important;
}

.bg-red-600\/10 {
  background-color: rgb(var(--theme-accent-rgb) / 0.1) !important;
}

.bg-red-600\/20 {
  background-color: rgb(var(--theme-accent-rgb) / 0.2) !important;
}

.bg-red-700,
.bg-cine-red-deep {
  background-color: rgb(var(--theme-accent-strong-rgb)) !important;
}

.bg-red-950\/30 {
  background-color: rgb(var(--theme-accent-strong-rgb) / 0.22) !important;
}

.border-red-600 {
  border-color: rgb(var(--theme-accent-rgb)) !important;
}

.border-red-500\/20,
.border-red-500\/30,
.border-red-500\/40,
.border-red-300\/20 {
  border-color: rgb(var(--theme-accent-rgb) / 0.32) !important;
}

.ring-red-400\/30 {
  --tw-ring-color: rgb(var(--theme-accent-soft-rgb) / 0.3) !important;
}

.focus\:border-red-500:focus {
  border-color: rgb(var(--theme-accent-rgb)) !important;
}

.focus\:ring-red-500:focus,
.focus\:ring-red-500:focus-visible {
  --tw-ring-color: rgb(var(--theme-accent-rgb)) !important;
}

.hover\:bg-red-500\/10:hover,
.hover\:bg-red-600\/10:hover {
  background-color: rgb(var(--theme-accent-rgb) / 0.12) !important;
}

.hover\:bg-red-600:hover,
.hover\:bg-red-700:hover,
.hover\:bg-red-500:hover {
  background-color: rgb(var(--theme-accent-strong-rgb)) !important;
}

.hover\:border-red-500\/30:hover,
.hover\:border-red-500\/50:hover {
  border-color: rgb(var(--theme-accent-rgb) / 0.5) !important;
}

.hover\:text-red-200:hover,
.hover\:text-red-300:hover,
.hover\:text-red-400:hover,
.group:hover .group-hover\:text-red-300 {
  color: rgb(var(--theme-accent-soft-rgb)) !important;
}

.from-primary,
.from-\[\#e83b24\] {
  --tw-gradient-from: rgb(var(--theme-accent-rgb)) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-accent-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.to-primary-deep,
.to-red-900,
.to-\[\#9f170d\] {
  --tw-gradient-to: rgb(var(--theme-accent-strong-rgb)) var(--tw-gradient-to-position) !important;
}

.from-background {
  --tw-gradient-from: rgb(var(--theme-bg-rgb)) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-bg-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.via-background\/75 {
  --tw-gradient-stops: var(--tw-gradient-from), rgb(var(--theme-bg-rgb) / 0.75) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

.via-background\/70 {
  --tw-gradient-stops: var(--tw-gradient-from), rgb(var(--theme-bg-rgb) / 0.7) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

.from-red-700 {
  --tw-gradient-from: rgb(var(--theme-accent-strong-rgb)) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-accent-strong-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.from-red-700\/16 {
  --tw-gradient-from: rgb(var(--theme-accent-rgb) / 0.16) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-accent-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.from-red-600\/10 {
  --tw-gradient-from: rgb(var(--theme-accent-rgb) / 0.1) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-accent-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.from-red-600\/20 {
  --tw-gradient-from: rgb(var(--theme-accent-rgb) / 0.2) var(--tw-gradient-from-position) !important;
  --tw-gradient-to: rgb(var(--theme-accent-rgb) / 0) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
}

.to-red-500\/5 {
  --tw-gradient-to: rgb(var(--theme-accent-rgb) / 0.05) var(--tw-gradient-to-position) !important;
}

.via-red-600\/50 {
  --tw-gradient-stops: var(--tw-gradient-from), rgb(var(--theme-accent-rgb) / 0.5) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

.via-red-400 {
  --tw-gradient-stops: var(--tw-gradient-from), rgb(var(--theme-accent-soft-rgb)) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

.bg-red-500\/15,
.bg-red-500\/12 {
  background-color: rgb(var(--theme-accent-rgb) / 0.14) !important;
}

.theme-choice {
  position: relative;
  overflow: hidden;
  border-radius: 1.25rem;
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.18);
  background: linear-gradient(180deg, rgb(var(--theme-surface-rgb) / 0.82), rgb(var(--theme-surface-rgb) / 0.64));
  padding: 1rem;
  text-align: left;
  transition: transform 160ms ease, border-color 160ms ease, box-shadow 160ms ease;
}

.theme-choice:hover {
  transform: translateY(-1px);
  border-color: rgb(var(--theme-accent-rgb) / 0.34);
  box-shadow: 0 18px 40px rgb(0 0 0 / 0.24);
}

.theme-choice[data-active="true"] {
  border-color: rgb(var(--theme-accent-rgb) / 0.56);
  box-shadow: 0 0 0 1px rgb(var(--theme-accent-rgb) / 0.18), 0 22px 42px rgb(0 0 0 / 0.28);
}

.theme-choice__preview {
  display: flex;
  gap: 0.45rem;
  margin-bottom: 0.85rem;
}

.theme-choice__swatch {
  height: 0.95rem;
  flex: 1;
  border-radius: 999px;
  border: 1px solid rgb(255 255 255 / 0.1);
}

.theme-choice[data-theme-id="ember"] .theme-choice__swatch--accent {
  background: #e83b24;
}

.theme-choice[data-theme-id="ember"] .theme-choice__swatch--accent-strong {
  background: #9f170d;
}

.theme-choice[data-theme-id="ember"] .theme-choice__swatch--background {
  background: #14090a;
}

.theme-choice[data-theme-id="ocean"] .theme-choice__swatch--accent {
  background: #377dff;
}

.theme-choice[data-theme-id="ocean"] .theme-choice__swatch--accent-strong {
  background: #1447a6;
}

.theme-choice[data-theme-id="ocean"] .theme-choice__swatch--background {
  background: #08101a;
}

.theme-choice[data-theme-id="emerald"] .theme-choice__swatch--accent {
  background: #22c55e;
}

.theme-choice[data-theme-id="emerald"] .theme-choice__swatch--accent-strong {
  background: #16803d;
}

.theme-choice[data-theme-id="emerald"] .theme-choice__swatch--background {
  background: #08120e;
}

.theme-choice[data-theme-id="aurora"] .theme-choice__swatch--accent {
  background: #8b5cf6;
}

.theme-choice[data-theme-id="aurora"] .theme-choice__swatch--accent-strong {
  background: #5b21b6;
}

.theme-choice[data-theme-id="aurora"] .theme-choice__swatch--background {
  background: #110a1d;
}

.theme-choice[data-theme-id="sunset"] .theme-choice__swatch--accent {
  background: #f97316;
}

.theme-choice[data-theme-id="sunset"] .theme-choice__swatch--accent-strong {
  background: #c2410c;
}

.theme-choice[data-theme-id="sunset"] .theme-choice__swatch--background {
  background: #180c09;
}

.theme-choice[data-theme-id="rose"] .theme-choice__swatch--accent {
  background: #ec4899;
}

.theme-choice[data-theme-id="rose"] .theme-choice__swatch--accent-strong {
  background: #be185d;
}

.theme-choice[data-theme-id="rose"] .theme-choice__swatch--background {
  background: #170a12;
}

.theme-choice[data-theme-id="noir"] .theme-choice__swatch--accent {
  background: #d4d4d8;
}

.theme-choice[data-theme-id="noir"] .theme-choice__swatch--accent-strong {
  background: #71717a;
}

.theme-choice[data-theme-id="noir"] .theme-choice__swatch--background {
  background: #09090b;
}

.theme-choice[data-theme-id="golden-age"] .theme-choice__swatch--accent {
  background: #f5c451;
}

.theme-choice[data-theme-id="golden-age"] .theme-choice__swatch--accent-strong {
  background: #b7791f;
}

.theme-choice[data-theme-id="golden-age"] .theme-choice__swatch--background {
  background: #161008;
}

.theme-choice__label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  color: rgb(var(--theme-text-rgb));
  font-weight: 800;
}

.theme-choice__desc {
  margin-top: 0.45rem;
  color: rgb(var(--theme-muted-rgb) / 0.88);
  font-size: 0.92rem;
  line-height: 1.45;
}

.theme-choice__badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  background: rgb(var(--theme-accent-rgb) / 0.14);
  color: rgb(var(--theme-accent-soft-rgb));
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  padding: 0.3rem 0.55rem;
  text-transform: uppercase;
}

html {
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--theme-accent-rgb) / 0.42) rgb(var(--theme-bg-rgb));
}

*::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

*::-webkit-scrollbar-track {
  background: rgb(var(--theme-bg-rgb) / 0.92) !important;
  border-radius: 999px;
}

*::-webkit-scrollbar-thumb {
  background: linear-gradient(
    180deg,
    rgb(var(--theme-accent-soft-rgb) / 0.62),
    rgb(var(--theme-accent-rgb) / 0.42)
  ) !important;
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.24);
  border-radius: 999px;
}

*::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(
    180deg,
    rgb(var(--theme-accent-soft-rgb) / 0.82),
    rgb(var(--theme-accent-rgb) / 0.6)
  ) !important;
}

header[data-layout="navbar"],
footer[data-layout="footer"] {
  display: block;
  width: 100%;
}

body[data-page="home"] main,
body[data-page="buscar"] main,
body[data-page="lista"] main,
body[data-page="perfil"] main,
body[data-page="amigos"] main,
body[data-page="modoleitor"] main,
body[data-page="404"] main {
  width: min(1440px, calc(100vw - 2rem));
  max-width: none !important;
  margin-inline: auto;
}

body[data-page="detalhes"] .max-w-7xl,
body[data-page="home"] .max-w-7xl,
body[data-page="buscar"] .max-w-7xl,
body[data-page="lista"] .max-w-7xl,
body[data-page="perfil"] .max-w-7xl,
body[data-page="amigos"] .max-w-7xl,
body[data-page="modoleitor"] .max-w-7xl {
  max-width: 1440px !important;
}

.cinefy-topbar__inner,
.cinefy-footer-shell__inner {
  border-color: rgb(var(--theme-outline-rgb) / 0.46) !important;
}

.cinefy-topbar__inner {
  background:
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.96), rgb(var(--theme-surface-rgb) / 0.9)) !important;
  box-shadow: 0 18px 48px rgb(0 0 0 / 0.4), 0 0 0 1px rgb(var(--theme-outline-rgb) / 0.12) inset !important;
}

.cinefy-notifications-button,
.cinefy-profile-link,
.cinefy-mobile-nav,
.cinefy-footer-shell__inner,
.cinefy-notifications-panel {
  border-color: rgb(var(--theme-outline-rgb) / 0.38) !important;
}

.cinefy-notifications-button,
.cinefy-profile-link,
.cinefy-mobile-nav,
.cinefy-footer-shell__inner {
  background:
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.94), rgb(var(--theme-surface-rgb) / 0.88)) !important;
}

.cinefy-notifications-button:hover,
.cinefy-profile-link:hover {
  background:
    linear-gradient(180deg, rgb(var(--theme-surface-strong-rgb) / 0.72), rgb(var(--theme-surface-rgb) / 0.92)) !important;
  border-color: rgb(var(--theme-accent-rgb) / 0.3) !important;
}

.cinefy-notifications-panel {
  background:
    radial-gradient(circle at top right, rgb(var(--theme-accent-rgb) / 0.1), transparent 34%),
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.98), rgb(var(--theme-surface-rgb) / 0.94)) !important;
  box-shadow: 0 28px 80px rgb(0 0 0 / 0.62) !important;
}

.cinefy-notifications-list {
  scrollbar-width: thin;
  scrollbar-color: rgb(var(--theme-accent-rgb) / 0.45) rgb(var(--theme-surface-rgb) / 0.78);
}

.cinefy-notifications-list > a {
  border-color: rgb(var(--theme-outline-rgb) / 0.22) !important;
  background: rgb(var(--theme-surface-rgb) / 0.72) !important;
}

.cinefy-notifications-list > a:hover {
  border-color: rgb(var(--theme-accent-rgb) / 0.42) !important;
  background: rgb(var(--theme-surface-strong-rgb) / 0.52) !important;
}

.cinefy-mobile-nav {
  z-index: 72;
}

.cinefy-mobile-nav a {
  flex: 1 1 0%;
  min-width: 0;
}

.cinefy-topbar__actions {
  min-width: 0;
  justify-content: flex-end;
}

.cinefy-topbar__primary {
  min-width: max-content;
  flex: 0 0 auto;
  padding-right: 0.25rem;
}

.cinefy-brand {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: flex-end;
  min-width: max-content;
  line-height: 1;
}

.cinefy-topbar__secondary {
  min-width: 0;
  flex: 1 1 auto;
}

.cinefy-nav-links-shell {
  min-width: 0;
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.24);
  background:
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.78), rgb(var(--theme-surface-rgb) / 0.72));
  border-radius: 999px;
  padding: 0.32rem;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.03);
}

.cinefy-header-trust {
  align-items: center;
  gap: 0.55rem;
  min-width: 0;
}

.cinefy-header-trust-link,
.cinefy-search-shortcut {
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.24);
  background:
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.76), rgb(var(--theme-surface-rgb) / 0.7));
  box-shadow: inset 0 1px 0 rgb(255 255 255 / 0.03);
}

.cinefy-search-shortcut {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  min-width: 0;
}

.cinefy-header-trust-link {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  border-radius: 999px;
  padding: 0.6rem 0.9rem;
  font-size: 0.84rem;
  font-weight: 700;
  color: rgb(var(--theme-text-rgb) / 0.9);
  transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
}

.cinefy-header-trust-link:hover,
.cinefy-search-shortcut:hover {
  border-color: rgb(var(--theme-accent-rgb) / 0.36);
  background:
    linear-gradient(180deg, rgb(var(--theme-surface-strong-rgb) / 0.72), rgb(var(--theme-surface-rgb) / 0.86));
  color: rgb(var(--theme-text-rgb));
}

.cinefy-global-search {
  position: relative;
  flex: 1 1 21rem;
  min-width: 13rem;
  max-width: min(35rem, 38vw);
  align-items: center;
  border: 1px solid rgb(var(--theme-outline-rgb) / 0.34);
  background:
    linear-gradient(180deg, rgb(var(--theme-nav-rgb) / 0.9), rgb(var(--theme-surface-rgb) / 0.82));
  border-radius: 999px;
  overflow: hidden;
  box-shadow: 0 10px 24px rgb(0 0 0 / 0.2), inset 0 1px 0 rgb(255 255 255 / 0.03);
}

.cinefy-global-search:focus-within {
  border-color: rgb(var(--theme-accent-rgb) / 0.42);
  box-shadow: 0 14px 28px rgb(0 0 0 / 0.26), 0 0 0 3px rgb(var(--theme-accent-rgb) / 0.16);
}

.cinefy-global-search__icon {
  position: absolute;
  left: 1rem;
  color: rgb(var(--theme-muted-rgb) / 0.88);
  pointer-events: none;
}

.cinefy-global-search__input {
  width: 100%;
  min-width: 0;
  border: 0;
  background: transparent;
  color: rgb(var(--theme-text-rgb));
  padding: 0.82rem 6.6rem 0.82rem 3rem;
  font-size: 0.92rem;
  outline: none;
}

.cinefy-global-search__input::placeholder {
  color: rgb(var(--theme-muted-rgb) / 0.8);
}

.cinefy-global-search__button {
  position: absolute;
  top: 0.3rem;
  right: 0.3rem;
  bottom: 0.3rem;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, rgb(var(--theme-accent-soft-rgb)), rgb(var(--theme-accent-rgb)));
  color: #fff;
  padding: 0 1rem;
  font-size: 0.82rem;
  font-weight: 800;
  letter-spacing: 0.01em;
  transition: transform 160ms ease, filter 160ms ease;
}

.cinefy-global-search__button:hover {
  filter: brightness(1.06);
}

.cinefy-global-search__button:active {
  transform: translateY(1px);
}

.cinefy-profile-link {
  flex: 0 1 auto;
  width: fit-content;
  max-width: min(28rem, 38vw);
  min-width: 0;
}

.cinefy-profile-meta {
  min-width: 0;
  max-width: min(20rem, 26vw);
}

.cinefy-profile-name,
.cinefy-profile-secondary {
  min-width: 0;
}

.cinefy-profile-avatar {
  flex-shrink: 0;
}

.cinefy-notifications-panel {
  overflow: hidden;
}

.cinefy-footer-shell {
  margin-top: clamp(2.25rem, 5vw, 4rem);
}

@media (min-width: 1024px) {
  .glass-card,
  .glass-panel,
  .section-shell,
  .soft-card,
  .auth-shell {
    border-radius: 2.25rem !important;
  }
}

@media (max-width: 767px) {
  .glass-card,
  .glass-panel,
  .section-shell,
  .auth-shell {
    box-shadow: 0 18px 44px rgb(0 0 0 / 0.24) !important;
  }

  body[data-page="home"] main,
  body[data-page="buscar"] main,
  body[data-page="lista"] main,
  body[data-page="perfil"] main,
  body[data-page="amigos"] main,
  body[data-page="modoleitor"] main,
  body[data-page="404"] main {
    width: min(100%, calc(100vw - 1rem));
  }

  .cinefy-topbar {
    padding: 0.7rem 0.75rem 0 !important;
  }

  .cinefy-topbar__inner {
    min-height: 4.35rem;
    padding-inline: 0.82rem !important;
    border-radius: 1.6rem !important;
  }

  .cinefy-brand {
    font-size: 1.72rem !important;
  }

  .cinefy-brand-mark {
    gap: 0.26em;
    padding-right: 0.2em;
    padding-bottom: 0.18em;
  }

  .cinefy-brand-mark__suffix {
    padding: 0.38em 0.7em 0.34em 0.86em;
    font-size: 0.33em;
    letter-spacing: 0.24em;
    text-indent: 0.24em;
    transform: translateY(0.01em);
  }

  .cinefy-topbar__primary {
    min-width: 0;
    gap: 0.78rem !important;
    padding-right: 0.12rem;
  }

  .cinefy-topbar__secondary {
    flex: 0 0 auto !important;
    gap: 0.45rem !important;
  }

  .cinefy-topbar__actions {
    gap: 0.45rem !important;
  }

  .cinefy-global-search {
    max-width: min(20rem, 30vw);
    min-width: 11.5rem;
  }

  .cinefy-search-shortcut {
    padding: 0.68rem 0.8rem !important;
    border-radius: 0.95rem !important;
    font-size: 0.82rem !important;
    box-shadow: 0 10px 22px rgb(0 0 0 / 0.18), inset 0 1px 0 rgb(255 255 255 / 0.03);
  }

  .cinefy-search-shortcut .material-symbols-outlined {
    font-size: 1.05rem !important;
  }

  .cinefy-search-shortcut__label {
    line-height: 1;
  }

  .cinefy-global-search__input {
    padding-right: 5.8rem;
    font-size: 0.88rem;
  }

  .cinefy-global-search__button {
    padding-inline: 0.85rem;
  }

  .cinefy-notifications-button {
    padding: 0.72rem !important;
    border-radius: 1rem !important;
  }

  .cinefy-profile-link {
    max-width: none;
    padding: 0.24rem !important;
    border-radius: 1rem !important;
  }

  .cinefy-profile-avatar {
    width: 2.1rem !important;
    height: 2.1rem !important;
  }

  .cinefy-notifications-panel {
    position: fixed !important;
    top: 5.7rem !important;
    left: 0.75rem !important;
    right: 0.75rem !important;
    width: auto !important;
    max-height: min(62vh, 32rem) !important;
    margin-top: 0 !important;
    border-radius: 1.6rem !important;
    z-index: 85;
  }

  .cinefy-notifications-list {
    max-height: min(46vh, 22rem) !important;
  }

  .cinefy-mobile-nav {
    left: 0.75rem !important;
    right: 0.75rem !important;
    bottom: calc(env(safe-area-inset-bottom) + 0.65rem) !important;
    border-radius: 1.35rem !important;
    padding: 0.6rem 0.25rem !important;
  }

  .cinefy-mobile-nav a {
    padding-inline: 0.2rem !important;
    padding-block: 0.2rem !important;
  }

  .cinefy-mobile-nav .material-symbols-outlined {
    font-size: 1.35rem;
  }

  .cinefy-mobile-nav span:last-child {
    font-size: 0.66rem !important;
    line-height: 1.15;
  }

  .cinefy-footer-shell {
    padding-top: 2.5rem !important;
  }

  .theme-choice {
    padding: 0.9rem;
    border-radius: 1rem;
  }

  .theme-choice__desc {
    font-size: 0.84rem;
  }

  .section-heading {
    padding-left: 0.85rem;
  }

  .section-heading::before {
    top: 0.16rem;
    height: 1.65rem;
  }

  .cinefy-metadata-pill {
    min-height: 1.85rem;
    padding: 0.38rem 0.72rem;
    font-size: 0.72rem;
    letter-spacing: 0.12em;
  }
}

@media (max-width: 1023px) {
  .cinefy-topbar__inner {
    gap: 0.75rem;
  }

  .cinefy-topbar__secondary {
    flex: 1 1 auto;
  }

  .cinefy-global-search {
    max-width: min(26rem, 46vw);
  }
}

@media (min-width: 1024px) {
  .cinefy-search-shortcut {
    display: none;
  }
}

@media (min-width: 768px) {
  body[data-page="home"] main,
  body[data-page="buscar"] main,
  body[data-page="lista"] main,
  body[data-page="perfil"] main,
  body[data-page="amigos"] main,
  body[data-page="modoleitor"] main,
  body[data-page="404"] main {
    width: min(1480px, calc(100vw - 3rem));
  }
}
