:root {
  --bg: #fff7f7;
  --card: #ffffff;
  --text: #0b0b0f;
  --muted: #535866;
  --line: #f0d6d6;
  --primary: #ff0033;
  --primary-dark: #c80024;
  --soft: #fff0f2;
  --red: #ff0033;
  --orange: #f97316;
  --purple: #b91c1c;
  --blue: #111827;
  --green: #059669;
}
* { box-sizing: border-box; }
html, body { overflow-x: hidden; }
body {
  margin: 0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: linear-gradient(180deg, #fff 0%, var(--bg) 42%, #fff 100%);
  color: var(--text);
  line-height: 1.55;
}
a { color: inherit; text-decoration: none; }
a:hover { color: var(--primary); }
.container { width: min(1160px, calc(100% - 32px)); margin: 0 auto; }
.site-header {
  background: rgba(255,255,255,.96);
  border-bottom: 1px solid var(--line);
  position: sticky;
  top: 0;
  backdrop-filter: blur(14px);
  z-index: 10;
}
.site-header .container { width: min(1440px, calc(100% - 32px)); }
.header-inner { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.brand { display: inline-flex; align-items: center; gap: 10px; font-weight: 950; letter-spacing: 0; color: #050507; font-size: 18px; }
.brand em { font-style: normal; color: var(--primary); }
.brand-mark { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 10px; background: var(--primary); color: white; font-size: 13px; box-shadow: 0 12px 26px rgba(255,0,51,.24); }
.header-actions { display: flex; align-items: center; gap: 14px; min-width: 0; }
.site-header,
.header-inner,
.header-actions { overflow: visible; }
.nav { display: flex; align-items: center; gap: 10px; font-size: 16px; color: var(--muted); }
.nav a {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid transparent;
  border-radius: 999px;
  font-weight: 850;
  line-height: 1.05;
  white-space: nowrap;
  transition: color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease, border-color .16s ease;
}
.nav a:hover {
  color: #101522;
  background: #fff5f7;
  border-color: #ffe0e5;
}
.nav a.nav-active:not(.nav-niche-pro):not(.nav-impact-studio) {
  border-color: #ffd2dc;
  background:
    linear-gradient(135deg, rgba(255,0,51,.08), rgba(255,255,255,.96) 62%),
    #fff;
  color: #0f172a;
  box-shadow: 0 10px 24px rgba(255,0,51,.1), inset 0 1px 0 rgba(255,255,255,.9);
}
.nav a.nav-active:not(.nav-niche-pro):not(.nav-impact-studio)::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 5px;
  width: 18px;
  height: 3px;
  border-radius: 999px;
  background: var(--primary);
  box-shadow: 0 0 12px rgba(255,0,51,.55);
  transform: translateX(-50%);
  opacity: .9;
}
.language-switch { display: inline-flex; align-items: center; gap: 4px; border: 1px solid var(--line); border-radius: 999px; padding: 3px; background: #fff; }
.language-switch a,
.language-switch span { min-width: 34px; text-align: center; border-radius: 999px; padding: 6px 8px; color: var(--muted); font-size: 12px; font-weight: 950; }
.language-switch a.active,
.language-switch span.active { background: var(--primary); color: #fff; }
.language-switch span[aria-disabled="true"] { opacity: 0.42; cursor: not-allowed; }
.google-login-form { margin: 0; }
.google-login-button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: #050507; padding: 9px 13px; font-size: 13px; font-weight: 950; box-shadow: 0 12px 28px rgba(120, 0, 20, .08); white-space: nowrap; cursor: pointer; }
.google-login-button:hover { color: var(--primary); border-color: #ffc2cc; }
.google-symbol { width: 22px; height: 22px; border-radius: 999px; display: grid; place-items: center; background: conic-gradient(from -35deg, #4285f4 0 25%, #34a853 0 50%, #fbbc05 0 75%, #ea4335 0); color: #fff; font-weight: 950; font-size: 13px; }
.chrome-symbol {
  position: relative;
  width: 23px;
  height: 23px;
  flex: 0 0 23px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  background: conic-gradient(from -32deg, #ea4335 0 33%, #fbbc04 0 66%, #34a853 0 100%);
  box-shadow: 0 8px 18px rgba(15,23,42,.18);
}
.chrome-symbol::before {
  content: "";
  position: absolute;
  inset: 5px;
  border: 2px solid #fff;
  border-radius: inherit;
  background: #4285f4;
}
.chrome-symbol-large { width: 38px; height: 38px; flex-basis: 38px; }
.chrome-symbol-large::before { inset: 9px; border-width: 3px; }
.header-extension-cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  min-height: 42px;
  border: 1px solid rgba(255,0,51,.36);
  border-radius: 999px;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,0,51,.38), transparent 56%),
    linear-gradient(135deg, #070a12, #210814 72%, #42000f);
  color: #fff;
  padding: 8px 13px 8px 10px;
  font-size: 12px;
  font-weight: 950;
  white-space: nowrap;
  box-shadow: 0 16px 36px rgba(255,0,51,.22), inset 0 1px 0 rgba(255,255,255,.1);
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.header-extension-cta:hover {
  color: #fff;
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 18px 42px rgba(255,0,51,.28), 0 0 0 4px rgba(255,0,51,.08);
  transform: translateY(-1px);
}
.user-area { position: relative; display: inline-flex; align-items: center; gap: 8px; z-index: 90; }
.user-pill { display: inline-flex; align-items: center; gap: 9px; border: 1px solid var(--line); border-radius: 999px; background: #fff; padding: 7px 10px 7px 13px; font-size: 13px; font-weight: 900; color: var(--muted); }
.user-pill.account-chip { cursor: pointer; padding: 7px 12px 7px 13px; text-decoration: none; transition: color .16s ease, background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.user-pill.account-chip:hover,
.user-area:focus-within .user-pill.account-chip { color: #111827; border-color: #ffc2cc; background: #fff7f8; box-shadow: 0 12px 28px rgba(255,0,51,.12); transform: translateY(-1px); }
.logout-link { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; border-radius: 999px; padding: 0 8px; color: var(--primary); font-size: 13px; font-weight: 950; white-space: nowrap; text-decoration: none; }
.logout-link:hover { background: #fff0f3; color: var(--primary-dark); }
.account-usage-toggle { width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 999px; border: 1px solid var(--line); background: #fff; color: var(--primary); font-weight: 950; cursor: pointer; transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease; }
.account-usage-toggle:hover,
.user-area.is-open .account-usage-toggle { background: #fff0f3; border-color: #ffc2cc; box-shadow: 0 10px 24px rgba(255,0,51,.12); transform: translateY(-1px); }
.account-usage-popover { position: absolute; top: calc(100% + 12px); right: 0; z-index: 2000; width: min(680px, calc(100vw - 32px)); max-height: min(76vh, 720px); overflow: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 10px; border: 1px solid #fecdd3; border-radius: 20px; background: #fff; padding: 14px; box-shadow: 0 30px 80px rgba(15,23,42,.22); scrollbar-width: thin; scrollbar-color: #fecdd3 #fff7f7; opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-8px); transition: opacity .16s ease, transform .16s ease, visibility .16s ease; }
.account-usage-popover::before { content: ""; position: absolute; top: -7px; right: 76px; width: 14px; height: 14px; background: #fff; border-left: 1px solid #fecdd3; border-top: 1px solid #fecdd3; transform: rotate(45deg); }
.account-usage-popover::-webkit-scrollbar { width: 10px; }
.account-usage-popover::-webkit-scrollbar-track { background: #fff7f7; border-radius: 999px; }
.account-usage-popover::-webkit-scrollbar-thumb { background: #fecdd3; border-radius: 999px; }
.user-area:hover .account-usage-popover,
.user-area:focus-within .account-usage-popover,
.user-area.is-open .account-usage-popover { opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
.account-usage-popover .usage-menu-dropdown-head,
.account-usage-popover .usage-menu-footer { grid-column: 1 / -1; }
.usage-menu-card { position: fixed; left: 22px; bottom: 22px; z-index: 51; width: min(382px, calc(100vw - 44px)); }
.usage-menu-card summary { position: relative; display: grid; gap: 4px; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: linear-gradient(135deg, #070a12, #171b28 58%, #360813); color: #fff; padding: 13px 16px; box-shadow: 0 22px 58px rgba(15,23,42,.22), 0 0 0 1px rgba(255,0,51,.08); cursor: pointer; list-style: none; }
.usage-menu-card summary::-webkit-details-marker { display: none; }
.usage-menu-card summary:after { content: ""; position: absolute; right: 15px; top: 21px; width: 8px; height: 8px; border-right: 2px solid #ff5b78; border-bottom: 2px solid #ff5b78; transform: rotate(225deg); transition: transform .16s ease; }
.usage-menu-card[open] summary:after { transform: rotate(45deg); top: 18px; }
.usage-menu-title { color: #ff5b78; font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; line-height: 1; padding-right: 22px; }
.usage-menu-compact { color: #f8fafc; font-size: 12px; font-weight: 950; line-height: 1.25; padding-right: 22px; }
.usage-menu-reset { color: #cbd5e1; font-size: 11px; font-weight: 850; line-height: 1.15; }
.usage-menu-dropdown { position: absolute; left: 0; bottom: calc(100% + 10px); z-index: 30; width: min(760px, calc(100vw - 44px)); max-height: min(72vh, 680px); overflow: auto; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; gap: 10px; border: 1px solid #fecdd3; border-radius: 18px; background: #fff; padding: 14px; box-shadow: 0 24px 70px rgba(15,23,42,.18); scrollbar-width: thin; scrollbar-color: #fecdd3 #fff7f7; }
.usage-menu-dropdown::-webkit-scrollbar { width: 10px; }
.usage-menu-dropdown::-webkit-scrollbar-track { background: #fff7f7; border-radius: 999px; }
.usage-menu-dropdown::-webkit-scrollbar-thumb { background: #fecdd3; border-radius: 999px; }
.usage-menu-dropdown-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-bottom: 4px; }
.usage-menu-dropdown-head,
.usage-menu-footer { grid-column: 1 / -1; }
.usage-menu-dropdown-head strong { color: #050507; font-size: 16px; }
.usage-menu-dropdown-head a { border-radius: 999px; border: 1px solid #bfdbfe; background: #eff6ff; color: #1d4ed8; padding: 6px 10px; font-size: 12px; font-weight: 950; }
.usage-menu-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 12px; align-items: start; border: 1px solid #eef2f7; border-radius: 14px; background: #f8fafc; padding: 10px; }
.usage-menu-row strong { display: block; color: #111827; font-size: 13px; line-height: 1.2; }
.usage-menu-row small { display: block; margin-top: 3px; color: #64748b; font-size: 11px; font-weight: 760; line-height: 1.25; }
.usage-menu-row span { color: var(--primary); font-size: 12px; font-weight: 950; white-space: nowrap; }
.usage-menu-row i { grid-column: 1 / -1; display: block; height: 7px; border-radius: 999px; background: #e2e8f0; overflow: hidden; }
.usage-menu-row b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2563eb, #16a34a); }
.usage-menu-footer { border-radius: 12px; background: #fff7ed; border: 1px solid #fed7aa; color: #9a3412; padding: 9px 10px; font-size: 12px; font-weight: 900; }
@media (max-width: 900px) {
  .account-usage-popover { position: fixed; top: 74px; left: 12px; right: 12px; width: auto; max-height: calc(100vh - 92px); grid-template-columns: 1fr; }
  .account-usage-popover::before { display: none; }
}
@media (max-width: 620px) {
  .user-area { gap: 6px; }
  .user-pill.account-chip span { max-width: 118px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .logout-link { padding-inline: 6px; }
}
.hero { padding: 58px 0 42px; background: linear-gradient(135deg, #fff 0%, #fff5f6 48%, #ffe6ea 100%); border-bottom: 1px solid var(--line); }
.hero .container { width: min(1520px, calc(100% - 56px)); }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1120px); gap: 28px; align-items: start; justify-content: center; text-align: center; }
.hero-grid > * { min-width: 0; }
.hero-main { min-width: 0; }
.eyebrow { color: var(--primary); font-weight: 900; text-transform: uppercase; font-size: 13px; letter-spacing: .09em; margin: 0 0 10px; }
h1 { font-size: 64px; line-height: 1.02; margin: 8px 0 18px; letter-spacing: 0; color: #050507; }
h2 { font-size: 34px; line-height: 1.15; letter-spacing: 0; margin: 0 0 12px; color: #050507; }
h3 { font-size: 17px; line-height: 1.28; margin: 12px 0 8px; }
.hero-text { font-size: 19px; color: var(--muted); max-width: 940px; margin-left: auto; margin-right: auto; }
.hero-panel, .search-card, .video-card, .channel-row, .alert, .feature-card {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(120, 0, 20, .07);
}
.hero-panel { padding: 20px; position: relative; overflow: hidden; align-self: start; justify-self: end; max-width: 320px; margin-top: 8px; }
.hero-panel h2 { font-size: 24px; line-height: 1.12; }
.hero-panel p, .hero-panel li { font-size: 13px; line-height: 1.45; }
.upgraded-panel:before { content: ""; position: absolute; inset: 0 0 auto auto; width: 104px; height: 104px; background: #ffe1e7; border-radius: 999px; transform: translate(44%, -44%); opacity: .9; }
.panel-icon { width: 36px; height: 36px; border-radius: 12px; display: grid; place-items: center; background: var(--primary); color: white; font-weight: 900; margin-bottom: 14px; }
.formula { padding: 12px; border-radius: 14px; background: var(--soft); color: var(--primary-dark); font-weight: 900; margin: 12px 0; font-size: 13px; }
.check-list { padding-left: 20px; margin-bottom: 0; }
.home-week-outliers { margin: 34px 0 6px; max-width: 100%; overflow: hidden; }
.compact-outlier-carousel { display: grid; grid-template-columns: 54px minmax(0, 1fr) 54px; align-items: center; gap: 14px; max-width: 100%; margin: 10px 0 18px; }
.compact-outlier-viewport { min-width: 0; overflow: hidden; border-radius: 24px; }
.compact-outlier-grid { display: flex; gap: 20px; margin: 0; padding: 4px 2px 18px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; }
.compact-outlier-grid::-webkit-scrollbar { display: none; }
.compact-carousel-arrow { width: 54px; height: 54px; border-radius: 999px; padding: 0; box-shadow: 0 12px 28px rgba(120,0,20,.12); font-size: 32px; line-height: 1; }
.compact-carousel-arrow:disabled { opacity: .38; cursor: default; background: #fff; color: var(--muted); border: 1px solid var(--line); }
.compact-outlier-card { flex: 0 0 clamp(360px, calc((100% - 40px) / 3), 480px); scroll-snap-align: start; display: flex; flex-direction: column; gap: 0; background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 0; overflow: hidden; box-shadow: 0 16px 42px rgba(120,0,20,.08); }
.compact-thumb { position: relative; display: block; aspect-ratio: 16 / 9; border-radius: 0; overflow: hidden; background: #e2e8f0; }
.compact-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.compact-thumb span { position: absolute; right: 8px; bottom: 8px; border-radius: 7px; padding: 3px 6px; background: rgba(0,0,0,.78); color: #fff; font-size: 11px; font-weight: 900; }
.compact-outlier-body { min-width: 0; padding: 16px 16px 18px; display: flex; flex-direction: column; flex: 1; }
.compact-outlier-body > strong { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; max-width: 100%; color: var(--primary); font-size: 12px; line-height: 1; letter-spacing: .01em; background: linear-gradient(135deg, #fff1f4 0%, #fff 100%); border: 1px solid #ffd0da; border-radius: 999px; padding: 7px 10px; box-shadow: 0 8px 18px rgba(255,0,51,.08); }
.compact-outlier-body h3 { margin: 6px 0 5px; font-size: 17px; line-height: 1.22; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.compact-outlier-body .channel { font-size: 13px; margin-bottom: 7px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.compact-outlier-body .stats { gap: 6px; font-size: 12px; }
.compact-outlier-body .stats span { padding: 5px 8px; }
.compact-outlier-stats { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 13px 0 8px; }
.compact-stat { min-width: 0; border: 1px solid #f1d4db; border-radius: 15px; background: linear-gradient(180deg, #fff 0%, #fff7f8 100%); padding: 10px 11px; box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 8px 20px rgba(120,0,20,.045); }
.compact-stat strong { display: block; min-width: 0; color: #111827; font-size: 15px; line-height: 1; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.compact-stat small { display: block; margin-top: 6px; color: var(--muted); font-size: 9.5px; font-weight: 950; letter-spacing: .045em; line-height: 1.1; text-transform: uppercase; }
.compact-stat-views { border-color: #e7edf7; background: linear-gradient(135deg, #f8fbff 0%, #fff 70%); }
.compact-stat-granular { border-color: #ff7f98; background: radial-gradient(circle at 100% 0%, rgba(255,0,51,.11), transparent 42%), linear-gradient(135deg, #fff0f4 0%, #fff 55%, #eef5ff 100%); }
.compact-stat-granular strong { color: var(--primary); }
.compact-mini-metrics { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 8px; font-size: 11px; color: var(--muted); }
.compact-mini-metrics span { border: 1px solid var(--line); border-radius: 999px; padding: 4px 7px; background: #fffafa; }
.compact-more-link { display: inline-flex; margin-top: auto; padding-top: 10px; color: var(--primary); font-size: 12px; font-weight: 950; }
.home-week-outliers .compact-outlier-card {
  display: flex !important;
  grid-template-columns: none !important;
  flex-direction: column !important;
  flex-basis: clamp(360px, calc((100% - 40px) / 3), 480px) !important;
  padding: 0 !important;
}
.home-week-outliers .compact-thumb {
  width: 100% !important;
  min-height: 210px;
  border-radius: 0 !important;
}
.home-week-outliers .compact-outlier-body {
  padding: 18px 18px 20px !important;
}
.home-week-outliers .compact-outlier-body h3 {
  font-size: 18px;
  -webkit-line-clamp: 3;
}
.search-card { width: min(100%, 900px); padding: 24px; margin: 28px auto 0; }
.channel-analysis-card {
  width: min(1180px, 100%);
  border-color: rgba(255,255,255,.16);
  border-radius: 30px;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,0,51,.22), transparent 19rem),
    radial-gradient(circle at 92% 0%, rgba(15,23,42,.08), transparent 20rem),
    linear-gradient(135deg, rgba(255,255,255,.98), rgba(248,250,252,.96));
  box-shadow: 0 34px 90px rgba(15,23,42,.14), 0 0 0 1px rgba(255,0,51,.06);
  padding: clamp(24px, 3.4vw, 40px);
}
.channel-analysis-card label {
  color: #111827;
  font-size: 15px;
  text-align: left;
}
.channel-analysis-card .search-row input[type="text"] {
  min-height: 70px;
  border-radius: 20px;
  font-size: 19px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8);
}
.channel-analysis-card .search-row button {
  min-height: 70px;
  border-radius: 20px;
  min-width: 200px;
  box-shadow: 0 18px 38px rgba(255,0,51,.2);
}
.channel-analysis-card .search-options {
  justify-content: center;
  gap: 10px;
}
.channel-analysis-card .quota-note,
.channel-analysis-card .examples {
  text-align: center;
}
.search-card label { display: block; font-weight: 850; margin-bottom: 10px; }
.search-row { display: flex; gap: 10px; }
.search-row input[type="text"] { flex: 1; min-width: 0; border: 1px solid var(--line); border-radius: 16px; padding: 17px 18px; font-size: 17px; outline: none; background: #fff; }
.search-row input:focus, .search-options select:focus { border-color: var(--primary); box-shadow: 0 0 0 4px rgba(255,0,51,.12); }
.search-options { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 12px; }
.search-options label { color: var(--muted); font-size: 13px; display: flex; align-items: center; gap: 8px; margin: 0; min-width: 0; }
.search-options select { border: 1px solid var(--line); border-radius: 999px; padding: 9px 12px; background: #fff; font-weight: 700; color: var(--text); outline: none; max-width: 100%; }
button, .button { border: none; border-radius: 16px; padding: 16px 20px; background: var(--primary); color: white; font-weight: 900; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; white-space: nowrap; text-align: center; }
button:hover, .button:hover { background: var(--primary-dark); color: white; }
button:disabled { opacity: .65; cursor: wait; }
.button.secondary { background: white; color: var(--primary); border: 1px solid var(--line); }
.hp { display: none !important; }
.examples, .small, .muted, .quota-note { color: var(--muted); }
.examples { font-size: 14px; margin-bottom: 0; overflow-wrap: anywhere; }
.quota-note { margin: 12px 0 0; font-size: 13px; font-weight: 800; }
.quota-note strong { color: var(--primary); }
code { background: #fff0f2; border-radius: 8px; padding: 2px 6px; color: #111827; }
.result-controls { background: #fff; border: 1px solid var(--line); border-radius: 18px; padding: 14px; margin: 18px 0 6px; box-shadow: 0 12px 35px rgba(120, 0, 20, .05); }
.result-controls > div { display: flex; gap: 10px; flex-wrap: wrap; align-items: flex-end; margin-bottom: 10px; }
.result-controls label { display: grid; gap: 6px; color: var(--muted); font-size: 13px; font-weight: 850; }
.result-controls select, .result-controls input { border: 1px solid var(--line); border-radius: 14px; padding: 10px 12px; background: #fff; color: var(--text); font-weight: 750; min-height: 42px; }
.result-controls input { width: 132px; }
.result-controls label.wide input { width: 260px; }
.result-controls button { min-height: 42px; padding: 10px 14px; }
.result-controls .small { margin: 0; }
.pagination { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; justify-content: center; margin: 26px 0 8px; }
.pagination a, .pagination span { min-width: 42px; min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 10px 13px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--text); font-weight: 900; text-decoration: none; }
.pagination a.active { background: var(--red); border-color: var(--red); color: #fff; box-shadow: 0 12px 30px rgba(255, 0, 51, .22); }
.pagination span { border-color: transparent; background: transparent; color: var(--muted); min-width: auto; }
.section { padding: 44px 0; }
.compact-top { padding-top: 28px; }
.section-title-row, .result-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.feature-card { padding: 22px; }
.feature-card span { display: inline-flex; width: 36px; height: 36px; border-radius: 12px; align-items: center; justify-content: center; background: var(--soft); color: var(--primary); font-weight: 900; margin-bottom: 16px; }
.video-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin-top: 22px; }
.video-card { overflow: hidden; transition: transform .18s ease, box-shadow .18s ease; }
.video-card:hover { transform: translateY(-3px); box-shadow: 0 22px 60px rgba(15, 23, 42, .09); }
.thumb { position: relative; display: block; aspect-ratio: 16/9; background: #e2e8f0; overflow: hidden; }
.thumb img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .22s ease; }
.video-card:hover .thumb img { transform: scale(1.04); }
.duration { position: absolute; right: 10px; bottom: 10px; background: rgba(0,0,0,.78); color: white; font-size: 12px; padding: 4px 7px; border-radius: 8px; }
.video-body { padding: 16px; }
.video-topline { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.age { font-size: 12px; color: var(--muted); white-space: nowrap; }
.badge { display: inline-flex; border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 950; }
.badge-red { background: #ffe1e7; color: #9f001f; }
.badge-orange { background: #ffedd5; color: #9a3412; }
.badge-purple { background: #fee2e2; color: #991b1b; }
.badge-blue { background: #f3f4f6; color: #111827; }
.badge-muted { background: #f1f5f9; color: #475569; }
.channel { color: var(--muted); margin: 0 0 10px; }
.stats { display: flex; gap: 8px; flex-wrap: wrap; color: var(--muted); font-size: 13px; }
.stats span { background: #fffafa; border: 1px solid var(--line); border-radius: 999px; padding: 5px 8px; }
.stats .monetization-badge { font-weight: 950; }
.video-key-metrics {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0 9px;
}
.video-key-metric {
  min-width: 0;
  position: relative;
  overflow: hidden;
  border: 1px solid #e8edf5;
  border-radius: 16px;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
  padding: 11px 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.92), 0 12px 26px rgba(15,23,42,.045);
}
.video-key-metric::after {
  content: "";
  position: absolute;
  inset: auto -22px -26px auto;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  background: rgba(255,0,51,.08);
}
.video-key-metric strong {
  position: relative;
  z-index: 1;
  display: block;
  color: #0f172a;
  font-size: 20px;
  line-height: 1;
  font-weight: 1000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.video-key-metric small {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 7px;
  color: #64748b;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .045em;
  line-height: 1.05;
  text-transform: uppercase;
}
.video-key-views { border-color: #dbeafe; background: linear-gradient(135deg, #eff6ff 0%, #fff 72%); }
.video-key-subs { border-color: #e9d5ff; background: linear-gradient(135deg, #faf5ff 0%, #fff 72%); }
.video-key-age { border-color: #fed7aa; background: linear-gradient(135deg, #fff7ed 0%, #fff 74%); }
.video-key-granular {
  border-color: #ff7f98;
  background: radial-gradient(circle at 100% 0%, rgba(255,0,51,.13), transparent 42%), linear-gradient(135deg, #fff0f4 0%, #fff 58%, #eef5ff 100%);
}
.video-key-granular strong { color: var(--primary); }
.video-secondary-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  margin: 0 0 12px;
  color: #475569;
  font-size: 12px;
  font-weight: 850;
}
.video-secondary-metrics > span {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  padding: 6px 9px;
  box-shadow: 0 6px 16px rgba(15,23,42,.035);
}
.video-secondary-metrics .monetization-badge { padding: 6px 9px; }
.monetization-badge { display: inline-flex; align-items: center; border-radius: 999px; border: 1px solid transparent; padding: 5px 9px; font-size: 12px; font-weight: 950; }
.monetization-blue { background: #eff6ff !important; border-color: #93c5fd !important; color: #1d4ed8 !important; }
.monetization-green { background: #ecfdf5 !important; border-color: #86efac !important; color: #047857 !important; }
.monetization-yellow { background: #fffbeb !important; border-color: #fde68a !important; color: #a16207 !important; }
.monetization-red { background: #fef2f2 !important; border-color: #fecaca !important; color: #b91c1c !important; }
.monetization-muted { background: #f8fafc !important; border-color: #e5e7eb !important; color: #64748b !important; }
.stats.big { margin-top: 8px; font-size: 14px; }
.score-box { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 14px 0 10px; }
.score-box div { background: #fffafa; border: 1px solid var(--line); border-radius: 14px; padding: 10px; }
.score-box strong { display: block; font-size: 15px; }
.score-box span { display: block; font-size: 11px; color: var(--muted); }
.score-box .metric { border-width: 1px; }
.video-card .score-box { margin-top: 10px; }
.video-card .score-box div {
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
  border-color: #e2e8f0;
}
.video-card .score-box strong { font-size: 16px; color: #0f172a; }
.video-card .score-box span {
  margin-top: 4px;
  font-weight: 850;
  text-transform: uppercase;
  letter-spacing: .025em;
}
.metric-excellent { background: #ffe1e7 !important; border-color: #ff6b84 !important; color: #7f0017; }
.metric-strong { background: #fff0f2 !important; border-color: #ff9bad !important; color: #9f001f; }
.metric-good { background: #fff7ed !important; border-color: #fed7aa !important; color: #9a3412; }
.metric-light { background: #f0fdf4 !important; border-color: #bbf7d0 !important; color: #166534; }
.metric-low, .metric-empty { background: #f8fafc !important; border-color: #e5e7eb !important; color: #374151; }
.metric-excellent span, .metric-strong span, .metric-good span, .metric-light span { color: inherit; opacity: .78; }
.video-card h3, .keyword-head strong, .channel-row h3 { overflow-wrap: anywhere; }
.card-actions { display: flex; gap: 10px; margin-top: 12px; font-size: 14px; font-weight: 900; flex-wrap: wrap; }
.card-actions a { color: var(--primary); }
.channel-summary { display: flex; gap: 18px; align-items: center; background: white; border: 1px solid var(--line); border-radius: 24px; padding: 20px; margin: 20px 0 30px; box-shadow: 0 18px 50px rgba(15, 23, 42, .06); }
.channel-summary.upgraded { background: linear-gradient(135deg, #fff, #fff5f6); }
.channel-summary img, .channel-row img { width: 78px; height: 78px; border-radius: 50%; object-fit: cover; }
.channel-summary-actions { margin-left: auto; display: flex; align-items: center; justify-content: flex-end; }
.channel-inline-actions { margin: 10px 0 8px; }
.compact-channel-youtube { padding: 10px 14px; border-radius: 999px; font-size: 13px; }
.extension-avatar { width: 78px; height: 78px; border-radius: 50%; display: grid; place-items: center; flex: 0 0 78px; background: var(--primary); color: #fff; font-weight: 950; box-shadow: 0 14px 32px rgba(255,0,51,.2); }
.extension-summary { border-color: #ffc2cc; }
.extension-connect-page { display: grid; place-items: center; min-height: 58vh; }
.extension-connect-card { width: min(620px, 100%); display: grid; gap: 14px; justify-items: start; border: 1px solid #ffc2cc; border-radius: 24px; background: #fff; padding: 28px; box-shadow: 0 24px 70px rgba(120,0,20,.1); }
.extension-connect-card h1 { margin: 0; font-size: clamp(32px, 5vw, 48px); line-height: 1.02; }
.extension-connect-card p { color: #445066; margin: 0; }
.extension-connect-actions { width: 100%; margin: 8px 0 0; }
.extension-connect-actions button, .extension-connect-card .button { width: 100%; }
.channel-list { display: grid; gap: 14px; }
.channel-row { padding: 16px; display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; }
.alert { padding: 16px 18px; margin: 18px 0; }
.alert-error { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.alert-warning { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.alert-info { background: #fff0f2; border-color: #ffc2cc; color: #9f001f; }
.tabs { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 6px; }
.tabs a { padding: 10px 13px; border-radius: 999px; background: white; border: 1px solid var(--line); color: var(--muted); font-weight: 900; }
.tabs a.active { background: var(--primary); color: white; border-color: var(--primary); }
.prose { max-width: 880px; }
.prose p, .prose li { color: #3f4b5f; }
.seo-block { padding: 54px 0; background: #fff; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.center { text-align: center; }
.site-footer { margin-top: 40px; background: #0b0b0f; color: white; padding: 36px 0; }
.footer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.footer-links { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 12px; }
.footer-links a { color: #ffd9e0; font-weight: 800; }
.site-footer .small, .site-footer p { color: #cbd5e1; }
.cookie-banner { position: fixed; left: 18px; right: 18px; bottom: 18px; z-index: 40; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 22px 70px rgba(15,23,42,.18); padding: 14px; max-width: 820px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.cookie-banner p { margin: 0; color: var(--muted); font-size: 14px; }
.cookie-banner div { display: flex; gap: 10px; align-items: center; }
.cookie-banner a { color: var(--primary); font-weight: 800; white-space: nowrap; }
.cookie-banner button { padding: 10px 14px; border-radius: 12px; }
.extension-install-popover {
  position: fixed;
  top: 90px;
  right: 24px;
  bottom: auto;
  left: auto;
  z-index: 2147483000;
  width: min(420px, calc(100vw - 32px));
  max-width: min(420px, calc(100vw - 32px));
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  opacity: 0;
  transform: translateY(-10px) scale(.98);
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, .28) transparent;
}
.extension-install-popover.is-visible {
  opacity: 1;
  transform: translateY(0) scale(1);
  pointer-events: auto;
}
.extension-install-popover.has-cookie-banner { bottom: auto; }
.extension-install-popover.is-extension-detected,
.extension-install-popover[data-extension-waiting="1"] { display: none !important; }
html[data-impactube-extension-installed="true"] [data-extension-install-cta],
[data-extension-install-cta][hidden] { display: none !important; }
.extension-install-card {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 24px;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,0,51,.34), transparent 15rem),
    radial-gradient(circle at 96% 100%, rgba(66,133,244,.20), transparent 12rem),
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 1px, transparent 1px 16px),
    linear-gradient(135deg, #070a12 0%, #141927 52%, #3a0011 100%);
  color: #fff;
  padding: 16px;
  box-shadow: 0 26px 70px rgba(15,23,42,.28), 0 0 0 1px rgba(255,0,51,.08);
}
.extension-install-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.72), transparent 82%);
  pointer-events: none;
}
.extension-install-card > * { position: relative; z-index: 1; }
.extension-install-top {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}
.extension-install-top p {
  margin: 0 0 3px;
  color: #ff5b78;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.extension-install-top h2 {
  margin: 0;
  color: #fff;
  font-size: 22px;
  line-height: 1.04;
  letter-spacing: 0;
}
.extension-install-copy {
  margin: 12px 0 14px;
  color: #dbe4f0;
  font-size: 13px;
  font-weight: 780;
  line-height: 1.45;
}
.extension-install-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 12px;
  background: rgba(255,255,255,.08);
  color: #fff;
  padding: 0;
  font-size: 22px;
  line-height: 1;
}
.extension-install-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}
.extension-install-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 46px;
  border-radius: 15px;
  background: linear-gradient(135deg, #ff0033, #b80024);
  color: #fff;
  padding: 11px 14px;
  font-size: 13px;
  font-weight: 950;
  box-shadow: 0 16px 34px rgba(255,0,51,.26);
}
.extension-install-primary:hover { color: #fff; filter: brightness(.98); }
.extension-install-actions button:not(.extension-install-icon) {
  min-height: 46px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 15px;
  background: rgba(255,255,255,.08);
  color: #f8fafc;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 950;
}
.extension-install-tab {
  display: none;
  align-items: center;
  gap: 9px;
  min-height: 50px;
  border: 1px solid rgba(255,0,51,.34);
  border-radius: 999px;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,0,51,.36), transparent 58%),
    linear-gradient(135deg, #070a12, #31000f);
  color: #fff;
  padding: 9px 14px 9px 10px;
  font-weight: 950;
  box-shadow: 0 18px 42px rgba(255,0,51,.22);
}
.extension-install-popover.is-collapsed .extension-install-card { display: none; }
.extension-install-popover.is-collapsed .extension-install-tab { display: inline-flex; }
[hidden] { display: none !important; }
.auth-modal-open { overflow: hidden; }
.auth-modal-backdrop { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 20px; background: rgba(11, 11, 15, .42); backdrop-filter: blur(7px); animation: authFade .2s ease both; }
.auth-modal-card { width: min(520px, 100%); position: relative; background: #fff; border: 1px solid #ffc2cc; border-radius: 28px; padding: 28px; box-shadow: 0 34px 90px rgba(15, 23, 42, .24); animation: authPop .26s cubic-bezier(.2,.9,.2,1) both; }
.auth-modal-close { position: absolute; top: 14px; right: 14px; width: 34px; height: 34px; padding: 0; border-radius: 999px; background: #fff0f2; color: var(--primary); font-size: 22px; line-height: 1; }
.auth-modal-mark { width: 46px; height: 46px; border-radius: 15px; display: grid; place-items: center; background: var(--primary); color: #fff; font-weight: 950; box-shadow: 0 14px 34px rgba(255,0,51,.24); margin-bottom: 16px; }
.auth-modal-card h2 { font-size: 34px; margin-bottom: 10px; }
.auth-modal-card p { color: var(--muted); margin-top: 0; }
.auth-modal-warning { border: 1px solid #fecaca; background: #fff1f2; color: #be123c; border-radius: 16px; padding: 11px 13px; font-weight: 850; margin: 14px 0; }
.auth-google-form { margin: 0; }
.auth-marketing-check { display: flex; align-items: flex-start; gap: 10px; border: 1px solid var(--line); background: #fffafa; border-radius: 16px; padding: 13px; margin: 16px 0; color: #374151; font-size: 14px; font-weight: 800; }
.auth-marketing-check input { width: 18px; height: 18px; margin-top: 2px; accent-color: var(--primary); flex: 0 0 auto; }
.auth-modal-google { width: 100%; min-height: 52px; border-radius: 16px; font-size: 15px; }
@keyframes authFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes authPop { from { opacity: 0; transform: translateY(18px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
.admin-app-shell { width: min(1480px, calc(100% - 32px)); margin: 28px auto 48px; display: grid; grid-template-columns: 258px minmax(0, 1fr); gap: 22px; align-items: start; }
.admin-app-sidebar { position: sticky; top: 84px; min-height: calc(100vh - 112px); display: flex; flex-direction: column; gap: 18px; padding: 18px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(180deg, #ffffff 0%, #fff7f9 100%); box-shadow: 0 22px 60px rgba(15, 23, 42, .08); }
.admin-app-brand { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 10px 12px; align-items: center; color: #0f172a; text-decoration: none; }
.admin-app-brand:hover { text-decoration: none; }
.admin-app-brand span { width: 42px; height: 42px; border-radius: 14px; display: grid; place-items: center; background: var(--primary); color: #fff; font-weight: 950; box-shadow: 0 14px 34px rgba(255, 0, 51, .18); }
.admin-app-brand strong { font-size: 16px; line-height: 1.1; }
.admin-app-brand small { grid-column: 2; color: var(--muted); font-size: 12px; font-weight: 800; margin-top: -8px; }
.admin-app-nav { display: grid; gap: 8px; padding-top: 8px; border-top: 1px solid var(--line); }
.admin-app-nav a { display: flex; align-items: center; justify-content: space-between; min-height: 42px; padding: 0 13px; border-radius: 14px; color: #334155; font-size: 14px; font-weight: 900; text-decoration: none; }
.admin-app-nav a:hover, .admin-app-nav a.active { background: #fff0f3; color: var(--primary); text-decoration: none; box-shadow: inset 0 0 0 1px #ffc2cc; }
.admin-app-user { margin-top: auto; display: grid; gap: 5px; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 13px; }
.admin-app-user span { color: var(--muted); font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .06em; }
.admin-app-user strong { color: #111827; font-size: 12px; overflow-wrap: anywhere; }
.admin-app-main { min-width: 0; }
.admin-app-topbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 20px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(135deg, #fff 0%, #fff7f9 52%, #eef6ff 100%); padding: 22px; box-shadow: 0 18px 50px rgba(15, 23, 42, .07); }
.admin-app-topbar h1 { margin: 3px 0 6px; font-size: 34px; line-height: 1.06; }
.admin-dashboard.container { width: min(1380px, calc(100% - 32px)); }
.admin-dashboard { padding-top: 0; }
.admin-hero { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 22px; }
.admin-hero h1 { margin-bottom: 8px; }
.admin-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 14px; margin: 18px 0 22px; }
.admin-grid-main { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.admin-card, .admin-panel { background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 16px 44px rgba(15, 23, 42, .06); }
.admin-card { padding: 18px; }
.admin-card span { display: block; color: var(--muted); font-size: 13px; font-weight: 900; margin-bottom: 6px; }
.admin-card strong { display: block; font-size: 30px; line-height: 1; letter-spacing: 0; margin-bottom: 8px; }
.admin-card small { color: var(--muted); font-weight: 750; }
.admin-card-click { display: block; color: inherit; text-decoration: none; transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.admin-card-click:hover { color: inherit; transform: translateY(-2px); box-shadow: 0 20px 52px rgba(15, 23, 42, .09); }
.admin-card-click.good { border-left: 4px solid #16a34a; }
.admin-card-click.warning { border-left: 4px solid #f97316; }
.admin-card-click.danger { border-left: 4px solid var(--primary); }
.admin-card-click.neutral { border-left: 4px solid #bfdbfe; }
.admin-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-bottom: 18px; }
.admin-panel { padding: 20px; margin-bottom: 18px; }
.admin-panel h3 { font-size: 18px; margin: 18px 0 10px; }
.admin-kpis { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0; }
.admin-kpis span { border: 1px solid var(--line); border-radius: 999px; padding: 8px 11px; color: var(--muted); font-weight: 800; }
.admin-kpis strong { color: #050507; }
.admin-kpis-large span { background: #fffafa; }
.rsl-cost-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.rsl-cost-head h2 { margin: 0 0 6px; font-size: 26px; line-height: 1.1; }
.rsl-cost-head p { max-width: 860px; margin: 0; font-size: 14px; font-weight: 750; line-height: 1.45; }
.rsl-cost-head.compact { margin-bottom: 12px; }
.rsl-cost-head.compact h2 { font-size: 22px; }
.rsl-cost-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 14px 0; }
.rsl-cost-card { min-width: 0; min-height: 132px; display: grid; align-content: space-between; gap: 10px; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 16px; box-shadow: 0 12px 30px rgba(15, 23, 42, .045); }
.rsl-cost-card.primary { border-color: #fecdd3; background: linear-gradient(180deg, #fff 0%, #fff5f7 100%); }
.rsl-cost-card.warning { border-color: #fed7aa; background: #fff7ed; }
.rsl-cost-card span { color: var(--muted); font-size: 12px; font-weight: 950; letter-spacing: .02em; text-transform: uppercase; }
.rsl-cost-card strong { color: #050507; font-size: clamp(24px, 3vw, 34px); line-height: 1; letter-spacing: 0; }
.rsl-cost-card small { color: var(--muted); font-size: 12px; font-weight: 850; line-height: 1.35; }
.rsl-cost-note { margin-top: 14px; border: 1px solid #dbeafe; border-radius: 16px; background: #eff6ff; color: #1e3a8a; padding: 13px 14px; font-size: 13px; font-weight: 800; line-height: 1.45; }
.rsl-cost-analytics { align-items: start; }
.rsl-daily-chart { display: grid; gap: 8px; }
.rsl-day-row { display: grid; grid-template-columns: 48px minmax(120px, 1fr) 96px 170px; align-items: center; gap: 10px; color: var(--muted); font-size: 12px; font-weight: 850; }
.rsl-day-row > span { font-weight: 950; }
.rsl-day-row strong { color: #111827; font-size: 13px; text-align: right; }
.rsl-day-row small { color: var(--muted); font-size: 11px; font-weight: 850; }
.rsl-bar-track { height: 12px; overflow: hidden; border-radius: 999px; background: #f1f5f9; box-shadow: inset 0 0 0 1px rgba(148, 163, 184, .18); }
.rsl-bar-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ff003d, #2563eb); }
.rsl-breakdown-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.rsl-breakdown-grid div { min-width: 0; border: 1px solid var(--line); border-radius: 16px; background: #fffafa; padding: 14px; }
.rsl-breakdown-grid span { display: block; color: var(--muted); font-size: 11px; font-weight: 950; letter-spacing: .03em; text-transform: uppercase; }
.rsl-breakdown-grid strong { display: block; margin-top: 6px; color: #050507; font-size: 22px; line-height: 1.1; }
.rsl-breakdown-grid small { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; font-weight: 850; }
.rsl-cost-smallprint { margin: 14px 0 0; font-size: 12px; font-weight: 800; line-height: 1.45; }
.admin-source-note { display: inline-flex; align-items: center; margin: 4px 0 8px; border: 1px solid var(--line); border-radius: 999px; padding: 7px 10px; background: #fffafa; color: var(--muted); font-size: 12px; font-weight: 850; }
.admin-ga4-extra { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 16px; }
.admin-web-daily { margin: 18px 0 6px; }
.admin-chart-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; margin-bottom: 10px; }
.admin-chart-head h3 { margin: 0; }
.admin-chart-legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 9px; color: var(--muted); font-size: 12px; font-weight: 900; }
.admin-chart-legend span { display: inline-flex; align-items: center; gap: 6px; }
.admin-chart-legend i { width: 10px; height: 10px; border-radius: 999px; }
.admin-chart-legend i.views { background: #0f52ff; }
.admin-chart-legend i.users { background: #8ec5ff; border: 1px solid #4f9cff; }
.admin-dual-chart { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(34px, 1fr); align-items: end; gap: 7px; min-height: 184px; overflow-x: auto; padding: 8px 0 3px; }
.admin-dual-day { display: grid; grid-template-rows: 1fr auto auto; gap: 6px; min-height: 170px; text-align: center; color: var(--muted); font-size: 10px; font-weight: 850; }
.admin-dual-bars { align-self: end; display: grid; grid-template-columns: repeat(2, minmax(7px, 1fr)); align-items: end; gap: 3px; height: 126px; }
.admin-dual-bars span { display: block; min-height: 0; border-radius: 9px 9px 3px 3px; box-shadow: inset 0 12px 18px rgba(255,255,255,.16); }
.admin-dual-bars span.views { background: linear-gradient(180deg, #0f52ff, #0737aa); }
.admin-dual-bars span.users { background: linear-gradient(180deg, #b9dcff, #5aa8ff); }
.admin-dual-day strong { color: #111827; font-size: 10px; line-height: 1; }
.admin-dual-day small { color: var(--muted); font-size: 10px; }
.admin-status-badge { display: inline-flex; align-items: center; justify-content: center; min-height: 30px; border-radius: 999px; padding: 6px 11px; font-size: 12px; font-weight: 950; border: 1px solid #d1d5db; background: #f9fafb; color: #374151; white-space: nowrap; }
.admin-status-badge.good { border-color: #86efac; background: #f0fdf4; color: #166534; }
.admin-status-badge.warning { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.admin-status-badge.danger { border-color: #fecdd3; background: #fff1f2; color: #be123c; }
.admin-status-badge.neutral { border-color: #dbeafe; background: #eff6ff; color: #1d4ed8; }
.admin-compact-alert { border: 1px solid #ffd0da; background: #fff7f8; color: #9f001f; border-radius: 12px; padding: 10px 12px; font-size: 12px; font-weight: 800; margin: 10px 0 12px; }
.admin-compact-alert.admin-info-alert { border-color: #bfdbfe; background: #eff6ff; color: #1d4ed8; }
.admin-ceo-panel { border-color: #dbeafe; background: linear-gradient(180deg, #fff 0%, #f8fbff 100%); }
.admin-ceo-alerts { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 10px; margin: 8px 0 16px; }
.admin-ceo-alert { display: grid; gap: 5px; border: 1px solid #e5e7eb; border-radius: 14px; background: #fff; padding: 12px; color: #111827; text-decoration: none; }
.admin-ceo-alert span { color: #374151; font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .04em; }
.admin-ceo-alert strong { font-size: 20px; line-height: 1; }
.admin-ceo-alert small { color: #64748b; font-size: 12px; font-weight: 800; line-height: 1.35; }
.admin-ceo-alert.good { border-color: #bbf7d0; background: #f0fdf4; }
.admin-ceo-alert.warning { border-color: #fed7aa; background: #fff7ed; }
.admin-ceo-alert.danger { border-color: #fecdd3; background: #fff1f2; }
.admin-ceo-kpis .admin-card strong { font-size: clamp(22px, 2.6vw, 30px); overflow-wrap: anywhere; }
.admin-business-panels { align-items: stretch; margin-top: 16px; }
.admin-business-box { min-width: 0; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 16px; box-shadow: 0 12px 32px rgba(15, 23, 42, .045); }
.admin-business-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 12px; }
.admin-business-head h3 { margin: 0 0 5px; }
.admin-business-head p { margin: 0; font-size: 12px; line-height: 1.4; }
.admin-business-head a { flex: 0 0 auto; color: var(--primary); font-size: 12px; font-weight: 950; text-decoration: none; }
.admin-business-chart { min-height: 176px; }
.admin-business-chart .admin-column span { position: relative; overflow: hidden; }
.admin-business-chart.checkout .admin-column span { background: linear-gradient(180deg, #f97316, #fecdd3); }
.admin-business-chart.checkout .admin-column span i { position: absolute; left: 0; right: 0; bottom: 0; display: block; min-height: 0; background: #16a34a; }
.admin-funnel-step .admin-bar i { background: linear-gradient(90deg, #2563eb, #16a34a); }
.admin-business-box .admin-ranked-item small { color: var(--muted); font-size: 11px; font-weight: 800; }
.admin-checkout-leads-box { overflow: hidden; }
.admin-checkout-leads-actions { display: flex; align-items: center; justify-content: flex-end; flex-wrap: wrap; gap: 9px; }
.admin-checkout-leads-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 12px 0; }
.admin-checkout-leads-summary div { min-width: 0; border: 1px solid #e5e7eb; border-radius: 12px; background: #f8fafc; padding: 12px; }
.admin-checkout-leads-summary div.danger { border-color: #fecdd3; background: #fff1f2; color: #be123c; }
.admin-checkout-leads-summary div.warning { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.admin-checkout-leads-summary div.good { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }
.admin-checkout-leads-summary div.neutral { border-color: #dbeafe; background: #eff6ff; color: #1d4ed8; }
.admin-checkout-leads-summary strong { display: block; color: inherit; font-size: 28px; line-height: 1; margin-bottom: 5px; letter-spacing: 0; }
.admin-checkout-leads-summary span { display: block; color: inherit; opacity: .78; font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .04em; }
.admin-checkout-leads-strip { display: flex; overflow: hidden; height: 12px; border-radius: 999px; background: #e5e7eb; margin: 0 0 14px; }
.admin-checkout-leads-strip i { display: block; height: 100%; min-width: 0; }
.admin-checkout-leads-strip i.danger { background: #e11d48; }
.admin-checkout-leads-strip i.warning { background: #f59e0b; }
.admin-checkout-leads-strip i.neutral { background: #2563eb; }
.admin-checkout-leads-strip i.good { background: #16a34a; }
.admin-checkout-leads-table { min-width: 1120px; }
.admin-checkout-leads-table th:first-child, .admin-checkout-leads-table td:first-child { width: 92px; }
.admin-lead-score-cell { min-width: 86px; }
.admin-lead-score { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 32px; border-radius: 10px; background: #eff6ff; color: #1d4ed8; font-size: 16px; font-weight: 1000; }
.admin-lead-score.danger { background: #fff1f2; color: #be123c; }
.admin-lead-score.warning { background: #fff7ed; color: #9a3412; }
.admin-lead-score.good { background: #f0fdf4; color: #166534; }
.admin-lead-score.neutral { background: #eff6ff; color: #1d4ed8; }
.admin-lead-action { min-width: 190px; max-width: 280px; line-height: 1.35; }
.admin-mini-meter.neutral i { background: #2563eb; }
.admin-operations-title { margin-top: 26px; }
.admin-notice-row { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.admin-notice-row .button { min-height: 38px; padding: 0 14px; white-space: nowrap; }
.admin-action-row { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 4px; }
.admin-action-row .button { min-height: 40px; padding: 0 15px; }
.admin-form-note { grid-column: 1 / -1; border: 1px solid #bfdbfe; background: #eff6ff; color: #1d4ed8; border-radius: 12px; padding: 10px 12px; font-size: 12px; font-weight: 850; }
.admin-simple-control { border-top: 1px solid var(--line); padding-top: 20px; }
.admin-next-action { display: grid; gap: 5px; border: 1px solid #bfdbfe; border-radius: 16px; background: #eff6ff; color: #1d4ed8; padding: 14px 16px; margin: 14px 0; }
.admin-next-action.warning { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.admin-next-action.good { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }
.admin-next-action strong { font-size: 17px; }
.admin-next-action span { font-size: 13px; font-weight: 800; }
.admin-ai-flow-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 14px 0 16px; }
.admin-ai-flow-card { display: grid; gap: 12px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(180deg, #fff 0%, #f8fafc 100%); padding: 15px; box-shadow: 0 12px 34px rgba(15,23,42,.05); }
.admin-ai-flow-card-cost { background: linear-gradient(135deg, #fff7f8 0%, #fff 48%, #eff6ff 100%); }
.admin-flow-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.admin-flow-head span { color: var(--muted); font-size: 12px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.admin-flow-head strong { color: #0f172a; font-size: 26px; line-height: 1; letter-spacing: 0; }
.admin-flow-stack { display: flex; height: 16px; overflow: hidden; border-radius: 999px; background: #eef2f7; box-shadow: inset 0 0 0 1px rgba(15,23,42,.04); }
.admin-flow-stack i { display: block; min-width: 0; height: 100%; }
.admin-flow-stack .done, .admin-flow-legend b.done, .admin-flow-bars b { background: #16a34a; }
.admin-flow-stack .queue, .admin-flow-legend b.queue { background: #f59e0b; }
.admin-flow-stack .process, .admin-flow-legend b.process { background: var(--primary); }
.admin-flow-stack .todo, .admin-flow-legend b.todo { background: #cbd5e1; }
.admin-flow-legend { display: flex; flex-wrap: wrap; gap: 7px 12px; }
.admin-flow-legend span { display: inline-flex; align-items: center; gap: 6px; color: #475569; font-size: 12px; font-weight: 850; }
.admin-flow-legend b { width: 9px; height: 9px; border-radius: 999px; flex: 0 0 auto; }
.admin-flow-bars { display: grid; gap: 8px; }
.admin-flow-bars label { display: grid; grid-template-columns: 82px minmax(0, 1fr); align-items: center; gap: 9px; color: #475569; font-size: 12px; font-weight: 900; }
.admin-flow-bars i { height: 8px; border-radius: 999px; background: #e5e7eb; overflow: hidden; }
.admin-flow-bars b { display: block; height: 100%; min-width: 3px; border-radius: inherit; }
.admin-flow-bars label:nth-child(2) b { background: #f59e0b; }
.admin-flow-bars label:nth-child(3) b { background: var(--primary); }
.admin-ai-flow-card small, .admin-ai-flow-card p { color: #64748b; font-size: 12px; font-weight: 850; line-height: 1.45; margin: 0; }
.admin-flow-cost-row { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.admin-flow-cost-row span { border: 1px solid #fecdd3; border-radius: 12px; background: #fff; color: #9f001f; padding: 10px; font-size: 12px; font-weight: 950; }
.admin-simple-steps { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; margin: 14px 0; }
.admin-simple-step { display: flex; flex-direction: column; gap: 9px; border: 1px solid var(--line); border-radius: 18px; background: #fff; padding: 15px; box-shadow: 0 12px 32px rgba(15,23,42,.045); }
.admin-simple-step.active { border-color: #ff9aae; box-shadow: 0 18px 42px rgba(255,0,64,.10); }
.admin-simple-step > span { color: var(--primary); font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.admin-simple-step strong { font-size: 17px; line-height: 1.15; }
.admin-simple-step p { margin: 0; color: var(--muted); font-size: 13px; font-weight: 750; line-height: 1.45; }
.admin-simple-step small { color: #64748b; font-size: 12px; font-weight: 850; }
.admin-simple-step label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 900; }
.admin-simple-step select { width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 11px 12px; font: inherit; font-weight: 850; background: #fff; }
.admin-simple-step button { margin-top: auto; width: 100%; min-height: 46px; border-radius: 14px; }
.admin-advanced-panel { border-top: 1px solid var(--line); margin-top: 18px; padding-top: 18px; }
.admin-advanced-panel > summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; border: 1px solid var(--line); border-radius: 16px; background: #f8fafc; padding: 14px 16px; cursor: pointer; list-style: none; }
.admin-advanced-panel > summary::-webkit-details-marker { display: none; }
.admin-advanced-panel > summary strong { color: #111827; font-size: 15px; }
.admin-advanced-panel > summary span { color: var(--muted); font-size: 12px; font-weight: 800; text-align: right; }
.admin-advanced-panel[open] > summary { border-color: #ffc2cc; background: #fffafa; }
.admin-check.admin-disabled-option { opacity: .55; }
.admin-check.admin-disabled-option input { cursor: not-allowed; }
.admin-mini-meter, .admin-wide-meter, .admin-bar { overflow: hidden; background: #f3f4f6; border-radius: 999px; }
.admin-mini-meter { height: 8px; margin: 8px 0 9px; }
.admin-wide-meter { height: 12px; margin: 12px 0 18px; }
.admin-mini-meter i, .admin-wide-meter i, .admin-bar i { display: block; height: 100%; border-radius: inherit; background: #2563eb; }
.admin-mini-meter.good i, .admin-wide-meter.good i { background: #16a34a; }
.admin-mini-meter.warning i, .admin-wide-meter.warning i { background: #f97316; }
.admin-mini-meter.danger i, .admin-wide-meter.danger i { background: var(--primary); }
.admin-api-block { padding: 2px 0 20px; }
.admin-api-block + .admin-api-block { border-top: 1px solid var(--line); padding-top: 20px; }
.admin-api-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.admin-api-head h3 { margin-top: 0; }
.admin-api-head p { margin: 0; color: var(--muted); font-size: 13px; font-weight: 700; }
.admin-meter-line { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 12px 0; }
.admin-meter-line div { border-left: 4px solid #dbeafe; background: #f8fafc; border-radius: 12px; padding: 10px; }
.admin-meter-line strong { display: block; font-size: 22px; line-height: 1; margin-bottom: 5px; }
.admin-meter-line span { color: var(--muted); font-size: 12px; font-weight: 850; }
.admin-ranked-list, .admin-ranked-grid { display: grid; gap: 10px; }
.admin-ranked-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.admin-ranked-list.compact { gap: 8px; }
.admin-ranked-item { display: grid; gap: 7px; min-width: 0; }
.admin-ranked-item > div:first-child { display: flex; justify-content: space-between; gap: 14px; align-items: baseline; min-width: 0; }
.admin-ranked-item strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; font-size: 13px; }
.admin-ranked-item span { flex: 0 0 auto; color: var(--muted); font-size: 12px; font-weight: 850; }
.admin-bar { height: 9px; }
.admin-bar i { background: linear-gradient(90deg, var(--primary), #2563eb); min-width: 4px; }
.admin-column-chart { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(42px, 1fr); align-items: end; gap: 8px; min-height: 168px; overflow-x: auto; padding: 8px 2px 2px; }
.admin-column { display: grid; grid-template-rows: 1fr auto auto; gap: 6px; min-height: 150px; text-align: center; color: var(--muted); font-size: 11px; font-weight: 850; }
.admin-column span { align-self: end; display: block; min-height: 6px; border-radius: 10px 10px 3px 3px; background: linear-gradient(180deg, #2563eb, var(--primary)); }
.admin-column strong { color: #111827; font-size: 11px; line-height: 1; }
.admin-column small { color: var(--muted); font-size: 10px; }
.admin-column-chart.gemini .admin-column span { background: linear-gradient(180deg, #16a34a, #2563eb); }
.admin-table-wrap { overflow-x: auto; }
.admin-table { width: 100%; border-collapse: collapse; min-width: 560px; font-size: 13px; }
.admin-table.compact { min-width: 360px; }
.admin-table th, .admin-table td { text-align: left; border-bottom: 1px solid var(--line); padding: 10px 9px; vertical-align: top; }
.admin-table th { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.admin-table td { color: #111827; font-weight: 700; }
.admin-table small { display: block; color: var(--muted); font-size: 11px; font-weight: 800; margin-top: 4px; }
.admin-data-table { min-width: 1040px; }
.admin-filter-bar { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) auto; gap: 12px; align-items: end; }
.admin-filter-bar label, .admin-refund-form label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 900; }
.admin-filter-bar input, .admin-filter-bar select, .admin-refund-form input, .admin-refund-form select, .admin-refund-form textarea { width: 100%; border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 11px 12px; color: #111827; font: inherit; font-size: 13px; font-weight: 800; }
.admin-filter-bar button { min-height: 44px; border-radius: 14px; }
.admin-row-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.admin-row-actions .button { min-height: 34px; padding: 0 11px; border-radius: 12px; font-size: 12px; }
.admin-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); gap: 12px; }
.admin-detail-grid div { border: 1px solid var(--line); border-radius: 16px; background: #f8fafc; padding: 13px; }
.admin-detail-grid span { display: block; color: var(--muted); font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .05em; margin-bottom: 6px; }
.admin-detail-grid strong { display: block; color: #111827; font-size: 13px; overflow-wrap: anywhere; }
.admin-refund-details summary { display: inline-flex; min-height: 34px; align-items: center; border: 1px solid #fecdd3; border-radius: 12px; padding: 0 11px; background: #fff1f2; color: #be123c; font-size: 12px; font-weight: 950; cursor: pointer; list-style: none; }
.admin-refund-details summary::-webkit-details-marker { display: none; }
.admin-refund-form { display: grid; gap: 10px; min-width: 260px; margin-top: 10px; border: 1px solid var(--line); border-radius: 16px; background: #fff; padding: 12px; box-shadow: 0 16px 40px rgba(15, 23, 42, .09); }
.admin-refund-form p { margin: 0; color: #111827; font-size: 13px; }
.admin-refund-form button { min-height: 42px; border-radius: 14px; }
.danger-text { color: #be123c !important; }
.admin-url-cell { max-width: 420px; word-break: break-all; color: var(--muted) !important; }
.admin-affiliate-form { display: grid; grid-template-columns: 1fr 1fr 2fr auto auto; gap: 10px; align-items: end; margin: 14px 0 18px; }
.admin-affiliate-form label { display: grid; gap: 6px; color: var(--muted); font-size: 12px; font-weight: 900; }
.admin-affiliate-form input[type="text"], .admin-affiliate-form input[type="url"], .admin-affiliate-form select { width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 12px 13px; font: inherit; }
.admin-user-plan-form { display: grid; grid-template-columns: 130px minmax(180px, 1fr) auto; gap: 8px; align-items: center; min-width: 390px; }
.admin-user-plan-form select, .admin-user-plan-form input { width: 100%; border: 1px solid var(--line); border-radius: 12px; padding: 10px 11px; font: inherit; font-size: 12px; font-weight: 800; background: #fff; }
.admin-user-plan-form button { min-height: 40px; border-radius: 12px; padding: 0 13px; }
.admin-check { display: flex !important; align-items: center; gap: 8px; padding-bottom: 12px; }
.alert-success { border-color: #bbf7d0; background: #f0fdf4; color: #166534; }
@media (max-width: 1180px) {
  .admin-grid-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-two-col, .admin-ranked-grid { grid-template-columns: 1fr; }
  .admin-ai-flow-grid { grid-template-columns: 1fr; }
  .admin-simple-steps { grid-template-columns: 1fr; }
  .admin-checkout-leads-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rsl-cost-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Impact Studio person reference upload */
.impact-studio-person-reference {
  display: grid;
  gap: 14px;
  margin: 0 0 18px;
  border: 1px solid rgba(203, 213, 225, .95);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(248, 251, 255, .96));
  box-shadow: 0 14px 34px rgba(15, 23, 42, .055);
  padding: 16px;
}

.impact-studio-person-reference-copy {
  display: flex;
  justify-content: space-between;
  gap: 14px;
}

.impact-studio-person-reference h3 {
  margin: 0 0 6px;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: 0;
}

.impact-studio-person-reference p {
  margin: 0;
  color: #526173;
  font-weight: 750;
  line-height: 1.5;
}

.impact-studio-person-reference-form {
  display: grid;
  grid-template-columns: minmax(160px, .8fr) minmax(220px, 1.1fr) auto;
  gap: 10px;
  align-items: end;
}

.impact-studio-person-reference-form label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.impact-studio-person-reference-select {
  position: relative;
}

.impact-studio-person-reference-form label > span,
.impact-studio-person-file span {
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}

.impact-studio-person-reference-form select {
  -webkit-appearance: none;
  appearance: none;
  width: 100%;
  min-height: 42px;
  border: 1px solid #dbe3ef;
  border-radius: 12px;
  background: #fff;
  color: #172033;
  font-weight: 850;
  overflow: hidden;
  padding: 0 38px 0 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.impact-studio-person-reference-select::after {
  content: "";
  position: absolute;
  right: 14px;
  bottom: 15px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #475569;
  border-bottom: 2px solid #475569;
  pointer-events: none;
  transform: rotate(45deg);
}

.impact-studio-person-file {
  position: relative;
  min-height: 42px;
  border: 1px dashed #cbd5e1;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
  cursor: pointer;
}

.impact-studio-person-file input {
  position: absolute;
  inset: 0;
  opacity: 0;
  cursor: pointer;
}

.impact-studio-person-reference-status {
  border: 1px solid #bbf7d0;
  border-radius: 12px;
  background: #ecfdf5;
  color: #14532d;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
}

.impact-studio-person-reference-status.error {
  border-color: #fecaca;
  background: #fff1f2;
  color: #be123c;
}

.impact-studio-person-reference-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 10px;
}

.impact-studio-person-reference-card {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  padding: 10px;
}

.impact-studio-person-reference-card img {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  object-fit: cover;
  background: #f1f5f9;
}

.impact-studio-person-reference-card div {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.impact-studio-person-reference-card strong,
.impact-studio-person-reference-card small {
  overflow-wrap: anywhere;
}

.impact-studio-person-reference-card strong {
  color: #111827;
  font-size: 14px;
  line-height: 1.25;
}

.impact-studio-person-reference-card small,
.impact-studio-person-reference-empty {
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}

.impact-studio-person-reference-card .button.small {
  justify-self: start;
  min-height: 30px;
  padding: 6px 10px;
}

.impact-studio-person-reference-empty {
  margin: 0;
  border: 1px dashed #cbd5e1;
  border-radius: 12px;
  background: #fff;
  padding: 12px;
}

@media (max-width: 780px) {
  .impact-studio-person-reference-form {
    grid-template-columns: 1fr;
  }
  .impact-studio-person-reference-form .button {
    width: 100%;
  }
}
@media (min-width: 901px) and (max-width: 1260px) {
  .site-header .container { width: min(100% - 24px, 1220px); }
  .header-actions { gap: 8px; }
  .nav { gap: 3px; font-size: 13px; }
  .nav a { padding-inline: 8px; }
  .nav a.nav-niche-pro { gap: 6px; padding-inline: 9px; }
  .nav a.nav-niche-pro::after { display: none; }
  .nav a.nav-impact-studio { gap: 6px; padding-inline: 9px; }
  .header-extension-cta span:last-child { display: none; }
  .header-extension-cta { padding-right: 10px; }
  .usage-menu-card { width: min(340px, calc(100vw - 32px)); }
  .usage-menu-dropdown { width: min(700px, calc(100vw - 32px)); }
}
@media (max-width: 900px) {
  .container { width: min(100% - 28px, 1160px); }
  .hero .container { width: min(100% - 28px, 1160px); }
  .header-inner { min-height: 60px; }
  .brand-mark { width: 34px; height: 34px; border-radius: 9px; }
  .hero { padding: 42px 0 28px; }
  .hero-grid, .footer-grid, .feature-grid { grid-template-columns: 1fr; }
  .hero-panel { max-width: 100%; justify-self: stretch; }
  h1 { font-size: 48px; }
  h2 { font-size: 30px; }
  .video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-row { flex-direction: column; }
  .search-row button { width: 100%; }
  .search-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .search-options label { align-items: flex-start; flex-direction: column; gap: 6px; }
  .search-options select { width: 100%; border-radius: 14px; }
  .admin-checkout-leads-actions { justify-content: flex-start; }
  .admin-checkout-leads-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-checkout-leads-summary strong { font-size: 24px; }
  .rsl-cost-head { flex-direction: column; }
  .rsl-day-row { grid-template-columns: 44px minmax(90px, 1fr) 86px; }
  .rsl-day-row small { grid-column: 2 / -1; }
  .result-controls > div { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .result-controls input, .result-controls select { width: 100%; }
  .result-controls button { width: 100%; }
  .nav { display: none; }
  .usage-menu-card { left: 14px; bottom: 14px; width: min(340px, calc(100vw - 28px)); }
  .usage-menu-dropdown { width: min(560px, calc(100vw - 28px)); max-height: 70vh; grid-template-columns: 1fr; }
  .header-actions { gap: 8px; }
  .header-extension-cta span:last-child { display: none; }
  .header-extension-cta { min-height: 38px; padding: 7px 9px; }
  .google-login-button { padding: 8px 10px; font-size: 12px; }
  .section-title-row, .result-header { align-items: flex-start; flex-direction: column; }
  .button-group, .result-header .button, .section-title-row .button { width: 100%; }
  .compact-outlier-card, .home-week-outliers .compact-outlier-card { flex-basis: min(410px, 62vw) !important; }
  .admin-grid, .admin-two-col, .admin-meter-line { grid-template-columns: 1fr; }
  .admin-ga4-extra { grid-template-columns: 1fr; }
  .admin-chart-head { flex-direction: column; }
  .admin-chart-legend { justify-content: flex-start; }
  .admin-hero { flex-direction: column; }
  .admin-app-shell { grid-template-columns: 1fr; width: min(100% - 24px, 1160px); margin-top: 18px; }
  .admin-app-sidebar { position: static; min-height: 0; }
  .admin-app-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-app-topbar { flex-direction: column; }
  .admin-app-topbar .button { width: 100%; }
  .admin-filter-bar { grid-template-columns: 1fr; }
  .admin-notice-row { align-items: flex-start; flex-direction: column; }
  .admin-affiliate-form { grid-template-columns: 1fr; }
  .admin-advanced-panel > summary { align-items: flex-start; flex-direction: column; }
  .admin-advanced-panel > summary span { text-align: left; }
}
@media (max-width: 620px) {
  .container { width: min(100% - 24px, 1160px); }
  .hero .container { width: min(100% - 24px, 1160px); }
  .hero { padding: 32px 0 22px; }
  .brand span:last-child { display: none; }
  .language-switch a,
  .language-switch span { min-width: 30px; padding: 6px 7px; }
  h1 { font-size: 38px; line-height: 1.06; }
  h2 { font-size: 26px; }
  h3 { font-size: 16px; }
  .admin-app-nav { grid-template-columns: 1fr; }
  .admin-app-topbar h1 { font-size: 30px; }
  .hero-text { font-size: 16px; }
  .hero-panel, .search-card, .video-card, .channel-row, .alert, .feature-card, .keyword-card { border-radius: 16px; }
  .hero-panel { padding: 20px; }
  .search-card { padding: 16px; margin-top: 18px; }
  .search-options { grid-template-columns: 1fr; }
  .result-controls { border-radius: 16px; }
  .result-controls > div { grid-template-columns: 1fr; }
  .compact-outlier-carousel { grid-template-columns: 36px minmax(0, 1fr) 36px; gap: 6px; }
  .compact-carousel-arrow { width: 36px; height: 36px; font-size: 24px; }
  button, .button { width: 100%; white-space: normal; }
  .compact-carousel-arrow { width: 36px; min-width: 36px; }
  .tabs a { flex: 1 1 auto; text-align: center; }
  .video-grid { grid-template-columns: 1fr; }
  .compact-outlier-card, .home-week-outliers .compact-outlier-card { flex-basis: min(86vw, 370px) !important; }
  .home-week-outliers .compact-thumb { min-height: 180px; }
  .channel-row { grid-template-columns: auto 1fr; }
  .channel-row .button { grid-column: 1 / -1; }
  .channel-summary { align-items: flex-start; flex-direction: column; border-radius: 16px; }
  .channel-summary-actions { margin-left: 0; width: 100%; justify-content: stretch; }
  .score-box, .intelligence-box { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .score-box div { padding: 9px; }
  .cookie-banner { align-items: flex-start; flex-direction: column; left: 12px; right: 12px; bottom: 12px; }
  .cookie-banner div { width: 100%; justify-content: space-between; }
  .cookie-banner button { width: auto; }
  .extension-install-popover {
    top: 76px;
    left: 12px;
    right: 12px;
    width: auto;
    max-width: none;
    max-height: calc(100vh - 96px);
  }
  .extension-install-popover.has-cookie-banner { bottom: auto; }
  .extension-install-card { border-radius: 20px; padding: 14px; }
  .extension-install-top h2 { font-size: 20px; }
  .extension-install-icon { width: 34px; min-width: 34px; }
  .extension-install-primary,
  .extension-install-actions button:not(.extension-install-icon) { flex: 1 1 100%; }
  .usage-menu-card {
    left: 12px;
    bottom: 12px;
    width: calc(100vw - 24px);
  }
  .usage-menu-dropdown { width: calc(100vw - 24px); max-height: 68vh; grid-template-columns: 1fr; }
  .auth-modal-backdrop { padding: 12px; align-items: end; }
  .auth-modal-card { border-radius: 22px; padding: 22px; }
  .auth-modal-close { width: 34px; min-width: 34px; }
  .auth-modal-card h2 { font-size: 28px; }
}

.keyword-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 20px; }
.keyword-card { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 18px; box-shadow: 0 14px 40px rgba(15, 23, 42, .05); transition: transform .18s ease, box-shadow .18s ease; }
.keyword-card:hover { transform: translateY(-2px); box-shadow: 0 20px 55px rgba(15, 23, 42, .08); }
.keyword-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.keyword-head strong { font-size: 18px; letter-spacing: 0; }
.keyword-head span { font-size: 11px; font-weight: 950; color: var(--primary); background: var(--soft); border-radius: 999px; padding: 5px 8px; }
.keyword-stats { display: flex; flex-wrap: wrap; gap: 8px; }
.keyword-stats span { background: #fffafa; border: 1px solid var(--line); border-radius: 999px; padding: 5px 8px; font-size: 12px; color: var(--muted); font-weight: 750; }
.keyword-section { padding-top: 28px; }
.keyword-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 20px 0; }
.keyword-summary div { background: white; border: 1px solid var(--line); border-radius: 20px; padding: 18px; box-shadow: 0 14px 40px rgba(15, 23, 42, .05); }
.keyword-summary strong { display: block; font-size: 24px; letter-spacing: 0; }
.keyword-summary span { color: var(--muted); font-size: 13px; font-weight: 800; }
@media (max-width: 900px) { .keyword-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .keyword-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 620px) { .keyword-grid, .keyword-summary { grid-template-columns: 1fr; } }

/* Impactube Intelligence update */
.feature-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.quick-links { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.quick-links a { background: white; border: 1px solid var(--line); border-radius: 18px; padding: 18px; font-weight: 900; color: var(--primary); box-shadow: 0 12px 35px rgba(15, 23, 42, .05); }
.quick-links a:hover { transform: translateY(-2px); box-shadow: 0 18px 48px rgba(15,23,42,.08); }
.intelligence-box { grid-template-columns: repeat(3, 1fr); }
.creative-note { margin: 10px 0 0; padding: 9px 10px; border-radius: 12px; background: #fff7ed; color: #9a3412; font-size: 12px; font-weight: 800; }
.button-group { display: flex; gap: 10px; flex-wrap: wrap; }
.mini-card { margin-top: 14px; margin-bottom: 18px; }
.mini-filter { margin: 12px 0 18px; }
.mini-filter label { display: inline-flex; align-items: center; gap: 8px; font-weight: 800; color: var(--muted); }
.mini-filter select, .mini-card select { border: 1px solid var(--line); border-radius: 999px; padding: 9px 12px; background: #fff; font-weight: 800; }
.potential-row h3 { margin-top: 0; }
.niche-card .keyword-head span { background: #fff0f2; color: #9f001f; }
.creative-timeline { display: grid; gap: 14px; margin: 18px 0 30px; }
.creative-version { display: grid; grid-template-columns: 180px 1fr; gap: 16px; align-items: center; background: white; border: 1px solid var(--line); border-radius: 20px; padding: 14px; box-shadow: 0 14px 40px rgba(15,23,42,.05); }
.creative-version img { width: 180px; aspect-ratio: 16/9; object-fit: cover; border-radius: 14px; background: #e2e8f0; }
.data-table-wrap { overflow-x: auto; background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 14px 40px rgba(15,23,42,.05); }
.data-table { width: 100%; border-collapse: collapse; }
.data-table th, .data-table td { padding: 12px 14px; border-bottom: 1px solid var(--line); text-align: left; }
.data-table th { color: var(--muted); font-size: 12px; text-transform: uppercase; letter-spacing: .04em; }
.metric-chart { background: #fff; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 16px 44px rgba(120,0,20,.06); padding: 18px; margin: 18px 0 18px; }
.metric-chart-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 12px; }
.metric-chart-head strong { display: block; font-size: 18px; color: #050507; }
.metric-chart-head p { margin: 4px 0 0; max-width: 700px; }
.metric-chart-legend { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.metric-chart-legend span { display: inline-flex; align-items: center; gap: 7px; border: 1px solid var(--line); border-radius: 999px; padding: 6px 10px; font-size: 12px; font-weight: 900; color: var(--muted); background: #fffafa; }
.metric-chart-legend i, .metric-chart-tooltip i { display: inline-block; width: 10px; height: 10px; border-radius: 999px; }
.metric-chart-legend i.views, .metric-chart-tooltip i.views { background: #2563eb; }
.metric-chart-legend i.likes, .metric-chart-tooltip i.likes { background: #16a34a; }
.metric-chart-legend i.comments, .metric-chart-tooltip i.comments { background: #eab308; }
.metric-chart-stage { position: relative; min-height: 280px; overflow: hidden; border-radius: 16px; background: linear-gradient(180deg, #fff 0%, #fff7f7 100%); }
.metric-chart-svg { display: block; width: 100%; height: auto; min-height: 280px; touch-action: pan-y; }
.metric-chart-grid line { stroke: #f3dede; stroke-width: 1; }
.metric-chart-grid text, .metric-chart-axis text { fill: #64748b; font-size: 12px; font-weight: 800; }
.metric-chart-area.views { fill: rgba(37, 99, 235, .08); stroke: none; }
.metric-chart-line { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.metric-chart-line.views { stroke: #2563eb; stroke-width: 5; }
.metric-chart-line.likes { stroke: #16a34a; stroke-width: 3; }
.metric-chart-line.comments { stroke: #eab308; stroke-width: 3; }
.metric-chart-dots circle { stroke: #fff; stroke-width: 2; }
.metric-chart-dots circle.views { fill: #2563eb; }
.metric-chart-dots circle.likes { fill: #16a34a; }
.metric-chart-dots circle.comments { fill: #eab308; }
.metric-chart-guide { stroke: #111827; stroke-width: 1.5; stroke-dasharray: 5 5; opacity: .35; pointer-events: none; }
.metric-chart-tooltip { position: absolute; z-index: 2; min-width: 190px; background: #0b0b0f; color: #fff; border-radius: 14px; padding: 10px 12px; box-shadow: 0 18px 40px rgba(15,23,42,.22); pointer-events: none; font-size: 12px; }
.metric-chart-tooltip strong { display: block; margin-bottom: 6px; color: #fff; }
.metric-chart-tooltip span { display: flex; align-items: center; gap: 7px; justify-content: space-between; white-space: nowrap; }
.ai-thumbnail-card { background: white; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 16px 44px rgba(120,0,20,.06); padding: 18px; margin: 22px 0 28px; }
.ai-thumbnail-intro { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.ai-thumbnail-intro h2 { margin: 0 0 6px; font-size: 30px; }
.ai-thumbnail-intro p { margin: 0; max-width: 760px; }
.ai-thumbnail-button { flex: 0 0 auto; }
.ai-thumbnail-status { margin-top: 14px; border: 1px solid #fecdd3; background: #fff7f7; color: #9f001f; border-radius: 16px; padding: 12px 14px; font-weight: 850; }
.ai-thumbnail-status.error { background: #fff1f2; color: #be123c; }
.ai-thumbnail-result { display: grid; grid-template-columns: 150px 1fr; gap: 18px; margin-top: 16px; }
.ai-thumbnail-score { display: grid; place-items: center; align-content: center; min-height: 150px; border-radius: 20px; background: linear-gradient(180deg, #ff0042, #b8002d); color: #fff; box-shadow: 0 18px 44px rgba(255,0,66,.22); }
.ai-thumbnail-score span { font-size: 58px; line-height: 1; font-weight: 950; letter-spacing: 0; }
.ai-thumbnail-score small { font-size: 12px; font-weight: 900; opacity: .9; }
.ai-thumbnail-body { display: grid; gap: 16px; min-width: 0; }
.ai-thumbnail-levels { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.ai-thumbnail-levels div, .ai-thumbnail-two-col > div, .ai-thumbnail-recommendations > div, .ai-thumbnail-why, .ai-thumbnail-suggestion > div { border: 1px solid var(--line); border-radius: 16px; background: #fffafa; padding: 12px; }
.ai-thumbnail-levels strong, .ai-thumbnail-recommendations span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 7px; }
.ai-level { display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 5px 9px; font-size: 12px; font-weight: 950; text-transform: uppercase; }
.ai-level.alta { color: #047857; background: #dcfce7; border: 1px solid #86efac; }
.ai-level.media { color: #a16207; background: #fef9c3; border: 1px solid #fde68a; }
.ai-level.baja { color: #be123c; background: #ffe4e6; border: 1px solid #fecdd3; }
.ai-thumbnail-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ai-thumbnail-two-col h3, .ai-thumbnail-body h3 { margin: 0 0 6px; font-size: 16px; }
.ai-thumbnail-two-col p { margin: 0; color: #334155; }
.ai-thumbnail-body ol { margin: 0; padding-left: 22px; color: #334155; }
.ai-thumbnail-body li + li { margin-top: 6px; }
.ai-thumbnail-recommendations { display: grid; grid-template-columns: 220px 1fr; gap: 10px; }
.ai-thumbnail-recommendations strong { display: block; color: #050507; font-size: 18px; letter-spacing: 0; }
.ai-thumbnail-why p { margin: 0; color: #334155; }
.ai-video-meta-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ai-video-meta-grid > div { border: 1px solid var(--line); border-radius: 16px; background: #fffafa; padding: 12px; }
.ai-video-meta-grid span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 6px; }
.ai-video-meta-grid strong { display: inline-flex; border-radius: 999px; padding: 6px 10px; background: #fff1f2; border: 1px solid #fecdd3; color: #9f001f; font-size: 13px; font-weight: 950; }
.ai-video-meta-grid p { margin: 8px 0 0; color: #334155; font-size: 13px; }
.ai-tool-recommendations { border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(180deg, #fff 0%, #fff7f7 100%); padding: 14px; display: grid; gap: 10px; }
.ai-tool-recommendations h3 { margin: 0; }
.ai-tool-recommendations p { margin: 0; color: var(--muted); }
.ai-tool-card { display: grid; grid-template-columns: minmax(120px, 180px) 1fr auto; align-items: center; gap: 12px; border: 1px solid #fecdd3; border-radius: 16px; background: #fff; padding: 12px; color: #111827; box-shadow: 0 10px 28px rgba(120,0,20,.05); }
.ai-tool-card:hover { transform: translateY(-1px); box-shadow: 0 14px 34px rgba(120,0,20,.08); }
.ai-tool-card strong { color: #050507; font-size: 17px; letter-spacing: 0; }
.ai-tool-card span { color: #334155; font-size: 13px; font-weight: 750; }
.ai-tool-card em { justify-self: end; border-radius: 999px; padding: 8px 11px; background: var(--primary); color: white; font-size: 12px; font-style: normal; font-weight: 950; white-space: nowrap; }
.ai-thumbnail-suggestion-actions { display: flex; justify-content: flex-start; }
.ai-thumbnail-suggestion-actions .button { width: auto; }
.ai-thumbnail-suggestion { display: grid; grid-template-columns: 280px 1fr; gap: 10px; }
.ai-thumbnail-suggestion[hidden] { display: none !important; }
.ai-thumbnail-suggestion span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 7px; }
.ai-thumbnail-suggestion strong { display: block; color: #050507; font-size: 18px; }
.ai-thumbnail-suggestion p { margin: 0 0 10px; color: #334155; white-space: pre-wrap; }
.ai-thumbnail-suggestion .button { width: auto; padding: 10px 12px; border-radius: 12px; }
.ai-comments-result { display: grid; gap: 14px; margin-top: 16px; }
.ai-comments-head { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.ai-comments-head > div, .ai-comments-summary, .ai-comments-grid > div { border: 1px solid var(--line); border-radius: 16px; background: #fffafa; padding: 12px; }
.ai-comments-head span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 6px; }
.ai-comments-head strong { display: block; color: #050507; font-size: 20px; text-transform: capitalize; }
.ai-comments-summary h3, .ai-comments-grid h3 { margin: 0 0 7px; font-size: 16px; }
.ai-comments-summary p { margin: 0; color: #334155; }
.ai-comments-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.ai-comments-grid ul { margin: 0; padding-left: 20px; color: #334155; }
.ai-comments-grid li + li { margin-top: 6px; }
.ai-comments-topics { display: flex; gap: 7px; flex-wrap: wrap; }
.ai-comments-chip { display: inline-flex; border: 1px solid #fecdd3; background: #fff1f2; color: #9f001f; border-radius: 999px; padding: 6px 9px; font-size: 12px; font-weight: 900; }
.pricing-hero { padding: 58px 0 38px; border-bottom: 1px solid var(--line); background: linear-gradient(135deg, #fff 0%, #eef6ff 48%, #fff0f2 100%); }
.pricing-hero-inner { max-width: 960px; }
.pricing-page { padding-top: 34px; }
.pricing-extension-offer { display: grid; gap: 4px; margin-bottom: 18px; border: 1px solid #bfdbfe; border-radius: 18px; background: #eff6ff; padding: 16px; color: #1e3a8a; box-shadow: 0 14px 36px rgba(37,99,235,.1); }
.pricing-extension-offer strong { color: #1d4ed8; font-size: 16px; }
.pricing-extension-offer span { color: #334155; font-weight: 850; }
.pricing-checkout-notice { display: grid; gap: 4px; margin-bottom: 18px; border: 1px solid #fecdd3; border-radius: 18px; background: #fff1f2; padding: 16px; color: #9f1239; box-shadow: 0 14px 36px rgba(255,0,51,.08); }
.pricing-checkout-notice strong { color: #be123c; font-size: 16px; }
.pricing-checkout-notice span { color: #334155; font-weight: 850; }
.pricing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; align-items: stretch; }
.pricing-card { position: relative; display: flex; flex-direction: column; gap: 18px; min-height: 100%; padding: 24px; border: 1px solid var(--line); border-radius: 24px; background: #fff; box-shadow: 0 20px 56px rgba(15,23,42,.07); overflow: hidden; }
.pricing-card-featured { border-color: #bfdbfe; background: linear-gradient(135deg, #fff 0%, #f8fbff 52%, #fff7ed 100%); box-shadow: 0 24px 70px rgba(37,99,235,.12); }
.pricing-ribbon { position: absolute; top: 18px; right: 18px; border-radius: 999px; padding: 8px 11px; background: #ecfdf5; color: #047857; border: 1px solid #86efac; font-size: 12px; font-weight: 950; }
.pricing-card-head { display: grid; gap: 4px; padding-right: 140px; }
.pricing-card-head span { color: var(--primary); font-size: 13px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.pricing-card-head strong { color: #050507; font-size: clamp(44px, 6vw, 70px); line-height: 1; letter-spacing: 0; }
.pricing-card-head em { color: var(--muted); font-size: 15px; font-weight: 900; font-style: normal; }
.pricing-features { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.pricing-features li { position: relative; padding: 12px 12px 12px 38px; border: 1px solid #e2e8f0; border-radius: 14px; background: #f8fafc; color: #1f2937; font-weight: 850; }
.pricing-features li:before { content: ""; position: absolute; left: 14px; top: 17px; width: 10px; height: 10px; border-radius: 999px; background: linear-gradient(135deg, #2563eb, #16a34a); box-shadow: 0 0 0 4px rgba(37,99,235,.08); }
.pricing-card .button { margin-top: auto; width: 100%; }
.pricing-checkout-form { display: grid; gap: 12px; margin-top: auto; }
.pricing-billing-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.pricing-billing-actions button { width: 100%; min-height: 64px; border-radius: 16px; flex-direction: column; gap: 3px; }
.pricing-billing-actions button span { font-size: 15px; }
.pricing-billing-actions button small { font-size: 12px; font-weight: 950; opacity: .85; }
.pricing-billing-actions .pricing-yearly-button { background: #050507; color: #fff; }
.pricing-billing-actions .pricing-yearly-button:hover { background: #1f2937; }
.pricing-billing-actions button:disabled { background: #e5e7eb; color: #64748b; cursor: not-allowed; }
.pricing-secure-note { margin: 0; color: #64748b; font-size: 13px; font-weight: 850; line-height: 1.45; }
.pricing-current-plan { display: grid; gap: 4px; margin-top: auto; border: 1px solid #86efac; border-radius: 16px; background: #ecfdf5; padding: 14px; color: #065f46; }
.pricing-current-plan strong { color: #047857; }
.pricing-current-plan span { color: #334155; font-weight: 850; }
.pricing-explain { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin-top: 20px; }
.pricing-explain article { border: 1px solid var(--line); border-radius: 22px; background: #fff; padding: 22px; box-shadow: 0 16px 44px rgba(120,0,20,.06); }
.pricing-explain h2 { margin-bottom: 8px; }
.pricing-explain p { color: #334155; margin-top: 0; }
.pricing-explain span { display: inline-flex; border-radius: 999px; padding: 8px 11px; background: #eff6ff; border: 1px solid #bfdbfe; color: #1d4ed8; font-size: 12px; font-weight: 950; }

.support-page { padding-top: 0; }
.support-hero {
  padding: 64px 0 46px;
  border-bottom: 1px solid var(--line);
  background:
    radial-gradient(circle at 88% 18%, rgba(37,99,235,.12), transparent 30%),
    linear-gradient(135deg, #fff 0%, #f8fbff 48%, #fff0f2 100%);
}
.support-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 390px);
  gap: clamp(24px, 5vw, 72px);
  align-items: center;
}
.support-hero h1 { max-width: 760px; }
.support-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.support-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.support-card-kicker { margin: 0 0 8px; color: var(--primary); font-size: 11px; font-weight: 950; text-transform: uppercase; letter-spacing: .08em; }
.support-muted { color: #64748b; font-size: 14px; font-weight: 760; }
.support-contact-card,
.support-card,
.support-panel {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 22px 60px rgba(15,23,42,.07);
}
.support-contact-card {
  position: relative;
  overflow: hidden;
  padding: 24px;
}
.support-contact-card:before {
  content: "";
  position: absolute;
  width: 150px;
  height: 150px;
  right: -70px;
  top: -70px;
  border-radius: 999px;
  background: #ffe1e7;
}
.support-contact-mark {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 13px;
  background: var(--primary);
  color: #fff;
  font-weight: 950;
  box-shadow: 0 16px 38px rgba(255,0,51,.24);
}
.support-contact-card h2 {
  margin-top: 16px;
  font-size: clamp(20px, 2.1vw, 26px);
  line-height: 1.15;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.support-contact-card p,
.support-contact-card li,
.support-card p,
.support-panel p,
.support-panel li { color: #334155; line-height: 1.55; }
.support-contact-card a { color: var(--primary); font-weight: 950; }
.support-contact-card a.button,
.support-contact-card a.button:hover {
  color: #fff;
}
.support-contact-card ul,
.support-checklist ul {
  display: grid;
  gap: 9px;
  margin: 16px 0 0;
  padding: 0;
  list-style: none;
}
.support-contact-card li,
.support-checklist li {
  position: relative;
  padding-left: 24px;
  font-weight: 800;
}
.support-contact-card li:before,
.support-checklist li:before {
  content: "";
  position: absolute;
  left: 0;
  top: .62em;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: linear-gradient(135deg, #2563eb, #16a34a);
}
.support-section-head { max-width: 840px; margin-bottom: 18px; }
.support-section-head p:last-child { color: #475569; font-weight: 750; }
.support-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.support-card { padding: 20px; }
.support-card h3 { margin: 0 0 8px; font-size: 22px; line-height: 1.15; }
.support-card p { margin: 0; font-weight: 760; }
.support-two-col {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(280px, .85fr);
  gap: 18px;
  align-items: start;
}
.support-panel { padding: 24px; }
.support-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.support-form label { display: grid; gap: 7px; font-weight: 900; color: #111827; }
.support-form input,
.support-form select,
.support-form textarea {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #fff;
  padding: 13px 14px;
  color: #111827;
  font: inherit;
  font-weight: 750;
  box-sizing: border-box;
}
.support-form textarea { resize: vertical; }
.support-form-wide,
.support-form button,
.support-form .small { grid-column: 1 / -1; }
.support-form .small { margin: 0; }
.support-direct-email {
  display: grid;
  gap: 12px;
  margin-top: 20px;
  padding: 16px;
  border-radius: 18px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
}
.support-direct-email strong { color: #0f172a; font-size: 18px; }
.support-direct-email .button { width: fit-content; }
.support-faq { display: grid; gap: 10px; margin-top: 18px; }
.support-faq details {
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #f8fafc;
  padding: 0;
  overflow: hidden;
}
.support-faq summary {
  cursor: pointer;
  padding: 16px 18px;
  color: #0f172a;
  font-weight: 950;
}
.support-faq p { margin: 0; padding: 0 18px 18px; font-weight: 760; }
.support-link-list { display: grid; gap: 10px; margin: 18px 0; }
.support-link-list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #f8fafc;
  padding: 13px 14px;
  color: #0f172a;
  font-weight: 950;
}
.support-link-list a:after { content: "→"; color: var(--primary); }
.support-disclaimer {
  border: 1px solid #fed7aa;
  border-radius: 16px;
  background: #fff7ed;
  padding: 14px;
  font-weight: 780;
}
@media (max-width: 1100px) { .quick-links { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 900px) { .feature-grid, .pricing-grid, .pricing-explain, .support-hero-inner, .support-card-grid, .support-two-col { grid-template-columns: 1fr; } .creative-version { grid-template-columns: 1fr; } .creative-version img { width: 100%; } }
@media (max-width: 620px) { .pricing-billing-actions { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .ai-thumbnail-intro, .ai-thumbnail-result, .ai-thumbnail-two-col, .ai-thumbnail-recommendations, .ai-thumbnail-suggestion, .ai-comments-head, .ai-comments-grid, .ai-video-meta-grid, .ai-tool-card { grid-template-columns: 1fr; } .ai-thumbnail-intro { align-items: flex-start; flex-direction: column; } .ai-thumbnail-button { width: 100%; } .ai-thumbnail-levels { grid-template-columns: repeat(2, minmax(0, 1fr)); } .ai-tool-card em { justify-self: start; } }
@media (max-width: 620px) { .quick-links { grid-template-columns: 1fr; } .intelligence-box { grid-template-columns: repeat(2, minmax(0, 1fr)); } .metric-chart { border-radius: 16px; padding: 12px; } .metric-chart-head { flex-direction: column; } .metric-chart-legend { justify-content: flex-start; } .metric-chart-stage, .metric-chart-svg { min-height: 230px; } .ai-thumbnail-card { border-radius: 16px; padding: 14px; } .ai-thumbnail-levels { grid-template-columns: 1fr; } .ai-thumbnail-score span { font-size: 48px; } .ai-comments-head strong { font-size: 18px; } .support-hero { padding: 40px 0 28px; } .support-form { grid-template-columns: 1fr; } .support-hero-actions .button, .support-actions .button, .support-direct-email .button { width: 100%; } .support-panel, .support-contact-card, .support-card { border-radius: 18px; padding: 18px; } }

.dashboard-hero { padding: 42px 0 28px; border-bottom: 1px solid var(--line); background: linear-gradient(135deg, #fff 0%, #f8fbff 48%, #fff0f2 100%); }
.dashboard-hero-inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 520px); gap: 26px; align-items: end; }
.dashboard-hero h1 { max-width: 780px; margin-bottom: 12px; font-size: clamp(38px, 5vw, 62px); }
.dashboard-channel-form { background: #fff; border: 1px solid var(--line); border-radius: 22px; padding: 18px; box-shadow: 0 18px 48px rgba(15, 23, 42, .07); }
.dashboard-channel-form label { display: block; margin-bottom: 8px; color: #050507; font-size: 13px; font-weight: 950; }
.dashboard-channel-form div { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; }
.dashboard-channel-form input, .dashboard-ai-card textarea { width: 100%; border: 1px solid var(--line); border-radius: 14px; padding: 13px 14px; background: #fff; color: #050507; font: inherit; font-weight: 750; }
.dashboard-studio-only-card { display: grid; gap: 10px; align-content: start; }
.dashboard-studio-only-card .dashboard-form-label { color: var(--primary); font-size: 11px; font-weight: 1000; text-transform: uppercase; letter-spacing: .08em; }
.dashboard-studio-only-card h2 { margin: 0; font-size: clamp(22px, 2.6vw, 32px); line-height: 1.05; }
.dashboard-studio-only-card p { margin: 0; color: #334155; }
.dashboard-studio-only-card > small { color: #475569; font-weight: 900; }
.dashboard-studio-shortcut { display: grid; gap: 2px; margin-top: 12px; border: 1px solid #bfdbfe; border-radius: 16px; background: linear-gradient(135deg, #eff6ff, #fff1f2); padding: 13px 14px; color: #0f172a; box-shadow: 0 14px 34px rgba(37,99,235,.08); }
.dashboard-studio-shortcut span { color: var(--primary); font-size: 11px; font-weight: 1000; text-transform: uppercase; letter-spacing: .08em; }
.dashboard-studio-shortcut strong { color: #050507; font-size: 16px; line-height: 1.1; }
.dashboard-studio-shortcut small { color: #475569; font-size: 12px; font-weight: 850; }
.dashboard-page { padding-top: 28px; }
.dashboard-empty, .dashboard-channel-head, .dashboard-potential-card, .dashboard-next-card, .dashboard-panel, .dashboard-ai-card, .dashboard-stat-grid > div, .dashboard-analysis-drawer { background: #fff; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 16px 44px rgba(15, 23, 42, .06); }
.dashboard-empty { padding: 28px; }
.dashboard-channel-head { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 16px; margin-bottom: 16px; }
.dashboard-channel-head img { width: 74px; height: 74px; border-radius: 16px; object-fit: cover; background: #e2e8f0; }
.dashboard-channel-head h2, .dashboard-panel h2, .dashboard-ai-card h2 { margin-bottom: 4px; }
.dashboard-connected-list { display: grid; gap: 18px; }
.dashboard-channel-drawer { margin: 0; }
.dashboard-channel-drawer > summary.dashboard-channel-head { cursor: pointer; list-style: none; margin-bottom: 0; }
.dashboard-channel-drawer > summary.dashboard-channel-head::-webkit-details-marker { display: none; }
.dashboard-channel-drawer > summary.dashboard-channel-head .dashboard-open-button { justify-self: end; }
.dashboard-channel-drawer[open] > summary.dashboard-channel-head { border-color: #bfdbfe; border-radius: 22px 22px 0 0; box-shadow: 0 18px 48px rgba(37,99,235,.08); }
.dashboard-channel-content { padding: 18px; border: 1px solid #bfdbfe; border-top: 0; border-radius: 0 0 22px 22px; background: linear-gradient(180deg, #fff 0%, #f8fbff 100%); box-shadow: 0 18px 48px rgba(37,99,235,.08); }
.dashboard-collapse-row { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 14px; }
.dashboard-delete-channel-form { margin: 0; }
.dashboard-delete-button, .studio-delete-button { border-color: #fecaca !important; color: #be123c !important; background: #fff1f2 !important; }
.dashboard-recommendation-anchor { scroll-margin-top: 118px; }
.dashboard-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.dashboard-stat-grid > div { padding: 16px; }
.dashboard-stat-grid span { display: block; color: var(--muted); font-size: 12px; font-weight: 900; margin-bottom: 5px; }
.dashboard-stat-grid strong { display: block; color: #050507; font-size: clamp(22px, 3vw, 32px); line-height: 1; letter-spacing: 0; }
.dashboard-motivation-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 16px 0; }
.dashboard-motivation-card { min-height: 138px; border-radius: 20px; padding: 16px; color: #fff; box-shadow: 0 16px 34px rgba(15,23,42,.08); overflow: hidden; position: relative; }
.dashboard-motivation-card:after { content: ""; position: absolute; right: -36px; top: -36px; width: 110px; height: 110px; border-radius: 999px; background: rgba(255,255,255,.18); }
.dashboard-motivation-card span { display: block; position: relative; z-index: 1; font-size: 12px; font-weight: 950; text-transform: uppercase; opacity: .86; }
.dashboard-motivation-card strong { display: block; position: relative; z-index: 1; margin: 6px 0; font-size: clamp(28px, 4vw, 42px); line-height: 1; letter-spacing: 0; }
.dashboard-motivation-card p { position: relative; z-index: 1; margin: 0; font-size: 13px; font-weight: 780; opacity: .92; }
.dashboard-motivation-card.blue { background: linear-gradient(135deg, #2563eb, #0f172a); }
.dashboard-motivation-card.green { background: linear-gradient(135deg, #16a34a, #065f46); }
.dashboard-motivation-card.amber { background: linear-gradient(135deg, #f59e0b, #b45309); }
.dashboard-motivation-card.pink { background: linear-gradient(135deg, #ff0033, #9f1239); }
.dashboard-motivation-card.violet { background: linear-gradient(135deg, #7c3aed, #312e81); }
.dashboard-motivation-card.slate { background: linear-gradient(135deg, #0f172a, #475569); }
.dashboard-main-grid { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr); gap: 16px; margin: 16px 0; }
.dashboard-potential-card { display: grid; grid-template-columns: 154px minmax(0, 1fr); gap: 18px; align-items: center; padding: 20px; }
.dashboard-score-ring { width: 148px; height: 148px; border-radius: 999px; display: grid; place-items: center; align-content: center; background: conic-gradient(#16a34a calc(var(--score) * 1%), #e8eef5 0); color: #050507; position: relative; }
.dashboard-score-ring:before { content: ""; position: absolute; inset: 14px; border-radius: 999px; background: #fff; box-shadow: inset 0 0 0 1px #e5e7eb; }
.dashboard-score-ring strong, .dashboard-score-ring span { position: relative; z-index: 1; }
.dashboard-score-ring strong { font-size: 42px; line-height: 1; }
.dashboard-score-ring span { color: var(--muted); font-weight: 950; }
.dashboard-mini-stats { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.dashboard-mini-stats.stacked { display: grid; }
.dashboard-mini-stats span, .dashboard-ai-head span { border: 1px solid var(--line); border-radius: 999px; background: #f8fafc; color: #334155; padding: 7px 10px; font-size: 12px; font-weight: 900; }
.dashboard-next-card, .dashboard-panel { padding: 20px; }
.dashboard-next-card form { margin-top: 14px; }
.dashboard-next-card button:disabled { opacity: .56; cursor: default; }
.dashboard-next-preview { margin: 10px 0 12px; border: 1px solid #bbf7d0; border-radius: 16px; padding: 12px; background: #ecfdf5; color: #14532d; font-weight: 950; }
.dashboard-analysis-drawer { margin: 16px 0; overflow: hidden; }
.dashboard-analysis-drawer summary { cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; list-style: none; }
.dashboard-analysis-drawer summary::-webkit-details-marker { display: none; }
.dashboard-analysis-drawer summary strong { color: #050507; font-size: 18px; }
.dashboard-analysis-drawer summary span { color: var(--muted); font-size: 13px; font-weight: 800; max-width: 560px; }
.dashboard-analysis-drawer summary:after { content: "+"; display: grid; place-items: center; width: 34px; height: 34px; flex: 0 0 34px; border-radius: 999px; background: var(--primary); color: #fff; font-size: 22px; font-weight: 900; }
.dashboard-analysis-drawer[open] summary:after { content: "-"; }
.dashboard-analysis-frame { border-top: 1px solid var(--line); background: #f8fafc; padding: 12px; }
.dashboard-analysis-frame iframe { display: block; width: 100%; min-height: 760px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.dashboard-native-analysis { border-color: #bfdbfe; background: linear-gradient(135deg, #fff 0%, #f8fbff 46%, #fff7ed 100%); box-shadow: 0 24px 70px rgba(37,99,235,.12); }
.dashboard-native-analysis summary { background: rgba(255,255,255,.72); }
.dashboard-analysis-body { display: grid; gap: 18px; padding: 18px; border-top: 1px solid var(--line); }
.dashboard-analysis-hero { display: grid; grid-template-columns: minmax(0, 1fr) 190px; gap: 18px; align-items: stretch; }
.dashboard-analysis-hero > div:first-child { padding: 22px; border-radius: 20px; background: #fff; border: 1px solid #dbeafe; }
.dashboard-analysis-hero h2 { margin: 0 0 8px; font-size: clamp(26px, 3.6vw, 44px); line-height: 1.05; }
.dashboard-analysis-hero p { margin: 0; color: #334155; max-width: 820px; }
.dashboard-analysis-score { display: grid; place-items: center; align-content: center; gap: 6px; min-height: 180px; border-radius: 22px; color: #fff; background: conic-gradient(from 210deg, #ff0033, #2563eb, #16a34a, #ff0033); box-shadow: 0 22px 46px rgba(255,0,51,.18); text-align: center; }
.dashboard-analysis-score span, .dashboard-analysis-score em { font-size: 12px; font-weight: 950; text-transform: uppercase; opacity: .88; font-style: normal; }
.dashboard-analysis-score strong { font-size: 62px; line-height: 1; letter-spacing: 0; }
.dashboard-analysis-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.dashboard-analysis-kpis article { border-radius: 18px; padding: 16px; background: #fff; border: 1px solid #dbeafe; box-shadow: 0 14px 32px rgba(15,23,42,.05); }
.dashboard-analysis-kpis span { display: block; color: #64748b; font-size: 12px; font-weight: 950; text-transform: uppercase; }
.dashboard-analysis-kpis strong { display: block; margin: 6px 0; color: #050507; font-size: clamp(24px, 3vw, 36px); line-height: 1; }
.dashboard-analysis-kpis p { margin: 0; color: #334155; font-size: 13px; font-weight: 760; }
.dashboard-analysis-charts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.dashboard-analysis-card { display: grid; gap: 14px; padding: 18px; border-radius: 22px; background: #fff; border: 1px solid #dbeafe; box-shadow: 0 16px 36px rgba(15,23,42,.06); }
.dashboard-analysis-card-wide { grid-column: 1 / -1; }
.dashboard-analysis-card h3, .dashboard-top-videos h3 { margin: 0 0 4px; font-size: 22px; }
.dashboard-analysis-card p, .dashboard-top-videos p { margin: 0; color: #334155; }
.dashboard-bar-chart { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(54px, 1fr); align-items: end; gap: 10px; min-height: 220px; overflow-x: auto; padding: 8px 2px 2px; }
.dashboard-bar-item { display: grid; grid-template-rows: 1fr auto auto; gap: 7px; min-height: 210px; text-align: center; color: #64748b; font-size: 11px; font-weight: 900; }
.dashboard-bar-item i { display: flex; align-items: end; justify-content: center; min-height: 128px; border-radius: 16px; background: #f1f5f9; overflow: hidden; }
.dashboard-bar-item b { display: block; width: 100%; height: var(--h); min-height: 8px; border-radius: 16px 16px 4px 4px; background: linear-gradient(180deg, #2563eb, #ff0033); box-shadow: inset 0 18px 30px rgba(255,255,255,.16); }
.dashboard-bar-chart.uploads .dashboard-bar-item b { background: linear-gradient(180deg, #f59e0b, #ff0033); }
.dashboard-bar-chart.subs .dashboard-bar-item b { background: linear-gradient(180deg, #16a34a, #2563eb); }
.dashboard-bar-item strong { color: #050507; font-size: 12px; line-height: 1; }
.dashboard-bar-item span { line-height: 1.1; }
.dashboard-top-videos { display: grid; gap: 14px; padding: 18px; border-radius: 22px; background: #fff; border: 1px solid #dbeafe; box-shadow: 0 16px 36px rgba(15,23,42,.06); }
.dashboard-top-videos-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; }
.dashboard-top-videos-head > span { border-radius: 999px; padding: 8px 11px; background: #ecfdf5; color: #047857; border: 1px solid #bbf7d0; font-size: 12px; font-weight: 950; white-space: nowrap; }
.dashboard-top-video-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.dashboard-top-video-grid a { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; align-items: center; padding: 10px; border-radius: 16px; background: #f8fafc; border: 1px solid #e2e8f0; }
.dashboard-top-video-grid img { width: 150px; aspect-ratio: 16/9; object-fit: cover; border-radius: 12px; background: #e2e8f0; }
.dashboard-top-video-grid strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: #050507; }
.dashboard-top-video-grid small { color: #64748b; font-weight: 850; }
.dashboard-chart { margin-top: 18px; }
.dashboard-projection { display: grid; gap: 9px; margin-top: 14px; }
.dashboard-projection + .dashboard-projection { margin-top: 20px; }
.dashboard-projection > strong { color: #050507; font-size: 14px; }
.dashboard-projection-row { display: grid; grid-template-columns: 74px minmax(0, 1fr) 70px; gap: 10px; align-items: center; color: var(--muted); font-size: 12px; font-weight: 900; }
.dashboard-projection-row i { height: 10px; border-radius: 999px; background: #eef2f7; overflow: hidden; }
.dashboard-projection-row b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #2563eb, #16a34a); }
.dashboard-projection-row.likely b { background: linear-gradient(90deg, var(--primary), #2563eb); }
.dashboard-projection-row.high b { background: linear-gradient(90deg, #f59e0b, var(--primary)); }
.dashboard-projection-row em { color: #050507; font-style: normal; text-align: right; }
.dashboard-potential-graph { margin-top: 14px; border-radius: 18px; padding: 16px; background: linear-gradient(135deg, #f8fafc 0%, #fff7ed 100%); border: 1px solid #e2e8f0; }
.dashboard-potential-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 14px; }
.dashboard-potential-head strong { display: block; color: #050507; font-size: 16px; }
.dashboard-potential-head p { margin: 4px 0 0; color: #475569; font-size: 12px; font-weight: 750; }
.dashboard-potential-tabs { display: inline-flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.dashboard-potential-tabs button { width: auto; min-height: 30px; border: 1px solid #dbeafe; border-radius: 999px; padding: 6px 10px; background: #fff; color: #1e3a8a; font-size: 12px; font-weight: 950; cursor: pointer; white-space: nowrap; }
.dashboard-potential-tabs button.active { border-color: #2563eb; background: #2563eb; color: #fff; box-shadow: 0 10px 24px rgba(37,99,235,.18); }
.dashboard-potential-columns { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: end; min-height: 230px; }
.dashboard-potential-column { display: grid; grid-template-rows: 1fr auto auto auto; gap: 7px; min-height: 220px; text-align: center; }
.dashboard-potential-column i { display: flex; align-items: end; min-height: 130px; border-radius: 18px; overflow: hidden; background: rgba(255,255,255,.72); border: 1px solid rgba(148,163,184,.28); }
.dashboard-potential-column b { display: block; width: 100%; height: var(--h); min-height: 14px; border-radius: 18px 18px 4px 4px; background: linear-gradient(180deg, #2563eb, #0f172a); box-shadow: inset 0 18px 30px rgba(255,255,255,.15); }
.dashboard-potential-column.likely b { background: linear-gradient(180deg, #ff0033, #2563eb); }
.dashboard-potential-column.high b { background: linear-gradient(180deg, #f59e0b, #ff0033); }
.dashboard-potential-column span { color: #64748b; font-size: 12px; font-weight: 950; text-transform: uppercase; }
.dashboard-potential-column strong { color: #050507; font-size: 14px; line-height: 1.1; }
.dashboard-potential-column em { color: #047857; font-style: normal; font-size: 12px; font-weight: 950; }
.dashboard-ai-card { padding: 22px; margin: 22px 0; border-color: #fecdd3; background: linear-gradient(135deg, #fff 0%, #fff7ed 45%, #eef6ff 100%); box-shadow: 0 22px 60px rgba(255,0,51,.1); }
.dashboard-ai-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; margin-bottom: 18px; }
.dashboard-ai-head p { margin: 6px 0 0; max-width: 820px; color: #334155; }
.dashboard-ai-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .85fr); gap: 18px; }
.dashboard-ai-grid p, .dashboard-panel p { color: #334155; }
.dashboard-ai-card textarea { min-height: 94px; resize: vertical; margin: 4px 0 9px; background: #f8fafc; }
.dashboard-thumb-text { display: inline-flex; margin: 0 0 8px; border-radius: 999px; border: 1px solid #fecdd3; background: #fff1f2; color: #9f001f !important; padding: 7px 10px; font-weight: 950; }
.dashboard-thumbnail-generator { display: grid; gap: 10px; margin-top: 10px; border: 1px solid #dbeafe; border-radius: 18px; background: rgba(255,255,255,.74); padding: 12px; }
.dashboard-thumbnail-generator > span { color: #475569; font-size: 12px; font-weight: 950; }
.dashboard-thumbnail-button { justify-self: start; background: linear-gradient(135deg, #2563eb, #ff0033); box-shadow: 0 14px 32px rgba(37,99,235,.16); }
.dashboard-thumbnail-status { margin: 0; border-radius: 14px; border: 1px solid #bbf7d0; background: #ecfdf5; color: #14532d; padding: 10px 12px; font-size: 13px; font-weight: 900; }
.dashboard-thumbnail-status.error { border-color: #fecaca; background: #fff1f2; color: #be123c; }
.dashboard-thumbnail-ref { display: block; margin-top: 5px; color: #64748b; font-size: 11px; font-weight: 800; }
.dashboard-thumbnail-result { display: grid; gap: 10px; }
.dashboard-thumbnail-result img { width: 100%; aspect-ratio: 16 / 9; object-fit: contain; border-radius: 16px; border: 1px solid #cbd5e1; box-shadow: 0 18px 44px rgba(15,23,42,.12); background: #050507; }
.dashboard-thumbnail-download { justify-self: start; width: auto !important; }
.dashboard-thumbnail-result details { border: 1px solid var(--line); border-radius: 14px; background: #f8fafc; padding: 10px 12px; }
.dashboard-thumbnail-result summary { cursor: pointer; font-weight: 950; color: #1e3a8a; }
.dashboard-thumbnail-result p, .dashboard-thumbnail-prompt-used { white-space: pre-wrap; margin: 8px 0 0; font-size: 12px; color: #334155; }
.dashboard-thumbnail-prompt-used { max-height: 260px; overflow: auto; font-family: inherit; line-height: 1.45; }
.studio-dashboard { display: grid; gap: 16px; margin: 18px 0; }
.studio-connect-card, .studio-head, .studio-empty, .studio-ai-report, .studio-video-card, .studio-kpi-grid article {
  background: #fff;
  border: 1px solid #bfdbfe;
  border-radius: 22px;
  box-shadow: 0 18px 48px rgba(37,99,235,.08);
}
.studio-connect-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  padding: 22px;
  background: linear-gradient(135deg, #fff 0%, #eff6ff 52%, #fff1f2 100%);
}
.studio-connect-card h2, .studio-head h2 { margin: 0 0 8px; font-size: clamp(24px, 3vw, 36px); line-height: 1.05; }
.studio-connect-card p, .studio-head p, .studio-empty p { margin: 0 0 10px; color: #334155; }
.studio-connect-card small, .studio-head small { display: block; color: #475569; font-weight: 850; }
.studio-config-warning { border: 1px solid #fed7aa; border-radius: 999px; background: #fff7ed; color: #9a3412; padding: 10px 12px; font-size: 12px; font-weight: 950; }
.studio-head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 18px; align-items: center; padding: 20px; }
.studio-actions { display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-end; }
.studio-actions form { margin: 0; }
.studio-actions .button { width: auto; white-space: nowrap; }
.studio-status { border: 1px solid #bbf7d0; border-radius: 16px; background: #ecfdf5; color: #14532d; padding: 12px 14px; font-weight: 900; }
.studio-status.error { border-color: #fecaca; background: #fff1f2; color: #be123c; }
.studio-reach-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  border: 1px solid #bfdbfe;
  border-radius: 16px;
  background: linear-gradient(135deg, #eff6ff, #fff);
  padding: 12px 14px;
  color: #1e3a8a;
  box-shadow: 0 12px 28px rgba(37,99,235,.06);
}
.studio-reach-status strong { color: #0f172a; font-size: 13px; font-weight: 1000; text-transform: uppercase; letter-spacing: .04em; }
.studio-reach-status span { color: #334155; font-size: 13px; font-weight: 850; line-height: 1.35; }
.studio-reach-status.imported { border-color: #bbf7d0; background: linear-gradient(135deg, #ecfdf5, #fff); }
.studio-reach-status.imported strong { color: #047857; }
.studio-reach-status.unavailable,
.studio-reach-status.error { border-color: #fed7aa; background: linear-gradient(135deg, #fff7ed, #fff); }
.studio-reach-status.unavailable strong,
.studio-reach-status.error strong { color: #9a3412; }
.studio-empty { padding: 20px; background: #f8fafc; }
.studio-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.studio-kpi-grid article { padding: 16px; min-height: 108px; background: linear-gradient(180deg, #fff 0%, #f8fbff 100%); }
.studio-kpi-grid span { display: block; color: #64748b; font-size: 12px; font-weight: 950; text-transform: uppercase; }
.studio-kpi-grid strong { display: block; margin-top: 6px; color: #050507; font-size: clamp(24px, 3vw, 34px); line-height: 1; }
.studio-kpi-grid small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 7px; color: #64748b; font-size: 12px; font-weight: 850; }
.studio-ai-report { padding: 20px; background: linear-gradient(135deg, #fff 0%, #fff7ed 52%, #eef6ff 100%); border-color: #fecdd3; }
.studio-ai-report h3 { margin: 0; font-size: clamp(22px, 3vw, 32px); line-height: 1.1; }
.studio-ai-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.studio-ai-columns article { border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.8); padding: 14px; }
.studio-ai-columns h4, .studio-section-title { margin: 0 0 10px; color: #050507; }
.studio-ai-columns p { margin: 0 0 10px; color: #334155; font-weight: 760; }
.studio-video-grid { display: grid; gap: 12px; }
.studio-video-card { display: grid; grid-template-columns: minmax(320px, 42%) minmax(0, 1fr); gap: 18px; padding: 14px; background: #fff; align-items: start; }
.studio-video-card > img { width: 100%; aspect-ratio: 16 / 9; object-fit: contain; border-radius: 18px; background: #050507; box-shadow: 0 18px 42px rgba(15, 23, 42, .14); }
.studio-video-title-line { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.studio-video-title-line h4 { margin: 0; color: #050507; font-size: 18px; line-height: 1.15; }
.studio-badge { flex: 0 0 auto; border-radius: 999px; padding: 7px 9px; font-size: 11px; font-weight: 950; text-transform: uppercase; border: 1px solid #e2e8f0; background: #f8fafc; color: #334155; }
.studio-badge.winner { border-color: #bbf7d0; background: #ecfdf5; color: #047857; }
.studio-badge.warning { border-color: #fed7aa; background: #fff7ed; color: #9a3412; }
.studio-badge.danger { border-color: #fecaca; background: #fff1f2; color: #be123c; }
.studio-video-metrics { display: flex; flex-wrap: wrap; gap: 7px; margin: 9px 0; }
.studio-video-metrics span { border: 1px solid var(--line); border-radius: 999px; background: #f8fafc; color: #334155; padding: 6px 9px; font-size: 12px; font-weight: 900; }
.studio-section-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 14px; margin-top: 4px; }
.studio-section-heading p { margin: 0 0 10px; color: #64748b; font-weight: 750; max-width: 520px; }
.studio-like-row { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 10px; border: 1px solid #fecdd3; border-radius: 16px; background: linear-gradient(135deg, #fff7f8, #fff); padding: 7px 10px 7px 7px; box-shadow: 0 8px 20px rgba(255, 0, 51, .06); }
.studio-like-thumbnail { --like-fill: 0%; position: relative; display: grid; place-items: center; width: 76px; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background: linear-gradient(90deg, #e2e8f0, #f8fafc); border: 1px solid #e2e8f0; box-shadow: inset 0 0 0 1px rgba(255,255,255,.55); }
.studio-like-thumbnail:before { content: ""; position: absolute; inset: 0 auto 0 0; width: var(--like-fill); background: linear-gradient(135deg, #ff0033, #be123c); }
.studio-like-thumbnail svg { position: relative; z-index: 1; width: 27px; height: 27px; color: #fff; fill: currentColor; filter: drop-shadow(0 2px 5px rgba(0,0,0,.32)); }
.studio-like-row strong { display: block; color: #050507; line-height: 1.05; }
.studio-like-row small { display: block; color: #64748b; font-size: 11px; font-weight: 850; }
.studio-video-card p { margin: 0 0 8px; color: #334155; }
.studio-video-card strong { color: #050507; }
.studio-video-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.studio-video-actions details { border: 1px solid #fecdd3; background: #fff; border-radius: 14px; padding: 0; overflow: hidden; }
.studio-video-actions summary { cursor: pointer; list-style: none; padding: 9px 12px; color: #ff0033; font-size: 12px; font-weight: 1000; }
.studio-video-actions summary::-webkit-details-marker { display: none; }
.studio-video-actions details[open] { flex-basis: min(100%, 520px); background: #fff7f8; }
.studio-video-actions details p { padding: 0 12px 12px; margin: 0; color: #334155; font-size: 13px; font-weight: 750; }
.studio-pagination { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; margin-top: 10px; border: 1px solid #bfdbfe; border-radius: 18px; padding: 12px; background: #fff; }
.studio-pagination span { color: #334155; font-weight: 950; }
.impactube-loader-active { overflow: hidden; }
.impactube-loader-overlay { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 24px; background: linear-gradient(135deg, rgba(255,0,51,.24), transparent 34%), linear-gradient(315deg, rgba(37,99,235,.22), transparent 38%), rgba(5,5,7,.82); backdrop-filter: blur(10px); }
.impactube-loader-overlay:before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(135deg, rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(45deg, rgba(37,99,235,.07) 1px, transparent 1px), repeating-linear-gradient(90deg, rgba(255,0,51,.035) 0 1px, transparent 1px 18px); background-size: 42px 42px, 42px 42px, 96px 96px; opacity: .55; mix-blend-mode: screen; animation: impactubeGrid 9s linear infinite; }
.impactube-loader-overlay:after { content: ""; position: absolute; inset: 0; pointer-events: none; background: repeating-linear-gradient(135deg, transparent 0 22px, rgba(255,255,255,.035) 22px 23px, transparent 23px 46px); opacity: .42; animation: impactubePatternPulse 4.5s ease-in-out infinite; }
.impactube-loader-card { position: relative; z-index: 1; width: min(560px, 100%); border: 1px solid rgba(255,255,255,.18); border-radius: 24px; padding: 28px; color: #fff; background: linear-gradient(145deg, rgba(15,23,42,.92), rgba(9,9,13,.94) 58%, rgba(127,0,32,.72)); box-shadow: 0 32px 90px rgba(0,0,0,.42), inset 0 0 0 1px rgba(255,255,255,.06); overflow: hidden; }
.impactube-loader-card:before { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(120deg, transparent, rgba(255,255,255,.08), transparent); transform: translateX(-120%); animation: impactubeCardShine 2.8s ease-in-out infinite; }
.impactube-loader-mark { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 14px; margin-bottom: 16px; background: linear-gradient(135deg, #ff0033, #2563eb); color: #fff; font-weight: 1000; box-shadow: 0 16px 40px rgba(255,0,51,.32); }
.impactube-loader-kicker { margin: 0 0 7px; color: #fda4af; font-size: 12px; font-weight: 1000; letter-spacing: .08em; text-transform: uppercase; }
.impactube-loader-card h2 { margin: 0; color: #fff; font-size: clamp(28px, 5vw, 42px); line-height: 1.04; }
.impactube-loader-message { min-height: 48px; margin: 14px 0 22px; color: #dbeafe; font-size: 16px; font-weight: 850; line-height: 1.45; }
.impactube-loader-ellipsis { display: inline-block; min-width: 1.6em; color: #fff; }
.impactube-loader-ellipsis:after { content: ""; animation: impactubeEllipsis 1.15s steps(4, end) infinite; }
.impactube-loader-track { height: 12px; border-radius: 999px; overflow: hidden; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.12); }
.impactube-loader-track span { display: block; width: 42%; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #ff0033, #2563eb, #16a34a); box-shadow: 0 0 26px rgba(37,99,235,.7); animation: impactubeProgress 1.45s ease-in-out infinite; }
.impactube-loader-dots { display: flex; gap: 7px; margin-top: 18px; }
.impactube-loader-dots i { width: 8px; height: 8px; border-radius: 999px; background: #fff; opacity: .35; animation: impactubeDot 1s ease-in-out infinite; }
.impactube-loader-dots i:nth-child(2) { animation-delay: .16s; }
.impactube-loader-dots i:nth-child(3) { animation-delay: .32s; }
@keyframes impactubeProgress { 0% { transform: translateX(-105%); } 50% { transform: translateX(70%); } 100% { transform: translateX(245%); } }
@keyframes impactubeGrid { from { background-position: 0 0, 0 0, 0 0; } to { background-position: 42px 42px, -42px 42px, 96px 0; } }
@keyframes impactubePatternPulse { 0%, 100% { opacity: .24; transform: scale(1); } 50% { opacity: .48; transform: scale(1.015); } }
@keyframes impactubeEllipsis { 0% { content: ""; } 25% { content: "."; } 50% { content: ".."; } 75%, 100% { content: "..."; } }
@keyframes impactubeCardShine { 0% { transform: translateX(-120%); } 45%, 100% { transform: translateX(120%); } }
@keyframes impactubeDot { 0%, 100% { transform: translateY(0); opacity: .32; } 50% { transform: translateY(-5px); opacity: .95; } }
.dashboard-panel.flat { box-shadow: none; background: #f8fafc; }
.dashboard-tool-heading { margin: 14px 0 0; color: #050507; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; }
.dashboard-tool-list { display: grid; gap: 12px; margin-top: 14px; }
.dashboard-tool-card { display: grid; gap: 8px; padding: 14px; border: 1px solid #dbeafe; border-radius: 16px; background: linear-gradient(135deg, #fff 0%, #eff6ff 100%); box-shadow: 0 12px 28px rgba(37,99,235,.08); }
.dashboard-tool-card span { width: max-content; max-width: 100%; border-radius: 999px; border: 1px solid #bfdbfe; background: #dbeafe; color: #1e3a8a; padding: 5px 8px; font-size: 11px; font-weight: 1000; text-transform: uppercase; }
.dashboard-tool-card strong { color: #050507; font-size: 18px; line-height: 1.15; }
.dashboard-tool-card p { margin: 0; color: #334155; font-size: 13px; font-weight: 760; }
.dashboard-tool-card .button { justify-self: start; width: auto; margin-top: 4px; }
.dashboard-steps { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.dashboard-steps span { border-radius: 14px; background: #ecfdf5; border: 1px solid #bbf7d0; color: #166534; padding: 10px 12px; font-size: 13px; font-weight: 850; }
.dashboard-video-list { display: grid; gap: 10px; margin-top: 12px; }
.dashboard-video-list a { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 12px; align-items: center; border: 1px solid var(--line); border-radius: 16px; padding: 10px; background: #fffafa; }
.dashboard-video-list img { width: 150px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 12px; background: #e2e8f0; }
.dashboard-video-list strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: #050507; }
.dashboard-video-list small { color: var(--muted); font-weight: 800; }
@media (max-width: 1050px) {
  .dashboard-hero-inner, .dashboard-main-grid, .dashboard-ai-grid { grid-template-columns: 1fr; }
  .dashboard-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-motivation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .studio-head, .studio-connect-card, .studio-ai-columns { grid-template-columns: 1fr; }
  .studio-actions { justify-content: flex-start; }
  .studio-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dashboard-analysis-hero, .dashboard-analysis-kpis, .dashboard-analysis-charts, .dashboard-top-video-grid { grid-template-columns: 1fr; }
  .dashboard-analysis-card-wide { grid-column: auto; }
}
@media (max-width: 620px) {
  .dashboard-hero { padding-top: 30px; }
  .dashboard-channel-form, .dashboard-empty, .dashboard-channel-head, .dashboard-potential-card, .dashboard-next-card, .dashboard-panel, .dashboard-ai-card, .dashboard-stat-grid > div, .dashboard-analysis-drawer, .dashboard-analysis-card, .dashboard-top-videos, .studio-connect-card, .studio-head, .studio-empty, .studio-ai-report, .studio-video-card, .studio-kpi-grid article { border-radius: 16px; }
  .dashboard-channel-form div, .dashboard-channel-head, .dashboard-potential-card, .dashboard-video-list a, .dashboard-top-video-grid a, .studio-video-card { grid-template-columns: 1fr; }
  .dashboard-channel-head .button, .dashboard-channel-form button, .dashboard-ai-card .button, .studio-actions .button, .studio-connect-card .button { width: 100%; }
  .dashboard-collapse-row { flex-direction: column; align-items: stretch; }
  .dashboard-delete-channel-form .button { width: 100%; }
  .dashboard-channel-drawer > summary.dashboard-channel-head .dashboard-open-button { justify-self: stretch; text-align: center; }
  .dashboard-score-ring { width: 132px; height: 132px; }
  .dashboard-stat-grid, .dashboard-motivation-grid, .studio-kpi-grid { grid-template-columns: 1fr; }
  .studio-reach-status { flex-direction: column; align-items: flex-start; }
  .studio-video-card img { width: 100%; }
  .studio-video-title-line { flex-direction: column; }
  .studio-section-heading { flex-direction: column; align-items: flex-start; }
  .studio-pagination .button { width: 100%; }
  .dashboard-ai-head { flex-direction: column; }
  .dashboard-potential-head { flex-direction: column; }
  .dashboard-potential-tabs { justify-content: flex-start; }
  .impactube-loader-overlay { padding: 14px; }
  .impactube-loader-card { border-radius: 18px; padding: 20px; }
  .impactube-loader-message { min-height: 70px; font-size: 14px; }
  .pricing-card-head { padding-right: 0; }
  .pricing-ribbon { position: static; justify-self: start; }
  .dashboard-analysis-drawer summary { align-items: flex-start; flex-direction: column; }
  .dashboard-analysis-frame iframe { min-height: 620px; }
  .dashboard-analysis-body { padding: 12px; }
  .dashboard-analysis-score { min-height: 150px; }
  .dashboard-potential-columns { gap: 8px; }
  .dashboard-potential-column strong { font-size: 12px; }
  .dashboard-video-list img, .dashboard-top-video-grid img { width: 100%; }
}

.niche-finder-page .result-header { align-items: stretch; }
.niche-limit-card { min-width: 190px; align-self: flex-end; border: 1px solid var(--line); border-radius: 18px; background: #fff; padding: 14px 16px; box-shadow: 0 14px 34px rgba(120,0,20,.06); }
.niche-limit-card strong { display: block; color: var(--primary); font-size: 12px; letter-spacing: .08em; }
.niche-limit-card span { display: block; color: var(--muted); font-weight: 850; font-size: 13px; }
.niche-search-card { width: 100%; margin-left: 0; margin-right: 0; }
.niche-filter-grid label { display: grid; gap: 6px; align-items: start; }
.niche-filter-grid input { border: 1px solid var(--line); border-radius: 999px; padding: 9px 12px; min-height: 39px; width: 128px; font-weight: 800; }
.niche-filter-grid input:disabled { background: #f8fafc; color: #94a3b8; cursor: not-allowed; }
.niche-search-actions { margin-top: 14px; }
.niche-help-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 14px; }
.niche-help-strip span { border: 1px solid var(--line); border-radius: 14px; background: #fff; padding: 10px 12px; color: var(--muted); font-size: 12px; font-weight: 800; }
.niche-help-strip strong { display: block; color: #111827; margin-bottom: 2px; }
.niche-channel-list { display: grid; gap: 14px; margin-top: 22px; min-width: 0; }
.niche-channel-row { display: grid; gap: 14px; min-width: 0; max-width: 100%; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 22px; box-shadow: 0 16px 44px rgba(120,0,20,.06); padding: 16px; }
.niche-channel-top { display: grid; grid-template-columns: minmax(0, 1fr) minmax(170px, 220px) minmax(340px, 1.25fr) minmax(96px, 110px); gap: 16px; align-items: center; min-width: 0; }
.niche-channel-main { display: flex; gap: 14px; min-width: 0; align-items: center; }
.niche-channel-main img, .niche-avatar { width: 74px; height: 74px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; }
.niche-avatar { display: grid; place-items: center; background: var(--primary); color: #fff; font-weight: 950; }
.niche-channel-copy { min-width: 0; }
.niche-channel-title-line { display: flex; align-items: flex-start; gap: 10px; }
.niche-channel-title-line h3 { margin: 0 0 4px; overflow-wrap: anywhere; }
.niche-score-pill { margin-left: auto; min-width: 54px; border-radius: 999px; padding: 6px 9px; background: var(--primary); color: #fff; font-weight: 950; text-align: center; }
.niche-channel-insight { min-width: 0; border: 1px solid #fecdd3; border-radius: 16px; background: linear-gradient(180deg, #fffafa, #fff); padding: 12px; }
.niche-channel-insight strong { display: block; color: var(--primary); font-size: 28px; line-height: 1; }
.niche-channel-insight span { display: block; margin-top: 3px; color: #050507; font-size: 12px; font-weight: 950; }
.niche-channel-insight p { margin: 7px 0 0; color: #475569; font-size: 12px; font-weight: 750; line-height: 1.35; }
.niche-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.niche-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; min-width: 0; }
.niche-metrics div { min-width: 0; border: 1px solid var(--line); border-radius: 14px; background: #fffafa; padding: 9px 10px; }
.niche-metrics strong { display: block; font-size: 14px; color: #050507; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.niche-metrics span { display: block; color: var(--muted); font-size: 11px; font-weight: 850; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.niche-actions { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.niche-actions .button, .niche-actions button { min-height: 40px; padding: 9px 12px; border-radius: 12px; font-size: 12px; width: 100%; }
.niche-channel-outliers { border-top: 1px solid var(--line); padding-top: 12px; min-width: 0; max-width: 100%; }
.niche-channel-outliers-head { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.niche-channel-outliers-head strong { font-size: 13px; }
.niche-channel-outliers-head span { color: var(--muted); font-size: 12px; font-weight: 850; }
.niche-carousel-wrap { position: relative; min-width: 0; max-width: 100%; }
.niche-outlier-strip { display: flex; gap: 10px; width: 100%; max-width: 100%; overflow-x: auto; overflow-y: hidden; scroll-behavior: smooth; scroll-snap-type: x mandatory; padding: 1px 2px 8px; scrollbar-width: thin; }
.niche-outlier-mini { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 10px; align-items: center; flex: 0 0 clamp(280px, 31%, 420px); min-width: 0; max-width: 420px; color: inherit; border: 1px solid var(--line); border-radius: 14px; background: #fffafa; padding: 8px; scroll-snap-align: start; }
.niche-outlier-mini:hover { border-color: #ff9bae; background: #fff5f7; }
.niche-outlier-mini img { width: 112px; aspect-ratio: 16 / 9; object-fit: cover; border-radius: 10px; background: #f1f5f9; }
.niche-outlier-mini strong { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 12px; line-height: 1.25; }
.niche-outlier-mini em { display: block; margin-top: 5px; color: var(--muted); font-size: 11px; font-style: normal; font-weight: 850; }
.niche-carousel-arrow { position: absolute; top: 50%; z-index: 2; transform: translateY(-50%); width: 34px; height: 44px; border-radius: 999px; border: 1px solid #fecdd3; background: rgba(255,255,255,.94); color: var(--primary); font-size: 26px; font-weight: 950; box-shadow: 0 10px 28px rgba(120,0,20,.14); }
.niche-carousel-prev { left: 4px; }
.niche-carousel-next { right: 4px; }
.niche-carousel-arrow[hidden] { display: none; }
.niche-action-status, .niche-ai-result { grid-column: 1 / -1; border-radius: 14px; padding: 12px; font-weight: 850; }
.niche-action-status { border: 1px solid #bfdbfe; background: #eff6ff; color: #1d4ed8; }
.niche-action-status.error { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.niche-ai-result { border: 1px solid #fed7aa; background: #fff7ed; color: #334155; }
.niche-ai-result h4 { margin: 0 0 7px; color: #111827; }
.niche-ai-result p { margin: 0 0 8px; }
.niche-ai-result ul { margin: 8px 0 0; padding-left: 18px; }
.niche-channel-virals { border-top: 1px solid var(--line); padding-top: 12px; }
.niche-panel-loading, .niche-panel-empty { border: 1px solid var(--line); border-radius: 14px; background: #fffafa; padding: 12px; color: var(--muted); font-weight: 850; }
.niche-video-grid .card-actions { align-items: center; }
.niche-thumbnail-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin: 8px 0 18px; }
.niche-thumbnail-head h2 { margin: 0 0 6px; }
.niche-thumbnail-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 18px; }
.niche-thumbnail-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--line); border-radius: 18px; box-shadow: 0 16px 44px rgba(120,0,20,.06); }
.niche-thumbnail-image { position: relative; display: block; background: #f1f5f9; }
.niche-thumbnail-image img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.niche-thumbnail-image span { position: absolute; left: 10px; top: 10px; border-radius: 999px; padding: 6px 9px; background: var(--primary); color: #fff; font-size: 12px; font-weight: 950; box-shadow: 0 10px 28px rgba(255,0,51,.25); }
.niche-thumbnail-body { padding: 14px; }
.niche-thumbnail-body h3 { margin: 0 0 6px; font-size: 15px; line-height: 1.25; }
.niche-thumbnail-body h3 a { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; color: #050507; }
.niche-thumbnail-body .card-actions { margin-top: 12px; }
.link-button { border: 0; background: transparent; color: var(--primary); padding: 0; border-radius: 0; font: inherit; font-weight: 900; width: auto; }
.link-button:hover { background: transparent; color: var(--primary-dark); }

@media (max-width: 1320px) {
  .niche-channel-top { grid-template-columns: minmax(0, 1fr) minmax(170px, 220px); }
  .niche-metrics, .niche-actions { grid-column: 1 / -1; }
  .niche-actions { flex-direction: row; flex-wrap: wrap; }
  .niche-actions .button, .niche-actions button { width: auto; }
}

@media (max-width: 1080px) {
  .niche-channel-top { grid-template-columns: 1fr; }
  .niche-thumbnail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .niche-actions { flex-direction: row; flex-wrap: wrap; }
  .niche-actions .button, .niche-actions button { width: auto; }
}

@media (max-width: 720px) {
  .niche-finder-page .result-header { flex-direction: column; }
  .niche-limit-card { align-self: stretch; }
  .niche-help-strip { grid-template-columns: 1fr; }
  .niche-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .niche-channel-title-line { flex-direction: column; gap: 6px; }
  .niche-score-pill { margin-left: 0; }
  .niche-thumbnail-grid { grid-template-columns: 1fr; }
  .niche-outlier-mini { grid-template-columns: 96px minmax(0, 1fr); }
  .niche-outlier-mini img { width: 96px; }
  .niche-thumbnail-head { flex-direction: column; align-items: flex-start; }
  .niche-actions .button, .niche-actions button { width: 100%; }
}

/* Niche Finder dashboard redesign */
.niche-finder-app {
  width: min(1600px, calc(100vw - 48px));
  margin: 0 auto;
  padding: 24px 0 64px;
  display: grid;
  grid-template-columns: 252px minmax(0, 1fr);
  gap: 24px;
}
.niche-finder-sidebar {
  position: sticky;
  top: 86px;
  align-self: start;
  max-height: calc(100vh - 108px);
  overflow: auto;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 18px 45px rgba(15,23,42,.06);
  padding: 16px;
}
.niche-sidebar-brand {
  display: grid;
  gap: 2px;
  padding: 8px 10px 18px;
  border-bottom: 1px solid #eef2f7;
  margin-bottom: 14px;
}
.niche-sidebar-brand strong { font-size: 18px; letter-spacing: 0; color: #0f172a; }
.niche-sidebar-brand span { color: var(--primary); font-size: 12px; font-weight: 950; letter-spacing: .08em; text-transform: uppercase; }
.niche-sidebar-logo { display: flex; align-items: center; gap: 10px; }
.niche-sidebar-logo span {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: var(--primary);
  color: #fff;
  font-size: 12px;
  letter-spacing: 0;
}
.niche-sidebar-brand em {
  justify-self: start;
  margin-top: 8px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  padding: 5px 9px;
  color: #0f172a;
  background: #f8fafc;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.niche-sidebar-dashboard {
  display: block;
  margin: 0 0 14px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 10px;
  color: #0f172a;
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}
.niche-sidebar-group { display: grid; gap: 4px; margin-bottom: 16px; }
.niche-sidebar-group > span {
  padding: 0 10px 4px;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.niche-sidebar-group a {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 9px 10px;
  border-radius: 12px;
  color: #334155;
  font-size: 13px;
  font-weight: 900;
}
.niche-sidebar-group a:hover { background: #f8fafc; color: #0f172a; }
.niche-sidebar-group a.active {
  background: #fff1f3;
  color: #0f172a;
  box-shadow: inset 3px 0 0 var(--primary), 0 12px 28px rgba(15,23,42,.06);
}
.niche-sidebar-bottom {
  display: grid;
  gap: 6px;
  margin-top: 18px;
  padding-top: 14px;
  border-top: 1px solid #eef2f7;
}
.niche-sidebar-bottom a { color: #64748b; font-size: 12px; font-weight: 900; padding: 8px 10px; }
.niche-finder-main { min-width: 0; display: grid; gap: 18px; }
.niche-dashboard-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  padding: 8px 0 4px;
}
.niche-dashboard-header h1 { margin: 2px 0 8px; font-size: clamp(34px, 4vw, 56px); line-height: .96; letter-spacing: 0; }
.niche-breadcrumb { margin: 0; color: #64748b; font-size: 12px; font-weight: 900; }
.niche-dashboard-tools { display: flex; align-items: center; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.niche-dashboard-tools .button { min-height: 42px; border-radius: 12px; }
.niche-user-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  background: #0f172a;
  color: #fff;
  font-size: 13px;
  font-weight: 950;
}
.niche-limit-card {
  min-width: 174px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #fff;
  padding: 12px 14px;
  box-shadow: 0 14px 34px rgba(15,23,42,.05);
}
.niche-limit-card strong { color: var(--primary); }
.niche-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  overflow: visible;
  padding: 2px 2px 4px;
}
.niche-presets a {
  flex: 0 0 auto;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  padding: 10px 14px;
  font-size: 13px;
  font-weight: 950;
  box-shadow: 0 8px 22px rgba(15,23,42,.04);
}
.niche-presets a.active { background: var(--primary); border-color: var(--primary); color: #fff; }
.niche-presets a.active:hover { color: #fff; filter: brightness(.96); }
.niche-presets a.locked { color: #64748b; background: #f8fafc; }
.niche-presets small { margin-left: 6px; color: inherit; opacity: .7; font-weight: 950; }
.niche-sort-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  overflow: visible;
  padding: 0 2px 4px;
}
.niche-sort-row a {
  flex: 0 0 auto;
  border: 1px solid #e5e7eb;
  border-radius: 11px;
  background: #f8fafc;
  color: #475569;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 900;
}
.niche-sort-row a:hover { color: #0f172a; background: #fff; border-color: #fecdd3; }
.niche-sort-row a.active { background: var(--primary); border-color: var(--primary); color: #fff; box-shadow: 0 12px 24px rgba(255,0,51,.22); }
.niche-sort-row a.active:hover { color: #fff; filter: brightness(.96); }
.niche-search-panel {
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
  padding: 18px;
}
.niche-search-panel-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 10px;
}
.niche-search-panel-head label { margin: 0; font-size: 14px; font-weight: 950; color: #0f172a; }
.niche-search-panel-head span {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  padding: 6px 10px;
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}
.niche-search-row-wide {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 136px;
  gap: 10px;
}
.niche-search-row-wide input {
  min-height: 56px;
  border-radius: 15px;
  border-color: #e5e7eb;
  background: #fff;
  font-size: 16px;
  padding-inline: 18px;
}
.niche-search-row-wide button { min-height: 56px; border-radius: 15px; }
.niche-filter-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(128px, 1fr));
  gap: 10px;
  align-items: end;
  margin-top: 14px;
}
.niche-filter-grid label {
  gap: 6px;
  color: #475569;
  font-size: 11px;
  font-weight: 950;
}
.niche-filter-grid input,
.niche-filter-grid select {
  width: 100%;
  min-height: 40px;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  background: #fff;
  padding: 8px 10px;
  color: #0f172a;
  font-size: 13px;
  font-weight: 850;
}
.niche-help-strip {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.niche-help-strip span {
  border-color: #e5e7eb;
  border-radius: 14px;
  background: #f8fafc;
}
.niche-results-shell { min-width: 0; }
.niche-plus-banner {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  border: 1px solid #fecdd3;
  border-radius: 18px;
  background: linear-gradient(135deg, #fff, #fff5f7);
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
  padding: 20px;
}
.niche-plus-banner span,
.niche-tracker-lock span,
.niche-plus-unlock span {
  color: var(--primary);
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.niche-plus-banner h2 { margin: 4px 0 6px; font-size: 24px; letter-spacing: 0; }
.niche-plus-banner p { margin: 0; color: #475569; font-weight: 750; }
.niche-plus-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; }
.niche-overview-search {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 132px;
  gap: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
  padding: 14px;
}
.niche-overview-search select,
.niche-overview-search input {
  min-height: 52px;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  padding: 0 14px;
  color: #0f172a;
  font-weight: 850;
}
.niche-overview-search button { min-height: 52px; border-radius: 14px; }
.niche-welcome-card {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr);
  gap: 18px;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
  padding: 20px;
}
.niche-welcome-card h2 { margin: 0 0 8px; font-size: 32px; letter-spacing: 0; }
.niche-welcome-card p { margin: 0; color: #475569; font-weight: 750; }
.niche-overview-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.niche-overview-kpis div {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #f8fafc;
  padding: 12px;
}
.niche-overview-kpis strong { display: block; color: #0f172a; font-size: 22px; line-height: 1; }
.niche-overview-kpis span { display: block; margin-top: 6px; color: #64748b; font-size: 12px; font-weight: 900; }
.niche-overview-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.niche-overview-module {
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
  padding: 16px;
}
.niche-overview-module-wide { grid-column: span 2; }
.niche-module-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.niche-module-head h3 { margin: 0; font-size: 17px; letter-spacing: 0; }
.niche-module-head a { color: var(--primary); font-size: 12px; font-weight: 950; }
.niche-module-list { display: grid; gap: 9px; }
.niche-module-row {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #eef2f7;
  border-radius: 13px;
  background: #f8fafc;
  padding: 9px;
  color: inherit;
}
.niche-module-row img,
.niche-module-avatar {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  object-fit: cover;
  display: grid;
  place-items: center;
  background: #0f172a;
  color: #fff;
  font-weight: 950;
}
.niche-module-avatar.category { border-radius: 12px; background: #fff1f3; color: var(--primary); }
.niche-module-row strong {
  display: block;
  color: #0f172a;
  font-size: 13px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.niche-module-row span { display: block; color: #64748b; font-size: 12px; font-weight: 850; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.niche-module-row em {
  border-radius: 999px;
  background: var(--primary);
  color: #fff;
  padding: 6px 8px;
  font-style: normal;
  font-size: 12px;
  font-weight: 950;
}
.niche-empty-small { margin: 0; color: #64748b; font-size: 13px; font-weight: 850; }
.niche-video-mini-list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.niche-video-mini-list a {
  min-width: 0;
  border: 1px solid #eef2f7;
  border-radius: 14px;
  background: #f8fafc;
  overflow: hidden;
  color: inherit;
}
.niche-video-mini-list img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.niche-video-mini-list span { display: block; padding: 10px; }
.niche-video-mini-list strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: #0f172a;
  font-size: 12px;
  line-height: 1.25;
}
.niche-video-mini-list em { display: block; margin-top: 6px; color: #64748b; font-size: 11px; font-style: normal; font-weight: 850; }
.niche-category-chip-cloud { display: flex; flex-wrap: wrap; gap: 8px; }
.niche-category-chip-cloud a {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #f8fafc;
  color: #0f172a;
  padding: 9px 11px;
  font-size: 12px;
  font-weight: 900;
}
.niche-category-chip-cloud span { margin-left: 7px; color: var(--primary); }
.niche-category-top-videos {
  margin: 14px 0 12px;
  padding-top: 12px;
  border-top: 1px solid #eef2f7;
}
.niche-quality-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 13px 0 12px;
}
.niche-quality-item,
.niche-quality-date {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #f8fafc;
  padding: 6px 8px 6px 10px;
  color: #334155;
  font-size: 12px;
  font-weight: 900;
}
.niche-quality-item b,
.niche-quality-date b {
  color: #475569;
  font-size: 11px;
  font-weight: 950;
}
.niche-quality-item em,
.niche-quality-date em {
  border-radius: 999px;
  padding: 4px 8px;
  font-style: normal;
  font-size: 11px;
  font-weight: 950;
  line-height: 1;
}
.niche-quality-date em {
  background: #fff;
  color: #0f172a;
}
.quality-green {
  background: #dcfce7;
  color: #166534;
}
.quality-yellow {
  background: #fef3c7;
  color: #92400e;
}
.quality-red {
  background: #ffe4e6;
  color: #be123c;
}
.quality-muted {
  background: #e2e8f0;
  color: #475569;
}
.niche-category-top-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 9px;
}
.niche-category-top-head strong {
  color: #0f172a;
  font-size: 13px;
  font-weight: 950;
}
.niche-category-top-head span {
  color: #be123c;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.niche-category-top-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}
.niche-category-video-mini {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #f8fafc;
  padding: 7px;
  color: inherit;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.niche-category-video-mini:hover {
  transform: translateY(-1px);
  border-color: rgba(255,0,51,.24);
  box-shadow: 0 16px 34px rgba(15,23,42,.08);
}
.niche-category-video-mini img {
  width: 86px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 9px;
  background: #0f172a;
}
.niche-category-video-mini span { min-width: 0; }
.niche-category-video-mini strong {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  color: #0f172a;
  font-size: 11px;
  line-height: 1.2;
  font-weight: 950;
}
.niche-category-video-mini em {
  display: block;
  margin-top: 5px;
  color: #64748b;
  font-size: 10px;
  font-style: normal;
  font-weight: 900;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.niche-channel-list { gap: 16px; margin-top: 0; }
.niche-channel-row {
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15,23,42,.055);
  padding: 18px;
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.niche-channel-row:hover {
  border-color: #fecdd3;
  box-shadow: 0 20px 54px rgba(15,23,42,.08);
  transform: translateY(-1px);
}
.niche-channel-top {
  grid-template-columns: minmax(330px, 1.1fr) minmax(190px, .42fr) minmax(140px, 160px);
  gap: 16px;
  align-items: start;
}
.niche-channel-main { align-items: center; }
.niche-channel-main img, .niche-avatar { width: 76px; height: 76px; }
.niche-channel-title-line h3 { font-size: 18px; line-height: 1.18; }
.niche-score-pill { background: var(--primary); }
.niche-channel-copy .muted { margin: 2px 0 0; color: #475569; }
.niche-channel-copy .small {
  margin: 4px 0 0;
  color: #64748b;
  font-weight: 800;
  line-height: 1.35;
}
.niche-channel-insight {
  background: #fff;
  border-color: #e5e7eb;
  min-height: 128px;
}
.niche-channel-insight strong { color: var(--primary); font-size: 32px; }
.niche-actions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 8px;
}
.niche-actions .button,
.niche-actions button {
  width: 100%;
  min-height: 38px;
  border-radius: 11px;
  font-size: 12px;
}
.niche-metrics {
  grid-column: 1 / -1;
  grid-template-columns: repeat(10, minmax(96px, 1fr));
  gap: 9px;
}
.niche-metrics div {
  border-color: #e5e7eb;
  border-radius: 13px;
  background: #f8fafc;
  padding: 10px 11px;
}
.niche-metrics strong { font-size: 15px; color: #0f172a; }
.niche-metrics span { color: #64748b; font-size: 11px; }
.niche-channel-detail {
  border-top: 1px solid #e5e7eb;
  padding-top: 14px;
  display: grid;
  gap: 12px;
  animation: nicheDetailIn .18s ease-out;
}
.niche-channel-detail[hidden] { display: none !important; }
@keyframes nicheDetailIn {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}
.niche-detail-summary {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(240px, .8fr);
  gap: 12px;
  align-items: center;
}
.niche-detail-summary > div:first-child {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #f8fafc;
  padding: 12px 14px;
}
.niche-detail-summary strong { display: block; color: #0f172a; font-size: 13px; margin-bottom: 4px; }
.niche-detail-summary p { margin: 0; color: #475569; font-size: 13px; font-weight: 780; line-height: 1.35; }
.niche-detail-mini-metrics { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.niche-detail-mini-metrics span {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  padding: 8px 10px;
  color: #334155;
  font-size: 12px;
  font-weight: 900;
}
.niche-channel-outliers,
.niche-channel-virals {
  border-top: 0;
  padding-top: 0;
}
.niche-channel-outliers-head strong { font-size: 14px; }
.niche-channel-outliers-head span { color: #475569; }
.niche-carousel-wrap { overflow: visible; }
.niche-outlier-strip {
  gap: 12px;
  scroll-behavior: smooth;
  padding: 2px 38px 8px;
}
.niche-outlier-mini {
  flex-basis: clamp(300px, 31%, 430px);
  border-color: #e5e7eb;
  background: #fff;
  border-radius: 14px;
  box-shadow: 0 8px 20px rgba(15,23,42,.035);
}
.niche-outlier-mini:hover {
  border-color: #fecdd3;
  background: #fff;
}
.niche-carousel-arrow {
  width: 38px;
  height: 38px;
  background: #fff;
  color: var(--primary);
  border-color: #fecdd3;
  line-height: 1;
}
.niche-carousel-prev { left: 0; }
.niche-carousel-next { right: 0; }
.niche-category-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
}
.niche-category-grid .keyword-card {
  border-radius: 18px;
  border-color: #e5e7eb;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15,23,42,.055);
}
.niche-category-grid .keyword-stats {
  display: grid;
  grid-template-columns: repeat(7, minmax(110px, 1fr));
  gap: 8px;
}
.niche-category-grid .keyword-stats span {
  display: grid;
  gap: 2px;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #f8fafc;
  padding: 10px;
  color: #64748b;
  font-size: 11px;
  font-weight: 900;
}
.niche-category-grid .keyword-stats strong { color: #0f172a; font-size: 15px; }
.niche-plus-unlock {
  margin-top: 16px;
  border: 1px solid #fecdd3;
  border-radius: 18px;
  background: #fff5f7;
  padding: 20px;
  text-align: center;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
}
.niche-plus-unlock strong { display: block; margin: 4px 0 6px; color: #0f172a; font-size: 20px; }
.niche-plus-unlock p { margin: 0 auto 14px; max-width: 680px; color: #475569; font-weight: 750; }
.niche-tracker-preview {
  position: relative;
  min-height: 560px;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  background: #fff;
  overflow: hidden;
  box-shadow: 0 18px 46px rgba(15,23,42,.05);
}
.niche-tracker-backdrop { padding: 22px; filter: blur(2px); opacity: .62; pointer-events: none; }
.niche-tracker-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.niche-tracker-grid article {
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #f8fafc;
  padding: 14px;
}
.niche-tracker-card-head { display: flex; gap: 10px; align-items: center; }
.niche-tracker-card-head img,
.niche-tracker-card-head span {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  object-fit: cover;
  display: grid;
  place-items: center;
  background: #0f172a;
  color: #fff;
  font-weight: 950;
}
.niche-tracker-card-head strong { display: block; color: #0f172a; }
.niche-tracker-card-head em { display: block; color: #64748b; font-size: 12px; font-style: normal; font-weight: 850; }
.niche-tracker-grid p { color: #334155; font-weight: 850; line-height: 1.35; }
.niche-tracker-metrics { display: flex; gap: 8px; flex-wrap: wrap; }
.niche-tracker-metrics span { border: 1px solid #e5e7eb; border-radius: 999px; background: #fff; padding: 7px 9px; font-size: 12px; font-weight: 900; }
.niche-tracker-lock {
  position: absolute;
  inset: 0;
  display: grid;
  place-content: center;
  justify-items: center;
  padding: 24px;
  text-align: center;
  background: linear-gradient(180deg, rgba(255,255,255,.62), rgba(255,255,255,.96));
}
.niche-tracker-lock h2 { margin: 6px 0; font-size: 34px; letter-spacing: 0; }
.niche-tracker-lock p { max-width: 520px; color: #475569; font-weight: 780; }
.niche-video-grid {
  display: grid;
  gap: 14px;
}
.niche-video-card {
  display: grid;
  grid-template-columns: 240px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15,23,42,.055);
  padding: 12px;
}
.niche-video-card .thumb { border-radius: 14px; overflow: hidden; }
.niche-video-card .thumb img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; display: block; }
.niche-thumbnail-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.niche-thumbnail-card { border-color: #e5e7eb; box-shadow: 0 16px 40px rgba(15,23,42,.055); }

@media (max-width: 1280px) {
  .niche-finder-app { width: min(100% - 32px, 1440px); grid-template-columns: 220px minmax(0, 1fr); gap: 18px; }
  .niche-filter-grid { grid-template-columns: repeat(4, minmax(128px, 1fr)); }
  .niche-metrics { grid-template-columns: repeat(5, minmax(110px, 1fr)); }
  .niche-thumbnail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .niche-category-grid .keyword-stats { grid-template-columns: repeat(3, minmax(110px, 1fr)); }
  .niche-video-mini-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 980px) {
  .niche-finder-app { grid-template-columns: 1fr; }
  .niche-finder-sidebar {
    position: static;
    max-height: none;
    display: flex;
    align-items: center;
    gap: 10px;
    overflow-x: auto;
    padding: 12px;
  }
  .niche-sidebar-brand { flex: 0 0 170px; border-bottom: 0; margin: 0; padding: 8px 10px; }
  .niche-sidebar-group { display: flex; flex: 0 0 auto; gap: 8px; min-width: 0; margin: 0; }
  .niche-sidebar-group > span { display: none; }
  .niche-sidebar-group a {
    flex: 0 0 auto;
    min-height: 36px;
    border: 1px solid #e5e7eb;
    border-radius: 999px;
    background: #fff;
    white-space: nowrap;
  }
  .niche-dashboard-header { flex-direction: column; }
  .niche-dashboard-tools { justify-content: flex-start; }
  .niche-channel-top { grid-template-columns: 1fr; }
  .niche-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .niche-detail-summary { grid-template-columns: 1fr; }
  .niche-detail-mini-metrics { justify-content: flex-start; }
  .niche-welcome-card { grid-template-columns: 1fr; }
  .niche-overview-grid { grid-template-columns: 1fr; }
  .niche-overview-module-wide { grid-column: auto; }
  .niche-tracker-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .niche-finder-app { width: calc(100vw - 20px); max-width: 100%; padding-top: 12px; }
  .niche-finder-main, .niche-search-panel, .niche-search-row-wide input, .niche-filter-grid label { min-width: 0; max-width: 100%; box-sizing: border-box; }
  .niche-dashboard-header h1 { font-size: 36px; }
  .niche-search-row-wide { grid-template-columns: 1fr; }
  .niche-overview-search { grid-template-columns: 1fr; }
  .niche-plus-banner { flex-direction: column; align-items: flex-start; }
  .niche-filter-grid { grid-template-columns: 1fr 1fr; }
  .niche-help-strip { grid-template-columns: 1fr; }
  .niche-metrics { grid-template-columns: 1fr 1fr; }
  .niche-actions { grid-template-columns: 1fr 1fr; }
  .niche-channel-main { align-items: flex-start; }
  .niche-category-grid, .niche-thumbnail-grid { grid-template-columns: 1fr; }
  .niche-category-grid .keyword-stats { grid-template-columns: 1fr 1fr; }
  .niche-category-top-list { grid-template-columns: 1fr; }
  .niche-overview-kpis { grid-template-columns: 1fr 1fr; }
  .niche-video-mini-list { grid-template-columns: 1fr; }
  .niche-video-card { grid-template-columns: 1fr; }
}

/* Impactube Pro Radar polish */
body:has(.niche-finder-app) {
  background:
    linear-gradient(120deg, rgba(255,0,51,.08) 0%, transparent 28%),
    linear-gradient(240deg, rgba(15,23,42,.08) 0%, transparent 32%),
    linear-gradient(180deg, #fff 0%, #fff7f8 54%, #f8fafc 100%);
}
.nav a.nav-niche-pro {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 11px;
  border: 1px solid transparent;
  border-radius: 999px;
  background:
    linear-gradient(135deg, #080a11 0%, #151827 58%, #250817 100%) padding-box,
    linear-gradient(135deg, rgba(255,0,51,.52), rgba(255,255,255,.14) 45%, rgba(255,0,51,.34)) border-box;
  color: #fff;
  line-height: 1.05;
  white-space: nowrap;
  box-shadow: 0 10px 24px rgba(15,23,42,.14), inset 0 1px 0 rgba(255,255,255,.12);
}
.nav a.nav-niche-pro::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #ff0033;
  box-shadow: 0 0 0 3px rgba(255,0,51,.14), 0 0 14px rgba(255,0,51,.72);
}
.nav a.nav-niche-pro::after {
  content: "RADAR";
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  padding: 2px 6px 1px;
  color: rgba(255,255,255,.78);
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
}
.nav a.nav-niche-pro:hover,
.nav a.nav-niche-pro.active {
  color: #fff;
  transform: translateY(-1px);
  border-color: transparent;
  background:
    linear-gradient(135deg, #080a11 0%, #171827 54%, #34091c 100%) padding-box,
    linear-gradient(120deg, #ff0033, rgba(255,255,255,.56), #ff5b78, #ff0033) border-box;
  box-shadow: 0 14px 30px rgba(255,0,51,.18), inset 0 1px 0 rgba(255,255,255,.18);
}
.nav a.nav-niche-pro.active {
  animation: nicheElectricPulse 1.9s ease-in-out infinite;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.24),
    0 0 0 3px rgba(255,0,51,.12),
    0 0 18px rgba(255,0,51,.44),
    0 14px 30px rgba(255,0,51,.18),
    inset 0 1px 0 rgba(255,255,255,.2);
}
.nav a.nav-niche-pro.active::before {
  animation: nicheRadarDot 1.15s ease-in-out infinite;
}
@keyframes nicheElectricPulse {
  0%, 100% {
    box-shadow:
      0 0 0 1px rgba(255,255,255,.2),
      0 0 0 3px rgba(255,0,51,.1),
      0 0 14px rgba(255,0,51,.38),
      0 14px 30px rgba(255,0,51,.16),
      inset 0 1px 0 rgba(255,255,255,.18);
  }
  52% {
    box-shadow:
      0 0 0 1px rgba(255,255,255,.38),
      0 0 0 4px rgba(255,0,51,.16),
      0 0 22px rgba(255,0,51,.62),
      0 16px 34px rgba(255,0,51,.2),
      inset 0 1px 0 rgba(255,255,255,.24);
  }
}
@keyframes nicheRadarDot {
  0%, 100% { box-shadow: 0 0 0 3px rgba(255,0,51,.14), 0 0 14px rgba(255,0,51,.72); }
  50% { box-shadow: 0 0 0 6px rgba(255,0,51,.07), 0 0 22px rgba(255,255,255,.58); }
}
.nav a.nav-impact-studio {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 8px 12px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: #f8fafc;
  background:
    radial-gradient(circle at 18% 16%, rgba(255,0,51,.62), transparent 30%),
    radial-gradient(circle at 84% 0%, rgba(37,99,235,.68), transparent 35%),
    linear-gradient(135deg, #070a12 0%, #11152b 50%, #27071d 100%) padding-box,
    linear-gradient(120deg, rgba(255,0,51,.74), rgba(96,165,250,.82), rgba(255,0,51,.42)) border-box;
  box-shadow: 0 12px 28px rgba(37,99,235,.16), 0 0 24px rgba(255,0,51,.13), inset 0 1px 0 rgba(255,255,255,.14);
}
.nav a.nav-impact-studio::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #60a5fa;
  box-shadow: 0 0 0 4px rgba(96,165,250,.13), 0 0 18px rgba(96,165,250,.8), 0 0 26px rgba(255,0,51,.5);
}
.nav a.nav-impact-studio::after,
.nav a.nav-impact-studio.nav-active::after {
  content: "AI";
  position: static;
  left: auto;
  right: auto;
  top: auto;
  bottom: auto;
  width: auto;
  height: auto;
  transform: none;
  opacity: 1;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 999px;
  background: rgba(255,255,255,.09);
  color: #dbeafe;
  padding: 2px 6px 1px;
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
  box-shadow: none;
}
.nav a.nav-impact-studio:hover,
.nav a.nav-impact-studio.nav-active {
  color: #fff;
  transform: translateY(-1px);
  border-color: transparent;
  background:
    radial-gradient(circle at 16% 20%, rgba(255,0,51,.72), transparent 32%),
    radial-gradient(circle at 84% 4%, rgba(59,130,246,.78), transparent 36%),
    linear-gradient(135deg, #070a12 0%, #111633 48%, #3a0a24 100%) padding-box,
    linear-gradient(120deg, #ff0033, rgba(191,219,254,.92), #2563eb, #ff5b78) border-box;
  box-shadow: 0 16px 38px rgba(37,99,235,.2), 0 0 28px rgba(255,0,51,.25), inset 0 1px 0 rgba(255,255,255,.18);
}
.nav a.nav-impact-studio.nav-active {
  animation: impactStudioAiPulse 2.2s ease-in-out infinite;
}
.nav a.nav-impact-studio.nav-active::before {
  animation: impactStudioAiDot 1.25s ease-in-out infinite;
}
@keyframes impactStudioAiPulse {
  0%, 100% {
    box-shadow: 0 12px 28px rgba(37,99,235,.16), 0 0 24px rgba(255,0,51,.13), inset 0 1px 0 rgba(255,255,255,.14);
  }
  52% {
    box-shadow: 0 18px 42px rgba(37,99,235,.28), 0 0 34px rgba(255,0,51,.34), inset 0 1px 0 rgba(255,255,255,.22);
  }
}
@keyframes impactStudioAiDot {
  0%, 100% { box-shadow: 0 0 0 4px rgba(96,165,250,.13), 0 0 18px rgba(96,165,250,.8), 0 0 26px rgba(255,0,51,.5); }
  50% { box-shadow: 0 0 0 7px rgba(96,165,250,.07), 0 0 25px rgba(191,219,254,.9), 0 0 34px rgba(255,0,51,.58); }
}
@media (min-width: 901px) and (max-width: 1260px) {
  .nav a.nav-impact-studio { gap: 6px; padding-inline: 9px; }
}
.niche-finder-app {
  position: relative;
  isolation: isolate;
  width: min(1680px, calc(100vw - 36px));
}
.niche-finder-app::before {
  content: "";
  position: absolute;
  inset: 0 -18px -58px;
  z-index: -2;
  border-radius: 32px;
  background:
    linear-gradient(rgba(15,23,42,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15,23,42,.035) 1px, transparent 1px),
    linear-gradient(135deg, rgba(255,0,51,.10) 0%, transparent 34%),
    linear-gradient(225deg, rgba(15,23,42,.08) 0%, transparent 34%);
  background-size: 36px 36px, 36px 36px, auto, auto;
  pointer-events: none;
}
.niche-finder-sidebar {
  border-color: rgba(255,255,255,.10);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 1px, transparent 1px 12px),
    linear-gradient(180deg, #070a12 0%, #111827 54%, #210710 100%);
  box-shadow: 0 24px 70px rgba(15,23,42,.22), 0 0 0 1px rgba(255,0,51,.06);
  color: #fff;
}
.niche-sidebar-brand {
  border-bottom-color: rgba(255,255,255,.10);
}
.niche-sidebar-brand strong { color: #fff; }
.niche-sidebar-brand span { color: #ff3b62; text-shadow: 0 0 18px rgba(255,0,51,.35); }
.niche-sidebar-logo span {
  background: linear-gradient(135deg, #ff0033, #b80024);
  box-shadow: 0 0 0 4px rgba(255,0,51,.14), 0 16px 30px rgba(255,0,51,.28);
}
.niche-sidebar-brand em,
.niche-sidebar-dashboard {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.07);
  color: #f8fafc;
}
.niche-sidebar-dashboard:hover {
  background: rgba(255,255,255,.11);
  color: #fff;
}
.niche-sidebar-group > span {
  color: rgba(226,232,240,.58);
}
.niche-sidebar-group a {
  color: #cbd5e1;
}
.niche-sidebar-group a:hover {
  background: rgba(255,255,255,.08);
  color: #fff;
}
.niche-sidebar-group a.active {
  background: linear-gradient(90deg, rgba(255,0,51,.24), rgba(255,255,255,.07));
  color: #fff;
  box-shadow: inset 3px 0 0 #ff0033, 0 16px 32px rgba(255,0,51,.14);
}
.niche-sidebar-bottom {
  border-top-color: rgba(255,255,255,.10);
}
.niche-sidebar-bottom a { color: #cbd5e1; }
.niche-dashboard-header h1 {
  text-shadow: 0 14px 42px rgba(255,0,51,.13);
}
.niche-breadcrumb {
  color: #be123c;
}
.niche-limit-card,
.niche-overview-search,
.niche-search-panel,
.niche-overview-module,
.niche-channel-row,
.niche-category-card,
.niche-video-card,
.niche-thumbnail-card {
  border-color: rgba(15,23,42,.08);
  box-shadow: 0 22px 60px rgba(15,23,42,.07);
}
.niche-overview-search,
.niche-search-panel {
  background: rgba(255,255,255,.94);
  backdrop-filter: blur(12px);
}
.niche-welcome-card {
  position: relative;
  overflow: hidden;
  border-color: rgba(255,255,255,.13);
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 1px, transparent 1px 16px),
    linear-gradient(135deg, #070a12 0%, #151a28 52%, #360813 100%);
  box-shadow: 0 28px 80px rgba(15,23,42,.22), 0 0 0 1px rgba(255,0,51,.07);
}
.niche-welcome-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.65), transparent 78%);
  pointer-events: none;
}
.niche-welcome-card > * {
  position: relative;
  z-index: 1;
}
.niche-welcome-card .eyebrow {
  color: #ff5b78;
}
.niche-welcome-card h2 {
  color: #fff;
}
.niche-welcome-card p {
  color: #dbe4f0;
}
.niche-overview-kpis div {
  border-color: rgba(255,255,255,.13);
  background: rgba(255,255,255,.08);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 18px 36px rgba(0,0,0,.12);
}
.niche-overview-kpis strong {
  color: #fff;
  text-shadow: 0 0 24px rgba(255,255,255,.18);
}
.niche-overview-kpis span {
  color: #dbe4f0;
}
.niche-presets a.active,
.niche-sort-row a.active,
.niche-module-row em,
.niche-score-pill {
  background: linear-gradient(135deg, #ff0033, #b80024);
  box-shadow: 0 12px 24px rgba(255,0,51,.22);
}
.niche-module-row,
.niche-video-mini-list a,
.niche-category-chip-cloud a {
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.niche-module-row:hover,
.niche-video-mini-list a:hover,
.niche-category-chip-cloud a:hover {
  transform: translateY(-1px);
  border-color: rgba(255,0,51,.24);
  box-shadow: 0 16px 34px rgba(15,23,42,.08);
}
@media (max-width: 980px) {
  .niche-finder-sidebar {
    background: linear-gradient(135deg, #070a12 0%, #161b29 72%, #2b0710 100%);
  }
  .niche-sidebar-group a {
    border-color: rgba(255,255,255,.12);
    background: rgba(255,255,255,.07);
  }
}
@media (max-width: 720px) {
  .nav a.nav-niche-pro::after { display: none; }
}

@media (min-width: 981px) {
  .niche-finder-sidebar {
    position: sticky;
    top: 88px;
    left: auto;
    width: 252px;
    height: calc(100vh - 108px);
    max-height: none;
    z-index: 8;
  }
  .niche-finder-main {
    grid-column: 2;
  }
}
@media (min-width: 981px) and (max-width: 1320px) {
  .niche-finder-sidebar {
    left: auto;
    width: 220px;
  }
}

/* Niche Finder workspace finish */
body:has(.niche-finder-app) {
  background:
    radial-gradient(circle at 14% -6%, rgba(255,0,51,.11), transparent 26rem),
    radial-gradient(circle at 92% 4%, rgba(15,23,42,.11), transparent 31rem),
    linear-gradient(180deg, #f8fafc 0%, #ffffff 42%, #fff7f8 100%);
}
.niche-finder-app {
  --niche-sidebar-w: 252px;
  --niche-gap: 24px;
  width: min(1680px, calc(100vw - 48px));
  padding: 28px 0 72px;
  gap: var(--niche-gap);
  align-items: start;
}
.niche-finder-app::before {
  inset: 12px -14px -44px calc(var(--niche-sidebar-w) + var(--niche-gap));
  border: 1px solid rgba(226,232,240,.78);
  border-radius: 30px;
  background:
    linear-gradient(rgba(15,23,42,.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15,23,42,.028) 1px, transparent 1px),
    radial-gradient(circle at 12% 0%, rgba(255,0,51,.065), transparent 24rem),
    radial-gradient(circle at 100% 0%, rgba(15,23,42,.075), transparent 28rem),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.92));
  background-size: 34px 34px, 34px 34px, auto, auto, auto;
  box-shadow: 0 30px 90px rgba(15,23,42,.08);
}
.niche-finder-app::after {
  content: "";
  position: absolute;
  top: 32px;
  bottom: -26px;
  left: calc(var(--niche-sidebar-w) + (var(--niche-gap) / 2));
  width: 1px;
  z-index: -1;
  background: linear-gradient(180deg, transparent, rgba(255,0,51,.2), rgba(15,23,42,.08), transparent);
  pointer-events: none;
}
.niche-finder-main {
  position: relative;
  grid-column: 2;
  min-width: 0;
  display: grid;
  gap: 18px;
  padding: 24px;
  border: 1px solid rgba(226,232,240,.78);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.86), rgba(255,255,255,.72)),
    rgba(255,255,255,.82);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.82), 0 20px 70px rgba(15,23,42,.06);
  backdrop-filter: blur(10px);
}
.niche-dashboard-header {
  padding: 2px 2px 8px;
}
.niche-dashboard-header h1 {
  text-shadow: none;
}
.niche-finder-sidebar {
  align-self: start;
  overflow-x: hidden;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 24px;
  padding: 18px;
  background:
    radial-gradient(circle at 16% 8%, rgba(255,0,51,.18), transparent 9rem),
    radial-gradient(circle at 100% 100%, rgba(255,0,51,.13), transparent 11rem),
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 1px, transparent 1px 13px),
    linear-gradient(180deg, #070a12 0%, #101827 56%, #210713 100%);
  box-shadow:
    0 28px 80px rgba(15,23,42,.26),
    0 0 0 1px rgba(255,0,51,.08),
    inset 0 1px 0 rgba(255,255,255,.08);
  scrollbar-width: thin;
  scrollbar-color: rgba(255,0,51,.58) rgba(255,255,255,.08);
}
.niche-finder-sidebar::-webkit-scrollbar { width: 7px; }
.niche-finder-sidebar::-webkit-scrollbar-track {
  background: rgba(255,255,255,.06);
  border-radius: 999px;
}
.niche-finder-sidebar::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(255,0,51,.82), rgba(255,255,255,.24));
  border-radius: 999px;
}
.niche-sidebar-brand {
  padding: 10px 10px 18px;
  border-bottom-color: rgba(255,255,255,.12);
}
.niche-sidebar-logo span {
  width: 38px;
  height: 38px;
  border-radius: 14px;
}
.niche-sidebar-brand strong {
  font-size: 19px;
}
.niche-sidebar-brand em,
.niche-sidebar-dashboard {
  border-color: rgba(255,255,255,.14);
  background: rgba(255,255,255,.075);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08);
}
.niche-sidebar-dashboard {
  border-radius: 15px;
  padding: 11px 12px;
}
.niche-sidebar-group {
  gap: 6px;
  margin-bottom: 18px;
}
.niche-sidebar-group > span {
  padding: 0 10px 5px;
  color: rgba(226,232,240,.62);
}
.niche-sidebar-group a {
  position: relative;
  gap: 10px;
  min-height: 40px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: #d7e0ee;
  background: rgba(255,255,255,.015);
}
.niche-sidebar-group a::before {
  content: "";
  width: 6px;
  height: 6px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #ff0033;
  opacity: 0;
  box-shadow: 0 0 16px rgba(255,0,51,.75);
}
.niche-sidebar-group a:hover {
  border-color: rgba(255,255,255,.10);
  background: rgba(255,255,255,.075);
  color: #fff;
}
.niche-sidebar-group a.active {
  border-color: rgba(255,0,51,.34);
  background:
    linear-gradient(90deg, rgba(255,0,51,.28), rgba(255,255,255,.075)),
    rgba(255,255,255,.03);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255,0,51,.14), inset 0 1px 0 rgba(255,255,255,.08);
}
.niche-sidebar-group a.active::before {
  opacity: 1;
}
.niche-sidebar-bottom {
  border-top-color: rgba(255,255,255,.12);
}
.niche-sidebar-bottom a {
  border-radius: 12px;
}
.niche-sidebar-bottom a:hover {
  background: rgba(255,255,255,.075);
  color: #fff;
}
.niche-overview-search,
.niche-search-panel,
.niche-overview-module,
.niche-channel-row,
.niche-category-card,
.niche-video-card,
.niche-thumbnail-card {
  border-color: rgba(226,232,240,.92);
  box-shadow: 0 18px 50px rgba(15,23,42,.055);
}
.niche-presets a,
.niche-sort-row a {
  box-shadow: 0 10px 28px rgba(15,23,42,.055);
}
@media (min-width: 981px) and (max-width: 1320px) {
  .niche-finder-app {
    --niche-sidebar-w: 220px;
    --niche-gap: 18px;
  }
  .niche-finder-sidebar {
    width: 220px;
  }
  .niche-finder-main {
    padding: 22px;
  }
}
@media (max-width: 980px) {
  .niche-finder-app {
    --niche-sidebar-w: 0px;
    width: min(100% - 28px, 1440px);
  }
  .niche-finder-app::before,
  .niche-finder-app::after {
    display: none;
  }
  .niche-finder-main {
    grid-column: auto;
    padding: 18px;
  }
  .niche-finder-sidebar {
    border-radius: 22px;
  }
}

/* Niche Finder friendly guidance */
.niche-section-intro {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(380px, 1.12fr);
  gap: 18px;
  align-items: stretch;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 24px;
  background:
    radial-gradient(circle at 6% 0%, rgba(255,0,51,.28), transparent 21rem),
    radial-gradient(circle at 92% 100%, rgba(255,0,51,.18), transparent 18rem),
    repeating-linear-gradient(135deg, rgba(255,255,255,.045) 0 1px, transparent 1px 16px),
    linear-gradient(135deg, #070a12 0%, #151a28 52%, #360813 100%);
  box-shadow: 0 28px 80px rgba(15,23,42,.22), 0 0 0 1px rgba(255,0,51,.07);
  padding: 22px;
}
.niche-section-intro::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px);
  background-size: 28px 28px;
  mask-image: linear-gradient(90deg, rgba(0,0,0,.72), transparent 82%);
  pointer-events: none;
  z-index: 0;
}
.niche-section-intro::after {
  content: "";
  position: absolute;
  inset: auto -10% -45% 44%;
  height: 210px;
  background: radial-gradient(circle, rgba(255,0,51,.28), transparent 64%);
  filter: blur(10px);
  pointer-events: none;
  z-index: 0;
}
.niche-section-intro > * {
  position: relative;
  z-index: 1;
}
.niche-section-intro p {
  margin: 0 0 7px;
  color: #ff5b78;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.niche-section-intro h2 {
  margin: 0 0 8px;
  color: #fff;
  font-size: clamp(22px, 2vw, 31px);
  line-height: 1.04;
  letter-spacing: 0;
  text-shadow: 0 18px 42px rgba(255,0,51,.18);
}
.niche-section-intro span {
  display: block;
  color: #dbe4f0;
  font-size: 14px;
  font-weight: 820;
  line-height: 1.5;
}
.niche-section-intro ul {
  display: grid;
  gap: 9px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.niche-section-intro li {
  position: relative;
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 16px;
  background: rgba(255,255,255,.08);
  color: #f8fafc;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 18px 36px rgba(0,0,0,.12);
  backdrop-filter: blur(10px);
}
.niche-section-intro li::before {
  content: "";
  width: 7px;
  height: 7px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: var(--primary);
  box-shadow: 0 0 16px rgba(255,0,51,.42);
}
.niche-guide-drawer {
  position: relative;
}
.niche-guide-drawer summary {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(255,0,51,.22), rgba(255,255,255,.075)),
    rgba(255,255,255,.04);
  color: #fff;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
  list-style: none;
  box-shadow: 0 16px 34px rgba(255,0,51,.12), inset 0 1px 0 rgba(255,255,255,.08);
}
.niche-guide-drawer summary::-webkit-details-marker { display: none; }
.niche-guide-drawer summary::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: #ff0033;
  box-shadow: 0 0 18px rgba(255,0,51,.8);
}
.niche-guide-drawer[open] summary {
  border-color: rgba(255,0,51,.42);
  background: linear-gradient(135deg, #ff0033, #b80024);
}
.niche-guide-drawer[open]::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 50;
  background: rgba(7,10,18,.54);
  backdrop-filter: blur(8px);
}
.niche-guide-drawer[open] summary {
  position: relative;
  z-index: 56;
}
.niche-guide-panel {
  position: fixed;
  z-index: 55;
  top: 92px;
  right: 36px;
  bottom: 34px;
  width: min(920px, calc(100vw - 360px));
  overflow: auto;
  display: grid;
  gap: 16px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 28px;
  background:
    radial-gradient(circle at 10% 0%, rgba(255,0,51,.24), transparent 18rem),
    radial-gradient(circle at 100% 100%, rgba(255,0,51,.14), transparent 22rem),
    repeating-linear-gradient(135deg, rgba(255,255,255,.042) 0 1px, transparent 1px 15px),
    linear-gradient(180deg, #070a12 0%, #101827 58%, #210713 100%);
  box-shadow: 0 34px 110px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.08);
  padding: 24px;
  color: #fff;
}
.niche-guide-hero {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 22px;
  background: rgba(255,255,255,.06);
  padding: 20px;
}
.niche-guide-hero p {
  margin: 0 0 8px;
  color: #ff5b78;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.niche-guide-hero h2 {
  margin: 0 0 10px;
  color: #fff;
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1;
}
.niche-guide-hero span,
.niche-guide-tip span,
.niche-guide-close-hint {
  color: #dbe4f0;
  font-weight: 780;
}
.niche-guide-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.niche-guide-steps article,
.niche-guide-concepts div,
.niche-guide-tip {
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 18px;
  background: rgba(255,255,255,.065);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07);
}
.niche-guide-steps article {
  padding: 16px;
}
.niche-guide-steps strong {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff0033, #b80024);
  box-shadow: 0 12px 24px rgba(255,0,51,.24);
}
.niche-guide-steps h3,
.niche-guide-concepts h3 {
  margin: 12px 0 7px;
  color: #fff;
  font-size: 15px;
}
.niche-guide-steps p {
  margin: 0;
  color: #cbd5e1;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.45;
}
.niche-guide-concepts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.niche-guide-concepts h3 {
  grid-column: 1 / -1;
  margin: 0;
}
.niche-guide-concepts div {
  padding: 13px;
}
.niche-guide-concepts strong {
  display: block;
  color: #fff;
  font-size: 13px;
  margin-bottom: 5px;
}
.niche-guide-concepts span {
  color: #cbd5e1;
  font-size: 12px;
  font-weight: 760;
  line-height: 1.45;
}
.niche-guide-tip {
  display: grid;
  gap: 6px;
  border-color: rgba(255,0,51,.24);
  background: rgba(255,0,51,.10);
  padding: 16px;
}
.niche-guide-tip strong {
  color: #fff;
}
.niche-guide-close-hint {
  margin: 0;
  text-align: center;
  font-size: 12px;
}
@media (max-width: 1180px) {
  .niche-section-intro {
    grid-template-columns: 1fr;
  }
  .niche-guide-panel {
    left: 24px;
    right: 24px;
    width: auto;
  }
  .niche-guide-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .niche-section-intro {
    padding: 15px;
  }
  .niche-guide-panel {
    top: 70px;
    left: 12px;
    right: 12px;
    bottom: 14px;
    border-radius: 22px;
    padding: 16px;
  }
  .niche-guide-steps,
  .niche-guide-concepts {
    grid-template-columns: 1fr;
  }
}

/* Niche Library / Collections */
.collections-app {
  width: min(1440px, calc(100% - 36px));
  margin: 0 auto;
  padding: 42px 0 72px;
}
.collections-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}
.collections-hero h1 {
  margin: 0 0 8px;
  font-size: clamp(42px, 5vw, 76px);
  line-height: .92;
}
.library-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 18px;
}
.library-summary-grid article {
  border: 1px solid rgba(226,232,240,.92);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92)),
    #fff;
  box-shadow: 0 18px 46px rgba(15,23,42,.055);
  padding: 18px;
}
.library-summary-grid span,
.library-channel-metrics span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.library-summary-grid strong {
  display: block;
  margin: 6px 0 4px;
  color: #0f172a;
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1;
}
.library-summary-grid small {
  color: #64748b;
  font-weight: 850;
}
.library-primary-tabs {
  display: inline-flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 0 0 22px;
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 18px;
  background: rgba(255,255,255,.84);
  padding: 6px;
  box-shadow: 0 16px 42px rgba(15,23,42,.06);
}
.library-primary-tabs a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 13px;
  color: #334155;
  padding: 0 16px;
  font-weight: 950;
}
.library-primary-tabs a.active {
  background: linear-gradient(135deg, var(--primary), #6d28d9);
  color: #fff;
  box-shadow: 0 14px 28px rgba(255,0,51,.16);
}
.library-report-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.library-report-card {
  display: grid;
  gap: 14px;
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  background: linear-gradient(135deg, #fff 0%, #f8fbff 58%, #fff1f2 130%);
  padding: 18px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, .055);
}
.library-report-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}
.library-report-head img {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
}
.library-report-head h3 {
  margin: 0;
  color: #0f172a;
  overflow-wrap: anywhere;
}
.library-report-card > p {
  margin: 0;
  color: #334155;
  font-weight: 780;
}
.library-report-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.library-report-metrics div {
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: rgba(255, 255, 255, .72);
  padding: 10px;
}
.library-report-metrics span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.library-report-metrics strong {
  display: block;
  margin-top: 4px;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.05;
}
.library-report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.library-report-actions form {
  margin: 0;
}
.collections-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}
.collections-sidebar-card,
.collections-main-card {
  border: 1px solid rgba(226,232,240,.9);
  border-radius: 26px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(248,250,252,.9)),
    #fff;
  box-shadow: 0 24px 70px rgba(15,23,42,.08);
}
.collections-sidebar-card {
  position: sticky;
  top: 88px;
  display: grid;
  gap: 16px;
  padding: 18px;
}
.collections-sidebar-head,
.collections-open-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.collections-sidebar-head strong {
  font-size: 18px;
}
.collections-sidebar-head span,
.collections-stat-pill {
  border: 1px solid #fecdd3;
  border-radius: 999px;
  background: #fff1f3;
  color: var(--primary);
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 950;
}
.collections-stat-group {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.collection-card-list {
  display: grid;
  gap: 9px;
}
.collection-card-list a {
  display: grid;
  gap: 3px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  padding: 12px;
  box-shadow: 0 10px 28px rgba(15,23,42,.045);
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}

/* Niche Finder thumbnails: compact professional workspace */
body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell {
  grid-template-rows: minmax(0, 1fr);
  background: #f7f9fc;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-finder-sidebar {
  grid-row: 1;
  top: 0;
  height: 100vh;
  max-height: 100vh;
  border-right: 1px solid rgba(255, 255, 255, .08);
  background:
    radial-gradient(circle at 12% 4%, rgba(255, 0, 61, .20), transparent 10rem),
    radial-gradient(circle at 100% 100%, rgba(123, 44, 255, .16), transparent 14rem),
    linear-gradient(180deg, #07101f 0%, #0b1323 52%, #130817 100%);
  box-shadow: 18px 0 44px rgba(15, 23, 42, .12);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand {
  border-bottom-color: rgba(255, 255, 255, .10);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-logo {
  display: flex;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-logo strong {
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand > span {
  color: rgba(255, 255, 255, .78);
  text-shadow: none;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand em {
  border-color: rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .08);
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group > span {
  color: rgba(226, 232, 240, .58);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a {
  color: #dbe5f2;
  background: transparent;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a:hover {
  border-color: rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .075);
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a.active {
  border-color: rgba(255, 0, 61, .38);
  color: #fff;
  background: linear-gradient(110deg, #ff003d, #7b2cff);
  box-shadow: 0 16px 34px rgba(255, 0, 61, .18), inset 0 1px 0 rgba(255, 255, 255, .13);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a.active::before {
  background: #fff;
  opacity: 1;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-search-card,
body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-card {
  border: 1px solid #dfe6f1;
  background: #fff;
  box-shadow: 0 22px 60px rgba(15, 23, 42, .06);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-title {
  display: inline-flex;
  align-items: center;
  flex: 1 1 auto;
  min-width: 0;
  gap: 12px;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-title h2 {
  font-size: clamp(23px, 1.8vw, 30px);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-title > span,
body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-tools {
  flex: 0 0 auto;
}

@media (max-width: 760px) {
  body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-head {
    display: grid;
    grid-template-columns: 1fr;
  }

  body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-thumbnail-results-title {
    flex-wrap: wrap;
  }
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-finder-main {
  grid-row: 1;
  padding: 24px clamp(18px, 2.4vw, 38px) 64px;
  gap: 18px;
  background:
    radial-gradient(circle at 18% 0%, rgba(255, 0, 61, .055), transparent 28rem),
    radial-gradient(circle at 86% 0%, rgba(37, 99, 235, .045), transparent 34rem),
    #f7f9fc;
}

.niche-thumbnail-topline {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 48px;
}

.niche-thumbnail-breadcrumb {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-width: 0;
  color: #607088;
  font-size: 14px;
  font-weight: 900;
}

.niche-thumbnail-breadcrumb a {
  color: #53657d;
}

.niche-thumbnail-breadcrumb a:hover,
.niche-thumbnail-breadcrumb strong {
  color: #080b12;
}

.niche-thumbnail-breadcrumb span {
  color: #8a97aa;
}

.niche-thumbnail-plan-pill {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  padding: 0 18px;
  border: 1px solid #dfe6f1;
  border-radius: 999px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 14px 32px rgba(15, 23, 42, .055);
  white-space: nowrap;
}

.niche-thumbnail-plan-pill svg {
  width: 18px;
  height: 18px;
  color: #ff003d;
}

.niche-thumbnail-plan-pill strong {
  color: #ff003d;
  font-size: 13px;
  font-weight: 950;
}

.niche-thumbnail-plan-pill span {
  color: #526071;
  font-size: 12px;
  font-weight: 900;
}

.niche-thumbnail-search-shell {
  gap: 22px;
}

.niche-thumbnail-search-card,
.niche-thumbnail-results-card {
  border: 1px solid #dfe6f1;
  border-radius: 20px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 22px 60px rgba(15, 23, 42, .06);
}

.niche-thumbnail-search-card {
  padding: clamp(18px, 2.2vw, 26px);
  background: #fff;
}

.niche-thumbnail-search-head {
  justify-content: flex-start;
  align-items: center;
  gap: 12px;
}

.niche-thumbnail-search-head h2,
.niche-thumbnail-results-head h2 {
  margin: 0;
  color: #080b12;
  font-size: clamp(24px, 2vw, 30px);
  line-height: 1.05;
}

.niche-thumbnail-beta,
.niche-thumbnail-results-title > span {
  min-height: 30px;
  padding: 7px 11px;
  border: 0;
  background: #eef4ff;
  color: #28427a;
  font-size: 12px;
  letter-spacing: 0;
}

.niche-thumbnail-tabs {
  gap: 10px;
  margin: 20px 0 16px;
}

.niche-thumbnail-tabs label {
  min-height: 50px;
  min-width: 190px;
  justify-content: center;
  gap: 10px;
  padding: 11px 18px;
  border: 1px solid #dfe6f1;
  border-radius: 13px;
  background: #fff;
  color: #101827;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .035);
}

.niche-thumbnail-tabs label:hover {
  border-color: #ffc3d0;
  color: #ff003d;
  transform: translateY(-1px);
}

.niche-thumbnail-tabs label .niche-thumbnail-mode-icon {
  width: 24px;
  height: 24px;
  background: #f4f7fb;
  color: #102033;
}

.niche-thumbnail-mode-icon svg,
.niche-thumbnail-search-actions button svg,
.niche-thumbnail-search-note svg,
.niche-thumbnail-result-filter svg,
.niche-thumbnail-view-toggle svg {
  width: 18px;
  height: 18px;
}

#thumb-mode-description:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-description"],
#thumb-mode-url:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-url"],
#thumb-mode-upload:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-upload"] {
  border-color: transparent;
  background: linear-gradient(110deg, #ff003d, #9f1fe8);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255, 0, 61, .22);
}

#thumb-mode-description:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-description"] .niche-thumbnail-mode-icon,
#thumb-mode-url:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-url"] .niche-thumbnail-mode-icon,
#thumb-mode-upload:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-upload"] .niche-thumbnail-mode-icon {
  background: rgba(255, 255, 255, .18);
  color: #fff;
}

.niche-thumbnail-panel .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.niche-thumbnail-field-wrap {
  position: relative;
}

.niche-thumbnail-panel textarea,
.niche-thumbnail-panel input[type="url"],
.niche-thumbnail-sort-inline select {
  border-color: #dfe6f1;
  border-radius: 16px;
  background: #fff;
  box-shadow: inset 0 1px 0 rgba(15, 23, 42, .02);
}

.niche-thumbnail-panel textarea {
  min-height: 138px;
  padding: 18px 20px 28px;
  resize: vertical;
}

.niche-thumbnail-field-wrap small {
  position: absolute;
  right: 16px;
  bottom: 13px;
  color: #68778d;
  font-size: 12px;
  font-weight: 900;
}

.niche-thumbnail-panel input[type="url"] {
  min-height: 58px;
}

.niche-thumbnail-dropzone {
  min-height: 138px;
  border-color: #dfe6f1;
  border-style: dashed;
  background: #f8fafc;
}

.niche-thumbnail-search-actions {
  display: grid;
  grid-template-columns: minmax(210px, 260px) minmax(260px, 1fr) auto;
  align-items: end;
  gap: 18px;
  margin-top: 18px;
}

.niche-thumbnail-sort-inline {
  min-width: 0;
}

.niche-thumbnail-sort-inline label {
  color: #5e6d83;
  font-size: 13px;
  letter-spacing: 0;
  text-transform: none;
}

.niche-thumbnail-sort-inline select {
  min-height: 54px;
  padding: 0 16px;
}

.niche-thumbnail-search-note {
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-height: 54px;
  max-width: 430px;
  padding: 11px 14px;
  border-radius: 15px;
  background: #f8fafc;
  color: #5c6c84;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.25;
}

.niche-thumbnail-search-note svg {
  color: #53657d;
}

.niche-thumbnail-search-actions button[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  min-height: 58px;
  min-width: 236px;
  padding: 0 28px;
  border-radius: 16px;
  background: linear-gradient(110deg, #ff003d, #e9003b);
  box-shadow: 0 18px 36px rgba(255, 0, 61, .24);
}

.niche-thumbnail-search-actions button[type="submit"]:hover {
  transform: translateY(-1px);
  box-shadow: 0 22px 44px rgba(255, 0, 61, .30);
}

.niche-thumbnail-results-panel {
  display: grid;
  gap: 16px;
  min-height: 0;
}

.niche-thumbnail-results-card {
  display: grid;
  gap: 22px;
  padding: clamp(18px, 2.2vw, 26px);
}

.niche-thumbnail-results-head {
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  align-items: center;
}

.niche-thumbnail-results-title {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.niche-thumbnail-results-title > span {
  background: #f2e7ff;
  color: #7c1fd6;
  text-transform: none;
}

.niche-thumbnail-results-tools,
.niche-thumbnail-view-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.niche-thumbnail-result-filter,
.niche-thumbnail-view-toggle button {
  min-height: 48px;
  border: 1px solid #dfe6f1;
  border-radius: 14px;
  background: #fff;
  color: #102033;
  font-weight: 950;
  cursor: pointer;
}

.niche-thumbnail-result-filter {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 0 16px;
}

.niche-thumbnail-view-toggle {
  gap: 0;
  overflow: hidden;
  border: 1px solid #dfe6f1;
  border-radius: 15px;
  background: #fff;
}

.niche-thumbnail-view-toggle button {
  width: 52px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.niche-thumbnail-view-toggle button + button {
  border-left: 1px solid #dfe6f1;
}

.niche-thumbnail-view-toggle button.active {
  color: #ff003d;
  background: #fff7f9;
  box-shadow: inset 0 0 0 1px rgba(255, 0, 61, .22);
}

.niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumbnail-result-grid {
  grid-template-columns: 1fr;
  gap: 14px;
}

.niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumb-result-card {
  display: grid;
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  padding: 10px;
  border: 1px solid #dfe6f1;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 28px rgba(15, 23, 42, .055);
}

.niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumb-result-body {
  padding: 2px 6px 4px;
}

.niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumb-result-stats,
.niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumb-result-meta {
  display: flex;
}

.niche-thumbnail-result-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
}

.niche-tab-thumbnails .niche-thumb-result-card {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}

.niche-tab-thumbnails .niche-thumb-result-media {
  border: 1px solid #dfe6f1;
  border-radius: 14px;
  box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
}

.niche-tab-thumbnails .niche-thumb-result-media img {
  transition: transform .22s ease;
}

.niche-tab-thumbnails .niche-thumb-result-card:hover .niche-thumb-result-media img {
  transform: scale(1.025);
}

.niche-tab-thumbnails .niche-thumb-result-body {
  display: grid;
  gap: 8px;
  padding: 11px 2px 0;
}

.niche-tab-thumbnails .niche-thumb-result-body h3 {
  margin: 0;
  font-size: 14px;
  line-height: 1.25;
}

.niche-tab-thumbnails .niche-thumb-result-body p {
  margin: 0;
  font-size: 12px;
}

.niche-tab-thumbnails .niche-thumb-result-stats,
.niche-tab-thumbnails .niche-thumb-result-meta {
  display: none;
}

.niche-tab-thumbnails .niche-thumb-result-body .card-actions {
  margin-top: 0;
}

@media (max-width: 1280px) {
  .niche-thumbnail-result-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (max-width: 980px) {
  body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell {
    grid-template-columns: 1fr;
  }

  body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-finder-sidebar {
    position: fixed;
    top: 0;
    height: 100dvh;
    max-height: 100dvh;
  }

  body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-finder-main {
    grid-column: 1;
    grid-row: 1;
    padding: 16px;
  }

  .niche-thumbnail-topline {
    align-items: flex-start;
  }

  .niche-thumbnail-plan-pill {
    padding: 0 14px;
  }

  .niche-thumbnail-search-actions {
    grid-template-columns: 1fr;
  }

  .niche-thumbnail-search-note {
    max-width: none;
  }

  .niche-thumbnail-search-actions button[type="submit"] {
    width: 100%;
  }

  .niche-thumbnail-result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .niche-thumbnail-topline,
  .niche-thumbnail-results-head {
    display: grid;
    grid-template-columns: 1fr;
  }

  .niche-thumbnail-breadcrumb {
    gap: 7px;
    font-size: 13px;
  }

  .niche-thumbnail-plan-pill {
    width: 100%;
    justify-content: center;
  }

  .niche-thumbnail-tabs {
    display: grid;
  }

  .niche-thumbnail-tabs label {
    min-width: 0;
    width: 100%;
  }

  .niche-thumbnail-results-tools {
    width: 100%;
    justify-content: space-between;
  }

  .niche-thumbnail-result-filter {
    flex: 1;
  }

  .niche-thumbnail-result-grid {
    grid-template-columns: 1fr;
  }

  .niche-tab-thumbnails .niche-thumbnail-results-card.is-list .niche-thumb-result-card {
    grid-template-columns: 1fr;
  }
}
.collection-card-list a:hover {
  border-color: #fecdd3;
  background: #fff7f8;
  transform: translateY(-1px);
  box-shadow: 0 16px 34px rgba(190, 18, 60, .08);
}
.collection-card-list a.active {
  border-color: rgba(255,0,51,.40);
  background: linear-gradient(135deg, #fff 0%, #fff1f2 55%, #f5f3ff 135%);
  color: #9f1239;
  box-shadow: inset 5px 0 0 var(--primary), 0 18px 40px rgba(255,0,51,.14);
}
.collection-card-list a.active em {
  border-color: transparent;
  background: linear-gradient(135deg, #ff0033, #c026d3);
  color: #fff;
  box-shadow: 0 10px 20px rgba(255, 0, 51, .18);
}
.collection-card-list strong {
  color: #0f172a;
  font-size: 14px;
}
.collection-card-list span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}
.collection-card-list small {
  color: #94a3b8;
  font-size: 11px;
  font-weight: 850;
}
.collection-card-list em {
  justify-self: start;
  margin-top: 5px;
  border: 1px solid #fecdd3;
  border-radius: 999px;
  background: #fff;
  color: var(--primary);
  padding: 5px 8px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.collection-create-card {
  display: grid;
  gap: 10px;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #f8fafc;
  padding: 14px;
}
.collection-create-card label,
.saved-channel-note-form {
  display: grid;
  gap: 6px;
  color: #334155;
  font-size: 12px;
  font-weight: 950;
}
.collection-create-card input,
.collection-create-card textarea,
.saved-channel-note-form textarea {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  padding: 11px 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
}
.collections-main-card {
  min-height: 560px;
  padding: 22px;
}
.collections-open-head {
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e5e7eb;
}
.collections-open-head h2 {
  margin: 0 0 6px;
  font-size: 34px;
}
.collections-stat-pill {
  display: grid;
  min-width: 140px;
  border-radius: 18px;
  text-align: center;
}
.collections-stat-pill strong {
  display: block;
  color: #0f172a;
  font-size: 28px;
  line-height: 1;
}
.collections-stat-pill span {
  color: #64748b;
  font-size: 11px;
}
.collections-tabs {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin: -4px 0 18px;
}
.collections-tabs a {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  padding: 10px 14px;
  font-weight: 950;
  box-shadow: 0 10px 26px rgba(15,23,42,.05);
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.collections-tabs a:hover {
  border-color: #fecdd3;
  background: #fff7f8;
  color: #be123c;
  box-shadow: 0 14px 28px rgba(190, 18, 60, .09);
}
.collections-tabs a.active {
  border-color: rgba(255, 255, 255, .72);
  background: linear-gradient(135deg, #ff0033 0%, #c026d3 58%, #6d28d9 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255,0,51,.24), inset 0 1px 0 rgba(255,255,255,.32);
}
.collections-tabs a.active:hover {
  color: #fff;
  transform: translateY(-1px);
}
.library-channels-panel {
  display: grid;
  gap: 18px;
}
.library-section-head {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid #e5e7eb;
}
.library-section-head > div {
  min-width: min(100%, 360px);
}
.library-section-head h2 {
  margin: 0 0 6px;
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: .98;
}
.library-channel-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 360px), 1fr));
  gap: 16px;
}
.library-channel-card {
  display: grid;
  gap: 16px;
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,250,252,.92)),
    #fff;
  box-shadow: 0 22px 56px rgba(15,23,42,.07);
  padding: 18px;
  min-width: 0;
}
.library-channel-head {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}
.library-channel-avatar {
  width: 74px;
  height: 74px;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  object-fit: cover;
  background: #f8fafc;
}
.library-channel-head h3 {
  margin: 2px 0 4px;
  color: #0f172a;
  font-size: clamp(20px, 2vw, 26px);
  line-height: 1.04;
}
.library-channel-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}
.library-channel-metrics div {
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #fff;
  padding: 12px;
  box-shadow: 0 12px 28px rgba(15,23,42,.045);
}
.library-channel-metrics strong {
  display: block;
  margin-top: 6px;
  color: #0f172a;
  font-size: clamp(18px, 2vw, 25px);
  line-height: 1;
  overflow-wrap: anywhere;
}
.library-channel-actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.library-channel-actions .button {
  flex: 1 1 170px;
  min-height: 44px;
}
.library-empty-state {
  display: grid;
  justify-items: center;
  gap: 12px;
}
.library-channel-analysis {
  width: 100%;
  max-width: none;
  display: grid;
  gap: 20px;
  padding: clamp(20px, 2.8vw, 34px);
}
.library-analysis-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.library-analysis-hero {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: center;
  gap: 18px;
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 28px;
  background:
    radial-gradient(circle at top right, rgba(244,63,94,.12), transparent 32%),
    linear-gradient(180deg, #fff, #f8fafc);
  box-shadow: 0 24px 64px rgba(15,23,42,.08);
  padding: clamp(18px, 2.4vw, 28px);
}
.library-analysis-avatar {
  width: 96px;
  height: 96px;
  border: 1px solid #e5e7eb;
  border-radius: 26px;
  object-fit: cover;
  background: #fff;
  box-shadow: 0 16px 32px rgba(15,23,42,.10);
}
.library-analysis-hero h2 {
  margin: 2px 0 6px;
  color: #0f172a;
  font-size: clamp(34px, 4vw, 58px);
  line-height: .95;
  letter-spacing: 0;
}
.library-analysis-metric-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.library-analysis-metric-grid article,
.library-analysis-card {
  min-width: 0;
  border: 1px solid rgba(226,232,240,.95);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 48px rgba(15,23,42,.06);
}
.library-analysis-metric-grid article {
  padding: 18px;
}
.library-analysis-metric-grid span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.library-analysis-metric-grid strong {
  display: block;
  margin-top: 8px;
  color: #0f172a;
  font-size: clamp(24px, 2.6vw, 36px);
  line-height: 1;
  overflow-wrap: anywhere;
}
.library-analysis-main-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, .85fr);
  gap: 16px;
}
.library-analysis-card {
  padding: clamp(18px, 2vw, 24px);
}
.library-analysis-card h3 {
  margin: 4px 0 8px;
  color: #0f172a;
  font-size: clamp(22px, 2.4vw, 32px);
  line-height: 1.08;
}
.library-analysis-card p {
  margin: 0;
  color: #475569;
  font-weight: 750;
  line-height: 1.55;
}
.library-analysis-highlight {
  background:
    linear-gradient(135deg, rgba(255,0,51,.08), rgba(109,40,217,.08)),
    #fff;
  border-color: rgba(244,63,94,.22);
}
.library-analysis-recommendation {
  display: grid;
  gap: 12px;
}
.library-analysis-steps {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}
.library-analysis-steps li {
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #f8fafc;
  padding: 12px;
  color: #334155;
  font-weight: 850;
  line-height: 1.35;
}
.library-analysis-studio-panel {
  display: grid;
  gap: 18px;
  min-width: 0;
}
.library-analysis-studio-panel .studio-dashboard {
  display: grid;
  gap: 18px;
}
.library-analysis-studio-panel .studio-head,
.library-analysis-studio-panel .studio-ai-report,
.library-analysis-studio-panel .studio-kpi-grid article,
.library-analysis-studio-panel .studio-video-card,
.library-analysis-studio-panel .studio-empty,
.library-analysis-studio-panel .studio-connect-card {
  box-shadow: 0 18px 48px rgba(15,23,42,.06);
}
.library-analysis-studio-panel .studio-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.library-analysis-studio-panel .studio-ai-columns {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.collections-empty {
  border: 1px dashed #fecdd3;
  border-radius: 22px;
  background: #fff7f8;
  padding: 28px;
  text-align: center;
}
.collections-empty strong {
  display: block;
  color: #0f172a;
  font-size: 22px;
  margin-bottom: 8px;
}
.collections-empty p {
  margin: 0 auto;
  max-width: 620px;
  color: #64748b;
  font-weight: 800;
}
.saved-channel-list {
  display: grid;
  gap: 14px;
}
.saved-channel-card {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) minmax(150px, 180px);
  gap: 16px;
  align-items: start;
  border: 1px solid #e5e7eb;
  border-radius: 22px;
  background: #fff;
  padding: 16px;
  box-shadow: 0 18px 46px rgba(15,23,42,.055);
}
.saved-channel-card > img {
  width: 66px;
  height: 66px;
  object-fit: cover;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  background: #f8fafc;
}
.saved-video-card {
  grid-template-columns: 190px minmax(0, 1fr) minmax(150px, 180px);
}
.saved-video-thumb {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 18px;
  border: 1px solid #e5e7eb;
  background: #0f172a;
  aspect-ratio: 16 / 9;
}
.saved-video-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.saved-video-thumb span {
  position: absolute;
  right: 8px;
  bottom: 8px;
  border-radius: 8px;
  background: rgba(0,0,0,.82);
  color: #fff;
  padding: 4px 6px;
  font-size: 11px;
  font-weight: 950;
}
.saved-channel-card h3 {
  margin: 0 0 4px;
  font-size: 18px;
}
.saved-channel-meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin: 9px 0;
}
.saved-channel-meta span {
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  padding: 5px 8px;
  font-size: 11px;
  font-weight: 900;
}
.saved-channel-note-form {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
}
.saved-channel-note-form textarea {
  min-height: 48px;
}
.saved-channel-note-form button {
  min-height: 42px;
  border: 1px solid #fecdd3;
  border-radius: 13px;
  background: #fff;
  color: var(--primary);
  font-weight: 950;
  cursor: pointer;
}
.saved-channel-actions {
  display: grid;
  gap: 8px;
}
.saved-channel-actions .button,
.saved-channel-actions button {
  width: 100%;
  min-height: 42px;
  border-radius: 13px;
  font-size: 12px;
}
.button.ghost {
  border: 1px solid #e5e7eb;
  background: #fff;
  color: #64748b;
}
.collections-premium-lock {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .75fr);
  gap: 22px;
  overflow: hidden;
  border: 1px solid rgba(255,0,51,.18);
  border-radius: 30px;
  background:
    radial-gradient(circle at 20% 10%, rgba(255,0,51,.16), transparent 32%),
    linear-gradient(135deg, rgba(8,11,20,.98), rgba(54,3,22,.96));
  color: #fff;
  box-shadow: 0 34px 90px rgba(15,23,42,.22);
  padding: clamp(24px, 4vw, 42px);
}
.collections-premium-lock::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px);
  background-size: 34px 34px;
  mask-image: linear-gradient(90deg, #000, rgba(0,0,0,.35));
  pointer-events: none;
}
.collections-premium-copy,
.collections-premium-preview {
  position: relative;
  z-index: 1;
}
.collections-premium-copy h2 {
  margin: 0 0 14px;
  max-width: 760px;
  font-size: clamp(36px, 4.8vw, 70px);
  line-height: .92;
}
.collections-premium-copy p {
  max-width: 760px;
  color: rgba(255,255,255,.82);
  font-weight: 850;
  line-height: 1.6;
}
.collections-premium-copy ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 22px 0;
  padding: 0;
  list-style: none;
}
.collections-premium-copy li {
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 16px;
  background: rgba(255,255,255,.06);
  padding: 12px 13px;
  font-weight: 950;
}
.collections-premium-copy li::before {
  content: "+";
  display: inline-grid;
  place-items: center;
  width: 18px;
  height: 18px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--primary);
  color: #fff;
  font-size: 12px;
}
.collections-premium-offer {
  display: inline-flex;
  border: 1px solid rgba(255,0,51,.38);
  border-radius: 999px;
  background: rgba(255,0,51,.16);
  color: #fff;
  padding: 10px 13px;
  font-weight: 950;
}
.collections-premium-actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 22px;
}
.collections-premium-preview {
  display: grid;
  align-content: center;
  gap: 16px;
  filter: blur(2px);
  opacity: .72;
  pointer-events: none;
}
.collections-premium-preview .collection-card-list a,
.collections-premium-preview .saved-channel-card {
  background: rgba(255,255,255,.94);
}
@media (max-width: 980px) {
  .library-summary-grid,
  .library-report-grid,
  .collections-layout,
  .saved-channel-card,
  .saved-video-card,
  .collections-premium-lock {
    grid-template-columns: 1fr;
  }
  .library-section-head {
    display: grid;
  }
  .library-channel-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .library-analysis-metric-grid,
  .library-analysis-studio-panel .studio-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .library-analysis-main-grid,
  .library-analysis-studio-panel .studio-ai-columns {
    grid-template-columns: 1fr;
  }
  .collections-sidebar-card {
    position: static;
  }
  .saved-channel-note-form {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 560px) {
  .collections-app {
    width: min(100% - 24px, 1440px);
  }
  .collections-hero,
  .collections-open-head {
    display: grid;
    align-items: start;
  }
  .library-primary-tabs {
    display: grid;
    width: 100%;
  }
  .library-channel-head,
  .library-channel-metrics,
  .library-report-metrics,
  .library-analysis-hero,
  .library-analysis-metric-grid,
  .library-analysis-steps,
  .library-analysis-studio-panel .studio-kpi-grid {
    grid-template-columns: 1fr;
  }
  .library-analysis-avatar {
    width: 82px;
    height: 82px;
  }
  .library-report-actions,
  .library-report-actions .button,
  .library-report-actions button,
  .library-report-actions form {
    width: 100%;
  }
}

/* Library workspace v2 */
.library-workspace {
  position: relative;
}
.library-workspace::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 260px;
  background:
    linear-gradient(120deg, rgba(239, 68, 68, .10), rgba(14, 165, 233, .09) 48%, rgba(34, 197, 94, .08)),
    linear-gradient(180deg, #fff, rgba(248, 250, 252, 0));
  pointer-events: none;
  z-index: -1;
}
.library-workspace-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 22px;
  margin-bottom: 22px;
  padding-top: 10px;
}
.library-workspace-hero h1 {
  margin: 0 0 8px;
  color: #08111f;
  font-size: clamp(44px, 5vw, 78px);
  line-height: .92;
  letter-spacing: 0;
}
.library-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 10px;
}
.library-hero-actions .button {
  min-height: 44px;
  gap: 8px;
  box-shadow: 0 18px 36px rgba(255, 0, 51, .14);
}
.library-hero-actions .button.secondary {
  box-shadow: 0 14px 28px rgba(15, 23, 42, .05);
}
.library-overview-grid {
  grid-template-columns: repeat(auto-fit, minmax(168px, 1fr));
  gap: 14px;
}
.library-overview-grid article {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, .96);
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .90)),
    #fff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .06);
  padding: 20px 16px 18px;
}
.library-overview-grid article::after {
  content: "";
  position: absolute;
  right: -34px;
  top: -34px;
  width: 92px;
  height: 92px;
  border-radius: 30px;
  background: rgba(15, 23, 42, .04);
  transform: rotate(18deg);
}
.library-overview-grid strong {
  font-size: clamp(24px, 2.5vw, 36px);
}
.library-overview-grid article:last-child strong {
  font-size: clamp(22px, 2vw, 32px);
  line-height: 1.05;
}
.library-card-icon {
  display: inline-grid;
  place-items: center;
  width: 34px;
  height: 34px;
  margin-bottom: 12px;
  border-radius: 10px;
  background: #fee2e2;
  color: #b91c1c;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .02em;
}
.library-card-icon.blue { background: #dbeafe; color: #1d4ed8; }
.library-card-icon.green { background: #dcfce7; color: #15803d; }
.library-card-icon.violet { background: #ede9fe; color: #6d28d9; }
.library-card-icon.amber { background: #fef3c7; color: #b45309; }
.library-card-icon.slate { background: #e2e8f0; color: #334155; }
.library-workspace-tabs {
  display: flex;
  width: 100%;
  margin-bottom: 24px;
  overflow-x: auto;
  border-radius: 16px;
  border: 1px solid #e5e7eb;
  background: rgba(255, 255, 255, .92);
  padding: 6px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, .05);
}
.library-workspace-tabs a {
  flex: 0 0 auto;
  border: 1px solid transparent;
  border-radius: 12px;
  min-height: 40px;
  color: #1e293b;
  padding: 10px 16px;
  transition: background .18s ease, border-color .18s ease, color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.library-workspace-tabs a:hover {
  border-color: #fecdd3;
  background: #fff7f8;
  color: #be123c;
  box-shadow: 0 10px 22px rgba(190, 18, 60, .08);
}
.library-workspace-tabs a:focus-visible,
.collection-card-list a:focus-visible,
.collections-tabs a:focus-visible,
.library-folder-nav a:focus-visible {
  outline: 3px solid rgba(255, 0, 51, .26);
  outline-offset: 3px;
}
.library-workspace-tabs a.active {
  border-color: rgba(255, 255, 255, .72);
  background: linear-gradient(135deg, #ff0033 0%, #c026d3 55%, #6d28d9 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255, 0, 51, .24), inset 0 1px 0 rgba(255, 255, 255, .32);
  text-shadow: 0 1px 0 rgba(15, 23, 42, .12);
}
.library-workspace-tabs a.active:hover {
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 18px 38px rgba(255, 0, 51, .28), inset 0 1px 0 rgba(255, 255, 255, .36);
}
.library-dashboard-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 18px;
  align-items: start;
}
.library-panel {
  display: grid;
  gap: 18px;
  border: 1px solid rgba(226, 232, 240, .92);
  box-shadow: 0 20px 48px rgba(15, 23, 42, .06);
}
.library-panel-wide {
  grid-column: span 1;
}
.library-section-head.compact {
  padding-bottom: 12px;
}
.library-section-head.compact h2 {
  font-size: clamp(22px, 2.2vw, 30px);
}
.library-quick-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.library-quick-grid a,
.library-mini-list a,
.library-activity-list a {
  min-width: 0;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
}
.library-quick-grid a {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 6px;
  padding: 16px;
}
.library-quick-grid a::before {
  content: "";
  grid-row: span 2;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background:
    linear-gradient(135deg, rgba(255, 0, 51, .12), rgba(37, 99, 235, .12)),
    #f8fafc;
  box-shadow: inset 0 0 0 1px rgba(255, 0, 51, .10);
}
.library-quick-grid span,
.library-mini-list span,
.library-activity-list small {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}
.library-quick-grid strong {
  overflow-wrap: anywhere;
  font-size: 20px;
  line-height: 1.12;
}
.library-mini-list,
.library-activity-list {
  display: grid;
  gap: 10px;
}
.library-mini-list a {
  display: grid;
  gap: 4px;
  padding: 13px 14px;
}
.library-mini-list strong {
  overflow-wrap: anywhere;
}
.library-activity-list a {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 12px;
}
.library-activity-list i {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: linear-gradient(135deg, #0f172a, #334155);
  color: #fff;
  font-style: normal;
  font-size: 11px;
  font-weight: 950;
}
.library-activity-list i.activity-report { background: linear-gradient(135deg, #111827, #3b82f6); }
.library-activity-list i.activity-folder { background: linear-gradient(135deg, #f59e0b, #f97316); }
.library-activity-list i.activity-collection { background: linear-gradient(135deg, #ff0033, #7c3aed); }
.library-activity-list i.activity-channel { background: linear-gradient(135deg, #16a34a, #22c55e); }
.library-activity-list span {
  display: grid;
  gap: 3px;
  min-width: 0;
}
.library-activity-list strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.library-activity-large a {
  grid-template-columns: 50px minmax(0, 1fr);
  padding: 15px;
}
.library-activity-large i {
  width: 50px;
  height: 50px;
  border-radius: 14px;
}
.library-report-workbench {
  display: grid;
  grid-template-columns: 310px minmax(0, 1fr);
  gap: 20px;
  align-items: start;
}
.library-report-sidebar {
  max-height: calc(100vh - 106px);
  overflow: auto;
}
.library-folder-nav {
  display: grid;
  gap: 8px;
}
.library-folder-nav a {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  padding: 11px 12px;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
}
.library-folder-nav a.active {
  border-color: rgba(255, 0, 51, .42);
  background: linear-gradient(135deg, #fff 0%, #fff1f2 48%, #f5f3ff 135%);
  color: #9f1239;
  box-shadow: inset 5px 0 0 #ff0033, 0 16px 34px rgba(255, 0, 51, .14);
}
.library-folder-nav a:hover {
  border-color: #fecdd3;
  background: #fff7f8;
  color: #be123c;
}
.library-folder-nav span {
  display: inline-grid;
  place-items: center;
  min-width: 28px;
  height: 28px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}
.library-control-bar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) repeat(2, minmax(150px, auto));
  gap: 10px;
  align-items: center;
  margin-bottom: 2px;
}
.library-report-controls {
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}
.library-control-bar.compact {
  grid-template-columns: 1fr;
}
.library-control-bar input,
.library-control-bar select,
.library-card-editor input,
.library-card-editor select,
.library-card-editor textarea,
.library-inline-create input,
.library-inline-create textarea {
  width: 100%;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #fff;
  color: #0f172a;
  padding: 11px 12px;
  font: inherit;
  font-size: 13px;
  font-weight: 820;
}
.library-report-list {
  display: grid;
  gap: 14px;
}
.library-report-row {
  grid-template-columns: minmax(0, 1fr);
  border-radius: 18px;
  padding: 18px;
  background:
    linear-gradient(135deg, #fff 0%, #f8fbff 58%, rgba(220, 252, 231, .65) 150%),
    #fff;
}
.library-report-row:hover,
.library-folder-card:hover,
.library-quick-grid a:hover,
.library-mini-list a:hover {
  transform: translateY(-1px);
  box-shadow: 0 24px 54px rgba(15, 23, 42, .09);
}
.library-card-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 6px;
}
.library-card-badges span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 950;
}
.library-card-editor {
  border-top: 1px solid #e5e7eb;
  padding-top: 12px;
}
.library-card-editor summary {
  cursor: pointer;
  color: #334155;
  font-weight: 950;
}
.library-card-editor form {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.library-move-form,
.library-inline-delete {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0;
}
.library-move-form select {
  min-width: 148px;
  min-height: 42px;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #fff;
  color: #0f172a;
  padding: 0 10px;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
}
.button.ghost.danger {
  border-color: #fecdd3;
  background: #fff1f2;
  color: #be123c;
}
.button.ghost.danger:hover {
  background: #ffe4e6;
  color: #9f1239;
}
.library-collection-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-start;
  margin: 0 0 14px;
  padding: 12px;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  background: #f8fafc;
}
.library-collection-toolbar > .button,
.library-collection-toolbar > form,
.library-collection-toolbar > details {
  flex: 0 0 auto;
}
.library-niche-report-button {
  border-color: rgba(255, 0, 51, .18);
  background: linear-gradient(135deg, #ff0033 0%, #c026d3 58%, #6d28d9 100%);
  color: #fff;
  box-shadow: 0 16px 32px rgba(255, 0, 51, .22);
}
.library-niche-report-button:hover {
  color: #fff;
  transform: translateY(-1px);
  box-shadow: 0 20px 42px rgba(109, 40, 217, .24);
}
.library-collection-editor {
  min-width: min(100%, 360px);
  padding-top: 0;
  border-top: 0;
}
.library-collection-editor summary {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid #e5e7eb;
  border-radius: 13px;
  background: #fff;
  color: #ff0033;
  padding: 0 14px;
}
.library-collection-editor[open] {
  flex-basis: 100%;
  border-top: 1px solid #e5e7eb;
  padding-top: 12px;
}
.library-folder-actions {
  align-items: stretch;
}
.library-folder-actions form,
.library-folder-actions button {
  width: 100%;
}
body.library-niche-report-open {
  overflow: hidden;
}
.library-niche-report-modal[hidden] {
  display: none;
}
.library-niche-report-modal {
  position: fixed;
  inset: 0;
  z-index: 12000;
  display: grid;
  place-items: center;
  padding: clamp(16px, 3vw, 34px);
}
.library-niche-report-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(2, 6, 23, .62);
  backdrop-filter: blur(10px);
}
.library-niche-report-panel {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  width: min(95vw, 1540px);
  height: min(90vh, 920px);
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .72);
  border-radius: 28px;
  background:
    radial-gradient(circle at 16% 0%, rgba(255, 0, 51, .16), transparent 28rem),
    radial-gradient(circle at 92% 12%, rgba(109, 40, 217, .13), transparent 24rem),
    #f8fafc;
  box-shadow: 0 34px 100px rgba(2, 6, 23, .34);
}
.library-niche-report-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  padding: 26px 30px 20px;
  border-bottom: 1px solid rgba(226, 232, 240, .9);
  background: rgba(255, 255, 255, .72);
}
.library-niche-report-head h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(26px, 3vw, 42px);
  letter-spacing: 0;
}
.library-niche-report-head p:not(.eyebrow) {
  margin: 6px 0 0;
  color: #475569;
  font-weight: 850;
}
.library-niche-report-close {
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  width: 48px;
  height: 48px;
  border: 1px solid #fecdd3;
  border-radius: 16px;
  background: #fff;
  color: #ff0033;
  font-size: 32px;
  line-height: 1;
  font-weight: 950;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(190, 18, 60, .12);
}
.library-niche-report-close:hover,
.library-niche-report-close:focus-visible {
  background: #ff0033;
  color: #fff;
  outline: 0;
}
.library-niche-report-body {
  min-height: 0;
  overflow: auto;
  padding: 22px 30px 28px;
}
.library-niche-report-state {
  min-height: 360px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 12px;
  text-align: center;
  color: #475569;
}
.library-niche-report-state span {
  width: 54px;
  height: 54px;
  border-radius: 999px;
  border: 5px solid #ffe4e6;
  border-top-color: #ff0033;
  animation: impactube-spin .8s linear infinite;
}
.library-niche-report-state.is-error span,
.library-niche-report-state.is-empty span {
  border: 0;
  background: linear-gradient(135deg, #ff0033, #c026d3);
  box-shadow: 0 16px 34px rgba(255, 0, 51, .22);
}
.library-niche-report-state strong {
  color: #0f172a;
  font-size: 22px;
}
.library-niche-report-state p {
  max-width: 620px;
  margin: 0;
  font-weight: 800;
}
@keyframes impactube-spin {
  to { transform: rotate(360deg); }
}
.library-niche-report-content {
  display: grid;
  gap: 20px;
}
.library-niche-report-summary {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.library-niche-report-summary article {
  min-height: 122px;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  background: rgba(255, 255, 255, .92);
  padding: 16px;
  box-shadow: 0 16px 36px rgba(15, 23, 42, .06);
}
.library-niche-report-summary span,
.library-niche-report-summary small {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.library-niche-report-summary strong {
  display: block;
  margin: 7px 0 6px;
  color: #0f172a;
  font-size: clamp(24px, 2vw, 34px);
  line-height: 1;
}
.library-niche-report-summary small {
  text-transform: none;
  letter-spacing: 0;
}
.library-niche-report-table-wrap {
  overflow: auto;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 20px 54px rgba(15, 23, 42, .07);
}
.library-niche-report-table {
  width: 100%;
  min-width: 1180px;
  border-collapse: separate;
  border-spacing: 0;
}
.library-niche-report-table th,
.library-niche-report-table td {
  padding: 14px 16px;
  border-bottom: 1px solid #eef2f7;
  color: #334155;
  font-size: 13px;
  font-weight: 850;
  text-align: left;
  vertical-align: top;
}
.library-niche-report-table th {
  position: sticky;
  top: 0;
  z-index: 1;
  background: linear-gradient(135deg, #ff0033 0%, #c026d3 58%, #6d28d9 100%);
  color: #fff;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.library-niche-report-table th button {
  appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: 100%;
  border: 0;
  padding: 0;
  background: transparent;
  color: inherit;
  font: inherit;
  text-align: left;
  text-transform: inherit;
  letter-spacing: inherit;
  cursor: pointer;
}
.library-niche-report-table th button span {
  display: inline-grid;
  place-items: center;
  min-width: 18px;
  height: 18px;
  margin-left: auto;
  border-radius: 999px;
  background: rgba(255, 255, 255, .18);
  color: rgba(255, 255, 255, .78);
  font-size: 11px;
  line-height: 1;
}
.library-niche-report-table th button:hover span,
.library-niche-report-table th button:focus-visible span,
.library-niche-report-table th button.is-active span {
  background: #fff;
  color: #ff0033;
}
.library-niche-report-table th button:focus-visible {
  outline: 2px solid rgba(255, 255, 255, .8);
  outline-offset: 4px;
  border-radius: 8px;
}
.library-niche-report-table td:first-child,
.library-niche-report-table th:first-child {
  text-align: center;
}
.library-niche-report-table tbody tr:nth-child(even) td {
  background: #fff7f8;
}
.library-niche-report-table tbody tr:hover td {
  background: #f8fafc;
}
.library-niche-report-table td b {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  padding: 0 10px;
}
.library-niche-report-channel {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  min-width: 190px;
}
.library-niche-report-channel img,
.library-niche-report-channel i {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: linear-gradient(135deg, #ff0033, #c026d3 55%, #6d28d9);
  color: #fff;
  object-fit: cover;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  box-shadow: 0 10px 22px rgba(255, 0, 51, .16);
}
.library-niche-report-channel strong {
  min-width: 0;
}
.library-niche-report-channel-link {
  color: #ff0033;
  text-decoration: none;
  border-bottom: 1px solid rgba(255, 0, 51, .28);
}
.library-niche-report-channel-link:hover,
.library-niche-report-channel-link:focus-visible {
  color: #8b5cf6;
  border-bottom-color: currentColor;
  outline: 0;
}
.library-niche-report-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  padding: 18px 30px;
  border-top: 1px solid rgba(226, 232, 240, .9);
  background: rgba(255, 255, 255, .86);
}
.library-niche-report-download.is-disabled {
  pointer-events: none;
  opacity: .48;
}
.library-niche-report-save.is-disabled {
  opacity: .54;
}
.library-niche-report-action-status {
  margin-right: auto;
  color: #475569;
  font-size: 13px;
  font-weight: 850;
}
.library-niche-report-action-status a {
  color: #ff0033;
  text-decoration: underline;
}
.library-niche-report-action-status.is-success {
  color: #047857;
}
.library-niche-report-action-status.is-error {
  color: #be123c;
}
.channel-report-saved-niche {
  margin-top: 16px;
}
.channel-report-saved-niche-head {
  margin-bottom: 18px;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
}
@media (max-width: 1100px) {
  .library-niche-report-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  .library-niche-report-modal {
    padding: 10px;
  }
  .library-niche-report-panel {
    width: 96vw;
    height: 92vh;
    border-radius: 20px;
  }
  .library-niche-report-head,
  .library-niche-report-body,
  .library-niche-report-actions {
    padding-left: 16px;
    padding-right: 16px;
  }
  .library-niche-report-head {
    align-items: center;
  }
  .library-niche-report-close {
    width: 44px;
    height: 44px;
  }
  .library-niche-report-summary {
    grid-template-columns: 1fr;
  }
  .library-niche-report-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .library-niche-report-actions .button {
    width: 100%;
    justify-content: center;
  }
  .library-niche-report-action-status {
    width: 100%;
    margin-right: 0;
    text-align: center;
  }
}
.library-card-editor label,
.library-checkbox {
  display: grid;
  gap: 6px;
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}
.library-checkbox {
  display: flex;
  align-items: center;
  gap: 8px;
}
.library-checkbox input {
  width: auto;
}
.library-global-status {
  width: fit-content;
}
.library-folder-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 14px;
}
.library-folder-card {
  position: relative;
  display: grid;
  gap: 12px;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .94)),
    #fff;
  box-shadow: 0 18px 44px rgba(15, 23, 42, .06);
  padding: 18px;
}
.library-folder-color {
  width: 48px;
  height: 48px;
  border-radius: 15px;
  background:
    linear-gradient(135deg, color-mix(in srgb, var(--folder-color) 88%, #fff), color-mix(in srgb, var(--folder-color) 58%, #0f172a));
  box-shadow: inset 0 -10px 20px rgba(0, 0, 0, .10), 0 16px 30px color-mix(in srgb, var(--folder-color) 20%, transparent);
}
.library-folder-card h3 {
  margin: 0;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.05;
  overflow-wrap: anywhere;
}
.library-folder-card p {
  margin: 0;
  color: #475569;
  font-weight: 780;
  line-height: 1.45;
}
.library-folder-card > strong {
  color: #0f172a;
  font-size: 18px;
}
.library-folder-card small {
  color: #64748b;
  font-weight: 850;
}
.library-unfiled-card {
  background: linear-gradient(135deg, #fff, #f1f5f9);
}
.library-inline-create {
  margin-top: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  align-items: end;
}
.library-filter-empty[hidden] {
  display: none;
}
.library-master-detail .collections-sidebar-card {
  top: 92px;
}
.library-workspace .collections-empty .button {
  margin-top: 14px;
}
@media (max-width: 1200px) {
  .library-overview-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .library-report-workbench,
  .library-dashboard-grid {
    grid-template-columns: 1fr;
  }
  .library-report-sidebar {
    position: static;
    max-height: none;
  }
}
@media (max-width: 760px) {
  .library-workspace-hero,
  .library-section-head,
  .library-quick-grid,
  .library-inline-create {
    grid-template-columns: 1fr;
  }
  .library-hero-actions {
    justify-content: stretch;
  }
  .library-hero-actions .button {
    width: 100%;
  }
  .library-overview-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .library-control-bar {
    grid-template-columns: 1fr;
  }
  .library-report-controls {
    grid-template-columns: 1fr;
  }
  .library-move-form,
  .library-inline-delete {
    width: 100%;
  }
  .library-move-form select,
  .library-move-form .button,
  .library-inline-delete .button {
    width: 100%;
  }
}
@media (max-width: 520px) {
  .library-overview-grid,
  .library-report-workbench,
  .library-dashboard-grid,
  .library-channel-grid,
  .library-folder-grid {
    grid-template-columns: 1fr;
  }
  .library-workspace-hero h1 {
    font-size: 42px;
  }
  .library-activity-list a {
    grid-template-columns: 38px minmax(0, 1fr);
  }
  .library-activity-list i {
    width: 38px;
    height: 38px;
  }
}

/* Pricing v2: opportunity radar positioning */
.pricing-page-v2 {
  --pricing-ink: #06070b;
  --pricing-soft: #f8fafc;
  --pricing-blue: #2563eb;
  --pricing-cyan: #06b6d4;
  --pricing-green: #16a34a;
}
.pricing-page-v2 .pricing-hero {
  padding: 72px 0 58px;
  border-bottom: 1px solid rgba(255,0,51,.13);
  background:
    radial-gradient(circle at 78% 16%, rgba(37,99,235,.16), transparent 30%),
    radial-gradient(circle at 18% 20%, rgba(255,0,51,.13), transparent 28%),
    linear-gradient(135deg, #fff 0%, #f8fbff 54%, #fff3f5 100%);
}
.pricing-page-v2 .pricing-hero-inner {
  max-width: 1040px;
}
.pricing-page-v2 .pricing-hero h1 {
  max-width: 970px;
  margin: 0;
  font-size: clamp(48px, 7vw, 104px);
  line-height: .9;
  letter-spacing: 0;
}
.pricing-page-v2 .hero-text {
  max-width: 820px;
  margin: 22px 0 0;
  color: #334155;
  font-size: clamp(18px, 2.1vw, 24px);
  font-weight: 750;
  line-height: 1.45;
}
.pricing-hero-signal {
  display: inline-flex;
  margin: 22px 0 0;
  border: 1px solid #bfdbfe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  padding: 10px 14px;
  font-weight: 950;
}
.pricing-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}
.pricing-microcopy {
  display: block;
  margin-top: 14px;
  color: #64748b;
  font-size: 14px;
  font-weight: 850;
}
.pricing-main-section {
  padding-top: 42px;
}
.pricing-plan-grid {
  align-items: start;
  gap: 22px;
}
.pricing-page-v2 .pricing-plan-card {
  border-radius: 28px;
  padding: 28px;
}
.pricing-page-v2 .pricing-plan-plus {
  border-color: #93c5fd;
  background:
    radial-gradient(circle at 94% 0%, rgba(22,163,74,.14), transparent 28%),
    linear-gradient(135deg, #fff 0%, #f8fbff 58%, #fff7ed 100%);
  box-shadow: 0 30px 86px rgba(37,99,235,.16);
}
.pricing-page-v2 .pricing-card-head {
  gap: 9px;
  padding-right: 0;
}
.pricing-page-v2 .pricing-card-head h2 {
  margin: 0;
  color: var(--pricing-ink);
  font-size: clamp(30px, 4vw, 48px);
  line-height: 1;
}
.pricing-page-v2 .pricing-card-head strong {
  color: var(--pricing-ink);
  font-size: clamp(44px, 6vw, 76px);
}
.pricing-page-v2 .pricing-card-head p {
  margin: 0;
  max-width: 720px;
  color: #334155;
  font-weight: 850;
  line-height: 1.5;
}
.pricing-plan-badge,
.pricing-ribbon {
  display: inline-flex;
  width: fit-content;
  border-radius: 999px;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.pricing-plan-badge {
  border: 1px solid #fecdd3;
  background: #fff1f2;
  color: var(--primary);
}
.pricing-page-v2 .pricing-ribbon {
  position: absolute;
  top: 22px;
  right: 22px;
  border: 1px solid #86efac;
  background: #ecfdf5;
  color: #047857;
}
.pricing-page-v2 .pricing-features li {
  background: #fff;
}
.pricing-section-block {
  padding-top: 34px;
  padding-bottom: 10px;
}
.section-heading {
  display: grid;
  gap: 8px;
  margin-bottom: 20px;
}
.section-heading h2 {
  max-width: 900px;
  margin: 0;
  font-size: clamp(34px, 4.8vw, 64px);
  line-height: .95;
}
.pricing-benefit-grid,
.pricing-use-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.pricing-benefit-grid article,
.pricing-use-grid article,
.pricing-steps article {
  border: 1px solid var(--line);
  border-radius: 22px;
  background: #fff;
  padding: 22px;
  box-shadow: 0 18px 50px rgba(120,0,20,.06);
}
.pricing-benefit-grid span,
.pricing-steps span {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  margin-bottom: 14px;
  border-radius: 14px;
  background: linear-gradient(135deg, var(--primary), var(--pricing-blue));
  color: #fff;
  font-weight: 950;
}
.pricing-benefit-grid h3,
.pricing-use-grid h3,
.pricing-steps h3 {
  margin: 0 0 8px;
  font-size: 22px;
  line-height: 1.05;
}
.pricing-benefit-grid p,
.pricing-use-grid p,
.pricing-steps p {
  margin: 0;
  color: #334155;
  font-weight: 800;
  line-height: 1.55;
}
.pricing-steps {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
}
.pricing-compare-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(15,23,42,.07);
}
.pricing-compare-table {
  width: 100%;
  min-width: 780px;
  border-collapse: collapse;
}
.pricing-compare-table th,
.pricing-compare-table td {
  border-bottom: 1px solid #e5e7eb;
  padding: 15px 16px;
  text-align: left;
  vertical-align: top;
  font-weight: 850;
}
.pricing-compare-table thead th {
  position: sticky;
  top: 0;
  background: #f8fafc;
  color: #0f172a;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.pricing-compare-table tbody th {
  color: #0f172a;
}
.pricing-compare-table tbody td:nth-child(3) {
  color: #065f46;
  background: #f0fdf4;
}
.pricing-faq {
  display: grid;
  gap: 10px;
}
.pricing-faq details {
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
  padding: 0;
  overflow: hidden;
  box-shadow: 0 12px 34px rgba(120,0,20,.05);
}
.pricing-faq summary {
  cursor: pointer;
  padding: 18px 20px;
  color: #0f172a;
  font-size: 17px;
  font-weight: 950;
}
.pricing-faq p {
  margin: 0;
  border-top: 1px solid #e5e7eb;
  padding: 16px 20px 20px;
  color: #334155;
  font-weight: 800;
  line-height: 1.6;
}
.pricing-final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  margin: 38px auto 56px;
  border: 1px solid #fecdd3;
  border-radius: 28px;
  background:
    radial-gradient(circle at 92% 8%, rgba(255,0,51,.16), transparent 28%),
    linear-gradient(135deg, #fff, #fff7ed);
  padding: 30px;
  box-shadow: 0 24px 70px rgba(255,0,51,.09);
}
.pricing-final-cta h2 {
  margin: 0;
  font-size: clamp(34px, 4vw, 56px);
  line-height: .96;
}
.pricing-final-cta p:not(.eyebrow) {
  max-width: 720px;
  margin: 12px 0 0;
  color: #334155;
  font-weight: 850;
  line-height: 1.55;
}
@media (max-width: 980px) {
  .pricing-benefit-grid,
  .pricing-use-grid,
  .pricing-steps,
  .pricing-final-cta {
    grid-template-columns: 1fr;
  }
  .pricing-page-v2 .pricing-ribbon {
    position: static;
    margin-bottom: 10px;
  }
}
@media (max-width: 620px) {
  .pricing-page-v2 .pricing-hero {
    padding: 46px 0 36px;
  }
  .pricing-page-v2 .pricing-plan-card,
  .pricing-final-cta {
    border-radius: 22px;
    padding: 20px;
  }
  .pricing-hero-actions .button,
  .pricing-final-cta .button {
    width: 100%;
  }
  .pricing-compare-table {
    min-width: 680px;
  }
}

/* SEO alternative landings */
.alternative-landing {
  background: linear-gradient(180deg, #fff 0%, #f8fbff 34%, #fff7f8 72%, #fff 100%);
}
.alternative-hero {
  border-bottom: 1px solid rgba(255,0,51,.13);
  background: linear-gradient(135deg, #fff 0%, #eef6ff 54%, #fff1f4 100%);
  padding: 70px 0 58px;
}
.alternative-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  gap: 34px;
  align-items: center;
}
.alternative-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 18px;
  color: #64748b;
  font-size: 13px;
  font-weight: 900;
}
.alternative-breadcrumb a {
  color: #1d4ed8;
}
.alternative-breadcrumb strong {
  color: #0f172a;
}
.alternative-hero h1 {
  max-width: 880px;
  margin: 0;
  color: #050507;
  font-size: 62px;
  line-height: .96;
  letter-spacing: 0;
}
.alternative-hero-text {
  max-width: 780px;
  margin: 22px 0 0;
  color: #334155;
  font-size: 20px;
  font-weight: 780;
  line-height: 1.5;
}
.alternative-hero-actions,
.alternative-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-top: 28px;
}
.alternative-hero-note {
  margin: 14px 0 0;
  color: #64748b;
  font-size: 14px;
  font-weight: 850;
}
.alternative-preview {
  display: grid;
  gap: 18px;
  border: 1px solid #c7d2fe;
  border-radius: 28px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  padding: 24px;
  box-shadow: 0 28px 80px rgba(37,99,235,.14);
}
.alternative-preview-head,
.alternative-preview-metric,
.alternative-preview-list span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.alternative-preview-head {
  color: #64748b;
  font-size: 13px;
  font-weight: 950;
}
.alternative-preview-head strong {
  border-radius: 999px;
  background: #ecfdf5;
  color: #047857;
  padding: 7px 10px;
}
.alternative-preview-metric {
  border: 1px solid #fecdd3;
  border-radius: 20px;
  background: #fff1f2;
  padding: 18px;
}
.alternative-preview-metric span {
  color: #9f1239;
  font-weight: 950;
}
.alternative-preview-metric strong {
  color: #050507;
  font-size: 48px;
  line-height: 1;
}
.alternative-preview-bars {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 10px;
  align-items: end;
  min-height: 150px;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  background: #fff;
  padding: 18px;
}
.alternative-preview-bars i {
  display: block;
  border-radius: 10px 10px 4px 4px;
  background: linear-gradient(180deg, #2563eb, #ff0033);
}
.alternative-preview-list {
  display: grid;
  gap: 9px;
}
.alternative-preview-list span {
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  padding: 11px 12px;
  font-size: 13px;
  font-weight: 900;
}
.alternative-section,
.alternative-split-section,
.alternative-plus-section,
.alternative-link-section,
.alternative-final-cta,
.alternative-disclaimer {
  margin-top: 46px;
}
.alternative-section-head {
  display: grid;
  gap: 9px;
  max-width: 960px;
  margin-bottom: 22px;
}
.alternative-section-head h2,
.alternative-panel h2,
.alternative-plus-section h2,
.alternative-final-cta h2 {
  margin: 0;
  color: #050507;
  font-size: 42px;
  line-height: 1.02;
  letter-spacing: 0;
}
.alternative-section-head p:not(.eyebrow),
.alternative-panel p,
.alternative-plus-section p,
.alternative-final-cta p {
  margin: 0;
  color: #334155;
  font-weight: 800;
  line-height: 1.6;
}
.alternative-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.alternative-card-grid.three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.alternative-card-grid article,
.alternative-panel,
.alternative-use-grid article,
.alternative-plus-section,
.alternative-final-cta,
.alternative-faq details {
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 18px 52px rgba(120,0,20,.06);
}
.alternative-card-grid article {
  padding: 22px;
}
.alternative-card-grid article span {
  display: inline-grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 16px;
  border-radius: 14px;
  background: linear-gradient(135deg, #ff0033, #2563eb);
  color: #fff;
  font-size: 12px;
  font-weight: 950;
}
.alternative-card-grid h3 {
  margin: 0 0 8px;
  color: #0f172a;
  font-size: 22px;
  line-height: 1.08;
}
.alternative-card-grid p {
  margin: 0;
  color: #334155;
  font-weight: 800;
}
.alternative-split-section {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 18px;
}
.alternative-split-section.flush {
  margin-top: 0;
}
.alternative-panel {
  padding: 28px;
}
.alternative-panel.subtle {
  border-color: #bfdbfe;
  background: linear-gradient(180deg, #fff 0%, #eff6ff 100%);
}
.alternative-check-list,
.alternative-plus-section ul {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.alternative-check-list li,
.alternative-plus-section li {
  position: relative;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #f8fafc;
  color: #0f172a;
  padding: 12px 12px 12px 38px;
  font-weight: 850;
}
.alternative-check-list li:before,
.alternative-plus-section li:before {
  content: "";
  position: absolute;
  left: 14px;
  top: 18px;
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: #16a34a;
}
.alternative-compare-wrap {
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 20px 60px rgba(15,23,42,.07);
}
.alternative-compare-table {
  width: 100%;
  min-width: 820px;
  border-collapse: collapse;
}
.alternative-compare-table th,
.alternative-compare-table td {
  border-bottom: 1px solid #e5e7eb;
  padding: 15px 16px;
  text-align: left;
  vertical-align: top;
  font-weight: 850;
}
.alternative-compare-table thead th {
  background: #f8fafc;
  color: #0f172a;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0;
}
.alternative-compare-table tbody th {
  color: #0f172a;
}
.alternative-compare-table tbody td:nth-child(2) {
  color: #065f46;
  background: #f0fdf4;
}
.alternative-use-grid,
.alternative-link-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.alternative-use-grid article,
.alternative-link-grid a {
  padding: 18px;
  color: #0f172a;
  font-weight: 900;
}
.alternative-link-grid a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #dbeafe;
  border-radius: 18px;
  background: #f8fbff;
}
.alternative-link-grid a:after {
  content: ">";
  color: #ff0033;
  font-weight: 950;
}
.alternative-plus-section {
  display: grid;
  grid-template-columns: minmax(0, .82fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #fff 0%, #f8fbff 52%, #fff7ed 100%);
  padding: 30px;
}
.alternative-plus-section .button {
  margin-top: 22px;
}
.alternative-plus-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.alternative-plus-columns article {
  border: 1px solid #dbeafe;
  border-radius: 18px;
  background: rgba(255,255,255,.76);
  padding: 18px;
}
.alternative-plus-columns h3 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
}
.alternative-plus-columns ul {
  margin-top: 14px;
}
.alternative-quote-panel {
  border-color: #fecdd3;
  background: linear-gradient(135deg, #fff1f2, #eff6ff);
}
.alternative-quote-panel strong {
  display: block;
  color: #0f172a;
  font-size: 30px;
  line-height: 1.1;
}
.alternative-faq {
  display: grid;
  gap: 10px;
}
.alternative-faq details {
  overflow: hidden;
}
.alternative-faq summary {
  cursor: pointer;
  padding: 18px 20px;
  color: #0f172a;
  font-size: 17px;
  font-weight: 950;
}
.alternative-faq p {
  margin: 0;
  border-top: 1px solid #e5e7eb;
  padding: 16px 20px 20px;
  color: #334155;
  font-weight: 800;
  line-height: 1.6;
}
.alternative-final-cta {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  border-color: #fecdd3;
  background: linear-gradient(135deg, #fff 0%, #fff1f2 52%, #eff6ff 100%);
  padding: 32px;
}
.alternative-final-actions {
  justify-content: flex-end;
  margin-top: 0;
}
.alternative-disclaimer {
  margin-bottom: 54px;
}
.alternative-disclaimer p {
  margin: 0;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #f8fafc;
  color: #64748b;
  padding: 16px 18px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.55;
}
@media (max-width: 980px) {
  .alternative-hero-grid,
  .alternative-split-section,
  .alternative-plus-section,
  .alternative-final-cta,
  .alternative-card-grid,
  .alternative-card-grid.three,
  .alternative-use-grid,
  .alternative-link-grid,
  .alternative-plus-columns {
    grid-template-columns: 1fr;
  }
  .alternative-preview {
    max-width: 680px;
  }
  .alternative-final-actions {
    justify-content: flex-start;
  }
}
@media (max-width: 620px) {
  .alternative-hero {
    padding: 44px 0 34px;
  }
  .alternative-hero h1 {
    font-size: 40px;
  }
  .alternative-section-head h2,
  .alternative-panel h2,
  .alternative-plus-section h2,
  .alternative-final-cta h2 {
    font-size: 32px;
  }
  .alternative-hero-text {
    font-size: 17px;
  }
  .alternative-panel,
  .alternative-plus-section,
  .alternative-final-cta,
  .alternative-preview {
    border-radius: 20px;
    padding: 20px;
  }
  .alternative-hero-actions .button,
  .alternative-final-actions .button {
    width: 100%;
  }
  .alternative-compare-table {
    min-width: 720px;
  }
}

/* Pricing conversion polish */
.pricing-extension-offer-banner {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  margin-bottom: 18px;
  border: 1px solid #bfdbfe;
  border-radius: 18px;
  background: linear-gradient(135deg, #eff6ff, #fff7ed);
  padding: 15px 18px;
  box-shadow: 0 14px 42px rgba(37,99,235,.08);
}
.pricing-extension-offer-banner strong {
  color: #1d4ed8;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-size: 12px;
}
.pricing-extension-offer-banner span {
  color: #0f172a;
  font-weight: 900;
}
.pricing-page-v2 .pricing-plan-card {
  display: flex;
  flex-direction: column;
  min-height: 0;
  gap: 16px;
  padding: 24px;
}
.pricing-page-v2 .pricing-card-head {
  display: grid;
  gap: 8px;
}
.pricing-page-v2 .pricing-card-head strong {
  letter-spacing: 0;
  line-height: .95;
}
.pricing-page-v2 .pricing-card-head em {
  color: #475569;
  font-size: 14px;
  font-style: normal;
  font-weight: 900;
  line-height: 1.4;
}
.pricing-page-v2 .pricing-card-head .pricing-saving-pill {
  display: inline-flex;
  width: fit-content;
  border: 1px solid #bbf7d0;
  border-radius: 999px;
  background: #f0fdf4;
  color: #047857;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 950;
}
.pricing-page-v2 .pricing-card-head .pricing-plan-micro {
  border: 1px solid #dbeafe;
  border-radius: 14px;
  background: #eff6ff;
  padding: 11px 12px;
  color: #1e3a8a;
  font-size: 13px;
}
.pricing-page-v2 .pricing-ribbon {
  position: static;
  margin-bottom: 0;
  align-self: flex-start;
  white-space: normal;
}
.pricing-page-v2 .pricing-features {
  display: grid;
  gap: 8px;
  margin: 0;
}
.pricing-page-v2 .pricing-features li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px 12px;
  line-height: 1.32;
}
.pricing-page-v2 .pricing-features li:before {
  position: static;
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin-top: 1px;
  border-radius: 7px;
  background: linear-gradient(135deg, var(--primary), #2563eb);
  box-shadow: 0 7px 16px rgba(255,0,51,.14);
}
.pricing-page-v2 .pricing-features li:after {
  content: "";
  position: absolute;
  left: 18px;
  top: 17px;
  width: 7px;
  height: 4px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
}
.pricing-page-v2 .pricing-card .button {
  margin-top: 4px;
}
.pricing-billing-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 4px;
}
.pricing-billing-actions form {
  margin: 0;
  display: contents;
}
.pricing-billing-actions form:first-child .pricing-coupon-field {
  grid-column: 1 / -1;
}
.pricing-coupon-field {
  display: grid;
  gap: 6px;
  margin-bottom: 8px;
}
.pricing-coupon-field span {
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.pricing-coupon-field input {
  width: 100%;
  border: 1px solid #cbd5e1;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  padding: 12px 13px;
  font: inherit;
  font-weight: 850;
  outline: none;
  box-sizing: border-box;
}
.pricing-coupon-field input:focus {
  border-color: rgba(255, 0, 51, 0.55);
  box-shadow: 0 0 0 3px rgba(255, 0, 51, 0.08);
}
.pricing-billing-actions button {
  width: 100%;
  min-height: 58px;
  border-radius: 16px;
  flex-direction: column;
  gap: 2px;
}
.pricing-billing-actions .pricing-yearly-button {
  border: 1px solid #cbd5e1;
  background: #fff;
  color: #0f172a;
  box-shadow: none;
}
.pricing-billing-actions .pricing-yearly-button:hover {
  background: #f8fafc;
  color: #0f172a;
}
@media (max-width: 620px) {
  .pricing-billing-actions {
    grid-template-columns: 1fr;
  }
}

.dashboard-billing-card {
  border: 1px solid #fecdd3;
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff 0%, #fff7f8 58%, #f8fbff 100%);
  box-shadow: 0 22px 55px rgba(15, 23, 42, 0.08);
  padding: 24px;
  margin-bottom: 28px;
}
.billing-card-head,
.billing-subhead {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 18px;
}
.billing-card-head h2,
.billing-subhead h3 {
  margin: 0;
}
.billing-status-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 20px 0;
}
.billing-status-grid > div {
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.9);
  padding: 14px;
}
.billing-status-grid span,
.billing-invoice-row span {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.billing-status-grid strong {
  display: block;
  margin-top: 4px;
  color: #0f172a;
  font-size: 19px;
  line-height: 1.15;
}
.billing-warning,
.billing-note,
.billing-empty,
.billing-error-card {
  border: 1px solid #fed7aa;
  border-radius: 16px;
  background: #fff7ed;
  color: #9a3412;
  padding: 14px 16px;
  font-weight: 800;
}
.billing-note,
.billing-empty {
  border-color: #dbeafe;
  background: #eff6ff;
  color: #1e3a8a;
}
.billing-invoices {
  margin-top: 22px;
}
.billing-invoice-list {
  display: grid;
  gap: 10px;
  margin-top: 12px;
}
.billing-invoice-row {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 0.8fr) auto;
  gap: 14px;
  align-items: center;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fff;
  padding: 12px;
}
.billing-invoice-row strong {
  color: #0f172a;
}
.button.small {
  min-height: 0;
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 13px;
}
.admin-billing-stack,
.admin-invoice-list {
  display: grid;
  gap: 6px;
}
.admin-invoices-details summary {
  cursor: pointer;
  font-weight: 950;
  color: #ff0033;
}
.admin-invoice-item {
  display: grid;
  gap: 2px;
  padding: 8px 0;
  border-bottom: 1px solid #fee2e2;
}
.admin-inline-form {
  margin-top: 8px;
}
.admin-inline-form button {
  min-height: 0;
  padding: 8px 10px;
  border-radius: 12px;
  font-size: 12px;
}
.danger-text {
  color: #b91c1c;
  font-weight: 900;
}
@media (max-width: 760px) {
  .billing-card-head,
  .billing-subhead {
    display: grid;
  }
  .billing-status-grid,
  .billing-invoice-row {
    grid-template-columns: 1fr;
  }
}

/* Impact Studio workspace */
.impact-studio-shell {
  min-height: calc(100vh - 88px);
  padding: 42px 0 132px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 0, 51, .08), transparent 32%),
    radial-gradient(circle at 90% 12%, rgba(37, 99, 235, .10), transparent 34%),
    linear-gradient(180deg, #fff 0%, #fff7f8 52%, #f8fbff 100%);
}
.impact-studio-container {
  display: grid;
  gap: 22px;
}
.impact-studio-hero,
.impact-studio-layout,
.impact-studio-section-head,
.impact-studio-panel,
.impact-studio-ai-meter {
  border: 1px solid #fecdd3;
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 70px rgba(15, 23, 42, .08);
}
.impact-studio-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 24px;
  align-items: center;
  padding: 28px;
}
.impact-studio-hero h1 {
  margin: 0 0 10px;
  font-size: clamp(42px, 6vw, 78px);
  line-height: .95;
  letter-spacing: 0;
}
.impact-studio-hero p:not(.eyebrow) {
  max-width: 760px;
  color: #334155;
  font-size: 18px;
  line-height: 1.55;
}
.impact-studio-ai-meter {
  display: grid;
  gap: 5px;
  padding: 18px;
  border-color: #bfdbfe;
  background: linear-gradient(135deg, #eff6ff, #fff);
}
.impact-studio-ai-meter span,
.impact-studio-ai-meter small {
  color: #64748b;
  font-weight: 900;
}
.impact-studio-ai-meter strong {
  color: #0f172a;
  font-size: 28px;
  line-height: 1;
}
.impact-studio-layout {
  display: grid;
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
}
.impact-studio-sidebar {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 18px;
  border-right: 1px solid #fee2e2;
  background: linear-gradient(180deg, #fff 0%, #fff7f8 100%);
}
.impact-studio-sidebar button,
.impact-studio-collection-list button {
  border: 1px solid #fee2e2;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  font: inherit;
  font-weight: 950;
  padding: 14px 16px;
  text-align: left;
  transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}
.impact-studio-sidebar button:hover,
.impact-studio-collection-list button:hover {
  border-color: #ff8aa1;
  transform: translateY(-1px);
}
.impact-studio-sidebar button.active,
.impact-studio-collection-list button.active {
  border-color: #ff0033;
  background: #ff0033;
  color: #fff;
  box-shadow: 0 16px 36px rgba(255, 0, 51, .20);
}
.impact-studio-content {
  min-width: 0;
  padding: 18px;
}
.impact-studio-panel {
  display: none;
  padding: 18px;
}
.impact-studio-panel.active {
  display: block;
}
.impact-studio-section-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 18px;
  padding: 18px;
  margin-bottom: 18px;
  border-color: #dbeafe;
  box-shadow: none;
}
.impact-studio-section-head h2 {
  margin: 0 0 5px;
}
.impact-studio-section-head p:not(.eyebrow) {
  margin: 0;
  color: #475569;
  line-height: 1.45;
}
.studio-config-warning {
  border: 1px solid #fed7aa;
  border-radius: 14px;
  background: #fff7ed;
  color: #9a3412;
  font-weight: 900;
  padding: 12px 14px;
}
.impact-studio-channel-list {
  gap: 20px;
}
.impact-studio-collections-grid {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 18px;
}
.impact-studio-collection-list {
  display: grid;
  align-content: start;
  gap: 10px;
}
.impact-studio-collection-list button {
  display: grid;
  gap: 4px;
}
.impact-studio-collection-list span {
  color: inherit;
  opacity: .78;
  font-size: 12px;
}
.impact-studio-collection-panel {
  display: none;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: #fff;
  padding: 18px;
}
.impact-studio-collection-panel.active {
  display: grid;
  gap: 14px;
}
.impact-studio-collection-title {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
}
.impact-studio-collection-title h3 {
  margin: 0 0 4px;
  font-size: 28px;
}
.impact-studio-saved-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.impact-studio-saved-grid.compact {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.impact-studio-saved-card {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #f8fafc;
  padding: 10px;
  color: #0f172a;
  text-decoration: none;
}
.impact-studio-saved-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  object-fit: cover;
  background: #e2e8f0;
}
.impact-studio-saved-grid.compact .impact-studio-saved-card {
  grid-template-columns: 52px minmax(0, 1fr);
}
.impact-studio-saved-grid.compact .impact-studio-saved-card img {
  aspect-ratio: 1;
  border-radius: 14px;
}
.impact-studio-saved-card strong,
.impact-studio-saved-card small {
  display: block;
}
.impact-studio-saved-card strong {
  line-height: 1.22;
}
.impact-studio-saved-card small {
  margin-top: 4px;
  color: #64748b;
  font-weight: 800;
}
.impact-studio-images-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.impact-studio-image-card {
  display: grid;
  gap: 12px;
  border: 1px solid #dbeafe;
  border-radius: 20px;
  background: #fff;
  padding: 12px;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .06);
}
.impact-studio-image-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 16px;
  background: #0f172a;
  object-fit: contain;
}
.impact-studio-image-card div {
  display: grid;
  gap: 6px;
}
.impact-studio-image-card strong,
.impact-studio-image-card small {
  display: block;
}
.impact-studio-image-card small {
  color: #64748b;
  font-weight: 850;
}
.impact-studio-chat {
  position: fixed;
  left: 50%;
  right: auto;
  bottom: 20px;
  z-index: 60;
  width: min(1120px, calc(100vw - 48px));
  transform: translateX(-50%);
  pointer-events: none;
}
.impact-studio-chat:not(.is-open) {
  left: auto;
  right: 24px;
  width: min(520px, calc(100vw - 32px));
  transform: none;
}
.impact-studio-chat-tab,
.impact-studio-chat-panel {
  pointer-events: auto;
}
.impact-studio-chat-tab {
  display: grid;
  gap: 4px;
  width: 100%;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 20px;
  background: linear-gradient(135deg, #070711, #111827 52%, #ff0033);
  color: #fff;
  cursor: pointer;
  padding: 16px 18px;
  text-align: left;
  box-shadow: 0 24px 60px rgba(15, 23, 42, .32);
}
.impact-studio-chat-tab span {
  color: #ffccd6;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.impact-studio-chat-tab strong {
  font-size: 16px;
}
.impact-studio-chat-panel {
  display: none;
  overflow: hidden;
  border: 1px solid #fecdd3;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 30px 90px rgba(15, 23, 42, .28);
}
.impact-studio-chat.is-open .impact-studio-chat-tab {
  display: none;
}
.impact-studio-chat.is-open .impact-studio-chat-panel {
  display: grid;
  max-height: min(780px, calc(100vh - 44px));
  grid-template-rows: auto auto auto minmax(280px, 1fr) auto auto;
}
.impact-studio-chat-panel header,
.impact-studio-chat-quotas,
.impact-studio-scope,
.impact-studio-chat-form,
.impact-studio-chat-note {
  padding: 14px 16px;
}
.impact-studio-chat-panel header {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: flex-start;
  border-bottom: 1px solid #fee2e2;
  background: linear-gradient(135deg, #fff7f8, #eff6ff);
}
.impact-studio-chat-panel header h2 {
  margin: 0;
}
.impact-studio-chat-panel header button {
  border: 0;
  border-radius: 999px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  font-size: 22px;
  font-weight: 950;
  width: 38px;
  height: 38px;
}
.impact-studio-chat-panel header .impact-studio-clear-chat {
  order: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  width: auto;
  min-width: 0;
  max-width: 148px;
  height: 36px;
  margin-left: auto;
  padding: 0 12px;
  border: 1px solid #e2e8f0;
  color: #334155;
  font-size: 12px;
  line-height: 1;
  white-space: nowrap;
  box-shadow: 0 8px 18px rgba(15, 23, 42, .06);
}
.impact-studio-chat-panel header [data-impact-studio-chat-toggle] {
  order: 3;
  flex: 0 0 auto;
}
.impact-studio-chat-panel header .impact-studio-clear-chat span[aria-hidden] {
  font-size: 15px;
  line-height: 1;
}
.impact-studio-chat-panel header .impact-studio-clear-chat:disabled {
  opacity: .45;
  cursor: default;
  box-shadow: none;
}
.impact-studio-clear-modal {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(15, 23, 42, .44);
  backdrop-filter: blur(7px);
}
.impact-studio-clear-dialog {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 14px;
  width: min(480px, 100%);
  padding: 18px;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, .2);
}
.impact-studio-clear-icon {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  background: #eff6ff;
  color: #1d4ed8;
  font-size: 20px;
  font-weight: 950;
}
.impact-studio-clear-dialog h2 {
  margin: 0 0 7px;
  color: #0f172a;
  font-size: 18px;
  line-height: 1.2;
}
.impact-studio-clear-dialog p {
  margin: 0;
  color: #475569;
  font-size: 14px;
  line-height: 1.5;
}
.impact-studio-clear-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 4px;
}
@media (max-width: 640px) {
  .impact-studio-chat-panel header .impact-studio-clear-chat {
    max-width: 42px;
    width: 38px;
    height: 38px;
    padding: 0;
  }
  .impact-studio-chat-panel header .impact-studio-clear-chat span:not([aria-hidden]) {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .impact-studio-clear-dialog {
    grid-template-columns: 1fr;
  }
  .impact-studio-clear-actions {
    flex-direction: column-reverse;
  }
  .impact-studio-clear-actions .button {
    width: 100%;
  }
}
.impact-studio-chat-quotas {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border-bottom: 1px solid #f1f5f9;
}
.impact-studio-chat-quotas span {
  border: 1px solid #dbeafe;
  border-radius: 999px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: 12px;
  font-weight: 950;
  padding: 7px 10px;
}
.impact-studio-scope {
  display: grid;
  gap: 6px;
  border-bottom: 1px solid #f1f5f9;
}
.impact-studio-scope span {
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}
.impact-studio-scope select,
.impact-studio-chat-form textarea {
  width: 100%;
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  font: inherit;
  font-weight: 800;
  padding: 11px 12px;
}
.impact-studio-chat-messages {
  display: grid;
  align-content: start;
  gap: 12px;
  overflow-y: auto;
  padding: 16px;
  background: #f8fafc;
}
.impact-studio-chat-empty {
  border: 1px dashed #cbd5e1;
  border-radius: 18px;
  background: #fff;
  color: #64748b;
  font-weight: 900;
  padding: 18px;
  text-align: center;
}
.impact-studio-chat-empty.error {
  border-color: #fecdd3;
  color: #be123c;
}
.impact-studio-message {
  display: grid;
  gap: 6px;
  max-width: 88%;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  padding: 12px;
}
.impact-studio-message.user {
  justify-self: end;
  border-color: #ff8aa1;
  background: #fff1f2;
}
.impact-studio-message.is-error {
  border-color: #fecdd3;
  background: #fff1f2;
}
.impact-studio-message.is-loading .impact-studio-message-content::after {
  content: '';
  display: inline-block;
  width: 1.1em;
  animation: studioDots 1.2s steps(4, end) infinite;
}
@keyframes studioDots {
  0% { content: ''; }
  25% { content: '.'; }
  50% { content: '..'; }
  75%, 100% { content: '...'; }
}
.impact-studio-message-role {
  color: #ff0033;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.impact-studio-message-content {
  color: #0f172a;
  font-weight: 520;
  line-height: 1.45;
}
.impact-studio-message-content.is-typing {
  min-height: 1.45em;
}
.impact-studio-typing-status {
  color: #64748b;
  font-weight: 850;
}
.impact-studio-typing-cursor {
  display: inline-block;
  width: 7px;
  height: 1.05em;
  margin-left: 3px;
  border-radius: 999px;
  background: #ff0033;
  vertical-align: -.15em;
  animation: studioTypingCursor .78s steps(2, start) infinite;
}
@keyframes studioTypingCursor {
  50% { opacity: .18; }
}
.impact-studio-image-progress,
.impact-studio-image-result-progress {
  display: grid;
  gap: 8px;
  border: 1px solid #dbeafe;
  border-radius: 16px;
  background: linear-gradient(135deg, #eff6ff, #fff7f9);
  padding: 12px;
}
.impact-studio-image-progress strong,
.impact-studio-image-result-progress {
  color: #172033;
  font-weight: 950;
}
.impact-studio-image-progress small {
  color: #64748b;
  font-weight: 800;
}
.impact-studio-image-progress-steps {
  display: flex;
  gap: 7px;
}
.impact-studio-image-progress-steps span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border: 1px solid #cbd5e1;
  border-radius: 999px;
  color: #64748b;
  background: #fff;
  font-size: 12px;
  font-weight: 950;
}
.impact-studio-image-progress-steps span.is-active {
  border-color: #ff0033;
  color: #fff;
  background: #ff0033;
  box-shadow: 0 8px 18px rgba(255, 0, 51, .22);
}
.impact-studio-image-progress-steps span.is-done {
  border-color: #16a34a;
  color: #166534;
  background: #dcfce7;
}
.impact-studio-chat-image {
  display: grid;
  gap: 10px;
  margin-top: 6px;
}
.impact-studio-image-open,
.impact-studio-thumbnail-open {
  display: block;
  width: 100%;
  border: 0;
  background: transparent;
  cursor: zoom-in;
  padding: 0;
  text-align: inherit;
}
.impact-studio-chat-image img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 14px;
  object-fit: contain;
  background: #020617;
}
.impact-studio-chat-image div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.impact-studio-chat-image span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
}
.impact-studio-affiliate-card {
  display: grid;
  gap: 7px;
  margin-top: 8px;
  border: 1px solid #bbf7d0;
  border-radius: 16px;
  background: linear-gradient(135deg, #f0fdf4, #eff6ff);
  padding: 12px;
}
.impact-studio-affiliate-card p {
  margin: 0;
  color: #334155;
  font-weight: 800;
}
.impact-studio-affiliate-card span {
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}
.impact-studio-chat-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  border-top: 1px solid #fee2e2;
  background: #fff;
}
.impact-studio-chat-form textarea {
  min-height: 52px;
  resize: vertical;
}
.impact-studio-chat-note {
  padding-top: 0;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
}
.impact-studio-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  z-index: 90;
  max-width: min(520px, calc(100vw - 32px));
  transform: translate(-50%, 18px);
  opacity: 0;
  border: 1px solid #bbf7d0;
  border-radius: 16px;
  background: #f0fdf4;
  color: #166534;
  box-shadow: 0 20px 60px rgba(15, 23, 42, .20);
  font-weight: 900;
  padding: 14px 16px;
  transition: opacity .2s ease, transform .2s ease;
}
.impact-studio-toast.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
}
@media (max-width: 980px) {
  .impact-studio-hero,
  .impact-studio-layout,
  .impact-studio-collections-grid,
  .impact-studio-images-grid {
    grid-template-columns: 1fr;
  }
  .impact-studio-sidebar {
    flex-direction: row;
    overflow-x: auto;
    border-right: 0;
    border-bottom: 1px solid #fee2e2;
  }
  .impact-studio-sidebar button {
    min-width: 160px;
  }
  .impact-studio-saved-grid,
  .impact-studio-saved-grid.compact {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .impact-studio-shell {
    padding-top: 24px;
  }
  .impact-studio-hero,
  .impact-studio-content,
  .impact-studio-panel,
  .impact-studio-section-head,
  .impact-studio-collection-panel {
    padding: 14px;
    border-radius: 18px;
  }
  .impact-studio-section-head,
  .impact-studio-collection-title {
    display: grid;
  }
  .impact-studio-chat {
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: auto;
    transform: none;
  }
  .impact-studio-chat:not(.is-open) {
    left: 12px;
    right: 12px;
    width: auto;
    transform: none;
  }
  .impact-studio-chat.is-open .impact-studio-chat-panel {
    max-height: calc(100vh - 24px);
  }
  .impact-studio-chat-form {
    grid-template-columns: 1fr;
  }
  .impact-studio-message {
    max-width: 96%;
  }
}

/* Impact Studio chat-first workspace */
.impact-studio-chat-first {
  padding: 0;
  min-height: calc(100vh - 82px);
  background:
    radial-gradient(circle at 20% 0%, rgba(255, 0, 51, .08), transparent 34%),
    radial-gradient(circle at 82% 12%, rgba(37, 99, 235, .10), transparent 36%),
    linear-gradient(135deg, #fff7f9 0%, #f8fbff 46%, #fff 100%);
}
.impact-studio-app {
  display: grid;
  grid-template-columns: 284px minmax(0, 1fr);
  min-height: calc(100vh - 82px);
}
.impact-studio-app-sidebar {
  position: sticky;
  top: 0;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-height: calc(100vh - 82px);
  padding: 22px 16px;
  color: #f8fafc;
  background:
    radial-gradient(circle at 15% 0%, rgba(255, 0, 61, .26), transparent 30%),
    radial-gradient(circle at 100% 20%, rgba(99, 102, 241, .18), transparent 32%),
    linear-gradient(180deg, #071120 0%, #0e1728 55%, #070b14 100%);
  border-right: 1px solid rgba(255, 255, 255, .08);
  box-shadow: 20px 0 60px rgba(15, 23, 42, .18);
  z-index: 5;
}
.impact-studio-side-brand {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  column-gap: 12px;
  align-items: center;
  color: #fff;
  text-decoration: none;
}
.impact-studio-side-brand span {
  grid-row: span 2;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  background:
    radial-gradient(circle at 24% 18%, rgba(255, 255, 255, .34), transparent 24%),
    linear-gradient(135deg, #ff0033 0%, #fb3f78 52%, #6a4cff 100%);
  box-shadow: 0 16px 34px rgba(255, 0, 61, .34), inset 0 1px 0 rgba(255, 255, 255, .24);
  font-weight: 950;
}
.impact-studio-side-brand strong {
  font-size: 18px;
  font-weight: 950;
}
.impact-studio-side-brand small {
  color: #94a3b8;
  font-weight: 900;
}
.impact-studio-side-nav {
  display: grid;
  gap: 8px;
}
.impact-studio-side-nav button,
.impact-studio-side-channel-list button {
  appearance: none;
  border: 0;
  cursor: pointer;
  text-align: left;
  color: #dbeafe;
  background: transparent;
  font: inherit;
}
.impact-studio-side-nav button {
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 46px;
  border-radius: 14px;
  padding: 10px 12px;
  font-weight: 950;
  transition: background .18s ease, color .18s ease, transform .18s ease;
}
.impact-studio-side-nav button span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 10px;
  color: #fff;
  background: rgba(255, 255, 255, .06);
  font-size: 11px;
  font-weight: 950;
}
.impact-studio-side-nav button em {
  margin-left: auto;
  border-radius: 999px;
  background: rgba(255, 0, 51, .18);
  color: #fecdd3;
  font-size: 10px;
  font-style: normal;
  letter-spacing: .08em;
  padding: 4px 7px;
  text-transform: uppercase;
}
.impact-studio-side-nav button:hover,
.impact-studio-side-nav button.active {
  color: #fff;
  background: linear-gradient(115deg, #ff003d 0%, #d91268 46%, #6338f2 100%);
  box-shadow: 0 18px 36px rgba(255, 0, 61, .24), inset 0 1px 0 rgba(255, 255, 255, .18);
  transform: translateX(2px);
}
.impact-studio-side-section {
  display: grid;
  gap: 10px;
  border-top: 1px solid rgba(255, 255, 255, .10);
  padding-top: 14px;
}
.impact-studio-side-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.impact-studio-side-title button {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 10px;
  color: #fff;
  background: rgba(255, 255, 255, .06);
  cursor: pointer;
}
.impact-studio-side-channel-list {
  display: grid;
  gap: 8px;
}
.impact-studio-side-channel-list button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  border-radius: 14px;
  padding: 8px;
}
.impact-studio-side-channel-list button:hover {
  background: rgba(255, 255, 255, .06);
}
.impact-studio-side-channel-list img {
  width: 34px;
  height: 34px;
  border-radius: 999px;
  object-fit: cover;
}
.impact-studio-side-channel-list strong,
.impact-studio-side-channel-list small {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.impact-studio-side-channel-list strong {
  color: #fff;
  font-size: 13px;
}
.impact-studio-side-channel-list small {
  color: #94a3b8;
  font-size: 11px;
  font-weight: 800;
}
.impact-studio-side-plan {
  display: grid;
  gap: 9px;
  margin-top: auto;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 20px;
  background:
    radial-gradient(circle at 20% 0%, rgba(255, 0, 61, .30), transparent 44%),
    radial-gradient(circle at 100% 100%, rgba(59, 130, 246, .18), transparent 42%),
    linear-gradient(140deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .04));
  padding: 14px;
}
.impact-studio-side-plan strong {
  color: #fff;
  font-size: 15px;
}
.impact-studio-side-plan span,
.impact-studio-side-plan small {
  color: #cbd5e1;
  font-weight: 850;
}
.impact-studio-side-plan small {
  display: block;
  font-size: 11px;
}
.impact-studio-plan-meter {
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, .14);
}
.impact-studio-plan-meter i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff0033, #2563eb);
}
.impact-studio-main {
  min-width: 0;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}
.impact-studio-topbar {
  position: sticky;
  top: 0;
  z-index: 4;
  display: flex;
  gap: 18px;
  align-items: center;
  justify-content: space-between;
  min-height: 74px;
  padding: 16px clamp(18px, 3vw, 34px);
  border-bottom: 1px solid rgba(226, 232, 240, .92);
  background: rgba(255, 255, 255, .82);
  backdrop-filter: blur(18px);
}
.impact-studio-topbar-title {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.impact-studio-topbar-title strong {
  font-size: 18px;
  font-weight: 950;
}
.impact-studio-topbar-title span {
  border-left: 1px solid #e2e8f0;
  color: #64748b;
  font-weight: 850;
  padding-left: 10px;
}
.impact-studio-topbar-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
  justify-content: flex-end;
}
.impact-studio-quota-pill,
.impact-studio-upgrade,
.impact-studio-avatar {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 14px;
  font-weight: 950;
}
.impact-studio-quota-pill {
  border: 1px solid #dbeafe;
  background: #f8fbff;
  color: #1e3a8a;
  padding: 8px 12px;
}
.impact-studio-quota-pill.image {
  border-color: #ddd6fe;
  color: #4c1d95;
  background: #faf5ff;
}
.impact-studio-upgrade {
  border: 1px solid #fecdd3;
  background: #fff1f2;
  color: #ff0033;
  padding: 8px 13px;
  text-decoration: none;
}
.impact-studio-avatar {
  width: 40px;
  color: #fff;
  background: linear-gradient(135deg, #ff0033, #4f46e5);
}
.impact-studio-alert {
  margin: 18px clamp(18px, 3vw, 34px) 0;
}
.impact-studio-workspace {
  position: relative;
  min-height: calc(100vh - 156px);
  overflow: hidden;
}
.impact-studio-chat-stage {
  min-width: 0;
  padding: clamp(18px, 3vw, 34px);
  transition: margin-right .24s ease;
}
.impact-studio-workspace.has-drawer .impact-studio-chat-stage {
  margin-right: min(630px, 44vw);
}
.impact-studio-context-drawer {
  position: absolute;
  top: 24px;
  right: 24px;
  bottom: 24px;
  z-index: 6;
  width: min(610px, 42vw);
  overflow: hidden;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  border: 1px solid #fecdd3;
  border-radius: 26px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 30px 90px rgba(15, 23, 42, .18);
  transform: translateX(calc(100% + 40px));
  opacity: 0;
  pointer-events: none;
  transition: transform .26s ease, opacity .22s ease;
}
.impact-studio-context-drawer.is-open {
  transform: translateX(0);
  opacity: 1;
  pointer-events: auto;
}
.impact-studio-context-drawer > header,
.impact-studio-context-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-bottom: 1px solid #fee2e2;
  padding: 18px 20px;
}
.impact-studio-context-drawer > header span {
  color: #ff0033;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .10em;
  text-transform: uppercase;
}
.impact-studio-context-drawer > header h2 {
  margin: 2px 0 0;
  font-size: 24px;
  line-height: 1.05;
}
.impact-studio-context-head strong {
  font-size: 22px;
  font-weight: 950;
}
.impact-studio-drawer-close,
.impact-studio-drawer-collapse,
.impact-studio-drawer-x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  min-width: 38px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  font-size: 22px;
  font-weight: 950;
  line-height: 1;
  padding: 0;
  text-align: center;
}
.impact-studio-drawer-collapse {
  color: #ff0033;
}
.impact-studio-drawer-collapse,
.impact-studio-drawer-x {
  font-size: 0;
}
.impact-studio-drawer-collapse::before,
.impact-studio-drawer-x::before {
  display: block;
  font-size: 22px;
  line-height: 1;
  transform: translateY(-1px);
}
.impact-studio-drawer-collapse::before {
  content: "\2039";
}
.impact-studio-drawer-x::before {
  content: "\00d7";
}
.impact-studio-context-body,
.impact-studio-drawer-body {
  overflow: auto;
  padding: 18px;
}
.impact-studio-context-drawer .impact-studio-panel {
  display: none;
  border: 0;
  box-shadow: none;
  padding: 0;
  background: transparent;
  overflow-x: hidden;
}
.impact-studio-context-drawer .impact-studio-panel.active {
  display: grid;
  gap: 16px;
}
.impact-studio-chat-first .impact-studio-chat-inline {
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: none !important;
  transform: none !important;
  pointer-events: auto !important;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-tab {
  display: none !important;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  display: grid !important;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto auto;
  min-height: calc(100vh - 220px);
  max-height: none !important;
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 30px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 0, 51, .08), transparent 28%),
    linear-gradient(180deg, #fff, #f8fbff);
  box-shadow: 0 28px 90px rgba(15, 23, 42, .12);
}
.impact-studio-chat-first .impact-studio-chat-panel header {
  align-items: center;
  border-bottom: 0;
  padding: clamp(18px, 2.2vw, 28px);
}
.impact-studio-chat-first .impact-studio-chat-panel header > [data-impact-studio-chat-toggle] {
  display: none;
}
.impact-studio-ai-title {
  display: grid;
  grid-template-columns: 66px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}
.impact-studio-ai-logo {
  display: grid;
  place-items: center;
  width: 66px;
  height: 66px;
  border-radius: 22px;
  color: #fff;
  background: linear-gradient(135deg, #ff0033, #fb7185 55%, #2563eb);
  box-shadow: 0 18px 44px rgba(255, 0, 51, .30);
  font-weight: 950;
}
.impact-studio-ai-title h1 {
  margin: 0;
  font-size: clamp(28px, 3.4vw, 46px);
  line-height: .96;
  letter-spacing: 0;
}
.impact-studio-ai-title p:not(.eyebrow) {
  margin: 8px 0 0;
  max-width: 760px;
  color: #475569;
  font-size: 16px;
  font-weight: 850;
}
.impact-studio-chat-first .impact-studio-chat-quotas {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  border-bottom: 1px solid #e2e8f0;
  padding: 0 clamp(18px, 2.2vw, 28px) 18px;
}
.impact-studio-chat-first .impact-studio-chat-quotas span {
  border-radius: 999px;
  background: #eef2ff;
  color: #3730a3;
  padding: 9px 13px;
  font-size: 12px;
  font-weight: 950;
}
.impact-studio-chat-first .impact-studio-chat-scope {
  padding: 0 clamp(18px, 2.2vw, 28px) 16px;
}
.impact-studio-chat-first .impact-studio-chat-scope select {
  min-height: 48px;
}
.impact-studio-chat-first .impact-studio-chat-messages {
  min-height: 420px;
  max-height: none;
  overflow: auto;
  padding: 22px clamp(18px, 2.4vw, 34px);
  background:
    linear-gradient(rgba(248, 250, 252, .86), rgba(248, 250, 252, .86)),
    linear-gradient(90deg, rgba(226, 232, 240, .55) 1px, transparent 1px),
    linear-gradient(0deg, rgba(226, 232, 240, .45) 1px, transparent 1px);
  background-size: auto, 42px 42px, 42px 42px;
}
.impact-studio-message {
  max-width: min(780px, 82%);
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 40px rgba(15, 23, 42, .08);
}
.impact-studio-message.user {
  margin-left: auto;
  border-color: #dbeafe;
  background: #eef6ff;
}
.impact-studio-message.assistant {
  margin-right: auto;
}
.impact-studio-message.is-error {
  border-color: #fecdd3;
  background: #fff1f2;
}
.impact-studio-chat-first .impact-studio-chat-form {
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: end;
  padding: 16px clamp(18px, 2.4vw, 34px);
  border-top: 1px solid #e2e8f0;
  background: #fff;
}
.impact-studio-chat-context-button {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border: 1px solid #e2e8f0;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  font-size: 24px;
  font-weight: 950;
}
.impact-studio-chat-first .impact-studio-chat-form textarea {
  min-height: 58px;
  max-height: 180px;
  border-radius: 18px;
  font-size: 16px;
  font-weight: 850;
}
.impact-studio-chat-first .impact-studio-chat-form button[type="submit"] {
  min-height: 58px;
  min-width: 86px;
  border-radius: 18px;
}
.impact-studio-chat-first .impact-studio-chat-note {
  padding: 0 clamp(18px, 2.4vw, 34px) 18px;
  text-align: center;
}
.impact-studio-chat-first .impact-studio-chat-image {
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #f8fafc;
  padding: 10px;
}
.impact-studio-chat-first .impact-studio-chat-image img {
  object-fit: contain;
}
body:has(.impact-studio-chat-first) {
  overflow: hidden;
}
body:has(.impact-studio-chat-first) main {
  height: calc(100dvh - 82px);
  overflow: hidden;
}
body:has(.impact-studio-chat-first) .site-footer,
body:has(.impact-studio-chat-first) footer.site-footer {
  display: none;
}
.impact-studio-chat-first {
  height: calc(100dvh - 82px);
  min-height: 0;
  overflow: hidden;
}
.impact-studio-chat-first .impact-studio-app {
  height: 100%;
  min-height: 0;
  overflow: hidden;
}
.impact-studio-chat-first .impact-studio-app-sidebar {
  height: 100%;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.impact-studio-chat-first .impact-studio-app-sidebar::-webkit-scrollbar {
  display: none;
}
.impact-studio-chat-first .impact-studio-main,
.impact-studio-chat-first .impact-studio-workspace,
.impact-studio-chat-first .impact-studio-chat-stage,
.impact-studio-chat-first .impact-studio-chat-inline {
  min-height: 0;
  height: 100%;
  overflow: hidden;
}
.impact-studio-chat-first .impact-studio-chat-stage {
  display: flex;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  height: 100%;
  min-height: 0;
}
.impact-studio-chat-first .impact-studio-chat-messages {
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  scroll-behavior: smooth;
}
.impact-studio-context-drawer {
  max-height: calc(100% - 48px);
}
.impact-studio-panel-tools,
.impact-studio-search-row,
.impact-studio-panel-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}
.impact-studio-search-row input {
  flex: 1 1 240px;
}
.impact-studio-mini-card,
.impact-studio-channel-card,
.impact-studio-idea-card,
.impact-studio-collection-button,
.impact-studio-image-card,
.impact-studio-empty-card,
.impact-studio-settings-card {
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
}
.impact-studio-mini-card {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding: 14px;
}
.impact-studio-mini-card img {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  object-fit: cover;
}
.impact-studio-mini-card h3,
.impact-studio-mini-card p {
  margin: 0;
}
.impact-studio-mini-card h3 {
  font-size: 18px;
}
.impact-studio-mini-card p {
  color: #64748b;
  font-weight: 850;
}
.impact-studio-channel-cards,
.impact-studio-analysis-list,
.impact-studio-idea-list {
  display: grid;
  gap: 12px;
}
.impact-studio-channel-card,
.impact-studio-idea-card {
  display: grid;
  gap: 12px;
  padding: 14px;
}
.impact-studio-channel-card {
  grid-template-columns: 58px minmax(0, 1fr);
  align-items: center;
}
.impact-studio-channel-card-clickable {
  cursor: pointer;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
.impact-studio-channel-card-clickable:hover,
.impact-studio-channel-card-clickable:focus-visible {
  border-color: rgba(244, 63, 94, .28);
  box-shadow: 0 18px 42px rgba(15, 23, 42, .10);
  transform: translateY(-1px);
}
.impact-studio-channel-card-clickable:focus-visible {
  outline: 3px solid rgba(244, 63, 94, .18);
  outline-offset: 3px;
}
.impact-studio-channel-card > img {
  width: 58px;
  height: 58px;
  border-radius: 18px;
  object-fit: cover;
}
.impact-studio-channel-card h3,
.impact-studio-channel-card p,
.impact-studio-channel-card span {
  margin: 0;
}
.impact-studio-channel-card h3 {
  font-size: 20px;
  line-height: 1.05;
}
.impact-studio-channel-card span {
  color: #64748b;
  font-weight: 850;
}
.impact-studio-mini-metrics {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 8px;
}
.impact-studio-mini-metrics small {
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  padding: 6px 8px;
  font-weight: 900;
}
.impact-studio-channel-card .button {
  grid-column: 1 / -1;
  justify-self: start;
}
.impact-studio-idea-card h3,
.impact-studio-idea-card p {
  margin: 0;
}
.impact-studio-idea-card form {
  margin: 0;
}
.impact-studio-search {
  display: grid;
  gap: 7px;
}
.impact-studio-search span {
  color: #475569;
  font-weight: 950;
}
.impact-studio-search input {
  width: 100%;
  min-height: 46px;
}
.impact-studio-collection-list,
.impact-studio-image-list,
.impact-studio-history-list,
.impact-studio-idea-list,
.impact-studio-settings-list {
  display: grid;
  gap: 12px;
}
.impact-studio-collection-button {
  display: grid;
  gap: 10px;
  width: 100%;
  padding: 14px;
  cursor: pointer;
  text-align: left;
}
.impact-studio-collection-button:hover,
.impact-studio-collection-button.active {
  border-color: #ff0033;
  box-shadow: 0 16px 40px rgba(255, 0, 51, .10);
}
.impact-studio-collection-meta,
.impact-studio-collection-thumbs,
.impact-studio-image-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.impact-studio-collection-meta span,
.impact-studio-image-meta span,
.impact-studio-badge-soft {
  border-radius: 999px;
  background: #f8fafc;
  color: #475569;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 900;
}
.impact-studio-collection-thumbs img {
  width: 52px;
  height: 32px;
  border-radius: 8px;
  object-fit: cover;
}
.impact-studio-collection-panel {
  display: none;
}
.impact-studio-collection-panel.active {
  display: grid;
  gap: 12px;
}
.impact-studio-saved-grid.compact {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.impact-studio-saved-card.compact {
  border-radius: 16px;
  padding: 10px;
}
.impact-studio-saved-card.compact img {
  border-radius: 12px;
}
.impact-studio-image-card {
  display: grid;
  gap: 10px;
  padding: 12px;
}
.impact-studio-image-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 14px;
  object-fit: contain;
  background: #020617;
}

.impact-studio-main,
.impact-studio-workspace,
.impact-studio-chat-stage,
.impact-studio-context-drawer,
.impact-studio-drawer-body,
.impact-studio-context-drawer .impact-studio-panel {
  min-width: 0;
}
.impact-studio-context-drawer * {
  box-sizing: border-box;
}
.impact-studio-context-drawer .impact-studio-section-head.compact {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}
.impact-studio-context-drawer .impact-studio-section-head.compact .button,
.impact-studio-context-drawer .impact-studio-section-head.compact a.button {
  justify-self: start;
  max-width: 100%;
  white-space: normal;
}
.impact-studio-context-drawer .impact-studio-collections-grid {
  grid-template-columns: 1fr;
}
.impact-studio-context-drawer .impact-studio-collection-list {
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}
.impact-studio-context-drawer .impact-studio-collection-panel {
  overflow: hidden;
}
.impact-studio-context-drawer .impact-studio-collection-title {
  flex-wrap: wrap;
}
.impact-studio-context-drawer .impact-studio-collection-title h3 {
  overflow-wrap: anywhere;
}
.impact-studio-context-drawer .impact-studio-saved-grid,
.impact-studio-context-drawer .impact-studio-saved-grid.compact {
  grid-template-columns: 1fr;
}
.impact-studio-context-drawer .impact-studio-saved-card,
.impact-studio-context-drawer .impact-studio-saved-card.compact {
  grid-template-columns: minmax(120px, 168px) minmax(0, 1fr);
  align-items: center;
}
.impact-studio-context-drawer .impact-studio-saved-card img,
.impact-studio-context-drawer .impact-studio-saved-card.compact img {
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  object-fit: cover;
}
.impact-studio-context-drawer .impact-studio-saved-card strong {
  overflow-wrap: anywhere;
}
.impact-studio-context-drawer .impact-studio-person-reference {
  border-radius: 18px;
  padding: 16px;
}
.impact-studio-context-drawer .impact-studio-person-reference-copy,
.impact-studio-context-drawer .impact-studio-person-reference-copy > div {
  display: grid;
  min-width: 0;
}
.impact-studio-context-drawer .impact-studio-person-reference h3,
.impact-studio-context-drawer .impact-studio-person-reference p {
  overflow-wrap: anywhere;
}
.impact-studio-context-drawer .impact-studio-person-reference-form {
  grid-template-columns: 1fr;
  align-items: stretch;
}
.impact-studio-context-drawer .impact-studio-person-reference-form select {
  min-height: 44px;
  font-size: 14px;
}
.impact-studio-context-drawer .impact-studio-person-reference-form .button {
  width: 100%;
  min-height: 44px;
}
.impact-studio-context-drawer .impact-studio-person-file {
  display: flex;
  align-items: center;
  min-width: 0;
}
.impact-studio-context-drawer .impact-studio-person-file span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.impact-studio-context-drawer .impact-studio-person-reference-list,
.impact-studio-context-drawer .impact-studio-images-grid {
  grid-template-columns: 1fr;
}
.impact-studio-context-drawer .impact-studio-person-reference-card,
.impact-studio-context-drawer .impact-studio-image-card {
  min-width: 0;
}
.impact-studio-empty-card,
.impact-studio-settings-card {
  padding: 18px;
}
.impact-studio-analysis-panel .dashboard-connected-card,
.impact-studio-analysis-panel .dashboard-channel-expanded,
.impact-studio-analysis-panel .dashboard-studio-card {
  box-shadow: none;
}
@media (max-width: 1180px) {
  .impact-studio-app {
    grid-template-columns: 236px minmax(0, 1fr);
  }
  .impact-studio-workspace.has-drawer .impact-studio-chat-stage {
    margin-right: 0;
  }
  .impact-studio-context-drawer {
    position: fixed;
    top: 92px;
    right: 18px;
    bottom: 18px;
    width: min(620px, calc(100vw - 36px));
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first {
    padding: 0;
  }
  .impact-studio-app {
    display: block;
  }
  .impact-studio-app-sidebar {
    position: sticky;
    top: 0;
    min-height: 0;
    padding: 12px;
  }
  .impact-studio-side-brand {
    grid-template-columns: 36px minmax(0, 1fr);
  }
  .impact-studio-side-brand span {
    width: 36px;
    height: 36px;
    border-radius: 12px;
  }
  .impact-studio-side-nav {
    display: flex;
    overflow-x: auto;
    padding-bottom: 4px;
  }
  .impact-studio-side-nav button {
    flex: 0 0 auto;
    min-width: 132px;
  }
  .impact-studio-side-section,
  .impact-studio-side-plan {
    display: none;
  }
  .impact-studio-topbar {
    position: static;
    display: grid;
  }
  .impact-studio-topbar-actions {
    justify-content: flex-start;
  }
  .impact-studio-chat-stage {
    padding: 14px;
  }
  .impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
    min-height: calc(100vh - 230px);
    border-radius: 22px;
  }
  .impact-studio-ai-title {
    grid-template-columns: 52px minmax(0, 1fr);
  }
  .impact-studio-ai-logo {
    width: 52px;
    height: 52px;
    border-radius: 18px;
  }
  .impact-studio-chat-first .impact-studio-chat-form {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .impact-studio-chat-first .impact-studio-chat-form button[type="submit"] {
    grid-column: 1 / -1;
  }
  .impact-studio-message {
    max-width: 94%;
  }
  .impact-studio-context-drawer {
    top: 18px;
    left: 12px;
    right: 12px;
    bottom: 12px;
    width: auto;
    border-radius: 22px;
  }
  .impact-studio-saved-grid.compact {
    grid-template-columns: 1fr;
  }
}

/* Niche Finder - Thumbnail Search */
.niche-thumbnail-search-shell {
  display: grid;
  gap: 18px;
}

.niche-thumbnail-mode-radio {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.niche-thumbnail-search-card,
.niche-thumbnail-signals,
.niche-thumbnail-reference,
.niche-thumbnail-results-head,
.niche-visual-placeholder {
  border: 1px solid rgba(255, 0, 64, 0.16);
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 18px 55px rgba(15, 23, 42, 0.06);
}

.niche-thumbnail-search-card {
  padding: clamp(18px, 2.4vw, 28px);
  background:
    radial-gradient(circle at 6% 0%, rgba(255, 0, 64, 0.12), transparent 34%),
    linear-gradient(135deg, #fff 0%, #f8fbff 100%);
}

.niche-thumbnail-search-head,
.niche-thumbnail-results-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
}

.niche-thumbnail-search-head h2,
.niche-thumbnail-results-head h2,
.niche-visual-placeholder h2 {
  margin: 4px 0 6px;
  font-size: clamp(1.35rem, 2.4vw, 2.1rem);
  line-height: 1.05;
}

.niche-thumbnail-search-head p:not(.eyebrow),
.niche-visual-placeholder p {
  max-width: 780px;
  margin: 0;
  color: #536076;
  line-height: 1.55;
}

.niche-thumbnail-beta,
.niche-thumbnail-results-head > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  padding: 8px 12px;
  border-radius: 999px;
  background: #eef4ff;
  color: #28427a;
  font-weight: 900;
  font-size: 0.78rem;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

.niche-thumbnail-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 20px 0 16px;
}

.niche-thumbnail-tabs label {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 10px 14px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  background: #fff;
  color: #101827;
  font-weight: 900;
  cursor: pointer;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.niche-thumbnail-tabs label span {
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #edf2ff;
  color: #1846d8;
  font-size: 0.78rem;
}

#thumb-mode-description:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-description"],
#thumb-mode-url:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-url"],
#thumb-mode-upload:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-upload"] {
  border-color: rgba(255, 0, 64, 0.45);
  background: linear-gradient(135deg, #ff0040, #7c3cff);
  color: #fff;
  box-shadow: 0 14px 30px rgba(255, 0, 64, 0.2);
}

#thumb-mode-description:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-description"] span,
#thumb-mode-url:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-url"] span,
#thumb-mode-upload:checked ~ .niche-thumbnail-search-card .niche-thumbnail-tabs label[for="thumb-mode-upload"] span {
  background: rgba(255, 255, 255, 0.22);
  color: #fff;
}

.niche-thumbnail-panel {
  display: none;
  gap: 10px;
}

#thumb-mode-description:checked ~ .niche-thumbnail-search-card .niche-thumbnail-panel-description,
#thumb-mode-url:checked ~ .niche-thumbnail-search-card .niche-thumbnail-panel-url,
#thumb-mode-upload:checked ~ .niche-thumbnail-search-card .niche-thumbnail-panel-upload {
  display: grid;
}

.niche-thumbnail-panel label:not(.niche-thumbnail-dropzone) {
  font-weight: 900;
  color: #101827;
}

.niche-thumbnail-panel textarea,
.niche-thumbnail-panel input[type="url"],
.niche-thumbnail-sort-inline select {
  width: 100%;
  border: 1px solid #dbe4ef;
  border-radius: 16px;
  background: #fff;
  color: #101827;
  font-weight: 750;
  outline: none;
}

.niche-thumbnail-panel textarea {
  min-height: 128px;
  resize: vertical;
  padding: 16px;
  line-height: 1.45;
}

.niche-thumbnail-panel input[type="url"],
.niche-thumbnail-sort-inline select {
  min-height: 48px;
  padding: 0 14px;
}

.niche-thumbnail-panel p {
  margin: 0;
  color: #66748a;
  font-weight: 700;
  line-height: 1.45;
}

.niche-thumbnail-dropzone {
  min-height: 142px;
  display: grid;
  place-items: center;
  gap: 6px;
  padding: 22px;
  border: 2px dashed rgba(47, 86, 164, 0.25);
  border-radius: 18px;
  background: rgba(239, 246, 255, 0.62);
  text-align: center;
  cursor: pointer;
}

.niche-thumbnail-dropzone input {
  max-width: 260px;
}

.niche-thumbnail-search-actions {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 14px;
  margin-top: 18px;
}

.niche-thumbnail-sort-inline {
  min-width: min(260px, 100%);
  display: grid;
  gap: 6px;
}

.niche-thumbnail-sort-inline label {
  font-size: 0.78rem;
  color: #536076;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.niche-thumbnail-search-actions button {
  min-height: 50px;
  border: 0;
  border-radius: 16px;
  padding: 0 26px;
  background: #ff0040;
  color: #fff;
  font-weight: 950;
  cursor: pointer;
  box-shadow: 0 16px 30px rgba(255, 0, 64, 0.22);
}

.niche-thumbnail-filter-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}

.niche-thumbnail-filter-row button {
  border: 1px solid #dbe4ef;
  border-radius: 999px;
  background: #fff;
  padding: 9px 13px;
  color: #34445c;
  font-weight: 850;
  cursor: pointer;
}

.niche-thumbnail-filter-row button.active {
  border-color: rgba(255, 0, 64, 0.35);
  background: #fff0f4;
  color: #ff0040;
}

.niche-thumbnail-reference,
.niche-thumbnail-signals,
.niche-thumbnail-results-head,
.niche-visual-placeholder {
  padding: 16px;
}

.niche-thumbnail-reference {
  display: flex;
  align-items: center;
  gap: 14px;
}

.niche-thumbnail-reference img {
  width: 148px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 14px;
  border: 1px solid #e2e8f0;
}

.niche-thumbnail-reference div,
.niche-thumbnail-signals div {
  display: grid;
  gap: 4px;
}

.niche-thumbnail-reference strong,
.niche-thumbnail-signals strong {
  font-weight: 950;
  color: #101827;
}

.niche-thumbnail-reference span,
.niche-thumbnail-signals span {
  color: #66748a;
  font-weight: 700;
}

.niche-thumbnail-signals {
  display: grid;
  grid-template-columns: minmax(220px, 0.9fr) minmax(0, 1fr);
  gap: 14px;
}

.niche-thumbnail-signals p {
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
}

.niche-thumbnail-signals b {
  color: #101827;
  margin-right: 4px;
}

.niche-thumbnail-signals em {
  font-style: normal;
  padding: 6px 9px;
  border-radius: 999px;
  background: #f3f7fb;
  color: #34445c;
  font-size: 0.82rem;
  font-weight: 850;
}

.niche-thumbnail-result-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.niche-thumb-result-card {
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.09);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, 0.06);
}

.niche-thumb-result-media {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #0f172a;
}

.niche-thumb-result-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.niche-thumb-result-media span {
  position: absolute;
  right: 10px;
  bottom: 10px;
  padding: 5px 7px;
  border-radius: 7px;
  background: rgba(0, 0, 0, 0.78);
  color: #fff;
  font-size: 0.78rem;
  font-weight: 900;
}

.niche-thumb-result-body {
  padding: 14px;
}

.niche-thumb-result-body h3 {
  margin: 0 0 6px;
  font-size: 1rem;
  line-height: 1.2;
}

.niche-thumb-result-body h3 a {
  color: #0f172a;
  text-decoration: none;
}

.niche-thumb-result-body p {
  margin: 0 0 12px;
  color: #66748a;
  font-weight: 750;
  line-height: 1.35;
}

.niche-thumb-result-stats {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.niche-thumb-result-stats span {
  min-height: 58px;
  display: grid;
  align-content: center;
  gap: 2px;
  padding: 8px 10px;
  border: 1px solid #e4ebf4;
  border-radius: 13px;
  background: #f8fafc;
  color: #66748a;
  font-size: 0.74rem;
  font-weight: 850;
  text-transform: uppercase;
}

.niche-thumb-result-stats b {
  color: #0f172a;
  font-size: 1rem;
  text-transform: none;
}

.niche-thumb-result-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  margin: 12px 0;
  color: #536076;
  font-size: 0.84rem;
  font-weight: 800;
}

.niche-visual-placeholder {
  display: grid;
  gap: 10px;
}

.niche-visual-placeholder .button {
  width: fit-content;
}

@media (max-width: 1180px) {
  .niche-thumbnail-result-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .niche-thumbnail-search-head,
  .niche-thumbnail-results-head,
  .niche-thumbnail-search-actions,
  .niche-thumbnail-reference,
  .niche-thumbnail-signals {
    display: grid;
  }

  .niche-thumbnail-signals {
    grid-template-columns: 1fr;
  }

  .niche-thumbnail-result-grid {
    grid-template-columns: 1fr;
  }

  .niche-thumbnail-search-actions button,
  .niche-thumbnail-sort-inline,
  .niche-visual-placeholder .button {
    width: 100%;
  }
}

/* Impact Studio compact chat polish */
.impact-studio-chat-first {
  --studio-topbar-h: 54px;
  --studio-main-gap: 14px;
}
.impact-studio-chat-first .impact-studio-main {
  grid-template-rows: var(--studio-topbar-h) minmax(0, 1fr);
}
.impact-studio-chat-first .impact-studio-topbar {
  min-height: var(--studio-topbar-h);
  padding: 8px 22px;
}
.impact-studio-chat-first .impact-studio-topbar strong {
  font-size: 16px;
}
.impact-studio-chat-first .impact-studio-topbar span {
  font-size: 13px;
}
.impact-studio-chat-first .impact-studio-topbar-actions {
  gap: 8px;
}
.impact-studio-chat-first .impact-studio-topbar-actions [data-impact-studio-chat-quota],
.impact-studio-chat-first .impact-studio-topbar-actions [data-impact-studio-image-quota] {
  border-radius: 999px;
  padding: 8px 12px;
  font-size: 12px;
  line-height: 1;
}
.impact-studio-chat-first .impact-studio-workspace {
  padding: var(--studio-main-gap) 22px 20px;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  min-height: 0;
  border-radius: 22px;
}
.impact-studio-chat-first .impact-studio-chat-panel header {
  padding: 12px 18px 9px;
  min-height: 0;
}
.impact-studio-chat-first .impact-studio-chat-quotas {
  display: none;
}
.impact-studio-chat-first .impact-studio-ai-title {
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 11px;
}
.impact-studio-chat-first .impact-studio-ai-logo {
  width: 44px;
  height: 44px;
  border-radius: 15px;
  font-size: 15px;
}
.impact-studio-chat-first .impact-studio-ai-title .eyebrow {
  margin: 0 0 2px;
  font-size: 11px;
  letter-spacing: .12em;
}
.impact-studio-chat-first .impact-studio-ai-title h1 {
  font-size: clamp(22px, 2.2vw, 34px);
  line-height: 1.02;
}
.impact-studio-chat-first .impact-studio-ai-title p:not(.eyebrow) {
  margin: 4px 0 0;
  max-width: 860px;
  font-size: 13px;
  line-height: 1.35;
  font-weight: 800;
}
.impact-studio-chat-first .impact-studio-chat-scope,
.impact-studio-chat-first .impact-studio-scope {
  display: flex;
  align-items: center;
  gap: 9px;
  width: fit-content;
  max-width: calc(100% - 34px);
  margin: 0 17px 8px;
  padding: 0;
  border: 0;
}
.impact-studio-chat-first .impact-studio-chat-scope span,
.impact-studio-chat-first .impact-studio-scope span {
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}
.impact-studio-chat-first .impact-studio-chat-scope select,
.impact-studio-chat-first .impact-studio-scope select {
  width: auto;
  min-width: 230px;
  max-width: min(520px, 70vw);
  min-height: 38px;
  height: 38px;
  border-radius: 999px;
  padding: 0 42px 0 14px;
  font-size: 13px;
  font-weight: 900;
  background-color: #fff;
}
.impact-studio-chat-first .impact-studio-chat-messages {
  padding: 15px 18px 18px;
  background-size: auto, 34px 34px, 34px 34px;
}
.impact-studio-chat-first .impact-studio-message {
  position: relative;
  max-width: min(1040px, 86%);
  padding: 15px 17px 16px 58px;
  border-radius: 18px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .055);
}
.impact-studio-chat-first .impact-studio-message::before,
.impact-studio-chat-first .impact-studio-message.user::after {
  display: grid;
  place-items: center;
  position: absolute;
  top: 14px;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  color: #fff;
  font-size: 12px;
  font-weight: 950;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .12);
}
.impact-studio-chat-first .impact-studio-message.assistant::before,
.impact-studio-chat-first .impact-studio-message.is-error::before {
  left: 15px;
  content: "IT";
  background: linear-gradient(135deg, #ff0033, #fb7185 55%, #2563eb);
}
.impact-studio-chat-first .impact-studio-message.user {
  padding: 15px 58px 16px 17px;
}
.impact-studio-chat-first .impact-studio-message.user::before {
  display: none;
}
.impact-studio-chat-first .impact-studio-message.user::after {
  right: 15px;
  content: "A";
  background: linear-gradient(135deg, #ff0033, #6d28d9);
}
.impact-studio-chat-first .impact-studio-message-role {
  margin-bottom: 5px;
  font-size: 11px;
  letter-spacing: .08em;
}
.impact-studio-chat-first .impact-studio-message-content {
  font-size: 14px;
  line-height: 1.62;
  color: #172033;
}
.impact-studio-chat-first .impact-studio-message-content br + br {
  display: block;
  content: "";
  margin-top: 8px;
}
.impact-studio-chat-first .impact-studio-chat-image {
  width: min(320px, 100%);
  max-width: 320px;
  margin-top: 12px;
  padding: 8px;
  border-radius: 16px;
}
.impact-studio-chat-first .impact-studio-chat-image img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  border-radius: 12px;
  object-fit: contain;
  background: #020617;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .14);
}
.impact-studio-chat-first .impact-studio-chat-image-meta {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}
.impact-studio-chat-first .impact-studio-chat-image-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}
.impact-studio-chat-first .impact-studio-chat-image .button.small {
  min-height: 34px;
  padding: 8px 11px;
  border-radius: 10px;
  font-size: 12px;
}
.impact-studio-chat-first .impact-studio-chat-image span {
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
}
.impact-studio-chat-first .impact-studio-quick-prompts {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 8px 18px 0;
  border-top: 1px solid rgba(148, 163, 184, .18);
}
.impact-studio-chat-first .impact-studio-quick-prompt {
  min-height: 36px;
  padding: 0 14px;
  border: 1px solid #dbe7ff;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.impact-studio-chat-first .impact-studio-quick-prompt.primary {
  color: #fff;
  border-color: #ff0033;
  background: linear-gradient(135deg, #ff0033, #7c3aed);
  box-shadow: 0 12px 26px rgba(255, 0, 51, .16);
}
.impact-studio-chat-first .impact-studio-quick-prompt:hover {
  transform: translateY(-1px);
  border-color: #ff9aae;
  box-shadow: 0 10px 22px rgba(15, 23, 42, .08);
}
.impact-studio-chat-first .impact-studio-quick-prompt:disabled,
.impact-studio-chat-first .impact-studio-message-actions button:disabled {
  opacity: .55;
  cursor: wait;
  transform: none;
}
.impact-studio-chat-first .impact-studio-message-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
  padding-top: 12px;
  border-top: 1px solid rgba(148, 163, 184, .22);
}
.impact-studio-chat-first .impact-studio-thumbnail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 14px;
}
.impact-studio-chat-first .impact-studio-thumbnail-card {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid #dbe7ff;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .06);
  opacity: 1;
  transform: translateY(0);
  transition: opacity .28s ease, transform .28s ease;
}
.impact-studio-chat-first .impact-studio-thumbnail-card.is-pending {
  opacity: 0;
  transform: translateY(10px);
  pointer-events: none;
}
.impact-studio-chat-first .impact-studio-thumbnail-card.is-ready {
  opacity: 1;
  transform: translateY(0);
}
.impact-studio-chat-first .impact-studio-thumbnail-card > span {
  color: #ff0033;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.impact-studio-chat-first .impact-studio-thumbnail-card img {
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: contain;
  background: #020617;
  border-radius: 12px;
}
.impact-studio-chat-first .impact-studio-thumbnail-card strong {
  color: #172033;
  font-size: 12px;
  line-height: 1.25;
}
.impact-studio-chat-first .impact-studio-thumbnail-card small {
  color: #64748b;
  font-size: 11px;
  font-weight: 850;
}
.impact-studio-chat-first .impact-studio-thumbnail-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.impact-studio-chat-first .impact-studio-thumbnail-card .button.small {
  min-height: 32px;
  padding: 7px 10px;
  border-radius: 10px;
  font-size: 11px;
}
.impact-studio-image-lightbox {
  position: fixed;
  inset: 0;
  z-index: 10070;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(2, 6, 23, .82);
  backdrop-filter: blur(10px);
}
.impact-studio-image-lightbox-dialog {
  position: relative;
  display: grid;
  place-items: center;
  width: min(1120px, 100%);
  max-height: calc(100dvh - 36px);
}
.impact-studio-image-lightbox figure {
  display: grid;
  gap: 10px;
  margin: 0;
  width: 100%;
}
.impact-studio-image-lightbox img {
  display: block;
  width: 100%;
  max-height: calc(100dvh - 120px);
  object-fit: contain;
  border-radius: 18px;
  background: #020617;
  box-shadow: 0 28px 90px rgba(0, 0, 0, .42);
}
.impact-studio-image-lightbox figcaption {
  color: #e2e8f0;
  font-size: 13px;
  font-weight: 850;
  text-align: center;
}
.impact-studio-image-lightbox-close,
.impact-studio-image-lightbox-nav {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(15, 23, 42, .72);
  color: #fff;
  cursor: pointer;
  font-weight: 950;
  box-shadow: 0 12px 34px rgba(0, 0, 0, .24);
}
.impact-studio-image-lightbox-close {
  top: -10px;
  right: -10px;
  width: 42px;
  height: 42px;
  font-size: 24px;
}
.impact-studio-image-lightbox-nav {
  top: 50%;
  width: 46px;
  height: 46px;
  font-size: 32px;
  transform: translateY(-50%);
}
.impact-studio-image-lightbox-nav.prev {
  left: -12px;
}
.impact-studio-image-lightbox-nav.next {
  right: -12px;
}
.impact-studio-image-lightbox-nav[hidden] {
  display: none;
}
@media (max-width: 640px) {
  .impact-studio-image-lightbox {
    padding: 12px;
  }
  .impact-studio-image-lightbox img {
    max-height: calc(100dvh - 112px);
    border-radius: 14px;
  }
  .impact-studio-image-lightbox-close {
    top: 6px;
    right: 6px;
  }
  .impact-studio-image-lightbox-nav {
    top: auto;
    bottom: 10px;
    transform: none;
  }
  .impact-studio-image-lightbox-nav.prev {
    left: 14px;
  }
  .impact-studio-image-lightbox-nav.next {
    right: 14px;
  }
}
.impact-studio-chat-first .impact-studio-chat-form {
  grid-template-columns: 48px minmax(0, 1fr) 80px;
  gap: 10px;
  padding: 12px 18px;
  align-items: center;
}
.impact-studio-chat-first .impact-studio-context-button {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: #ff0033;
  border-color: #ff0033;
  color: #fff;
  box-shadow: 0 14px 30px rgba(255, 0, 51, .20);
}
.impact-studio-chat-first .impact-studio-chat-form textarea {
  min-height: 48px;
  max-height: 128px;
  padding: 14px 16px;
  border-radius: 18px;
  font-size: 14px;
  line-height: 1.35;
}
.impact-studio-chat-first .impact-studio-chat-form button[type="submit"] {
  min-height: 48px;
  min-width: 80px;
  border-radius: 16px;
  padding-inline: 14px;
}
.impact-studio-chat-first .impact-studio-chat-note {
  padding: 0 18px 10px;
  font-size: 11px;
}
@media (min-width: 1181px) {
  .impact-studio-chat-first .impact-studio-workspace.has-drawer {
    grid-template-columns: minmax(0, 1fr) minmax(360px, 33vw);
    gap: 16px;
  }
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-context-drawer {
    position: static;
    height: 100%;
    max-height: none;
    width: auto;
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first .impact-studio-topbar {
    padding: 8px 12px;
  }
  .impact-studio-chat-first .impact-studio-workspace {
    padding: 10px;
  }
  .impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
    border-radius: 18px;
  }
  .impact-studio-chat-first .impact-studio-chat-panel header {
    padding: 12px;
  }
  .impact-studio-chat-first .impact-studio-ai-title {
    grid-template-columns: 40px minmax(0, 1fr);
  }
  .impact-studio-chat-first .impact-studio-ai-logo {
    width: 40px;
    height: 40px;
  }
  .impact-studio-chat-first .impact-studio-ai-title h1 {
    font-size: 22px;
  }
  .impact-studio-chat-first .impact-studio-ai-title p:not(.eyebrow) {
    font-size: 12px;
  }
  .impact-studio-chat-first .impact-studio-scope {
    width: auto;
    max-width: none;
    margin: 0 12px 8px;
  }
  .impact-studio-chat-first .impact-studio-scope select {
    min-width: 0;
    width: 100%;
    max-width: none;
  }
  .impact-studio-chat-first .impact-studio-message,
  .impact-studio-chat-first .impact-studio-message.user {
    max-width: 96%;
  }
  .impact-studio-chat-first .impact-studio-quick-prompts {
    padding-inline: 12px;
    gap: 6px;
    max-height: 86px;
    overflow: auto;
  }
  .impact-studio-chat-first .impact-studio-quick-prompt {
    min-height: 32px;
    padding-inline: 11px;
    font-size: 11px;
  }
  .impact-studio-chat-first .impact-studio-thumbnail-grid {
    grid-template-columns: 1fr;
  }
  .impact-studio-chat-first .impact-studio-chat-form {
    grid-template-columns: 44px minmax(0, 1fr) 58px;
    padding: 10px 12px;
  }
  .impact-studio-chat-first .impact-studio-context-button,
  .impact-studio-chat-first .impact-studio-chat-form button[type="submit"] {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
  }
  .impact-studio-chat-first .impact-studio-chat-form button[type="submit"] {
    grid-column: auto;
    font-size: 0;
  }
  .impact-studio-chat-first .impact-studio-chat-form button[type="submit"]::before {
    content: "➤";
    font-size: 16px;
  }
}

/* Impact Studio left drawer polish */
.impact-studio-chat-first {
  --studio-drawer-w: clamp(360px, 29vw, 440px);
  --studio-analysis-drawer-w: clamp(860px, 76vw, 1280px);
}
.impact-studio-chat-first .impact-studio-chat-stage {
  transition: margin-left .26s ease, margin-right .22s ease;
}
.impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-chat-stage {
  margin-right: 0;
}
.impact-studio-chat-first .impact-studio-context-drawer {
  left: 22px;
  right: auto;
  width: var(--studio-drawer-w);
  max-width: calc(100% - 44px);
  z-index: 14;
  border-radius: 24px;
  box-shadow: 24px 30px 80px rgba(15, 23, 42, .18);
  transform: translateX(calc(-100% - 34px));
}
.impact-studio-chat-first .impact-studio-context-drawer.is-open {
  transform: translateX(0);
  z-index: 80;
}
.impact-studio-chat-first .impact-studio-context-drawer > header {
  padding: 14px 16px;
  background: rgba(255, 255, 255, .96);
  backdrop-filter: blur(10px);
}
.impact-studio-chat-first .impact-studio-context-drawer > header h2 {
  font-size: clamp(20px, 2vw, 26px);
}
.impact-studio-chat-first .impact-studio-drawer-body {
  padding: 14px;
}
.impact-studio-chat-first .impact-studio-context-drawer .impact-studio-panel.active {
  gap: 14px;
}
.impact-studio-chat-first .impact-studio-context-drawer .impact-studio-section-head,
.impact-studio-chat-first .impact-studio-context-drawer .impact-studio-card,
.impact-studio-chat-first .impact-studio-context-drawer .impact-studio-empty-card {
  border-radius: 20px;
}
@media (min-width: 1181px) {
  .impact-studio-chat-first .impact-studio-workspace.has-drawer {
    display: block;
    grid-template-columns: none;
    gap: 0;
  }
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-chat-stage {
    margin-left: calc(var(--studio-drawer-w) + 16px);
  }
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-context-drawer {
    position: absolute;
    top: 14px;
    bottom: 20px;
    left: 22px;
    right: auto;
    width: var(--studio-drawer-w);
    height: auto;
    max-height: calc(100% - 34px);
  }
}
@media (max-width: 1180px) {
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-chat-stage {
    margin-left: 0;
    margin-right: 0;
  }
  .impact-studio-chat-first .impact-studio-context-drawer {
    position: fixed;
    top: 76px;
    left: 252px;
    right: 14px;
    bottom: 14px;
    width: min(430px, calc(100vw - 270px));
    max-height: none;
    transform: translateX(calc(-100% - 28px));
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first .impact-studio-context-drawer {
    top: 12px;
    left: 10px;
    right: 10px;
    bottom: 10px;
    width: auto;
    max-width: none;
    border-radius: 22px;
    transform: translateX(calc(-100% - 24px));
  }
  .impact-studio-chat-first .impact-studio-context-drawer.is-open {
    transform: translateX(0);
    z-index: 80;
  }
}

/* Impact Studio wide channel-analysis drawer */
@media (min-width: 1181px) {
  .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-chat-stage {
    margin-left: calc(var(--studio-analysis-drawer-w) + 18px);
  }
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] {
    width: var(--studio-analysis-drawer-w);
  }
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-body {
  padding: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-panel.active {
  gap: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  padding: 18px;
  border: 1px solid #dbeafe;
  border-radius: 22px;
  background: linear-gradient(135deg, #fff 0%, #f8fbff 100%);
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact .button,
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact a.button {
  justify-self: end;
  width: auto;
  white-space: nowrap;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-analysis-list {
  gap: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-connected-card,
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-expanded,
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-studio-card {
  box-shadow: 0 18px 42px rgba(15, 23, 42, .06);
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head {
  grid-template-columns: 82px minmax(0, 1fr) auto;
  gap: 18px;
  padding: 18px;
  align-items: center;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head img {
  width: 82px;
  height: 82px;
  border-radius: 20px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head h2 {
  font-size: clamp(28px, 2.4vw, 38px);
  line-height: 1.04;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head .button,
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head a.button {
  justify-self: end;
  width: auto;
  white-space: nowrap;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid > div {
  padding: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-motivation-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 18px 0;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-motivation-card {
  min-height: 148px;
  padding: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-main-grid,
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-ai-grid {
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, .95fr);
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-potential-card {
  grid-template-columns: 150px minmax(0, 1fr);
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card {
  grid-template-columns: minmax(280px, 40%) minmax(0, 1fr);
  gap: 18px;
}
.impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card > img {
  min-height: 160px;
}
@media (max-width: 1180px) and (min-width: 861px) {
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] {
    left: 18px;
    right: 18px;
    width: auto;
    max-width: none;
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-main-grid,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-ai-grid,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-potential-card,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card {
    grid-template-columns: 1fr;
  }
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact .button,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-section-head.compact a.button,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head .button,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head a.button {
    justify-self: stretch;
    width: 100%;
  }
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-motivation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 560px) {
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid,
  .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-motivation-grid {
    grid-template-columns: 1fr;
  }
}

/* Impact Studio wide chat polish */
.impact-studio-chat-first {
  --studio-thread-x: clamp(10px, 1.15vw, 18px);
}
.impact-studio-chat-first .impact-studio-main {
  min-height: 100vh;
}
.impact-studio-chat-first .impact-studio-workspace {
  min-height: calc(100vh - var(--studio-topbar-h));
  padding: 6px 10px 8px;
}
.impact-studio-chat-first .impact-studio-chat-stage {
  display: grid;
  min-height: min(720px, calc(100vh - 110px));
  padding: 0;
}
.impact-studio-chat-first .impact-studio-chat-inline,
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  min-height: min(720px, calc(100vh - 110px));
  height: 100%;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  position: relative;
  overflow: hidden;
  grid-template-rows: auto auto minmax(0, 1fr) auto auto;
  max-height: calc(100vh - var(--studio-topbar-h) - 12px);
  border-radius: 22px;
}
.impact-studio-chat-first .impact-studio-chat-panel header {
  padding: 10px var(--studio-thread-x) 7px;
}
.impact-studio-chat-first .impact-studio-ai-title {
  grid-template-columns: 40px minmax(0, 1fr);
  gap: 10px;
}
.impact-studio-chat-first .impact-studio-ai-logo {
  width: 40px;
  height: 40px;
  border-radius: 14px;
}
.impact-studio-chat-first .impact-studio-ai-title .eyebrow {
  margin-bottom: 1px;
  font-size: 10px;
}
.impact-studio-chat-first .impact-studio-ai-title h1 {
  font-size: clamp(20px, 1.65vw, 27px);
  line-height: 1;
}
.impact-studio-chat-first .impact-studio-ai-title p:not(.eyebrow) {
  margin-top: 3px;
  max-width: 880px;
  font-size: 12px;
  line-height: 1.28;
}
.impact-studio-chat-first .impact-studio-topbar-actions [data-impact-studio-chat-quota],
.impact-studio-chat-first .impact-studio-topbar-actions [data-impact-studio-image-quota] {
  min-height: 34px;
  padding: 8px 13px;
}
.impact-studio-chat-first .impact-studio-chat-scope,
.impact-studio-chat-first .impact-studio-scope {
  margin: 0 var(--studio-thread-x) 7px;
  gap: 8px;
}
.impact-studio-chat-first .impact-studio-chat-scope select,
.impact-studio-chat-first .impact-studio-scope select {
  min-height: 36px;
  height: 36px;
  min-width: 250px;
  border-radius: 14px;
  padding-left: 13px;
}
.impact-studio-context-picker {
  position: relative;
  z-index: 40;
}
.impact-studio-chat-first .impact-studio-context-picker {
  align-items: flex-start;
  flex-wrap: wrap;
  width: min(100%, 840px);
}
.impact-studio-context-trigger {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr) auto;
  grid-template-rows: auto auto;
  align-items: center;
  column-gap: 10px;
  min-width: min(460px, 100%);
  max-width: min(620px, calc(100vw - 44px));
  min-height: 48px;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 17px;
  background: linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(49, 46, 129, .92));
  color: #fff;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .18);
  cursor: pointer;
  padding: 8px 12px 8px 9px;
  text-align: left;
}
.impact-studio-context-trigger:hover,
.impact-studio-context-trigger:focus-visible {
  border-color: rgba(244, 63, 94, .72);
  box-shadow: 0 20px 52px rgba(244, 63, 94, .22);
  outline: none;
}
.impact-studio-context-trigger i {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 12px;
  background: linear-gradient(135deg, #ff004f, #7c3aed);
  color: #fff;
  font-size: 11px;
  font-style: normal;
  font-weight: 1000;
}
.impact-studio-context-trigger strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size: 13px;
  font-weight: 1000;
}
.impact-studio-context-trigger small {
  overflow: hidden;
  color: rgba(226, 232, 240, .82);
  font-size: 11px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.impact-studio-context-trigger b {
  grid-row: 1 / span 2;
  color: rgba(255, 255, 255, .78);
  font-size: 17px;
  transition: transform .16s ease;
}
.impact-studio-context-picker.is-open .impact-studio-context-trigger b {
  transform: rotate(180deg);
}
.impact-studio-context-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  max-width: min(720px, 100%);
}
.impact-studio-context-chips:empty {
  display: none;
}
.impact-studio-context-chips button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 260px;
  border: 1px solid rgba(34, 197, 94, .28);
  border-radius: 999px;
  background: #ecfdf5;
  color: #065f46;
  cursor: pointer;
  font-size: 11px;
  font-weight: 950;
  padding: 6px 9px;
}
.impact-studio-context-chips span {
  overflow: hidden;
  color: inherit;
  font-size: inherit;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.impact-studio-context-chips b {
  color: #047857;
}
.impact-studio-context-panel {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  display: grid;
  gap: 12px;
  width: min(460px, calc(100vw - 32px));
  max-height: min(680px, 76vh);
  overflow: hidden;
  border: 1px solid rgba(226, 232, 240, .92);
  border-radius: 24px;
  background:
    radial-gradient(circle at 12% 0, rgba(244, 63, 94, .16), transparent 30%),
    radial-gradient(circle at 88% 0, rgba(59, 130, 246, .16), transparent 28%),
    #fff;
  box-shadow: 0 28px 80px rgba(15, 23, 42, .24);
  padding: 14px;
}
.impact-studio-context-panel[hidden] {
  display: none;
}
.impact-studio-context-panel-head,
.impact-studio-context-actions,
.impact-studio-context-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}
.impact-studio-context-panel-head strong {
  display: block;
  color: #0f172a;
  font-size: 15px;
  font-weight: 1000;
}
.impact-studio-context-panel-head small {
  display: block;
  margin-top: 2px;
  color: #64748b;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
}
.impact-studio-context-panel-head button {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 34px;
  height: 34px;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  font-size: 20px;
  font-weight: 950;
}
.impact-studio-context-toolbar {
  justify-content: flex-start;
}
.impact-studio-context-toolbar button {
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: #fff;
  color: #334155;
  cursor: pointer;
  font-size: 12px;
  font-weight: 950;
  padding: 8px 11px;
}
.impact-studio-context-toolbar button.active {
  border-color: rgba(244, 63, 94, .34);
  background: #fff1f2;
  color: #e11d48;
}
.impact-studio-context-search {
  display: grid;
  gap: 6px;
}
.impact-studio-context-search span {
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.impact-studio-context-search input {
  width: 100%;
  border: 1px solid #e2e8f0;
  border-radius: 15px;
  background: #f8fafc;
  color: #0f172a;
  font: inherit;
  font-size: 13px;
  font-weight: 850;
  padding: 11px 12px;
}
.impact-studio-context-search input:focus {
  border-color: #ff004f;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 0, 79, .1);
  outline: none;
}
.impact-studio-context-sections {
  display: grid;
  gap: 10px;
  min-height: 0;
  overflow-y: auto;
  padding-right: 2px;
}
.impact-studio-context-sections details {
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: rgba(255, 255, 255, .86);
}
.impact-studio-context-sections summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  cursor: pointer;
  list-style: none;
  padding: 12px 12px 10px;
}
.impact-studio-context-sections summary::-webkit-details-marker {
  display: none;
}
.impact-studio-context-sections summary span {
  color: #0f172a;
  font-size: 13px;
  font-weight: 1000;
}
.impact-studio-context-sections summary em {
  min-width: 26px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
  padding: 4px 7px;
  text-align: center;
}
.impact-studio-context-list {
  display: grid;
  gap: 7px;
  padding: 0 10px 10px;
}
.impact-studio-context-option {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) 24px;
  align-items: center;
  gap: 10px;
  width: 100%;
  border: 1px solid transparent;
  border-radius: 15px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  padding: 8px;
  text-align: left;
}
.impact-studio-context-option:hover,
.impact-studio-context-option:focus-visible {
  border-color: #c7d2fe;
  background: #f8fafc;
  outline: none;
}
.impact-studio-context-option.is-selected {
  border-color: rgba(34, 197, 94, .42);
  background: linear-gradient(135deg, #ecfdf5, #eff6ff);
}
.impact-studio-context-avatar {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  overflow: hidden;
  border-radius: 14px;
  background: linear-gradient(135deg, #dbeafe, #fce7f3);
  color: #1e40af;
  font-size: 11px;
  font-weight: 1000;
}
.impact-studio-context-avatar.collection {
  background: linear-gradient(135deg, #fff7ed, #fef3c7);
  color: #b45309;
}
.impact-studio-context-avatar.report {
  background: linear-gradient(135deg, #ede9fe, #fee2e2);
  color: #6d28d9;
}
.impact-studio-context-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.impact-studio-context-option strong,
.impact-studio-context-option small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.impact-studio-context-option strong {
  font-size: 13px;
  font-weight: 1000;
}
.impact-studio-context-option small {
  margin-top: 2px;
  color: #64748b;
  font-size: 11px;
  font-weight: 800;
}
.impact-studio-context-option i {
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: #e2e8f0;
  color: transparent;
  font-style: normal;
  font-weight: 1000;
}
.impact-studio-context-option.is-selected i {
  background: #22c55e;
  color: #fff;
}
.impact-studio-context-empty {
  margin: 0;
  border: 1px dashed #cbd5e1;
  border-radius: 14px;
  background: #f8fafc;
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.35;
  padding: 12px;
  text-align: center;
}
.impact-studio-context-actions {
  justify-content: flex-end;
  border-top: 1px solid #e2e8f0;
  padding-top: 12px;
}
@media (max-width: 720px) {
  .impact-studio-chat-first .impact-studio-context-picker {
    display: grid;
    width: calc(100% - 24px);
    margin-inline: 12px;
  }
  .impact-studio-context-trigger {
    width: 100%;
    min-width: 0;
    max-width: none;
  }
  .impact-studio-context-panel {
    position: fixed;
    inset: auto 10px 12px;
    top: auto;
    width: auto;
    max-height: 82vh;
    border-radius: 22px;
  }
  .impact-studio-context-chips {
    width: 100%;
  }
  .impact-studio-context-actions .button {
    flex: 1 1 0;
  }
}

/* Impact Studio context picker polish: readable, scroll-safe dropdown. */
.impact-studio-chat-first .impact-studio-context-picker {
  z-index: 130;
}

.impact-studio-context-panel {
  display: grid;
  grid-template-rows: auto auto auto minmax(0, 1fr) auto;
  gap: 12px;
  width: min(520px, calc(100vw - 34px));
  height: min(620px, calc(100vh - 230px));
  min-height: 420px;
  max-height: calc(100vh - 18px);
  padding: 16px;
  overflow: hidden;
  border: 1px solid rgba(203, 213, 225, .9);
  background:
    radial-gradient(circle at 0% 0%, rgba(255, 0, 61, .09), transparent 34%),
    radial-gradient(circle at 100% 8%, rgba(49, 93, 255, .10), transparent 34%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  box-shadow: 0 30px 90px rgba(15, 23, 42, .24);
}

.impact-studio-context-panel-head {
  align-items: flex-start;
  padding-bottom: 2px;
}

.impact-studio-context-panel-head strong {
  color: #0b1020;
  font-size: 16px;
  letter-spacing: 0;
}

.impact-studio-context-panel-head small {
  max-width: 370px;
  color: #475569;
  font-size: 12px;
  line-height: 1.45;
}

.impact-studio-context-panel-head button[data-context-close] {
  position: relative;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: 16px;
  background:
    radial-gradient(circle at 28% 18%, rgba(255, 255, 255, .34), transparent 24%),
    linear-gradient(135deg, #ff003d 0%, #e9006e 58%, #7b2cff 100%);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255, 0, 61, .26), inset 0 1px 0 rgba(255, 255, 255, .24);
  font-size: 0;
  line-height: 1;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.impact-studio-context-panel-head button[data-context-close]::before,
.impact-studio-context-panel-head button[data-context-close]::after {
  content: "";
  position: absolute;
  width: 18px;
  height: 3px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 1px 10px rgba(15, 23, 42, .18);
}

.impact-studio-context-panel-head button[data-context-close]::before {
  transform: rotate(45deg);
}

.impact-studio-context-panel-head button[data-context-close]::after {
  transform: rotate(-45deg);
}

.impact-studio-context-panel-head button[data-context-close]:hover,
.impact-studio-context-panel-head button[data-context-close]:focus-visible {
  color: #fff;
  outline: none;
  filter: saturate(1.08);
  transform: translateY(-1px) scale(1.035);
  box-shadow: 0 20px 40px rgba(255, 0, 61, .34), 0 0 0 4px rgba(255, 0, 61, .12);
}

.impact-studio-context-toolbar {
  flex-wrap: wrap;
}

.impact-studio-context-toolbar button {
  min-height: 36px;
  border-color: #d7deea;
  color: #1f2937;
  background: #fff;
}

.impact-studio-context-toolbar button.active {
  border-color: transparent;
  background: linear-gradient(110deg, #ff003d, #7b2cff);
  color: #fff;
  box-shadow: 0 12px 28px rgba(255, 0, 61, .16);
}

.impact-studio-context-search span,
.impact-studio-context-sections summary span,
.impact-studio-context-option strong {
  color: #172033;
}

.impact-studio-context-search input {
  min-height: 48px;
  border-color: #d8e0ec;
  background: #fff;
  color: #0f172a;
  font-size: 13px;
}

.impact-studio-context-search input::placeholder {
  color: #667085;
  opacity: 1;
}

.impact-studio-context-sections {
  gap: 11px;
  min-height: 0;
  max-height: none;
  overflow-y: auto;
  padding: 2px 4px 4px 0;
  scrollbar-width: thin;
  scrollbar-color: #cbd5e1 transparent;
}

.impact-studio-context-sections details {
  border-color: #dfe6f1;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 12px 30px rgba(15, 23, 42, .035);
}

.impact-studio-context-sections summary {
  color: #172033;
}

.impact-studio-context-sections summary em {
  background: #eef3fb;
  color: #334155;
}

.impact-studio-context-option {
  border-color: #edf1f7;
  background: #fff;
  color: #111827;
}

.impact-studio-context-option:hover,
.impact-studio-context-option:focus-visible {
  border-color: #b7c6ff;
  background: #f6f8ff;
}

.impact-studio-context-option.is-selected {
  border-color: rgba(34, 197, 94, .54);
  background: linear-gradient(135deg, #ecfdf5 0%, #f6fbff 100%);
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, .08);
}

.impact-studio-context-option small {
  color: #526173;
  font-weight: 850;
}

.impact-studio-context-empty {
  color: #475569;
}

.impact-studio-context-actions {
  position: relative;
  z-index: 2;
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  margin: 0 -16px -16px;
  padding: 13px 16px 16px;
  border-top: 1px solid #dfe6f1;
  background: linear-gradient(180deg, rgba(248, 251, 255, .94), #fff);
  box-shadow: 0 -16px 34px rgba(15, 23, 42, .07);
}

.impact-studio-context-actions .button {
  min-height: 42px;
  border-radius: 14px;
  padding: 0 16px;
  font-size: 13px;
  font-weight: 950;
  white-space: nowrap;
}

.impact-studio-context-actions .button.secondary {
  border: 1px solid #d7deea;
  background: #fff;
  color: #172033;
}

.impact-studio-context-actions .button:not(.secondary) {
  border: 0;
  background: linear-gradient(110deg, #ff003d, #e9003b);
  color: #fff;
  box-shadow: 0 14px 28px rgba(255, 0, 61, .22);
}

@media (max-width: 720px) {
  .impact-studio-context-panel {
    grid-template-rows: auto auto auto minmax(0, 1fr) auto;
    height: min(680px, 82vh);
    min-height: 0;
    max-height: 82vh;
    padding: 14px;
  }

  .impact-studio-context-panel-head small {
    max-width: none;
  }

  .impact-studio-context-actions {
    margin: 0 -14px -14px;
    padding: 12px 14px 14px;
  }
}
.impact-studio-chat-first .impact-studio-chat-messages {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  min-height: clamp(300px, 52vh, 620px);
  padding: 12px var(--studio-thread-x) 10px;
  gap: 14px;
  overflow-y: auto;
  scroll-padding-bottom: 18px;
}
.impact-studio-chat-first .impact-studio-chat-empty {
  align-self: center;
  width: min(560px, 100%);
  margin: auto;
  max-width: 560px;
  padding: 22px clamp(18px, 3vw, 28px);
}
.impact-studio-chat-first .impact-studio-message {
  width: auto;
  max-width: min(96%, 1360px);
  margin: 0;
  padding: 12px 15px 13px 54px;
  border-radius: 17px;
  box-shadow: 0 10px 28px rgba(15, 23, 42, .055);
}
.impact-studio-chat-first .impact-studio-message.assistant,
.impact-studio-chat-first .impact-studio-message.is-error {
  align-self: flex-start;
  margin-right: auto;
}
.impact-studio-chat-first .impact-studio-message.user {
  align-self: flex-end;
  max-width: min(78%, 1000px);
  margin-right: 0;
  padding: 12px 54px 13px 15px;
}
.impact-studio-chat-first .impact-studio-message::before,
.impact-studio-chat-first .impact-studio-message.user::after {
  top: 12px;
  width: 32px;
  height: 32px;
  border-radius: 11px;
}
.impact-studio-chat-first .impact-studio-message.assistant::before,
.impact-studio-chat-first .impact-studio-message.is-error::before {
  left: 14px;
}
.impact-studio-chat-first .impact-studio-message.user::after {
  right: 14px;
}
.impact-studio-chat-first .impact-studio-message-role {
  margin-bottom: 3px;
  font-size: 10px;
}
.impact-studio-chat-first .impact-studio-message-content {
  font-size: 14px;
  line-height: 1.5;
  font-weight: 520;
}
.impact-studio-chat-first .impact-studio-message-content br + br {
  margin-top: 4px;
}
.impact-studio-chat-first .impact-studio-message-time {
  font-size: 11px;
  opacity: .7;
}
.impact-studio-chat-first .impact-studio-chat-image {
  width: min(300px, 100%);
  max-width: 300px;
  margin-top: 10px;
}
.impact-studio-chat-first .impact-studio-chat-image-actions {
  gap: 6px;
}
.impact-studio-chat-first .impact-studio-chat-image .button.small {
  min-height: 32px;
  padding: 7px 10px;
}
.impact-studio-chat-first .impact-studio-chat-form {
  grid-template-columns: 48px minmax(0, 1fr) 86px;
  padding: 10px var(--studio-thread-x) 8px;
  gap: 10px;
}
.impact-studio-chat-first .impact-studio-chat-form textarea {
  min-height: 48px;
  max-height: 118px;
  padding: 13px 16px;
}
.impact-studio-chat-first .impact-studio-chat-note {
  padding: 0 var(--studio-thread-x) 8px;
  font-size: 10.5px;
}
@media (min-width: 1181px) {
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-chat-inline .impact-studio-chat-panel {
    max-height: calc(100vh - var(--studio-topbar-h) - 26px);
  }
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-message {
    max-width: min(96%, 980px);
  }
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-message.user {
    max-width: min(82%, 760px);
    margin-right: 0;
  }
}
@media (max-width: 1180px) {
  .impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
    max-height: none;
  }
  .impact-studio-chat-first .impact-studio-message {
    max-width: 92%;
  }
  .impact-studio-chat-first .impact-studio-message.user {
    max-width: 78%;
    margin-right: 0;
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first {
    --studio-thread-x: 12px;
  }
  .impact-studio-chat-first .impact-studio-workspace {
    padding: 8px;
  }
  .impact-studio-chat-first .impact-studio-chat-panel header {
    padding: 10px var(--studio-thread-x) 7px;
  }
  .impact-studio-chat-first .impact-studio-chat-messages {
    gap: 12px;
    padding-top: 10px;
  }
  .impact-studio-chat-first .impact-studio-message,
  .impact-studio-chat-first .impact-studio-message.assistant,
  .impact-studio-chat-first .impact-studio-message.is-error {
    max-width: 100%;
    padding: 11px 12px 12px 48px;
    border-radius: 16px;
  }
  .impact-studio-chat-first .impact-studio-message.user {
    max-width: 94%;
    padding: 11px 48px 12px 12px;
  }
  .impact-studio-chat-first .impact-studio-message::before,
  .impact-studio-chat-first .impact-studio-message.user::after {
    top: 11px;
    width: 30px;
    height: 30px;
  }
  .impact-studio-chat-first .impact-studio-message.assistant::before,
  .impact-studio-chat-first .impact-studio-message.is-error::before {
    left: 11px;
  }
  .impact-studio-chat-first .impact-studio-message.user::after {
    right: 11px;
  }
  .impact-studio-chat-first .impact-studio-chat-image {
    width: min(280px, 100%);
    max-width: 280px;
  }
}

/* Niche Finder app refresh */
body:has(.niche-finder-app) {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 20% 0%, rgba(255, 0, 51, .06), transparent 28rem),
    radial-gradient(circle at 100% 2%, rgba(37, 99, 235, .055), transparent 30rem),
    #f6f8fb;
}
body:has(.niche-finder-app) .site-header,
body:has(.niche-finder-app) .site-footer,
body:has(.niche-finder-app) .usage-menu-card {
  display: none !important;
}
body:not(.impact-app-shell):has(.niche-finder-app) main,
body:not(.impact-app-shell):has(.niche-finder-app) .page-shell {
  max-width: none;
  margin: 0;
  padding: 0;
}
.niche-finder-app {
  --niche-sidebar-w: 292px;
  width: 100%;
  max-width: none;
  min-height: 100vh;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: var(--niche-sidebar-w) minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  background: #f6f8fb;
  isolation: isolate;
}
.niche-finder-app::before,
.niche-finder-app::after {
  display: none !important;
}
.niche-finder-main {
  grid-column: 2;
  min-width: 0;
  width: 100%;
  display: grid;
  gap: 22px;
  padding: 0 28px 42px;
  border: 0;
  border-radius: 0;
  background:
    linear-gradient(rgba(15, 23, 42, .028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(15, 23, 42, .028) 1px, transparent 1px),
    radial-gradient(circle at 12% 0%, rgba(255, 0, 51, .055), transparent 26rem),
    radial-gradient(circle at 90% 0%, rgba(37, 99, 235, .05), transparent 34rem),
    #f8fafc;
  background-size: 36px 36px, 36px 36px, auto, auto, auto;
  box-shadow: none;
  backdrop-filter: none;
}
.niche-finder-sidebar {
  position: sticky;
  top: 0;
  width: var(--niche-sidebar-w);
  height: 100vh;
  max-height: 100vh;
  align-self: start;
  overflow-y: auto;
  overflow-x: hidden;
  border: 0;
  border-radius: 0;
  padding: 24px 18px;
  background:
    radial-gradient(circle at 12% 8%, rgba(255, 0, 51, .22), transparent 10rem),
    radial-gradient(circle at 100% 100%, rgba(255, 0, 51, .12), transparent 14rem),
    linear-gradient(180deg, #08111f 0%, #0b1220 52%, #150716 100%);
  box-shadow: 12px 0 40px rgba(15, 23, 42, .12);
  z-index: 30;
}
.niche-sidebar-brand {
  display: grid;
  gap: 8px;
  padding: 0 8px 24px;
  border-bottom: 1px solid rgba(255, 255, 255, .10);
}
.niche-sidebar-logo {
  display: flex;
  align-items: center;
  gap: 11px;
}
.niche-sidebar-logo span {
  width: 44px;
  height: 44px;
  border-radius: 13px;
  background: #ff0033;
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 950;
  box-shadow: 0 16px 35px rgba(255, 0, 51, .34);
}
.niche-sidebar-logo strong {
  color: #fff;
  font-size: 22px;
  letter-spacing: 0;
}
.niche-sidebar-brand > span {
  color: #ff5570;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.niche-sidebar-brand em {
  justify-self: start;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #fff;
  padding: 5px 10px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.niche-sidebar-group {
  display: grid;
  gap: 6px;
  margin: 22px 0 0;
}
.niche-sidebar-group > span {
  padding: 0 10px 4px;
  color: rgba(226, 232, 240, .62);
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.niche-sidebar-group a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 42px;
  padding: 10px 12px;
  border: 1px solid transparent;
  border-radius: 14px;
  color: #dbe5f2;
  background: transparent;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
}
.niche-sidebar-group a::before {
  content: "";
  width: 8px;
  height: 8px;
  flex: 0 0 auto;
  border-radius: 999px;
  background: #ff0033;
  opacity: .22;
}
.niche-sidebar-group a:hover {
  border-color: rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .075);
  color: #fff;
}
.niche-sidebar-group a.active {
  border-color: rgba(255, 0, 51, .46);
  background:
    linear-gradient(90deg, rgba(255, 0, 51, .38), rgba(255, 255, 255, .075)),
    rgba(255, 255, 255, .03);
  color: #fff;
  box-shadow: 0 16px 34px rgba(255, 0, 51, .16), inset 0 1px 0 rgba(255, 255, 255, .08);
}
.niche-sidebar-group a.active::before {
  opacity: 1;
  box-shadow: 0 0 18px rgba(255, 0, 51, .78);
}
.niche-sidebar-bottom {
  display: grid;
  gap: 12px;
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, .10);
}
.niche-sidebar-bottom > a,
.niche-guide-drawer summary {
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 13px;
  background: rgba(255, 255, 255, .055);
  color: #dbe5f2;
  padding: 10px 12px;
  font-size: 13px;
  font-weight: 900;
}
.niche-sidebar-plan-card {
  display: grid;
  gap: 10px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 18px;
  background:
    radial-gradient(circle at 16% 0%, rgba(255, 0, 51, .22), transparent 8rem),
    rgba(255, 255, 255, .06);
  padding: 16px;
  color: #fff;
}
.niche-sidebar-plan-card strong {
  color: #ff4b68;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.niche-sidebar-plan-card p {
  margin: 0;
  color: #f8fafc;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.45;
}
.niche-sidebar-plan-card span {
  display: block;
  height: 8px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, .16);
}
.niche-sidebar-plan-card span i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff0033, #2563eb);
}
.niche-sidebar-plan-card em {
  color: #cbd5e1;
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}
.niche-sidebar-plan-card a {
  justify-self: start;
  border: 1px solid rgba(255, 0, 51, .44);
  border-radius: 999px;
  color: #fff;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 950;
}
.niche-app-topbar {
  position: sticky;
  top: 0;
  z-index: 18;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 72px;
  margin: 0 -28px;
  padding: 12px 28px;
  border-bottom: 1px solid #e6ebf3;
  background: rgba(255, 255, 255, .86);
  backdrop-filter: blur(18px);
}
.niche-app-topbar-left,
.niche-app-topbar-actions {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.niche-app-topbar-left p,
.niche-topbar-user {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.niche-app-topbar-left strong {
  color: #ff0033;
  font-weight: 950;
}
.niche-app-topbar-left span {
  color: #475569;
  font-weight: 850;
}
.niche-mobile-menu,
.niche-bell,
.niche-kebab-button {
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  font-weight: 950;
}
.niche-install-button,
.niche-language-pill,
.niche-topbar-user,
.niche-limit-card-compact {
  border: 1px solid #e2e8f0;
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .04);
}
.niche-install-button {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  color: #0f172a;
  font-size: 13px;
  font-weight: 950;
}
.niche-language-pill {
  display: flex;
  padding: 4px;
}
.niche-language-pill a {
  border-radius: 999px;
  padding: 7px 9px;
  color: #475569;
  font-size: 12px;
  font-weight: 950;
}
.niche-language-pill a.active {
  background: #ff0033;
  color: #fff;
}
.niche-topbar-user {
  min-height: 42px;
  padding: 0 12px;
}
.niche-topbar-user span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}
.niche-topbar-user strong {
  color: #0f172a;
  font-size: 13px;
}
.niche-dashboard-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 22px;
  padding: 16px 0 0;
}
.niche-dashboard-header h1 {
  margin: 0 0 10px;
  color: #080b12;
  font-size: clamp(36px, 4.2vw, 58px);
  line-height: .95;
}
.niche-breadcrumb {
  margin: 0 0 8px;
  color: #ff0033;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .04em;
}
.niche-dashboard-tools {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  flex-wrap: wrap;
}
.niche-limit-card-compact {
  min-width: 156px;
  padding: 12px 14px;
}
.niche-limit-card-compact strong {
  color: #ff0033;
  font-size: 12px;
  letter-spacing: .06em;
}
.niche-limit-card-compact span {
  display: block;
  margin-top: 4px;
  color: #475569;
  font-size: 12px;
  font-weight: 900;
}
.niche-overview-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 318px;
  gap: 24px;
  align-items: start;
}
.niche-overview-primary {
  display: grid;
  gap: 20px;
  min-width: 0;
}
.niche-overview-search {
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr) 142px;
  gap: 12px;
  border: 1px solid #e5eaf2;
  border-radius: 22px;
  background: rgba(255, 255, 255, .92);
  padding: 14px;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .055);
}
.niche-overview-search select,
.niche-overview-search input {
  width: 100%;
  min-height: 54px;
  border: 1px solid #e2e8f0;
  border-radius: 15px;
  background: #fff;
  color: #0f172a;
  padding: 0 16px;
  font-weight: 850;
}
.niche-overview-search button {
  min-height: 54px;
  border-radius: 15px;
}
.niche-welcome-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, .8fr) minmax(420px, 1.2fr);
  gap: 20px;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, .10);
  border-radius: 24px;
  background:
    radial-gradient(circle at 86% 18%, rgba(255, 0, 51, .38), transparent 18rem),
    radial-gradient(circle at 100% 100%, rgba(255, 0, 51, .24), transparent 16rem),
    repeating-linear-gradient(135deg, rgba(255, 255, 255, .04) 0 1px, transparent 1px 18px),
    linear-gradient(135deg, #080b15 0%, #161126 54%, #4d0619 100%);
  padding: 28px;
  color: #fff;
  box-shadow: 0 26px 70px rgba(15, 23, 42, .18);
}
.niche-welcome-card .eyebrow {
  color: #ff5b78;
  letter-spacing: .12em;
}
.niche-welcome-card h2 {
  color: #fff;
  font-size: clamp(26px, 3vw, 36px);
}
.niche-welcome-card p {
  color: #e8eef8;
}
.niche-overview-kpis {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.niche-overview-kpis div {
  min-height: 110px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 18px;
  background: rgba(255, 255, 255, .11);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .10);
  padding: 18px;
}
.niche-overview-kpis strong {
  color: #fff;
  font-size: 28px;
}
.niche-overview-kpis span {
  color: #f8fafc;
  font-size: 12px;
}
.niche-overview-feature-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.niche-overview-mini-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.niche-overview-mini-grid .niche-overview-module-wide {
  grid-column: auto;
}
.niche-overview-module,
.niche-insight-card {
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 20px 54px rgba(15, 23, 42, .06);
  padding: 18px;
}
.niche-module-head h3,
.niche-insight-card h3 {
  margin: 0;
  color: #0f172a;
  font-size: 18px;
  letter-spacing: 0;
}
.niche-module-head a,
.niche-insight-link {
  color: #ff0033;
  font-size: 12px;
  font-weight: 950;
}
.niche-module-row {
  border-color: #edf2f7;
  border-radius: 15px;
  background: #fff;
  box-shadow: 0 9px 18px rgba(15, 23, 42, .025);
}
.niche-module-row em {
  background: #fff1f4;
  color: #ff0033;
  min-width: 48px;
  text-align: center;
}
.niche-video-mini-list {
  grid-template-columns: 1fr;
}
.niche-video-mini-list a {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: center;
  gap: 10px;
  border-color: #edf2f7;
  background: #fff;
}
.niche-video-mini-list img {
  height: 58px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.niche-video-mini-list span {
  padding: 8px 8px 8px 0;
}
.niche-video-mini-list strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.niche-overview-aside {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 16px;
  min-width: 0;
}
.niche-insight-list,
.niche-tip-list {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.niche-insight-list span,
.niche-tip-list p {
  display: grid;
  gap: 3px;
  margin: 0;
  border-bottom: 1px solid #edf2f7;
  padding: 0 0 12px;
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
}
.niche-insight-list span:last-child,
.niche-tip-list p:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}
.niche-insight-list strong {
  color: #0f172a;
  font-size: 20px;
}
.niche-sparkline {
  display: flex;
  align-items: end;
  gap: 8px;
  height: 118px;
  margin: 18px 0 14px;
  border-bottom: 1px solid #e2e8f0;
  background:
    linear-gradient(180deg, transparent 32%, rgba(15, 23, 42, .045) 33%, transparent 34%),
    linear-gradient(180deg, transparent 65%, rgba(15, 23, 42, .045) 66%, transparent 67%);
}
.niche-sparkline span {
  flex: 1;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(180deg, #ff0033, rgba(255, 0, 51, .18));
}
.niche-channel-row,
.niche-category-card,
.niche-video-card,
.niche-thumbnail-card,
.niche-search-panel {
  border-radius: 22px;
  border-color: #e2e8f0;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 20px 54px rgba(15, 23, 42, .06);
}
@media (max-width: 1320px) {
  .niche-finder-app {
    --niche-sidebar-w: 248px;
  }
  .niche-overview-shell {
    grid-template-columns: 1fr;
  }
  .niche-overview-aside {
    position: static;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .niche-overview-mini-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 980px) {
  .niche-finder-app {
    display: block;
  }
  .niche-finder-sidebar {
    position: relative;
    width: 100%;
    height: auto;
    max-height: none;
    border-radius: 0 0 24px 24px;
  }
  .niche-finder-main {
    display: grid;
    padding: 0 16px 28px;
  }
  .niche-app-topbar {
    position: static;
    margin: 0 -16px;
    padding: 12px 16px;
  }
  .niche-app-topbar-actions {
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 3px;
  }
  .niche-dashboard-header {
    align-items: start;
    flex-direction: column;
  }
  .niche-overview-search,
  .niche-welcome-card,
  .niche-overview-feature-grid,
  .niche-overview-mini-grid,
  .niche-overview-aside {
    grid-template-columns: 1fr;
  }
  .niche-overview-kpis {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 640px) {
  .niche-sidebar-group a {
    min-height: 38px;
  }
  .niche-dashboard-header h1 {
    font-size: 38px;
  }
  .niche-welcome-card {
    padding: 20px;
  }
  .niche-overview-kpis {
    grid-template-columns: 1fr;
  }
  .niche-topbar-user,
  .niche-bell {
    display: none;
  }
  .niche-video-mini-list a {
    grid-template-columns: 82px minmax(0, 1fr);
  }
}

.niche-mobile-menu {
  font-size: 0;
}
.niche-mobile-menu::before {
  content: "\2630";
  font-size: 18px;
  line-height: 1;
}
.niche-sidebar-scrim {
  display: none;
}

@media (max-width: 980px) {
  .niche-finder-app {
    display: grid;
    grid-template-columns: 1fr;
  }
  .niche-finder-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(86vw, 320px);
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0 24px 24px 0;
    transform: translateX(-106%);
    transition: transform .22s ease;
    z-index: 90;
  }
  .niche-finder-app.sidebar-open .niche-finder-sidebar {
    transform: translateX(0);
  }
  .niche-finder-main {
    grid-column: 1;
  }
  .niche-sidebar-scrim {
    position: fixed;
    inset: 0;
    display: block;
    border: 0;
    background: rgba(15, 23, 42, .42);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
    z-index: 80;
  }
  .niche-finder-app.sidebar-open .niche-sidebar-scrim {
    opacity: 1;
    pointer-events: auto;
  }
  .niche-app-topbar {
    position: sticky;
    top: 0;
  }
}

@media (min-width: 981px) {
  .niche-mobile-menu {
    display: none;
  }
}

/* Shared header polish: account credits live above every app surface. */
.account-usage-popover.account-usage-popover-portal {
  position: fixed;
  right: auto;
  bottom: auto;
  z-index: 2147483000;
  width: min(680px, calc(100vw - 24px));
  max-height: calc(100vh - 92px);
  overscroll-behavior: contain;
}
.account-usage-popover.account-usage-popover-portal::before {
  display: none;
}
.account-usage-popover.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
}
.account-usage-toggle {
  cursor: pointer;
}

/* Niche Finder now lives inside the shared Impactube app shell. */
body:has(.niche-finder-app) .site-header {
  display: none !important;
}
body:has(.niche-finder-app) .site-footer,
body:has(.niche-finder-app) .usage-menu-card,
body:has(.niche-finder-app) .niche-app-topbar {
  display: none !important;
}
.impact-app-shell .niche-finder-app.niche-finder-global-shell {
  --niche-sidebar-w: 268px;
  width: 100%;
  min-height: auto;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: var(--niche-sidebar-w) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  background: transparent;
}
.impact-app-shell .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
  position: sticky;
  top: 16px;
  width: auto;
  height: calc(100vh - 32px);
  max-height: calc(100vh - 32px);
  border: 1px solid #e6ebf3;
  border-radius: 24px;
  padding: 16px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 0, 51, .08), transparent 9rem),
    rgba(255, 255, 255, .94);
  color: #172033;
  box-shadow: 0 22px 58px rgba(15, 23, 42, .075);
}
.impact-app-shell .niche-finder-app.niche-finder-global-shell .niche-finder-main {
  grid-column: auto;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
.impact-app-shell .niche-finder-global-shell .niche-dashboard-header {
  margin: 0;
}
.impact-app-shell .niche-finder-global-shell .niche-dashboard-menu-button {
  display: none !important;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-brand {
  gap: 4px;
  padding: 4px 10px 14px;
  border-bottom: 1px solid #e6ebf3;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-logo {
  display: none;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-brand > span {
  color: #ff0033;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
  text-shadow: none;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-brand em {
  justify-self: start;
  border: 1px solid #ffd0d8;
  border-radius: 999px;
  background: #fff5f7;
  color: #b90b2a;
  padding: 5px 9px;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group {
  gap: 5px;
  margin: 17px 0 0;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group > span {
  padding: 0 9px 3px;
  color: #667085;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group a {
  min-height: 39px;
  padding: 9px 10px;
  border-radius: 13px;
  color: #172033;
  background: transparent;
  font-size: 13px;
  box-shadow: none;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group a::before {
  width: 8px;
  height: 8px;
  background: #ff0033;
  opacity: .24;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group a:hover {
  border-color: #ffd0d8;
  background: #fff5f7;
  color: #ff0033;
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group a.active {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(110deg, #ff0033, #7b2cff);
  box-shadow: 0 16px 34px rgba(255, 0, 51, .18);
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-group a.active::before {
  background: #fff;
  opacity: 1;
  box-shadow: 0 0 16px rgba(255, 255, 255, .55);
}
.impact-app-shell .niche-finder-global-shell .niche-sidebar-bottom {
  display: none;
}
.niche-shell-tabs {
  display: none !important;
  gap: 12px;
  padding: 14px;
  border: 1px solid #e6ebf3;
  border-radius: 22px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 18px 50px rgba(15, 23, 42, .055);
  overflow: hidden;
}
.niche-shell-tab-group {
  display: grid;
  gap: 8px;
}
.niche-shell-tab-group > span {
  color: #667085;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.niche-shell-tab-group > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.niche-shell-tab-group a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 8px 13px;
  border: 1px solid #dfe6f1;
  border-radius: 999px;
  color: #172033;
  background: #fff;
  font-size: 12px;
  font-weight: 950;
  box-shadow: 0 8px 22px rgba(15, 23, 42, .035);
}
.niche-shell-tab-group a:hover {
  border-color: #ffc2cf;
  color: #ff0033;
  transform: translateY(-1px);
}
.niche-shell-tab-group a.active {
  border-color: transparent;
  color: #fff;
  background: linear-gradient(110deg, #ff0033, #7b2cff);
  box-shadow: 0 16px 34px rgba(255, 0, 51, .20);
}
@media (max-width: 1180px) {
  .impact-app-shell .niche-finder-app.niche-finder-global-shell {
    --niche-sidebar-w: 238px;
    gap: 18px;
  }
}
@media (max-width: 980px) {
  .impact-app-shell .niche-finder-app.niche-finder-global-shell {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
  }
  .impact-app-shell .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    width: min(86vw, 320px);
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0 24px 24px 0;
    transform: translateX(-106%);
    transition: transform .22s ease;
    z-index: 1000;
  }
  .impact-app-shell .niche-finder-app.niche-finder-global-shell.sidebar-open .niche-finder-sidebar {
    transform: translateX(0) !important;
  }
  body.niche-sidebar-open .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
    transform: translateX(0) !important;
  }
  .impact-app-shell .niche-finder-global-shell .niche-dashboard-menu-button {
    display: grid !important;
  }
  .impact-app-shell .niche-finder-global-shell .niche-sidebar-scrim {
    z-index: 990;
  }
}
.niche-dashboard-returnbar {
  position: sticky;
  top: 0;
  z-index: 42;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 68px;
  margin: 0 -28px;
  padding: 12px 28px;
  border-bottom: 1px solid #e6ebf3;
  background: rgba(255, 255, 255, .9);
  backdrop-filter: blur(18px);
  box-shadow: 0 10px 28px rgba(15, 23, 42, .035);
}
.niche-dashboard-returnbar-left {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
}
.niche-return-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  color: #0f172a;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .045);
  font-size: 13px;
  font-weight: 950;
}
.niche-return-button:hover {
  border-color: #ffc1ce;
  color: #ff0033;
  transform: translateY(-1px);
}
.niche-dashboard-returnbar-left > span {
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}
.niche-dashboard-returnbar-left strong {
  color: #0f172a;
}
.niche-dashboard-heading {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
}
.niche-dashboard-heading > div {
  min-width: 0;
}
.niche-dashboard-menu-button {
  flex: 0 0 auto;
  margin-top: 2px;
}
@media (min-width: 981px) {
  .niche-dashboard-menu-button {
    display: none !important;
  }
}
@media (max-width: 980px) {
  body:has(.niche-finder-app) .site-header {
    display: none !important;
  }
  .niche-dashboard-returnbar {
    margin: 0 -16px;
    padding: 10px 16px;
    min-height: 62px;
  }
  .niche-dashboard-returnbar-left {
    width: 100%;
    justify-content: space-between;
  }
  .niche-dashboard-returnbar-left > span {
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .niche-dashboard-heading {
    width: 100%;
  }
  .niche-dashboard-menu-button {
    display: grid;
  }
}

/* Niche Finder single-sidebar workspace */
body.impact-app-active-niche {
  background: #f7f9fc;
}

body.impact-app-active-niche .app-shell {
  grid-template-columns: minmax(0, 1fr);
}

body.impact-app-active-niche .app-sidebar,
body.impact-app-active-niche .app-topbar,
body.impact-app-active-niche .site-header,
body.impact-app-active-niche .site-footer {
  display: none !important;
}

body.impact-app-active-niche .app-main-wrap,
body.impact-app-active-niche .app-main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.impact-app-active-niche .app-legacy-page {
  display: block;
  min-height: 100vh;
  margin: 0;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell {
  --niche-sidebar-w: 284px;
  width: 100%;
  min-height: 100vh;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: var(--niche-sidebar-w) minmax(0, 1fr);
  grid-template-rows: auto minmax(0, 1fr);
  gap: 0;
  align-items: stretch;
  background: #f7f9fc;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-dashboard-returnbar {
  grid-column: 1 / -1;
  grid-row: 1;
  position: sticky;
  top: 0;
  z-index: 60;
  min-height: 58px;
  margin: 0;
  padding: 10px clamp(14px, 2vw, 26px);
  border-bottom: 1px solid rgba(226, 232, 240, .92);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 14px 38px rgba(15, 23, 42, .06);
  backdrop-filter: blur(14px);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
  grid-column: 1;
  grid-row: 2;
  position: sticky;
  top: 58px;
  width: 100%;
  height: calc(100vh - 58px);
  max-height: calc(100vh - 58px);
  border: 0;
  border-right: 1px solid #e6ebf3;
  border-radius: 0;
  background: #fff;
  box-shadow: 18px 0 44px rgba(15, 23, 42, .08);
  overflow-y: auto;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-main {
  grid-column: 2;
  grid-row: 2;
  width: 100%;
  min-width: 0;
  padding: 24px clamp(18px, 2.4vw, 34px) 64px;
}

body.impact-app-active-niche .niche-finder-global-shell .niche-dashboard-header {
  margin: 0 0 18px;
}

@media (max-width: 980px) {
  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell {
    grid-template-columns: 1fr;
    grid-template-rows: auto minmax(0, 1fr);
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-dashboard-returnbar {
    grid-column: 1;
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    top: 0;
    z-index: 1000;
    width: min(86vw, 320px);
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0 24px 24px 0;
    transform: translateX(-106%);
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-main {
    grid-column: 1;
    grid-row: 2;
    padding: 16px;
  }
}

/* Niche Finder overview: richer data dashboard with in-place modals. */
.niche-overview-dashboard-v2 {
  grid-template-columns: minmax(0, 1fr) minmax(260px, 310px);
  align-items: start;
}
.niche-overview-dashboard-v2 .niche-overview-primary {
  gap: 18px;
}
.niche-overview-top-search {
  grid-template-columns: 142px minmax(0, 1fr) 116px;
  padding: 10px;
  border-radius: 20px;
}
.niche-overview-top-search select,
.niche-overview-top-search input,
.niche-overview-top-search button {
  min-height: 48px;
}
.niche-overview-welcome-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  border: 1px solid #e3e9f2;
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 0, 51, .08), transparent 15rem),
    linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(248, 250, 252, .9));
  box-shadow: 0 18px 46px rgba(15, 23, 42, .055);
  padding: 20px;
}
.niche-overview-welcome-panel h2 {
  margin: 4px 0 8px;
  color: #07111f;
  font-size: clamp(26px, 3vw, 38px);
  letter-spacing: 0;
}
.niche-overview-welcome-panel p {
  margin: 0;
  color: #536174;
  font-weight: 800;
}
.niche-breadcrumb-inline {
  color: #ff0033 !important;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.niche-overview-signal-pill {
  flex: 0 0 auto;
  display: grid;
  gap: 4px;
  min-width: 170px;
  border: 1px solid #bbf7d0;
  border-radius: 18px;
  background: #f0fdf4;
  color: #047857;
  padding: 13px 16px;
}
.niche-overview-signal-pill span {
  font-size: 24px;
  font-weight: 950;
  line-height: 1;
}
.niche-overview-signal-pill em {
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}
.niche-overview-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.niche-overview-data-card,
.niche-overview-wide-card {
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 46px rgba(15, 23, 42, .055);
  padding: 18px;
}
.niche-overview-block-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 14px;
}
.niche-overview-block-head h3 {
  margin: 0 0 4px;
  color: #0f172a;
  font-size: 18px;
  letter-spacing: 0;
}
.niche-overview-block-head span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}
.niche-overview-block-head button {
  flex: 0 0 auto;
  border: 0;
  border-radius: 999px;
  background: #fff1f4;
  color: #ff0033;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
  cursor: pointer;
}
.niche-overview-block-head button:hover {
  transform: translateY(-1px);
  box-shadow: 0 10px 22px rgba(255, 0, 51, .14);
}
.niche-overview-channel-list,
.niche-overview-competition-list {
  display: grid;
  gap: 10px;
}
.niche-overview-channel-item,
.niche-overview-competition-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 11px;
  align-items: center;
  border: 1px solid #edf2f7;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  padding: 10px;
}
.niche-overview-channel-item:hover,
.niche-overview-competition-item:hover {
  border-color: #ffc2cf;
  transform: translateY(-1px);
}
.niche-overview-channel-item img,
.niche-overview-channel-item > span,
.niche-overview-competition-item > span {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
}
.niche-overview-channel-item > span,
.niche-overview-competition-item > span {
  display: grid;
  place-items: center;
  background: #fff1f4;
  color: #ff0033;
  font-weight: 950;
}
.niche-overview-channel-item strong,
.niche-overview-competition-item strong,
.niche-overview-video-rail strong {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.niche-overview-channel-item em,
.niche-overview-competition-item em,
.niche-overview-video-rail em {
  display: block;
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.niche-overview-channel-item aside {
  display: grid;
  gap: 5px;
  min-width: 72px;
  text-align: right;
}
.niche-overview-channel-item aside b,
.niche-overview-competition-item > b {
  color: #ff0033;
  font-size: 13px;
  font-weight: 950;
}
.niche-overview-channel-item aside i {
  justify-self: end;
  display: block;
  height: 5px;
  max-width: 70px;
  border-radius: 999px;
  background: linear-gradient(90deg, #2563eb, #22c55e);
}
.niche-overview-keyword-strip,
.niche-overview-category-tiles,
.niche-overview-video-rail {
  display: grid;
  gap: 12px;
}
.niche-overview-keyword-strip {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.niche-overview-keyword-strip a,
.niche-overview-category-tiles a {
  display: grid;
  gap: 5px;
  min-height: 94px;
  border: 1px solid #e8eef6;
  border-radius: 16px;
  background: #fff;
  color: #0f172a;
  padding: 13px;
}
.niche-overview-keyword-strip a:hover,
.niche-overview-category-tiles a:hover {
  border-color: #ffc2cf;
  transform: translateY(-1px);
}
.niche-overview-keyword-strip span {
  justify-self: start;
  border-radius: 999px;
  background: #ecfdf5;
  color: #059669;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 950;
}
.niche-overview-keyword-strip em,
.niche-overview-category-tiles em {
  color: #64748b;
  font-size: 12px;
  font-style: normal;
  font-weight: 800;
}
.niche-overview-category-tiles {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.niche-overview-category-tiles span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: #eff6ff;
  color: #2563eb;
  font-weight: 950;
}
.niche-overview-video-rail {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.niche-overview-video-rail a {
  min-width: 0;
  color: #0f172a;
}
.niche-overview-video-rail figure {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  margin: 0 0 10px;
  border-radius: 16px;
  background: #0f172a;
}
.niche-overview-video-rail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.niche-overview-video-rail figure span {
  position: absolute;
  right: 7px;
  bottom: 7px;
  border-radius: 7px;
  background: rgba(2, 6, 23, .82);
  color: #fff;
  padding: 3px 6px;
  font-size: 11px;
  font-weight: 900;
}
.niche-overview-modal-layer[hidden] {
  display: none;
}
.niche-overview-modal-layer {
  position: fixed;
  inset: 0;
  z-index: 2147482500;
  display: grid;
  place-items: center;
  padding: 24px;
}
.niche-overview-modal-backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: rgba(15, 23, 42, .55);
  color: transparent;
  opacity: 0;
  transition: opacity .18s ease;
}
.niche-overview-modal-backdrop:hover,
.niche-overview-modal-backdrop:focus {
  background: rgba(15, 23, 42, .55);
  color: transparent;
}
.niche-overview-modal-layer.is-open .niche-overview-modal-backdrop {
  opacity: 1;
}
.niche-overview-modal {
  position: relative;
  z-index: 1;
  display: none;
  width: min(860px, calc(100vw - 32px));
  max-height: min(760px, calc(100vh - 64px));
  overflow: hidden;
  border: 1px solid #e2e8f0;
  border-radius: 24px;
  background: #fff;
  box-shadow: 0 32px 90px rgba(2, 6, 23, .24);
  opacity: 0;
  transform: translateY(12px) scale(.97);
  transition: opacity .18s ease, transform .18s ease;
}
.niche-overview-modal.is-active {
  display: block;
}
.niche-overview-modal-layer.is-open .niche-overview-modal.is-active {
  opacity: 1;
  transform: translateY(0) scale(1);
}
.niche-overview-modal-header {
  display: block;
  position: static;
  border-bottom: 1px solid #e2e8f0;
  padding: 18px 20px;
}
.niche-overview-modal-header h3 {
  margin: 0;
  padding-right: 56px;
  color: #0f172a;
  font-size: 20px;
}
.niche-overview-modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  min-width: 36px;
  height: 36px;
  min-height: 36px;
  padding: 0;
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 12px;
  background: #fff;
  color: #0f172a;
  cursor: pointer;
  line-height: 1;
  font-size: 22px;
  font-weight: 900;
}
.niche-overview-modal-close:hover,
.niche-overview-modal-close:focus {
  background: #f8fafc;
  color: #0f172a;
}
.niche-overview-modal-body {
  max-height: calc(min(760px, 100vh - 64px) - 76px);
  overflow: auto;
  padding: 18px;
}
.niche-overview-modal-body .niche-overview-data-card,
.niche-overview-modal-body .niche-overview-wide-card {
  border: 0;
  box-shadow: none;
  padding: 0;
}
.niche-overview-modal-body .niche-overview-keyword-strip,
.niche-overview-modal-body .niche-overview-category-tiles {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.niche-overview-modal-body .niche-overview-video-rail {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
body.niche-overview-modal-open {
  overflow: hidden;
}
@media (max-width: 1280px) {
  .niche-overview-dashboard-v2 {
    grid-template-columns: 1fr;
  }
  .niche-overview-keyword-strip,
  .niche-overview-category-tiles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .niche-overview-video-rail {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .niche-overview-top-search,
  .niche-overview-dashboard-grid,
  .niche-overview-keyword-strip,
  .niche-overview-category-tiles,
  .niche-overview-video-rail,
  .niche-overview-modal-body .niche-overview-keyword-strip,
  .niche-overview-modal-body .niche-overview-category-tiles,
  .niche-overview-modal-body .niche-overview-video-rail {
    grid-template-columns: 1fr;
  }
  .niche-overview-welcome-panel {
    align-items: flex-start;
    flex-direction: column;
  }
  .niche-overview-signal-pill {
    width: 100%;
  }
  .niche-overview-modal-layer {
    padding: 12px;
  }
  .niche-overview-modal {
    width: calc(100vw - 24px);
    max-height: calc(100vh - 24px);
  }
  .niche-overview-modal-body {
    max-height: calc(100vh - 104px);
  }
}

/* Public affiliates page */
.affiliate-page {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 18px 0 72px;
  color: #101827;
}
.affiliate-page .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  border-radius: 999px;
  padding: 0 20px;
  text-decoration: none;
}
.affiliate-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr);
  gap: 22px;
  align-items: stretch;
  padding: clamp(26px, 5vw, 58px);
  border: 1px solid #ffd1da;
  border-radius: 34px;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 0, 51, .16), transparent 18rem),
    radial-gradient(circle at 0% 100%, rgba(37, 99, 235, .12), transparent 18rem),
    linear-gradient(135deg, #ffffff 0%, #fff5f7 48%, #f6fbff 100%);
  box-shadow: 0 28px 90px rgba(15, 23, 42, .08);
}
.affiliate-eyebrow {
  margin: 0 0 10px;
  color: #ff0033;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.affiliate-hero h1 {
  max-width: 820px;
  margin: 0;
  color: #050507;
  font-size: clamp(42px, 6vw, 78px);
  line-height: .94;
  letter-spacing: 0;
}
.affiliate-hero-copy > p:not(.affiliate-eyebrow) {
  max-width: 760px;
  margin: 18px 0 0;
  color: #334155;
  font-size: 18px;
  line-height: 1.65;
  font-weight: 650;
}
.affiliate-hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}
.affiliate-hero-badges span,
.affiliate-stat-grid article,
.affiliate-code-box,
.affiliate-mini-list span,
.affiliate-metric-grid span,
.affiliate-audience-grid article {
  border: 1px solid #e2e8f0;
  background: rgba(255, 255, 255, .9);
}
.affiliate-hero-badges span {
  border-radius: 999px;
  color: #1f2a44;
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 900;
}
.affiliate-hero-note {
  color: #475569 !important;
  font-size: 15px !important;
}
.affiliate-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}
.affiliate-hero-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 18px;
  min-height: 380px;
  border: 1px solid rgba(15, 23, 42, .14);
  border-radius: 28px;
  background:
    linear-gradient(145deg, rgba(2, 6, 23, .96), rgba(59, 7, 40, .94)),
    #0f172a;
  color: #fff;
  padding: 28px;
  box-shadow: 0 26px 70px rgba(2, 6, 23, .22);
}
.affiliate-hero-card span {
  color: #ffb4c2;
  font-size: 13px;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.affiliate-hero-card strong {
  display: block;
  color: #fff;
  font-size: clamp(74px, 9vw, 118px);
  line-height: .82;
}
.affiliate-hero-card p,
.affiliate-hero-card em {
  margin: 0;
  color: #e2e8f0;
  font-style: normal;
  font-weight: 750;
  line-height: 1.55;
}
.affiliate-hero-card div {
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 18px;
  background: rgba(255, 255, 255, .08);
  padding: 16px;
}
.affiliate-hero-card b {
  display: block;
  margin-bottom: 4px;
}
.affiliate-stat-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin-top: 18px;
}
.affiliate-stat-grid article {
  min-height: 154px;
  border-radius: 22px;
  padding: 18px;
  box-shadow: 0 18px 46px rgba(15, 23, 42, .045);
}
.affiliate-stat-grid strong {
  display: block;
  margin-bottom: 10px;
  color: #ff0033;
  font-size: 24px;
  line-height: 1;
}
.affiliate-essential-copy {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}
.affiliate-essential-copy p {
  margin: 0;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: rgba(255, 255, 255, .98);
  color: #334155;
  padding: 14px 16px;
  font-weight: 850;
  line-height: 1.45;
  box-shadow: 0 14px 34px rgba(15, 23, 42, .045);
}
.affiliate-stat-grid p,
.affiliate-muted,
.affiliate-card p,
.affiliate-section-head p {
  color: #526173;
  font-weight: 700;
  line-height: 1.65;
}
.affiliate-section,
.affiliate-two-col,
.affiliate-final-cta {
  margin-top: 28px;
}
.affiliate-section {
  border: 1px solid #e2e8f0;
  border-radius: 28px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 52px rgba(15, 23, 42, .055);
  padding: clamp(22px, 4vw, 34px);
}
.affiliate-section-head {
  max-width: 860px;
  margin-bottom: 20px;
}
.affiliate-section-head h2,
.affiliate-card h2,
.affiliate-final-cta h2 {
  margin: 0;
  color: #070b14;
  font-size: clamp(28px, 3vw, 46px);
  line-height: 1.04;
  letter-spacing: 0;
}
.affiliate-steps,
.affiliate-earnings-grid,
.affiliate-filter-grid,
.affiliate-payment-flow,
.affiliate-audience-grid {
  display: grid;
  gap: 14px;
}
.affiliate-steps {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.affiliate-steps article,
.affiliate-earnings-grid article,
.affiliate-filter-grid article,
.affiliate-payment-flow article {
  border: 1px solid #e8eef6;
  border-radius: 20px;
  background: #fff;
  padding: 18px;
}
.affiliate-steps span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 12px;
  background: #ff0033;
  color: #fff;
  font-weight: 950;
}
.affiliate-steps h3,
.affiliate-card h3,
.affiliate-earnings-grid h3,
.affiliate-filter-grid h3 {
  margin: 14px 0 8px;
  color: #111827;
  font-size: 18px;
}
.affiliate-steps p,
.affiliate-earnings-grid p,
.affiliate-filter-grid p,
.affiliate-payment-flow p {
  margin: 0;
  color: #64748b;
  font-weight: 700;
  line-height: 1.55;
}
.affiliate-two-col {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.affiliate-card {
  min-width: 0;
  border: 1px solid #e2e8f0;
  border-radius: 28px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 18px 52px rgba(15, 23, 42, .05);
  padding: clamp(22px, 4vw, 32px);
}
.affiliate-code-box {
  display: grid;
  gap: 6px;
  margin: 12px 0;
  border-radius: 18px;
  padding: 14px;
}
.affiliate-code-box span {
  color: #64748b;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
}
.affiliate-code-box code {
  overflow-wrap: anywhere;
  color: #07111f;
  font-size: 14px;
  font-weight: 850;
}
.affiliate-callout,
.affiliate-warning {
  border-radius: 18px;
  padding: 14px;
}
.affiliate-callout {
  border: 1px solid #bbf7d0;
  background: #f0fdf4;
  color: #047857 !important;
}
.affiliate-warning {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #9a3412 !important;
}
.affiliate-earnings-grid,
.affiliate-filter-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.affiliate-filter-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.affiliate-earnings-grid strong {
  display: block;
  margin-top: 12px;
  color: #ff0033;
  font-size: 18px;
}
.affiliate-table-wrap {
  overflow-x: auto;
  margin-top: 18px;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
}
.affiliate-table {
  width: 100%;
  border-collapse: collapse;
  background: #fff;
}
.affiliate-table th,
.affiliate-table td {
  padding: 16px 18px;
  border-bottom: 1px solid #eef2f7;
  text-align: left;
}
.affiliate-table th {
  color: #475569;
  font-size: 12px;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.affiliate-table td {
  color: #0f172a;
  font-weight: 850;
}
.affiliate-table tr:last-child td {
  border-bottom: 0;
}
.affiliate-mini-list,
.affiliate-metric-grid {
  display: grid;
  gap: 10px;
}
.affiliate-mini-list span,
.affiliate-metric-grid span {
  border-radius: 14px;
  padding: 12px;
  color: #334155;
  font-weight: 800;
}
.affiliate-panel-preview {
  background:
    radial-gradient(circle at 100% 0%, rgba(37, 99, 235, .1), transparent 16rem),
    rgba(255, 255, 255, .96);
}
.affiliate-metric-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.affiliate-two-note {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
  margin-top: 16px;
}
.affiliate-two-note p {
  margin: 0;
  border-radius: 16px;
  background: #f8fafc;
  color: #475569;
  padding: 14px;
  font-weight: 700;
  line-height: 1.55;
}
.affiliate-payment-flow {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.affiliate-check-list,
.affiliate-rules-list {
  display: grid;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.affiliate-check-list li,
.affiliate-rules-list li {
  position: relative;
  padding-left: 24px;
  color: #334155;
  font-weight: 750;
  line-height: 1.5;
}
.affiliate-check-list li:before,
.affiliate-rules-list li:before {
  content: "";
  position: absolute;
  top: .58em;
  left: 0;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #ff0033;
}
.affiliate-rules-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.affiliate-audience-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.affiliate-audience-grid article {
  border-radius: 18px;
  padding: 16px;
  color: #0f172a;
  font-weight: 900;
}
.affiliate-faq-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.affiliate-faq details {
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  padding: 16px;
}
.affiliate-faq summary {
  cursor: pointer;
  color: #111827;
  font-weight: 950;
}
.affiliate-faq p {
  margin: 12px 0 0;
  color: #526173;
  font-weight: 700;
  line-height: 1.55;
}
.affiliate-final-cta {
  overflow: hidden;
  border-radius: 32px;
  background:
    radial-gradient(circle at 0 0, rgba(255, 255, 255, .16), transparent 16rem),
    linear-gradient(135deg, #0b1220, #3b0b2c 56%, #ff0033);
  color: #fff;
  padding: clamp(28px, 5vw, 52px);
  box-shadow: 0 28px 80px rgba(15, 23, 42, .16);
}
.affiliate-final-cta .affiliate-eyebrow,
.affiliate-final-cta h2,
.affiliate-final-cta p {
  color: #fff;
}
.affiliate-final-cta p {
  max-width: 760px;
  color: rgba(255, 255, 255, .82);
  font-size: 17px;
  line-height: 1.65;
  font-weight: 750;
}
@media (max-width: 1180px) {
  .affiliate-hero,
  .affiliate-two-col,
  .affiliate-two-note {
    grid-template-columns: 1fr;
  }
  .affiliate-stat-grid,
  .affiliate-essential-copy,
  .affiliate-steps,
  .affiliate-metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .affiliate-earnings-grid,
  .affiliate-filter-grid,
  .affiliate-payment-flow,
  .affiliate-audience-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .affiliate-page {
    width: min(100% - 20px, 1180px);
    padding-bottom: 44px;
  }
  .affiliate-hero,
  .affiliate-section,
  .affiliate-card,
  .affiliate-final-cta {
    border-radius: 22px;
  }
  .affiliate-hero {
    padding: 24px;
  }
  .affiliate-hero h1 {
    font-size: clamp(38px, 12vw, 54px);
  }
  .affiliate-hero-card {
    min-height: 0;
  }
  .affiliate-stat-grid,
  .affiliate-essential-copy,
  .affiliate-steps,
  .affiliate-earnings-grid,
  .affiliate-filter-grid,
  .affiliate-payment-flow,
  .affiliate-metric-grid,
  .affiliate-audience-grid,
  .affiliate-faq-grid,
  .affiliate-rules-list {
    grid-template-columns: 1fr;
  }
  .affiliate-actions .button {
    width: 100%;
  }
}

/* Impact Studio integrated inside the global app shell */
.impact-studio-chat-first .impact-studio-app {
  position: relative;
  display: block;
  min-height: calc(100vh - 82px);
}
.impact-studio-chat-first .impact-studio-app-sidebar {
  position: absolute;
  top: calc(var(--studio-topbar-h, 54px) + 10px);
  left: 22px;
  right: 22px;
  z-index: 7;
  display: block;
  min-height: 0;
  height: auto;
  padding: 0;
  color: #172033;
  background: transparent;
  border: 0;
  box-shadow: none;
}
.impact-studio-chat-first .impact-studio-side-brand,
.impact-studio-chat-first .impact-studio-side-section,
.impact-studio-chat-first .impact-studio-side-plan {
  display: none !important;
}
.impact-studio-chat-first .impact-studio-side-nav {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  overflow-x: auto;
  border: 1px solid rgba(226, 232, 240, .96);
  border-radius: 18px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
  padding: 8px;
  scrollbar-width: none;
}
.impact-studio-chat-first .impact-studio-side-nav::-webkit-scrollbar {
  display: none;
}
.impact-studio-chat-first .impact-studio-side-nav button {
  flex: 0 0 auto;
  min-height: 38px;
  padding: 9px 13px;
  border-radius: 13px;
  color: #475569;
  background: transparent;
  box-shadow: none;
  transform: none;
  white-space: nowrap;
}
.impact-studio-chat-first .impact-studio-side-nav button span {
  width: 24px;
  height: 24px;
  border-color: #e2e8f0;
  color: #334155;
  background: #f8fafc;
}
.impact-studio-chat-first .impact-studio-side-nav button em {
  margin-left: 4px;
  background: #ffe4ec;
  color: #ff0033;
}
.impact-studio-chat-first .impact-studio-side-nav button:hover,
.impact-studio-chat-first .impact-studio-side-nav button.active {
  color: #ff0033;
  background: linear-gradient(135deg, rgba(255, 0, 51, .10), rgba(37, 99, 235, .06));
  box-shadow: inset 0 -2px 0 #ff0033;
  transform: none;
}
.impact-studio-chat-first .impact-studio-side-nav button:hover span,
.impact-studio-chat-first .impact-studio-side-nav button.active span {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, #ff0033, #6d28d9);
}
.impact-studio-chat-first .impact-studio-main {
  width: 100%;
  min-height: calc(100vh - 82px);
}
.impact-studio-chat-first .impact-studio-workspace {
  padding-top: 74px;
}
.impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  max-width: none;
}
@media (min-width: 1181px) {
  .impact-studio-chat-first .impact-studio-workspace.has-drawer .impact-studio-context-drawer {
    top: 82px;
    max-height: calc(100% - 102px);
  }
}
@media (max-width: 860px) {
  .impact-studio-chat-first .impact-studio-app-sidebar {
    top: calc(var(--studio-topbar-h, 54px) + 6px);
    left: 8px;
    right: 8px;
  }
  .impact-studio-chat-first .impact-studio-workspace {
    padding-top: 70px;
  }
  .impact-studio-chat-first .impact-studio-side-nav {
    border-radius: 16px;
    padding: 7px;
  }
  .impact-studio-chat-first .impact-studio-side-nav button {
    min-height: 36px;
    padding: 8px 11px;
    font-size: 12px;
  }
}

/* Impact Studio single-sidebar workspace */
body.impact-app-active-studio {
  overflow: hidden;
  background: linear-gradient(135deg, #fff7f9 0%, #f8fbff 50%, #fff 100%);
}

body.impact-app-active-studio .app-shell {
  grid-template-columns: minmax(0, 1fr);
}

body.impact-app-active-studio .app-sidebar,
body.impact-app-active-studio .app-topbar,
body.impact-app-active-studio .site-header,
body.impact-app-active-studio .site-footer {
  display: none !important;
}

body.impact-app-active-studio .app-main-wrap,
body.impact-app-active-studio .app-main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.impact-app-active-studio .app-main {
  height: 100dvh;
  overflow: hidden;
}

body.impact-app-active-studio .impact-studio-chat-first {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  height: 100dvh;
  min-height: 0;
  padding: 0;
  overflow: hidden;
}

.impact-studio-returnbar {
  position: relative;
  z-index: 30;
  display: flex;
  align-items: center;
  min-height: 58px;
  padding: 10px clamp(14px, 2vw, 26px);
  background: rgba(255, 255, 255, .94);
  border-bottom: 1px solid rgba(226, 232, 240, .92);
  box-shadow: 0 14px 38px rgba(15, 23, 42, .06);
  backdrop-filter: blur(14px);
}

.impact-studio-returnbar-left {
  display: flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  color: #64748b;
  font-weight: 800;
  font-size: 13px;
}

.impact-studio-returnbar-left strong {
  color: #111827;
}

.impact-studio-return-button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 9px 14px;
  border: 1px solid rgba(203, 213, 225, .95);
  border-radius: 14px;
  color: #111827;
  background: #fff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, .06);
  font-weight: 900;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.impact-studio-return-button:hover {
  color: #ff0033;
  border-color: rgba(255, 0, 51, .28);
  box-shadow: 0 14px 32px rgba(255, 0, 51, .10);
  transform: translateY(-1px);
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-app {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 284px minmax(0, 1fr) !important;
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-app-sidebar {
  position: sticky !important;
  top: 0 !important;
  left: auto !important;
  right: auto !important;
  z-index: 20 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  width: 284px !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 22px 16px !important;
  color: #f8fafc !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(255, 0, 51, .26), transparent 30%),
    radial-gradient(circle at 100% 20%, rgba(99, 102, 241, .18), transparent 32%),
    linear-gradient(180deg, #071120 0%, #0e1728 55%, #070b14 100%) !important;
  border: 0 !important;
  border-right: 1px solid rgba(255, 255, 255, .08) !important;
  border-radius: 0 !important;
  box-shadow: 20px 0 60px rgba(15, 23, 42, .18) !important;
  overflow-y: auto !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-app-sidebar::-webkit-scrollbar {
  display: none !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-brand {
  display: grid !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-section,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-plan {
  display: grid !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 8px !important;
  width: auto !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  scrollbar-width: auto !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 46px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  color: #dbeafe !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: none !important;
  white-space: normal !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button span {
  flex: 0 0 auto !important;
  width: 30px !important;
  height: 30px !important;
  border-color: rgba(255, 255, 255, .14) !important;
  color: #fff !important;
  background: rgba(255, 255, 255, .07) !important;
  border-radius: 10px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button em {
  margin-left: auto !important;
  background: rgba(255, 0, 51, .24) !important;
  color: #fff !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button:hover,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button.active {
  color: #fff !important;
  background: linear-gradient(115deg, #ff003d 0%, #d91268 46%, #6338f2 100%) !important;
  box-shadow: 0 18px 36px rgba(255, 0, 61, .24), inset 0 1px 0 rgba(255, 255, 255, .18) !important;
  transform: translateX(2px) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button:hover span,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button.active span {
  color: #fff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #ff0033, #6d28d9) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-main {
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: 100% !important;
  width: 100% !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-topbar {
  display: none !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace {
  min-height: 0 !important;
  height: 100% !important;
  padding: 0 6px 6px !important;
  overflow: hidden !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-chat-stage {
  padding: clamp(6px, .7vw, 10px) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-chat-inline,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-chat-inline .impact-studio-chat-panel {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: 100% !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-chat-messages {
  min-height: 0 !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-stage {
  display: grid !important;
  min-height: min(720px, calc(100dvh - 78px)) !important;
  height: 100% !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-inline,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-inline .impact-studio-chat-panel {
  min-height: min(720px, calc(100dvh - 78px)) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-messages {
  min-height: clamp(300px, 52dvh, 620px) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-chat-empty {
  align-self: center;
  width: min(560px, 100%);
  margin: auto;
  padding: 22px clamp(18px, 3vw, 28px);
}

@media (max-width: 860px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-stage,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-inline,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-inline .impact-studio-chat-panel {
    min-height: min(680px, calc(100dvh - 24px)) !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace:not(.has-analysis-drawer) .impact-studio-chat-messages {
    min-height: clamp(280px, 48dvh, 520px) !important;
  }
}

/* Impact Studio channel analysis: primary workspace layout */
@media (min-width: 1181px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer {
    display: grid !important;
    grid-template-columns: minmax(0, 76fr) minmax(260px, 24fr) !important;
    gap: clamp(14px, 1.6vw, 22px) !important;
    align-items: stretch !important;
    padding: clamp(14px, 1.6vw, 24px) !important;
    overflow: hidden !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: min(860px, 100%) !important;
    max-width: 1280px !important;
    height: 100% !important;
    max-height: calc(100dvh - 28px) !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 2 !important;
    overflow: hidden !important;
    border-color: rgba(226, 232, 240, .95) !important;
    border-radius: 28px !important;
    background: rgba(255, 255, 255, .96) !important;
    box-shadow: 0 24px 70px rgba(15, 23, 42, .12) !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-chat-stage {
    grid-column: 2 !important;
    grid-row: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    height: 100% !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-chat-inline .impact-studio-chat-panel {
    box-shadow: 0 18px 50px rgba(15, 23, 42, .08) !important;
  }
}

@media (min-width: 1600px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer {
    grid-template-columns: minmax(0, 78fr) minmax(280px, 22fr) !important;
  }
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] > header {
  position: sticky !important;
  top: 0 !important;
  z-index: 6 !important;
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) 44px !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid rgba(226, 232, 240, .92) !important;
  background: rgba(255, 255, 255, .97) !important;
  backdrop-filter: blur(14px) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] > header .eyebrow {
  margin: 0 !important;
  color: #ff0033 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] > header h2 {
  margin: 2px 0 0 !important;
  color: #050507 !important;
  font-size: clamp(23px, 1.7vw, 30px) !important;
  line-height: 1.05 !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-collapse,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-x {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 16px !important;
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-collapse {
  border-color: rgba(255, 0, 51, .16) !important;
  background: #fff7f8 !important;
  color: #ff0033 !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-x {
  border-color: rgba(255, 0, 51, .18) !important;
  background: linear-gradient(180deg, #fff 0%, #fff2f5 100%) !important;
  color: #9f1239 !important;
  font-size: 0 !important;
  line-height: 1 !important;
  box-shadow: 0 10px 26px rgba(255, 0, 51, .10) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-collapse {
  font-size: 0 !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-collapse::before,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-x::before {
  font-size: 26px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-collapse:hover,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-x:hover {
  transform: translateY(-1px) !important;
  border-color: rgba(255, 0, 51, .34) !important;
  box-shadow: 0 14px 30px rgba(255, 0, 51, .16) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-drawer-body {
  overflow-x: hidden !important;
  overflow-y: auto !important;
  padding: clamp(20px, 2vw, 30px) !important;
  min-width: 0 !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .impact-studio-panel.active,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-content,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-dashboard,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-panel,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-ai-report,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card {
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head {
  grid-template-columns: 86px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 20px !important;
  padding: clamp(18px, 2vw, 24px) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head img {
  width: 86px !important;
  height: 86px !important;
  border-radius: 22px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head .dashboard-open-button {
  grid-column: auto !important;
  justify-self: end !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head h2 {
  font-size: clamp(24px, 2.2vw, 32px) !important;
  overflow-wrap: break-word !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-kpi-grid {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)) !important;
  gap: 14px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-main-grid,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-ai-grid {
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)) !important;
  gap: 18px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-motivation-grid {
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
  gap: 16px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-potential-card,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card {
  grid-template-columns: minmax(260px, 38%) minmax(0, 1fr) !important;
  gap: 18px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-potential-card {
  grid-template-columns: minmax(128px, 160px) minmax(0, 1fr) !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-head {
  grid-template-columns: minmax(0, 1fr) auto !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-reach-status {
  display: grid !important;
  grid-template-columns: 1fr !important;
  align-items: start !important;
  justify-content: start !important;
  gap: 8px !important;
  padding: 15px 16px !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-actions {
  justify-content: flex-start !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-actions .button {
  white-space: normal !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-reach-status span,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] p,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] small {
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card > img {
  min-height: 0 !important;
}

@media (max-width: 1320px) and (min-width: 861px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: minmax(0, 1fr) minmax(360px, auto) !important;
    gap: 18px !important;
    padding: 18px !important;
    overflow-y: auto !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-chat-stage {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-height: 360px !important;
    height: 420px !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace.has-analysis-drawer .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] {
    grid-column: 1 !important;
    grid-row: 1 !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    min-height: 640px !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: auto !important;
  }
}

@media (max-width: 980px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-potential-card,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-head,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-video-card {
    grid-template-columns: 1fr !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-channel-head .dashboard-open-button {
    justify-self: start !important;
  }
}

@media (max-width: 560px) {
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .dashboard-stat-grid,
  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-context-drawer[data-impact-studio-drawer-type="analysis"] .studio-kpi-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 860px) {
  body.impact-app-active-studio {
    overflow: auto;
  }

  body.impact-app-active-studio .app-main {
    height: auto;
    min-height: 100dvh;
    overflow: visible;
  }

  body.impact-app-active-studio .impact-studio-chat-first {
    height: auto;
    min-height: 100dvh;
    overflow: visible;
  }

  .impact-studio-returnbar {
    padding: 10px 12px;
  }

  .impact-studio-returnbar-left {
    width: 100%;
    flex-wrap: wrap;
    gap: 8px;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-app {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-app-sidebar {
    position: relative !important;
    top: 0 !important;
    width: 100% !important;
    height: auto !important;
    max-height: none !important;
    border-radius: 0 0 24px 24px !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-side-nav button {
    min-width: 0 !important;
    white-space: normal !important;
  }

  body.impact-app-active-studio .impact-studio-chat-first .impact-studio-main,
body.impact-app-active-studio .impact-studio-chat-first .impact-studio-workspace {
    height: auto !important;
    overflow: visible !important;
  }
}

/* Public Impactube landing */
body.public-landing {
  min-height: 100vh;
  background:
    linear-gradient(135deg, #fff 0%, #f7fbff 42%, #fff4f7 100%);
  color: #08111f;
}

.landing-shell,
.landing-header-inner {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
}

.landing-header {
  position: sticky;
  top: 0;
  z-index: 50;
  border-bottom: 1px solid rgba(226, 232, 240, .9);
  background: rgba(255, 255, 255, .9);
  backdrop-filter: blur(18px);
}

.landing-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  min-height: 76px;
}

.landing-brand,
.landing-header-actions,
.landing-hero-actions,
.landing-nav,
.landing-metrics,
.landing-preview-top,
.landing-preview-search,
.landing-preview-list div,
.landing-footer .landing-shell {
  display: flex;
  align-items: center;
}

.landing-brand {
  gap: 10px;
  color: #08111f;
  font-size: 18px;
  font-weight: 950;
}

.landing-brand span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #ff0033, #6d3df2);
  box-shadow: 0 16px 34px rgba(255, 0, 51, .24);
  font-size: 13px;
}

.landing-nav {
  gap: 8px;
  color: #475569;
  font-size: 14px;
  font-weight: 850;
}

.landing-nav a {
  padding: 9px 11px;
  border-radius: 999px;
}

.landing-nav a:hover {
  background: #fff2f5;
  color: #ff0033;
}

.landing-header-actions,
.landing-hero-actions {
  gap: 10px;
}

.landing-link-button,
.landing-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 14px;
  font-weight: 950;
  line-height: 1;
  white-space: nowrap;
}

.landing-link-button {
  padding: 0 14px;
  border: 1px solid #e2e8f0;
  background: #fff;
  color: #0f172a;
}

.landing-button {
  padding: 0 18px;
  border: 1px solid transparent;
}

.landing-button-primary {
  color: #fff;
  background: linear-gradient(135deg, #ff0033, #c4002d);
  box-shadow: 0 18px 38px rgba(255, 0, 51, .22);
}

.landing-button-primary:hover {
  color: #fff;
  transform: translateY(-1px);
}

.landing-button-secondary {
  color: #0f172a;
  border-color: #dbe4ef;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .06);
}

.landing-hero {
  padding: clamp(54px, 7vw, 94px) 0 54px;
}

.landing-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(360px, .78fr);
  gap: clamp(34px, 5vw, 68px);
  align-items: center;
}

.landing-eyebrow {
  margin: 0 0 14px;
  color: #ff0033;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.landing-hero h1 {
  max-width: 760px;
  margin: 0;
  font-size: 74px;
  line-height: .94;
  letter-spacing: 0;
}

.landing-subtitle {
  max-width: 700px;
  margin: 22px 0 0;
  color: #475569;
  font-size: 21px;
  line-height: 1.55;
}

.landing-hero-actions {
  flex-wrap: wrap;
  margin-top: 30px;
}

.landing-metrics {
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.landing-metrics div {
  min-width: 164px;
  padding: 14px 16px;
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 18px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 14px 36px rgba(15, 23, 42, .06);
}

.landing-metrics strong,
.landing-metrics span {
  display: block;
}

.landing-metrics strong {
  color: #08111f;
  font-size: 24px;
}

.landing-metrics span {
  color: #64748b;
  font-size: 13px;
  font-weight: 850;
}

.landing-auth-notice {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  max-width: 680px;
  margin: 0 0 18px;
  padding: 13px 15px;
  border: 1px solid #ffc7d2;
  border-radius: 16px;
  background: #fff6f8;
  color: #991b1b;
  font-weight: 850;
}

.landing-auth-notice a {
  color: #ff0033;
  font-weight: 950;
}

.landing-preview {
  position: relative;
  min-height: 560px;
  padding: 22px;
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 28px;
  background: linear-gradient(135deg, #fff 0%, #f8fbff 52%, #fff4f7 100%);
  box-shadow: 0 34px 90px rgba(15, 23, 42, .16);
  overflow: hidden;
}

.landing-preview::before {
  content: "";
  position: absolute;
  inset: auto -18% -28% 30%;
  height: 250px;
  background: linear-gradient(135deg, rgba(255, 0, 51, .18), rgba(59, 130, 246, .16));
  transform: rotate(-8deg);
}

.landing-preview > * {
  position: relative;
}

.landing-preview-top {
  justify-content: space-between;
  margin-bottom: 18px;
}

.landing-preview-top span {
  color: #0f172a;
  font-weight: 950;
}

.landing-preview-top strong {
  padding: 6px 10px;
  border-radius: 999px;
  background: #dcfce7;
  color: #166534;
  font-size: 12px;
}

.landing-preview-search {
  justify-content: space-between;
  gap: 14px;
  min-height: 58px;
  padding: 10px 12px 10px 18px;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
  color: #64748b;
  font-weight: 850;
}

.landing-preview-search b {
  padding: 12px 14px;
  border-radius: 14px;
  color: #fff;
  background: #ff0033;
}

.landing-preview-kpis {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 16px 0;
}

.landing-preview-kpis article,
.landing-preview-list div,
.landing-benefit-grid article,
.landing-tool-grid article,
.landing-plan-grid article {
  border: 1px solid rgba(226, 232, 240, .95);
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 16px 42px rgba(15, 23, 42, .06);
}

.landing-preview-kpis article {
  min-height: 104px;
  padding: 14px;
  border-radius: 18px;
}

.landing-preview-kpis span,
.landing-preview-list span {
  color: #64748b;
  font-size: 12px;
  font-weight: 850;
}

.landing-preview-kpis strong {
  display: block;
  margin-top: 8px;
  color: #0f172a;
  font-size: 24px;
  line-height: 1.05;
}

.landing-preview-chart {
  display: flex;
  align-items: end;
  gap: 10px;
  height: 160px;
  margin: 20px 0;
  padding: 18px;
  border: 1px solid #e2e8f0;
  border-radius: 22px;
  background: linear-gradient(180deg, #f8fbff 0%, #fff 100%);
}

.landing-preview-chart i {
  flex: 1;
  border-radius: 999px 999px 8px 8px;
  background: linear-gradient(180deg, #ff0033, #7c3aed);
  box-shadow: 0 10px 24px rgba(255, 0, 51, .16);
}

.landing-preview-list {
  display: grid;
  gap: 10px;
}

.landing-preview-list div {
  justify-content: space-between;
  gap: 14px;
  padding: 13px 14px;
  border-radius: 16px;
}

.landing-preview-list strong {
  color: #ff0033;
}

.landing-section {
  padding: 64px 0;
}

.landing-section-head {
  max-width: 720px;
  margin-bottom: 26px;
}

.landing-section-head h2,
.landing-how-grid h2,
.landing-final-cta h2 {
  margin: 0;
  color: #08111f;
  font-size: 48px;
  line-height: 1.02;
}

.landing-benefit-grid,
.landing-tool-grid,
.landing-plan-grid,
.landing-how-grid {
  display: grid;
  gap: 18px;
}

.landing-benefit-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.landing-benefit-grid article,
.landing-tool-grid article,
.landing-plan-grid article {
  border-radius: 22px;
  padding: 22px;
}

.landing-benefit-grid article span,
.landing-tool-grid article div span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  margin-bottom: 16px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, #ff0033, #111827);
  font-size: 12px;
  font-weight: 950;
}

.landing-benefit-grid h3,
.landing-tool-grid h3,
.landing-plan-grid h3 {
  margin: 0 0 10px;
  color: #08111f;
  font-size: 20px;
  line-height: 1.15;
}

.landing-benefit-grid p,
.landing-tool-grid p,
.landing-plan-grid p,
.landing-steps p {
  margin: 0;
  color: #5f6b7a;
  font-weight: 750;
}

.landing-tools-section {
  background: linear-gradient(180deg, rgba(248, 251, 255, .75), rgba(255, 244, 247, .72));
}

.landing-tool-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.landing-tool-grid article a {
  display: inline-flex;
  margin-top: 18px;
  color: #ff0033;
  font-weight: 950;
}

.landing-how-grid {
  grid-template-columns: minmax(0, .75fr) minmax(0, 1fr);
  align-items: start;
}

.landing-steps {
  display: grid;
  gap: 12px;
}

.landing-steps article {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 16px;
  border: 1px solid #e2e8f0;
  border-radius: 18px;
  background: #fff;
}

.landing-steps span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 15px;
  background: #fff2f5;
  color: #ff0033;
  font-weight: 950;
}

.landing-plan-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.landing-plan-grid article > span {
  color: #ff0033;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.landing-plan-grid .landing-button {
  margin-top: 22px;
}

.landing-plan-featured {
  background: linear-gradient(135deg, #fff 0%, #f8fbff 58%, #fff4f7 100%) !important;
  border-color: #ffc4cf !important;
}

.landing-plan-featured div {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.landing-plan-featured .landing-button {
  margin-top: 0;
}

.landing-final-cta {
  padding: 72px 0;
  text-align: center;
  background: linear-gradient(135deg, #fff 0%, #f8fbff 50%, #fff4f7 100%);
}

.landing-final-cta h2 {
  max-width: 720px;
  margin: 0 auto 24px;
}

.landing-footer {
  padding: 28px 0;
  border-top: 1px solid #e2e8f0;
  background: #fff;
}

.landing-footer .landing-shell {
  justify-content: space-between;
  gap: 18px;
}

.landing-footer strong {
  color: #08111f;
}

.landing-footer nav {
  display: flex;
  gap: 14px;
  color: #64748b;
  font-weight: 850;
}

@media (max-width: 1080px) {
  .landing-header-inner {
    flex-wrap: wrap;
    padding: 12px 0;
  }

  .landing-nav {
    order: 3;
    width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
  }

  .landing-hero-grid,
  .landing-how-grid {
    grid-template-columns: 1fr;
  }

  .landing-preview {
    min-height: 0;
  }

  .landing-hero h1 {
    font-size: 58px;
  }

  .landing-subtitle {
    font-size: 20px;
  }

  .landing-section-head h2,
  .landing-how-grid h2,
  .landing-final-cta h2 {
    font-size: 40px;
  }

  .landing-benefit-grid,
  .landing-tool-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 680px) {
  .landing-shell,
  .landing-header-inner {
    width: min(100% - 24px, 1180px);
  }

  .landing-header-actions,
  .landing-hero-actions,
  .landing-auth-notice,
  .landing-plan-featured div,
  .landing-footer .landing-shell {
    align-items: stretch;
    flex-direction: column;
  }

  .landing-header-actions {
    width: 100%;
  }

  .landing-link-button,
  .landing-button {
    width: 100%;
  }

  .landing-hero {
    padding: 42px 0 36px;
  }

  .landing-hero h1 {
    font-size: 42px;
  }

  .landing-subtitle {
    font-size: 18px;
  }

  .landing-section-head h2,
  .landing-how-grid h2,
  .landing-final-cta h2 {
    font-size: 34px;
  }

  .landing-metrics,
  .landing-metrics div {
    width: 100%;
  }

  .landing-preview {
    padding: 16px;
    border-radius: 22px;
  }

  .landing-preview-kpis,
  .landing-benefit-grid,
  .landing-tool-grid,
  .landing-plan-grid {
    grid-template-columns: 1fr;
  }

  .landing-preview-search {
    align-items: stretch;
    flex-direction: column;
  }

  .landing-preview-search b {
    text-align: center;
  }

  .landing-section {
    padding: 44px 0;
  }
}

/* Niche Finder channel cards: compact dashboard metrics */
.niche-finder-app .niche-channel-top {
  grid-template-columns: minmax(0, 1fr) minmax(144px, 164px);
  align-items: start;
}
.niche-finder-app .niche-actions {
  grid-column: 2;
  grid-row: 1;
}
.niche-finder-app .nf-channel-metrics-grid {
  grid-column: 1 / -1;
  grid-row: 2;
  display: grid;
  grid-template-columns: repeat(4, minmax(158px, 1fr));
  gap: 12px;
  min-width: 0;
}
.niche-finder-app .nf-metric-card {
  min-width: 0;
  min-height: 86px;
  position: relative;
  border: 1px solid rgba(226, 232, 240, .98);
  border-radius: 18px;
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  padding: 14px;
  display: flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 12px 26px rgba(15, 23, 42, .055), inset 0 1px 0 rgba(255, 255, 255, .9);
}
.niche-finder-app .nf-metric-card::before {
  content: "";
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: 13px;
  background: radial-gradient(circle at 35% 30%, #ffffff 0, #ffffff 18%, #fee2e2 19%, #fecdd3 100%);
  box-shadow: inset 0 0 0 1px rgba(244, 63, 94, .16), 0 8px 18px rgba(244, 63, 94, .12);
}
.niche-finder-app .nf-metric-card-accent {
  border-color: rgba(244, 63, 94, .28);
  background: linear-gradient(180deg, #fff7f9 0%, #ffffff 100%);
  box-shadow: 0 14px 30px rgba(244, 63, 94, .10), inset 0 1px 0 rgba(255, 255, 255, .94);
}
.niche-finder-app .nf-metric-card-accent::before {
  content: "↗";
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 17px;
  font-weight: 950;
  background: linear-gradient(135deg, #ff0033 0%, #c026d3 100%);
  box-shadow: 0 10px 22px rgba(255, 0, 51, .22);
}
.niche-finder-app .nf-metric-body {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 5px;
}
.niche-finder-app .nf-metric-label {
  color: #64748b;
  font-size: 10px;
  font-weight: 850;
  line-height: 1.1;
  letter-spacing: .055em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.niche-finder-app .nf-metric-value {
  color: #0f172a;
  font-size: 22px;
  font-weight: 950;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.niche-finder-app .nf-metric-card-accent .nf-metric-value {
  color: var(--primary);
}
.niche-finder-app .niche-detail-mini-metrics:empty {
  display: none;
}
.niche-finder-app .niche-recent-outliers-panel {
  display: grid;
  gap: 16px;
  min-width: 0;
}
.niche-finder-app .niche-recent-outliers-head {
  border: 1px solid rgba(226, 232, 240, .95);
  border-radius: 18px;
  background: linear-gradient(180deg, #fff 0%, #fff7f9 100%);
  padding: 16px 18px;
  box-shadow: 0 14px 30px rgba(15, 23, 42, .045);
}
.niche-finder-app .niche-recent-outliers-head span {
  display: inline-flex;
  margin-bottom: 6px;
  border-radius: 999px;
  background: #ffe4e9;
  color: var(--primary);
  padding: 5px 9px;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.niche-finder-app .niche-recent-outliers-head p {
  margin: 0;
  color: #475569;
  font-weight: 800;
  line-height: 1.45;
}
.niche-finder-app .niche-recent-outliers-panel .public-outlier-filters {
  margin: 0;
}

@media (max-width: 980px) {
  .niche-finder-app .niche-channel-top {
    grid-template-columns: 1fr;
  }
  .niche-finder-app .niche-actions,
  .niche-finder-app .nf-channel-metrics-grid {
    grid-column: 1;
    grid-row: auto;
  }
  .niche-finder-app .nf-channel-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .niche-finder-app .nf-channel-metrics-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .niche-finder-app .nf-metric-card {
    min-height: 78px;
    padding: 12px;
  }
  .niche-finder-app .nf-metric-value {
    font-size: 19px;
  }
}

@media (max-width: 420px) {
  .niche-finder-app .nf-channel-metrics-grid {
    grid-template-columns: 1fr;
  }
}

.channel-inline-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
.channel-depth-button {
  flex-direction: column;
  align-items: flex-start;
  gap: 2px;
  min-height: 58px;
  line-height: 1.1;
  box-shadow: 0 16px 34px rgba(255, 0, 51, .18);
}
.channel-depth-button small {
  color: rgba(255, 255, 255, .86);
  font-size: 11px;
  font-weight: 850;
}
.channel-report-page {
  display: grid;
  gap: 24px;
}
.channel-report-hero {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  gap: 18px;
  align-items: stretch;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 24px;
  background:
    radial-gradient(circle at 18% 8%, rgba(255, 0, 51, .32), transparent 34%),
    radial-gradient(circle at 86% 0%, rgba(56, 189, 248, .24), transparent 34%),
    linear-gradient(135deg, #070b14 0%, #101827 52%, #111827 100%);
  padding: 24px;
  box-shadow: 0 24px 68px rgba(15, 23, 42, .22);
}
.channel-report-banner {
  position: absolute;
  inset: 0 0 auto 0;
  width: 100%;
  height: 168px;
  object-fit: cover;
  opacity: .16;
  filter: saturate(1.12) contrast(1.08);
  mix-blend-mode: screen;
}
.channel-report-hero-main {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  min-width: 0;
}
.channel-report-avatar {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid #fff;
  box-shadow: 0 16px 36px rgba(15, 23, 42, .14);
}
.channel-report-hero h1 {
  margin: 0 0 8px;
  max-width: 880px;
  color: #fff;
  font-size: clamp(32px, 4vw, 56px);
  line-height: 1.02;
  overflow-wrap: anywhere;
}
.channel-report-hero p {
  display: -webkit-box;
  overflow: hidden;
  max-width: 900px;
  margin: 10px 0 0;
  color: #cbd5e1;
  font-weight: 780;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.channel-report-hero small {
  display: block;
  margin-top: 10px;
  color: #94a3b8;
  font-weight: 900;
}
.channel-report-badges,
.channel-report-actions,
.channel-report-export-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}
.channel-report-badges span {
  display: inline-flex;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  color: #e2e8f0;
  padding: 7px 10px;
  font-size: 12px;
  font-weight: 950;
}
.channel-report-hero-highlights {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  max-width: 1120px;
  margin-top: 14px;
}
.channel-report-hero-highlights article {
  min-width: 0;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 18px;
  background: rgba(255, 255, 255, .08);
  box-shadow: 0 12px 30px rgba(0, 0, 0, .16);
  padding: 12px 13px;
}
.channel-report-hero-highlights article:nth-child(1) { background: linear-gradient(135deg, rgba(255,255,255,.1), rgba(37,99,235,.16)); }
.channel-report-hero-highlights article:nth-child(3) { background: linear-gradient(135deg, rgba(255,255,255,.1), rgba(139,92,246,.16)); }
.channel-report-hero-highlights article:nth-child(4) { background: linear-gradient(135deg, rgba(255,255,255,.1), rgba(34,197,94,.16)); }
.channel-report-hero-highlights article.money {
  border-color: rgba(34, 197, 94, .38);
  background: linear-gradient(135deg, rgba(34,197,94,.18), rgba(14,165,233,.14));
}
.channel-report-hero-highlights span,
.channel-report-hero-highlights small {
  display: block;
  color: #9fb1c7;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.channel-report-hero-highlights strong {
  display: block;
  margin-top: 5px;
  color: #fff;
  font-size: clamp(17px, 1.8vw, 24px);
  line-height: 1.05;
  overflow-wrap: anywhere;
}
.channel-report-hero-highlights .money strong {
  color: #86efac;
}
.channel-report-hero-highlights small {
  margin-top: 6px;
  color: #99f6e4;
  text-transform: none;
}
.channel-report-actions {
  position: relative;
  grid-column: 1 / -1;
  justify-content: flex-end;
}
.channel-report-hero-visuals {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 12px;
  min-width: 0;
}
.channel-report-mini-visual {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 20px;
  background: rgba(255, 255, 255, .09);
  box-shadow: 0 18px 44px rgba(0, 0, 0, .18);
  padding: 12px;
}
.channel-report-mini-visual > span {
  display: block;
  margin: 0 0 8px;
  color: #cbd5e1;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.channel-report-mini-visual canvas {
  width: 100%;
  min-height: 176px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 16px;
  background: #fff;
}
.channel-report-mini-visual.score canvas {
  min-height: 190px;
}
.channel-report-mini-visual.revenue canvas {
  min-height: 210px;
}
.channel-report-video-strip div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}
.channel-report-video-strip a {
  position: relative;
  overflow: hidden;
  min-height: 88px;
  border-radius: 14px;
  background: #0f172a;
  color: #fff;
  text-decoration: none;
}
.channel-report-video-strip img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: .82;
  transition: transform .2s ease;
}
.channel-report-video-strip a:hover img {
  transform: scale(1.04);
}
.channel-report-video-strip strong,
.channel-report-video-strip small {
  position: absolute;
  z-index: 1;
  margin: 0;
  border-radius: 999px;
  background: rgba(2, 6, 23, .74);
  backdrop-filter: blur(10px);
}
.channel-report-video-strip strong {
  left: 7px;
  bottom: 7px;
  padding: 5px 7px;
  font-size: 12px;
  font-weight: 950;
}
.channel-report-video-strip small {
  top: 7px;
  right: 7px;
  padding: 4px 6px;
  color: #fff;
  font-size: 11px;
}
.channel-report-action-status {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  border-radius: 999px;
  background: #f8fafc;
  color: #334155;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 900;
}
.channel-report-action-status.success {
  background: #ecfdf5;
  color: #047857;
}
.channel-report-action-status.error {
  background: #fff1f2;
  color: #be123c;
}
.channel-report-action-status a {
  margin-left: 6px;
  color: inherit;
  text-decoration: underline;
}
.channel-report-actions .button,
.channel-report-export-actions .button,
.channel-report-export-actions button {
  width: auto;
  min-height: 40px;
  border-radius: 14px;
  padding: 10px 13px;
}
.channel-report-toolbar {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: end;
  border: 1px solid #e5e7eb;
  border-radius: 20px;
  background: #fff;
  padding: 16px;
  box-shadow: 0 14px 36px rgba(15, 23, 42, .05);
}
.channel-report-toolbar label {
  display: grid;
  gap: 6px;
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
}
.channel-report-toolbar select,
.channel-report-table-controls select,
.channel-report-table-controls input {
  min-height: 42px;
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  background: #fff;
  color: #0f172a;
  padding: 0 12px;
  font: inherit;
  font-weight: 850;
}
.channel-report-check {
  grid-auto-flow: column;
  align-items: center;
  min-height: 42px;
  padding: 0 10px;
  border: 1px solid #dbe3ee;
  border-radius: 14px;
  background: #f8fafc;
}
.channel-report-check input {
  width: 16px;
  height: 16px;
}
.channel-report-export-actions {
  margin-left: auto;
  justify-content: flex-end;
}
.channel-report-saved-toolbar {
  display: flex;
  justify-content: flex-start;
}
.channel-report-public-brand {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
  justify-content: space-between;
  border: 1px solid #dbeafe;
  border-radius: 18px;
  background: linear-gradient(135deg, #eff6ff 0%, #fff 58%, #fff1f2 100%);
  color: #0f172a;
  padding: 14px 16px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .05);
}
.channel-report-public-brand strong {
  font-size: 15px;
  font-weight: 950;
}
.channel-report-public-brand span {
  color: #475569;
  font-size: 13px;
  font-weight: 850;
}
.channel-report-quick-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-items: center;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: rgba(255, 255, 255, .92);
  padding: 10px;
  box-shadow: 0 12px 30px rgba(15, 23, 42, .05);
}
.channel-report-quick-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid #e2e8f0;
  border-radius: 999px;
  background: linear-gradient(135deg, #fff, #f8fafc);
  color: #0f172a;
  padding: 0 14px;
  font-size: 13px;
  font-weight: 950;
  text-decoration: none;
}
.channel-report-quick-nav a:hover {
  border-color: #fecdd3;
  color: var(--primary);
  transform: translateY(-1px);
}
.channel-report-command-center {
  display: grid;
  grid-template-columns: minmax(330px, .92fr) minmax(0, 1.2fr);
  gap: 16px;
  align-items: stretch;
}
.channel-report-score-card {
  position: relative;
  overflow: hidden;
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(220px, .72fr);
  gap: 16px;
  align-items: center;
  min-width: 0;
  padding: 22px;
}
.channel-report-score-card::after {
  content: "";
  position: absolute;
  inset: auto -18% -34% 28%;
  height: 190px;
  background: linear-gradient(90deg, rgba(255, 0, 51, .11), rgba(37, 99, 235, .12), rgba(34, 197, 94, .12));
  transform: rotate(-7deg);
  pointer-events: none;
}
.channel-report-score-card > * {
  position: relative;
  z-index: 1;
}
.channel-report-score-card canvas {
  width: 100%;
  min-height: 220px;
  border: 0;
  background: transparent;
}
.channel-report-decision-cards,
.channel-report-storyline {
  display: grid;
  gap: 14px;
}
.channel-report-decision-cards {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.channel-report-storyline {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.channel-report-signal {
  position: relative;
  overflow: hidden;
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 18px;
}
.channel-report-signal::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: #2563eb;
}
.channel-report-signal.good::before,
.channel-report-signal.green::before { background: #22c55e; }
.channel-report-signal.warning::before,
.channel-report-signal.orange::before { background: #f59e0b; }
.channel-report-signal.accent::before { background: #ff0033; }
.channel-report-signal.blue::before { background: #2563eb; }
.channel-report-signal.violet::before { background: #8b5cf6; }
.channel-report-signal.good { background: linear-gradient(135deg, #fff 0%, #ecfdf5 100%); border-color: #bbf7d0; }
.channel-report-signal.warning { background: linear-gradient(135deg, #fff 0%, #fff7ed 100%); border-color: #fed7aa; }
.channel-report-signal.accent { background: linear-gradient(135deg, #fff 0%, #fff1f2 100%); border-color: #fecdd3; }
.channel-report-signal.blue { background: linear-gradient(135deg, #fff 0%, #eff6ff 100%); border-color: #bfdbfe; }
.channel-report-signal.violet { background: linear-gradient(135deg, #fff 0%, #f5f3ff 100%); border-color: #ddd6fe; }
.channel-report-signal.green { background: linear-gradient(135deg, #fff 0%, #ecfdf5 100%); border-color: #bbf7d0; }
.channel-report-signal.orange { background: linear-gradient(135deg, #fff 0%, #fffbeb 100%); border-color: #fde68a; }
.channel-report-score-grid,
.channel-report-kpi-grid,
.channel-report-comparison-grid,
.channel-report-insight-grid,
.channel-report-plan-grid {
  display: grid;
  gap: 14px;
}
.channel-report-score-grid {
  grid-template-columns: minmax(260px, .95fr) repeat(3, minmax(0, 1fr));
}
.channel-report-score-grid > article,
.channel-report-score-card,
.channel-report-signal,
.channel-report-kpi,
.channel-report-comparison-grid article,
.channel-report-insight-list article,
.channel-report-action-plan,
.channel-report-chart,
.channel-report-video-section,
.channel-report-data-note,
.channel-report-loading {
  border: 1px solid #e5e7eb;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(15, 23, 42, .055);
}
.channel-report-score-grid > article {
  display: grid;
  gap: 8px;
  align-content: start;
  min-width: 0;
  padding: 18px;
}
.channel-report-score-grid span,
.channel-report-score-card span,
.channel-report-signal span,
.channel-report-kpi span,
.channel-report-comparison-grid span {
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}
.channel-report-score-grid strong,
.channel-report-signal strong {
  color: #0f172a;
  font-size: 17px;
  line-height: 1.25;
}
.channel-report-score-card strong {
  font-size: clamp(54px, 8vw, 86px);
  line-height: .9;
}
.channel-report-score-card small {
  color: #64748b;
  font-size: 22px;
}
.channel-report-score-card p,
.channel-report-signal p,
.channel-report-score-grid p,
.channel-report-kpi p,
.channel-report-comparison-grid p {
  margin: 0;
  color: #475569;
  font-weight: 800;
}
.channel-report-signal p,
.channel-report-kpi p,
.channel-report-card-head p,
.channel-report-insight-list p,
.channel-report-plan-grid p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.channel-report-score-card.danger { background: linear-gradient(135deg, #fff 0%, #fff1f2 100%); border-color: #fecdd3; }
.channel-report-score-card.warning { background: linear-gradient(135deg, #fff 0%, #fff7ed 100%); border-color: #fed7aa; }
.channel-report-score-card.strong { background: linear-gradient(135deg, #fff 0%, #ecfdf5 100%); border-color: #bbf7d0; }
.channel-report-score-card.elite { background: linear-gradient(135deg, #fff 0%, #eef2ff 100%); border-color: #c7d2fe; }
.channel-report-score-bar {
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: #e5e7eb;
}
.channel-report-score-bar i {
  display: block;
  width: var(--score);
  max-width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff0033, #2563eb);
}
.channel-report-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.channel-report-kpi {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 16px;
}
.channel-report-kpi:nth-child(6n + 1) { background: linear-gradient(135deg, #fff, #fff1f2); border-color: #ffe4e6; }
.channel-report-kpi:nth-child(6n + 2) { background: linear-gradient(135deg, #fff, #eff6ff); border-color: #dbeafe; }
.channel-report-kpi:nth-child(6n + 3) { background: linear-gradient(135deg, #fff, #f5f3ff); border-color: #ede9fe; }
.channel-report-kpi:nth-child(6n + 4) { background: linear-gradient(135deg, #fff, #ecfeff); border-color: #cffafe; }
.channel-report-kpi:nth-child(6n + 5) { background: linear-gradient(135deg, #fff, #ecfdf5); border-color: #dcfce7; }
.channel-report-kpi:nth-child(6n + 6) { background: linear-gradient(135deg, #fff, #fffbeb); border-color: #fef3c7; }
.channel-report-kpi strong {
  color: #0f172a;
  font-size: clamp(22px, 3vw, 34px);
  line-height: 1;
  overflow-wrap: anywhere;
}
.channel-report-data-note {
  padding: 18px;
  background: linear-gradient(135deg, #f8fafc 0%, #fff 100%);
}
.channel-report-data-note strong {
  color: #0f172a;
  font-size: 18px;
}
.channel-report-data-note p {
  margin: 7px 0 0;
  color: #334155;
  font-weight: 800;
}
.channel-report-visual-suite {
  border: 1px solid #e5e7eb;
  border-radius: 24px;
  background: linear-gradient(135deg, #ffffff 0%, #f8fbff 48%, #fff7f8 100%);
  padding: 20px;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .06);
}
.channel-report-chart-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.channel-report-chart-grid-executive {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}
.channel-report-chart-grid-advanced {
  align-items: stretch;
}
.channel-report-chart {
  display: grid;
  gap: 14px;
  min-width: 0;
  padding: 18px;
}
.channel-report-chart.wide {
  grid-column: 1 / -1;
}
.channel-report-chart.color-card {
  border-color: rgba(37, 99, 235, .16);
  background: linear-gradient(150deg, #fff 0%, #f8fafc 46%, #fff1f2 140%);
}
.channel-report-chart.color-card:nth-child(2) {
  border-color: #ddd6fe;
  background: linear-gradient(150deg, #fff 0%, #f5f3ff 55%, #ecfeff 130%);
}
.channel-report-chart.color-card:nth-child(3) {
  border-color: #bbf7d0;
  background: linear-gradient(150deg, #fff 0%, #ecfdf5 52%, #eff6ff 130%);
}
.channel-report-chart.color-card:nth-child(4) {
  border-color: #fed7aa;
  background: linear-gradient(150deg, #fff 0%, #fff7ed 52%, #eef2ff 130%);
}
.channel-report-chart.color-card.revenue {
  border-color: rgba(34, 197, 94, .34);
  background: linear-gradient(150deg, #fff 0%, #ecfdf5 52%, #eff6ff 135%);
}
.channel-report-chart.immersive {
  border-color: #c7d2fe;
  background: linear-gradient(135deg, #ffffff 0%, #eef2ff 42%, #fff1f2 120%);
}
.channel-report-card-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
}
.channel-report-card-head h3,
.channel-report-section-head h2,
.channel-report-action-plan h3 {
  margin: 0;
  color: #0f172a;
}
.channel-report-card-head p,
.channel-report-section-head p {
  margin: 5px 0 0;
  color: #475569;
  font-weight: 800;
}
.channel-report-card-head p {
  font-size: 13px;
}
.channel-report-chart canvas {
  width: 100%;
  min-height: 300px;
  border: 1px solid #edf2f7;
  border-radius: 18px;
  background: linear-gradient(180deg, #fff 0%, #f8fafc 100%);
}
.channel-report-chart.color-card canvas {
  min-height: 310px;
  border-color: rgba(148, 163, 184, .22);
}
.channel-report-chart.immersive canvas {
  min-height: 360px;
  border-color: rgba(99, 102, 241, .18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}
.channel-report-comparison-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.channel-report-comparison-grid article {
  padding: 18px;
}
.channel-report-comparison-grid article:nth-child(1) {
  background: linear-gradient(135deg, #fff, #eff6ff);
  border-color: #dbeafe;
}
.channel-report-comparison-grid article:nth-child(2) {
  background: linear-gradient(135deg, #fff, #f5f3ff);
  border-color: #ede9fe;
}
.channel-report-comparison-grid strong {
  display: block;
  margin: 7px 0;
  color: #0f172a;
  font-size: 28px;
}
.channel-report-insight-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}
.channel-report-section-head {
  margin-bottom: 14px;
}
.channel-report-insight-list {
  display: grid;
  gap: 10px;
}
.channel-report-insight-list article {
  padding: 14px;
}
.channel-report-insight-list strong {
  display: block;
  color: #0f172a;
  font-size: 16px;
}
.channel-report-insight-list p {
  margin: 6px 0 0;
  color: #334155;
  font-weight: 760;
}
.channel-report-insight-list a {
  display: inline-flex;
  margin-top: 8px;
  color: var(--primary);
  font-size: 13px;
  font-weight: 950;
}
.channel-report-action-plan,
.channel-report-video-section {
  padding: 20px;
}
.channel-report-public-cta {
  display: grid;
  gap: 10px;
  justify-items: center;
  border: 1px solid #fecdd3;
  border-radius: 24px;
  background: linear-gradient(135deg, #fff 0%, #fff1f2 45%, #eff6ff 100%);
  padding: 28px;
  text-align: center;
  box-shadow: 0 18px 48px rgba(15, 23, 42, .06);
}
.channel-report-public-cta h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(26px, 4vw, 42px);
}
.channel-report-public-cta p {
  max-width: 720px;
  margin: 0;
  color: #334155;
  font-weight: 820;
}
.channel-report-plan-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.channel-report-plan-grid article {
  border: 1px solid #e5e7eb;
  border-radius: 18px;
  background: #f8fafc;
  padding: 16px;
}
.channel-report-plan-grid ol {
  margin: 10px 0 0 18px;
  padding: 0;
  color: #334155;
  font-weight: 800;
}
.channel-report-plan-grid li + li {
  margin-top: 8px;
}
.channel-report-plan-grid p {
  margin: 9px 0 0;
  color: #334155;
  font-weight: 800;
}
.channel-report-table-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}
.channel-report-table-controls input {
  min-width: min(360px, 100%);
}
.channel-report-table-wrap {
  overflow-x: auto;
  border: 1px solid #e5e7eb;
  border-radius: 18px;
}
.channel-report-video-table {
  width: 100%;
  min-width: 1180px;
  border-collapse: collapse;
  background: #fff;
}
.channel-report-video-table th,
.channel-report-video-table td {
  border-bottom: 1px solid #edf2f7;
  padding: 12px;
  text-align: left;
  vertical-align: middle;
}
.channel-report-video-table th {
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.channel-report-video-table td {
  color: #0f172a;
  font-size: 13px;
  font-weight: 800;
}
.channel-report-video-cell {
  display: grid;
  grid-template-columns: 112px minmax(220px, 1fr);
  gap: 10px;
  align-items: center;
}
.channel-report-video-cell img {
  width: 112px;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 12px;
  background: #e5e7eb;
}
.channel-report-video-cell strong {
  display: -webkit-box;
  overflow: hidden;
  color: #0f172a;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.channel-report-outlier-pill {
  display: inline-flex;
  border-radius: 999px;
  background: #fff1f2;
  color: var(--primary);
  padding: 6px 9px;
  font-weight: 950;
}
.channel-report-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
  min-width: 260px;
}
.channel-report-row-actions a,
.channel-report-row-actions button {
  width: auto;
  min-height: 30px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #fff;
  color: #0f172a;
  padding: 6px 9px;
  font-size: 12px;
  font-weight: 950;
}
.channel-report-row-actions a:hover,
.channel-report-row-actions button:hover {
  border-color: #fecdd3;
  color: var(--primary);
}
.channel-report-row-actions small {
  width: 100%;
  color: #047857;
  font-size: 12px;
  font-weight: 900;
}
.channel-report-row-actions small.error {
  color: #be123c;
}
.channel-report-loading {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(280px, .5fr);
  gap: 18px;
  align-items: center;
  padding: 24px;
}
.channel-report-loading h1 {
  margin: 0 0 10px;
}
.channel-report-loading p {
  color: #334155;
  font-weight: 800;
}
.channel-report-skeleton {
  display: grid;
  gap: 12px;
}
.channel-report-skeleton i {
  display: block;
  height: 54px;
  border-radius: 16px;
  background: linear-gradient(90deg, #f1f5f9, #fff1f2, #f1f5f9);
  background-size: 220% 100%;
  animation: channelReportSkeleton 1.4s ease infinite;
}
@keyframes channelReportSkeleton {
  0% { background-position: 0 0; }
  100% { background-position: 220% 0; }
}

body.channel-report-public-standalone {
  margin: 0;
  background:
    linear-gradient(180deg, #f8fbff 0%, #fff7f8 42%, #ffffff 100%),
    #fff;
}
.channel-report-public-shell {
  min-height: 100vh;
  padding: 24px 0 42px;
}
.channel-report-public-standalone .channel-report-page {
  width: min(1480px, calc(100% - 32px));
  max-width: none;
  padding: 0;
}
.channel-report-public-standalone .channel-report-public-brand {
  margin-top: 0;
}
.channel-report-public-standalone .channel-report-hero {
  margin-top: 0;
}

@media (max-width: 1100px) {
  .channel-report-hero,
  .channel-report-command-center,
  .channel-report-score-grid,
  .channel-report-insight-grid,
  .channel-report-plan-grid {
    grid-template-columns: 1fr;
  }
  .channel-report-chart-grid-executive,
  .channel-report-decision-cards,
  .channel-report-hero-highlights {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .channel-report-storyline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .channel-report-kpi-grid,
  .channel-report-chart-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .channel-report-export-actions {
    margin-left: 0;
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .channel-report-public-shell {
    padding: 12px 0 28px;
  }
  .channel-report-public-standalone .channel-report-page {
    width: min(100% - 18px, 1480px);
  }
  .channel-inline-actions,
  .channel-inline-actions .button,
  .channel-report-actions,
  .channel-report-actions .button,
  .channel-report-actions button,
  .channel-report-toolbar > button,
  .channel-report-export-actions,
  .channel-report-export-actions .button,
  .channel-report-export-actions button {
    width: 100%;
  }
  .channel-report-hero,
  .channel-report-toolbar,
  .channel-report-visual-suite,
  .channel-report-mini-visual,
  .channel-report-public-cta,
  .channel-report-action-plan,
  .channel-report-video-section,
  .channel-report-loading {
    border-radius: 16px;
  }
  .channel-report-hero-main,
  .channel-report-score-card,
  .channel-report-decision-cards,
  .channel-report-storyline,
  .channel-report-loading,
  .channel-report-kpi-grid,
  .channel-report-hero-highlights,
  .channel-report-hero-visuals,
  .channel-report-chart-grid,
  .channel-report-comparison-grid {
    grid-template-columns: 1fr;
  }
  .channel-report-video-strip div {
    grid-template-columns: repeat(3, minmax(90px, 1fr));
    overflow-x: auto;
  }
  .channel-report-quick-nav {
    overflow-x: auto;
    flex-wrap: nowrap;
    justify-content: flex-start;
    padding-bottom: 12px;
  }
  .channel-report-quick-nav a {
    flex: 0 0 auto;
  }
  .channel-report-avatar {
    width: 82px;
    height: 82px;
  }
  .channel-report-toolbar label,
  .channel-report-toolbar select,
  .channel-report-toolbar button {
    width: 100%;
  }
  .channel-report-chart.wide {
    grid-column: auto;
  }
  .channel-report-score-card canvas,
  .channel-report-chart.color-card canvas,
  .channel-report-chart.immersive canvas {
    min-height: 260px;
  }
  .channel-report-table-controls input,
  .channel-report-table-controls select {
    width: 100%;
  }
}

.report-acquisition-page {
  background: linear-gradient(180deg, #fff7f8 0%, #f8fbff 34%, #fff 70%), #fff;
  color: #0f172a;
}
.report-acq-header {
  background: rgba(255, 255, 255, .88);
  backdrop-filter: blur(18px);
}
.report-acq-hero {
  position: relative;
  min-height: 86vh;
  overflow: hidden;
  display: grid;
  align-items: center;
  padding: 132px 0 90px;
  background: linear-gradient(135deg, rgba(255, 0, 51, .13), rgba(20, 184, 166, .12) 42%, rgba(56, 189, 248, .12)), linear-gradient(180deg, #fff, #f8fbff);
}
.report-acq-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 92px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0), #fff);
  pointer-events: none;
}
.report-acq-visual-field {
  position: absolute;
  inset: 84px 0 0;
  max-width: 1240px;
  width: min(92vw, 1240px);
  margin: 0 auto;
  pointer-events: none;
}
.report-acq-visual-card {
  position: absolute;
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 8px;
  background: rgba(255, 255, 255, .84);
  box-shadow: 0 22px 60px rgba(15, 23, 42, .14);
  backdrop-filter: blur(16px);
}
.report-acq-visual-card span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-card-score {
  top: 28px;
  right: 8%;
  width: 190px;
  padding: 18px;
  transform: perspective(700px) rotateY(-10deg) rotateX(5deg);
}
.report-acq-card-score strong {
  display: block;
  margin-top: 7px;
  color: #0f172a;
  font-size: 62px;
  line-height: .86;
  letter-spacing: 0;
}
.report-acq-card-score i {
  display: block;
  height: 9px;
  margin-top: 16px;
  border-radius: 999px;
  background: linear-gradient(90deg, #ff0033 0 18%, #f59e0b 18% 42%, #14b8a6 42% 74%, #6366f1 74%);
}
.report-acq-card-bars {
  right: 4%;
  bottom: 120px;
  width: 310px;
  padding: 18px;
  transform: perspective(760px) rotateY(-13deg) rotateX(7deg);
}
.report-acq-card-bars div,
.report-acq-3d-bars {
  display: flex;
  align-items: end;
  gap: 12px;
  height: 170px;
  margin-top: 16px;
}
.report-acq-card-bars i {
  flex: 1;
  min-width: 18px;
  border-radius: 8px 8px 2px 2px;
  background: linear-gradient(180deg, #38bdf8, #ff0033);
  box-shadow: inset -9px -8px 0 rgba(15, 23, 42, .12);
}
.report-acq-card-donut {
  left: 3%;
  top: 72px;
  width: 210px;
  padding: 18px;
  transform: perspective(760px) rotateY(13deg) rotateX(6deg);
}
.report-acq-card-donut i,
.report-acq-donut i {
  display: block;
  width: 132px;
  height: 132px;
  margin: 18px auto 4px;
  border-radius: 50%;
  background: radial-gradient(circle at center, #fff 0 43%, transparent 44%), conic-gradient(#ff0033 0 32%, #14b8a6 32% 58%, #38bdf8 58% 78%, #f59e0b 78% 92%, #6366f1 92%);
  box-shadow: inset 0 -14px 26px rgba(15, 23, 42, .13);
}
.report-acq-card-heat {
  left: 7%;
  bottom: 118px;
  width: 280px;
  padding: 16px;
  transform: perspective(760px) rotateY(12deg) rotateX(5deg);
}
.report-acq-card-heat div,
.report-acq-mini-heat {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 7px;
  margin-top: 14px;
}
.report-acq-card-heat i,
.report-acq-mini-heat i {
  display: block;
  aspect-ratio: 1;
  border-radius: 5px;
  background: #dbeafe;
}
.report-acq-card-heat i:nth-child(3n),
.report-acq-mini-heat i:nth-child(3n) {
  background: #67e8f9;
}
.report-acq-card-heat i:nth-child(4n),
.report-acq-mini-heat i:nth-child(4n) {
  background: #fb7185;
}
.report-acq-card-heat i:nth-child(7n),
.report-acq-mini-heat i:nth-child(7n) {
  background: #facc15;
}
.report-acq-hero-inner {
  position: relative;
  z-index: 1;
  max-width: 900px;
  text-align: center;
}
.report-acq-hero h1 {
  max-width: 880px;
  margin: 0 auto;
  color: #0f172a;
  font-size: clamp(44px, 6.1vw, 78px);
  line-height: .96;
  letter-spacing: 0;
}
.report-acq-hero-copy {
  max-width: 760px;
  margin: 24px auto 0;
  color: #334155;
  font-size: 20px;
  line-height: 1.65;
  font-weight: 750;
}
.report-acq-hero-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}
.report-acq-proof {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
  margin-top: 22px;
}
.report-acq-proof span {
  border: 1px solid rgba(15, 23, 42, .09);
  border-radius: 999px;
  background: rgba(255, 255, 255, .78);
  color: #0f172a;
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 950;
}
.report-acq-strip {
  position: relative;
  z-index: 2;
  margin-top: -34px;
  padding: 0 0 38px;
}
.report-acq-strip-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.report-acq-strip article,
.report-acq-panel,
.report-acq-insight-list article,
.report-acq-steps article {
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
}
.report-acq-strip article {
  padding: 18px;
}
.report-acq-strip strong,
.report-acq-strip span {
  display: block;
}
.report-acq-strip strong {
  color: #0f172a;
  font-size: 19px;
}
.report-acq-strip span {
  margin-top: 6px;
  color: #64748b;
  font-weight: 750;
  line-height: 1.5;
}
.report-acq-section {
  padding: 78px 0;
}
.report-acq-section-head {
  max-width: 760px;
  margin-bottom: 28px;
}
.report-acq-section-head h2,
.report-acq-pattern-grid h2,
.report-acq-final h2 {
  margin: 0;
  color: #0f172a;
  font-size: clamp(32px, 5vw, 58px);
  line-height: 1;
  letter-spacing: 0;
}
.report-acq-section-head p:not(.landing-eyebrow),
.report-acq-pattern-grid p,
.report-acq-final p {
  color: #475569;
  font-size: 18px;
  line-height: 1.65;
  font-weight: 750;
}
.report-acq-showcase {
  display: grid;
  grid-template-columns: 1.25fr .75fr .75fr;
  gap: 16px;
}
.report-acq-panel {
  min-height: 240px;
  padding: 18px;
  overflow: hidden;
}
.report-acq-panel-large {
  grid-row: span 2;
  min-height: 496px;
  background: linear-gradient(135deg, rgba(255, 0, 51, .08), rgba(20, 184, 166, .1)), #fff;
}
.report-acq-panel-wide {
  grid-column: span 2;
}
.report-acq-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}
.report-acq-panel-head span {
  color: #64748b;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-panel-head strong {
  border-radius: 999px;
  background: #fff1f2;
  color: #e11d48;
  padding: 6px 10px;
  font-size: 12px;
  font-weight: 950;
}
.report-acq-3d-bars {
  height: 390px;
  gap: 18px;
  padding: 30px 8px 0;
  transform: perspective(850px) rotateX(14deg);
  transform-origin: bottom;
}
.report-acq-3d-bars i {
  position: relative;
  flex: 1;
  height: var(--h);
  border-radius: 8px 8px 3px 3px;
  background: linear-gradient(180deg, var(--c), #0f172a);
  box-shadow: 10px 12px 0 rgba(15, 23, 42, .18), 0 20px 32px rgba(15, 23, 42, .14);
}
.report-acq-gauge,
.report-acq-donut,
.report-acq-radar {
  display: grid;
  place-items: center;
  min-height: 178px;
}
.report-acq-gauge i {
  width: 154px;
  height: 154px;
  border-radius: 50%;
  background: radial-gradient(circle at center, #fff 0 48%, transparent 49%), conic-gradient(#14b8a6 0 70%, #6366f1 70% 84%, #e2e8f0 84%);
  box-shadow: inset 0 -12px 26px rgba(15, 23, 42, .12);
}
.report-acq-gauge strong {
  margin-top: -54px;
  color: #0f172a;
  font-size: 14px;
}
.report-acq-donut {
  position: relative;
}
.report-acq-donut b {
  position: absolute;
  color: #0f172a;
  font-size: 28px;
}
.report-acq-radar i {
  width: 170px;
  height: 170px;
  clip-path: polygon(50% 5%, 85% 22%, 94% 64%, 60% 92%, 18% 78%, 12% 34%);
  background: linear-gradient(135deg, rgba(20, 184, 166, .74), rgba(99, 102, 241, .78));
  box-shadow: 0 18px 40px rgba(99, 102, 241, .22);
}
.report-acq-mini-heat {
  grid-template-columns: repeat(7, minmax(0, 1fr));
}
.report-acq-color-band {
  background: linear-gradient(135deg, rgba(15, 23, 42, .96), rgba(30, 41, 59, .94)), #0f172a;
}
.report-acq-pattern-grid {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
  gap: 28px;
  align-items: center;
}
.report-acq-color-band .landing-eyebrow,
.report-acq-color-band h2,
.report-acq-color-band p {
  color: #fff;
}
.report-acq-insight-list {
  display: grid;
  gap: 12px;
}
.report-acq-insight-list article {
  display: grid;
  grid-template-columns: 52px 1fr;
  gap: 8px 14px;
  padding: 18px;
  background: rgba(255, 255, 255, .08);
  border-color: rgba(255, 255, 255, .16);
  box-shadow: none;
}
.report-acq-insight-list span,
.report-acq-steps span {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 8px;
  background: #ff0033;
  color: #fff;
  font-weight: 950;
}
.report-acq-insight-list strong {
  color: #fff;
  font-size: 18px;
}
.report-acq-insight-list p {
  grid-column: 2;
  margin: 0;
  color: rgba(255, 255, 255, .78);
  font-size: 15px;
}
.report-acq-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}
.report-acq-steps article {
  padding: 20px;
}
.report-acq-steps strong {
  display: block;
  margin-top: 18px;
  color: #0f172a;
  font-size: 22px;
}
.report-acq-steps p {
  color: #64748b;
  font-weight: 750;
  line-height: 1.55;
}
.report-acq-final {
  padding: 84px 0;
  text-align: center;
  background: linear-gradient(135deg, rgba(255, 0, 51, .12), rgba(20, 184, 166, .12)), #fff;
}
.report-acq-final .landing-shell {
  max-width: 880px;
}
.report-acq-final p {
  max-width: 700px;
  margin: 16px auto 26px;
}
.report-acq-footer {
  background: #0f172a;
}

/* Report acquisition landing: stronger conversion pass */
.report-acquisition-page {
  background:
    linear-gradient(180deg, #ffffff 0%, #f3fbff 34%, #fff7fa 66%, #ffffff 100%),
    #fff;
}
.report-acq-header {
  border-bottom: 1px solid rgba(226, 232, 240, .74);
  box-shadow: 0 14px 36px rgba(15, 23, 42, .045);
}
.report-acq-header .landing-header-inner {
  min-height: 76px;
}
.report-acq-header .landing-button-primary {
  box-shadow: 0 16px 32px rgba(255, 0, 51, .22);
}
.report-acq-hero {
  min-height: 820px;
  padding: 124px 0 74px;
  background:
    radial-gradient(circle at 18% 20%, rgba(255, 0, 51, .16), transparent 26%),
    radial-gradient(circle at 84% 18%, rgba(56, 189, 248, .20), transparent 28%),
    radial-gradient(circle at 50% 78%, rgba(20, 184, 166, .18), transparent 34%),
    linear-gradient(180deg, #fff 0%, #eefcff 55%, #fff 100%);
}
.report-acq-hero::before {
  content: "";
  position: absolute;
  inset: 76px 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(15, 23, 42, .14), transparent);
}
.report-acq-visual-field {
  inset: 104px 0 0;
  opacity: .68;
}
.report-acq-visual-card {
  background: rgba(255, 255, 255, .72);
  border-color: rgba(255, 255, 255, .76);
  box-shadow:
    0 24px 62px rgba(15, 23, 42, .12),
    inset 0 1px 0 rgba(255, 255, 255, .72);
}
.report-acq-card-score {
  top: 34px;
  right: 1%;
}
.report-acq-card-bars {
  right: 0;
  bottom: 72px;
}
.report-acq-card-donut {
  left: -2%;
  top: 126px;
}
.report-acq-card-heat {
  left: 3%;
  bottom: 82px;
}
.report-acq-hero-inner {
  max-width: 1000px;
  padding-top: 18px;
}
.report-acq-hero .landing-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 0, 51, .18);
  border-radius: 999px;
  background: rgba(255, 255, 255, .82);
  box-shadow: 0 10px 24px rgba(255, 0, 51, .08);
  padding: 10px 14px;
}
.report-acq-hero h1 {
  max-width: 980px;
  margin-top: 16px;
  color: #061027;
  font-size: clamp(45px, 6vw, 82px);
  line-height: .94;
}
.report-acq-hero-copy {
  max-width: 800px;
  margin-top: 22px;
  color: #233047;
  font-size: clamp(18px, 1.65vw, 22px);
  line-height: 1.55;
}
.report-acq-hero-actions .landing-button {
  min-height: 54px;
  border-radius: 16px;
  padding-inline: 24px;
  font-size: 16px;
}
.report-acq-microcopy {
  margin: 14px auto 0;
  color: #475569;
  font-size: 14px;
  font-weight: 850;
}
.report-acq-proof {
  margin-top: 18px;
}
.report-acq-proof span {
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
}
.report-acq-hero-preview {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  width: min(760px, 100%);
  margin: 30px auto 0;
}
.report-acq-hero-preview div {
  border: 1px solid rgba(226, 232, 240, .86);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(248, 250, 252, .84)),
    #fff;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
  padding: 14px;
}
.report-acq-hero-preview span {
  display: block;
  color: #64748b;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-hero-preview strong {
  display: block;
  margin-top: 5px;
  color: #061027;
  font-size: 30px;
  line-height: 1;
}
.report-acq-strip {
  margin-top: -28px;
  padding-bottom: 46px;
}
.report-acq-strip article {
  position: relative;
  overflow: hidden;
  border-color: rgba(226, 232, 240, .86);
  background:
    linear-gradient(180deg, #fff, #f8fafc),
    #fff;
  padding: 22px;
}
.report-acq-strip article::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, #ff0033, #38bdf8);
}
.report-acq-register-band {
  padding: 68px 0;
}
.report-acq-register-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, .68fr);
  gap: 24px;
  align-items: center;
  border: 1px solid rgba(226, 232, 240, .9);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .96), rgba(239, 246, 255, .92)),
    #fff;
  box-shadow: 0 26px 70px rgba(15, 23, 42, .08);
  padding: clamp(24px, 4vw, 42px);
}
.report-acq-register-grid h2 {
  max-width: 760px;
  margin: 0;
  color: #061027;
  font-size: clamp(30px, 4vw, 52px);
  line-height: 1;
}
.report-acq-register-grid p {
  max-width: 780px;
  color: #475569;
  font-size: 18px;
  font-weight: 750;
  line-height: 1.62;
}
.report-acq-register-card {
  display: grid;
  gap: 12px;
  border: 1px solid rgba(255, 0, 51, .18);
  border-radius: 8px;
  background:
    radial-gradient(circle at top right, rgba(255, 0, 51, .12), transparent 46%),
    #fff;
  box-shadow: 0 22px 54px rgba(255, 0, 51, .10);
  padding: 22px;
}
.report-acq-register-card span,
.report-acq-share-card span {
  color: #e11d48;
  font-size: 12px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-register-card strong {
  color: #061027;
  font-size: 27px;
  line-height: 1.08;
}
.report-acq-register-card small {
  color: #64748b;
  font-weight: 850;
}
.report-acq-section {
  padding: 86px 0;
}
.report-acq-section-head {
  max-width: 840px;
}
.report-acq-section-head h2,
.report-acq-pattern-grid h2,
.report-acq-final h2 {
  color: #061027;
  font-size: clamp(34px, 5vw, 64px);
}
.report-acq-showcase {
  align-items: stretch;
}
.report-acq-panel {
  border-color: rgba(226, 232, 240, .9);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .92)),
    #fff;
  box-shadow: 0 24px 64px rgba(15, 23, 42, .08);
}
.report-acq-panel-large {
  background:
    linear-gradient(135deg, rgba(255, 0, 51, .08), rgba(56, 189, 248, .10) 52%, rgba(20, 184, 166, .08)),
    #fff;
}
.report-acq-color-band {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 20%, rgba(255, 0, 51, .22), transparent 28%),
    radial-gradient(circle at 84% 74%, rgba(56, 189, 248, .18), transparent 30%),
    linear-gradient(135deg, #08111f, #111827 54%, #071421),
    #0f172a;
}
.report-acq-band-cta {
  margin-top: 18px;
}
.report-acq-insight-list article {
  backdrop-filter: blur(14px);
}
.report-acq-social-proof {
  padding-top: 62px;
}
.report-acq-share-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 22px;
  align-items: center;
  border: 1px solid rgba(226, 232, 240, .9);
  border-radius: 8px;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .97), rgba(236, 253, 245, .92)),
    #fff;
  box-shadow: 0 24px 64px rgba(15, 23, 42, .08);
  padding: clamp(22px, 3vw, 34px);
}
.report-acq-share-card strong {
  display: block;
  margin-top: 6px;
  color: #061027;
  font-size: clamp(24px, 3vw, 38px);
  line-height: 1.05;
}
.report-acq-share-card p {
  max-width: 760px;
  margin: 10px 0 0;
  color: #475569;
  font-size: 17px;
  font-weight: 750;
  line-height: 1.55;
}
.report-acq-final {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 0, 51, .16), transparent 30%),
    linear-gradient(135deg, rgba(255, 0, 51, .12), rgba(56, 189, 248, .14) 50%, rgba(20, 184, 166, .12)),
    #fff;
}
.report-acq-final .landing-button {
  min-height: 56px;
  border-radius: 16px;
  padding-inline: 28px;
}
.report-acq-footer {
  border-top: 1px solid rgba(255, 255, 255, .08);
}

@media (max-width: 1040px) {
  .report-acq-visual-field {
    opacity: .42;
  }
  .report-acq-showcase,
  .report-acq-pattern-grid,
  .report-acq-steps {
    grid-template-columns: 1fr;
  }
  .report-acq-panel-large,
  .report-acq-panel-wide {
    grid-column: auto;
    grid-row: auto;
  }
  .report-acq-panel-large {
    min-height: 420px;
  }
  .report-acq-register-grid,
  .report-acq-share-card {
    grid-template-columns: 1fr;
  }
  .report-acq-share-card .landing-button {
    justify-self: start;
  }
}

@media (max-width: 760px) {
  .report-acq-hero {
    min-height: 0;
    padding: 112px 0 62px;
  }
  .report-acq-visual-field {
    inset: 84px 0 auto;
    height: 360px;
    opacity: .24;
  }
  .report-acq-card-score {
    right: -18px;
    top: 18px;
  }
  .report-acq-card-donut {
    left: -42px;
    top: 110px;
  }
  .report-acq-card-bars,
  .report-acq-card-heat {
    display: none;
  }
  .report-acq-hero h1 {
    font-size: clamp(38px, 12vw, 56px);
  }
  .report-acq-hero-copy,
  .report-acq-section-head p:not(.landing-eyebrow),
  .report-acq-pattern-grid p,
  .report-acq-final p {
    font-size: 16px;
  }
  .report-acq-hero-actions,
  .report-acq-hero-actions .landing-button,
  .report-acq-final .landing-button {
    width: 100%;
  }
  .report-acq-hero-preview {
    grid-template-columns: 1fr;
  }
  .report-acq-register-band {
    padding: 46px 0;
  }
  .report-acq-register-grid {
    padding: 22px;
  }
  .report-acq-strip-grid {
    grid-template-columns: 1fr;
  }
  .report-acq-section {
    padding: 54px 0;
  }
  .report-acq-showcase {
    gap: 12px;
  }
  .report-acq-panel,
  .report-acq-panel-large {
    min-height: 260px;
  }
  .report-acq-3d-bars {
    height: 220px;
    gap: 10px;
  }
  .report-acq-insight-list article {
    grid-template-columns: 1fr;
  }
  .report-acq-insight-list p {
    grid-column: auto;
  }
  .report-acq-share-card .landing-button,
  .report-acq-band-cta {
    width: 100%;
  }
}

/* Report acquisition landing v4 */
.report-acq-v4 {
  --report-dark: #070b14;
  --report-panel: rgba(12, 18, 31, .78);
  --report-panel-strong: #101827;
  --report-line: rgba(255, 255, 255, .13);
  --report-text: #f8fafc;
  --report-muted: #a7b3c7;
  --report-red: #ff0033;
  --report-cyan: #38bdf8;
  --report-green: #22c55e;
  --report-yellow: #facc15;
  --report-violet: #8b5cf6;
  background: #070b14;
  color: var(--report-text);
}
.report-acq-v4 .report-acq-header {
  border-bottom: 1px solid rgba(255, 255, 255, .09);
  background: rgba(7, 11, 20, .86);
  color: #fff;
  backdrop-filter: blur(18px);
}
.report-acq-v4 .landing-brand,
.report-acq-v4 .landing-nav a,
.report-acq-v4 .landing-link-button {
  color: #f8fafc;
}
.report-acq-v4 .landing-link-button {
  border-color: rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .08);
}
.report-acq-v4 .landing-brand span {
  background: linear-gradient(135deg, #ff0033, #8b5cf6);
  color: #fff;
}
.report-acq-v4 .landing-nav a:hover,
.report-acq-v4 .landing-link-button:hover {
  color: #fff;
  background: rgba(255, 255, 255, .08);
}
.report-acq-v4 .landing-button-primary {
  background: linear-gradient(135deg, #ff0033, #e11d48);
  color: #fff;
  box-shadow: 0 18px 44px rgba(255, 0, 51, .28);
}
.report-acq-v4 .landing-button-secondary {
  border: 1px solid rgba(255, 255, 255, .18);
  background: rgba(255, 255, 255, .08);
  color: #fff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}
.report-acq-v4-hero {
  position: relative;
  overflow: hidden;
  min-height: 680px;
  padding: 92px 0 58px;
  background:
    linear-gradient(115deg, rgba(255, 0, 51, .18), transparent 34%),
    linear-gradient(245deg, rgba(56, 189, 248, .18), transparent 38%),
    linear-gradient(180deg, #070b14 0%, #0b1220 54%, #070b14 100%);
}
.report-acq-v4-hero::before {
  content: "";
  position: absolute;
  inset: 76px 0 auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .16), transparent);
}
.report-acq-v4-glow {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(255, 255, 255, .06), transparent 18%, transparent 82%, rgba(255, 255, 255, .05)),
    repeating-linear-gradient(90deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px 92px);
  opacity: .52;
  pointer-events: none;
}
.report-acq-v4-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(460px, 1.12fr);
  gap: clamp(26px, 3.6vw, 56px);
  align-items: start;
}
.report-acq-v4 .landing-eyebrow {
  color: #ff6b86;
}
.report-acq-v4-hero h1 {
  max-width: 620px;
  margin: 0;
  color: #fff;
  font-size: clamp(38px, 4.6vw, 60px);
  line-height: .98;
  letter-spacing: 0;
}
.report-acq-v4-lead {
  max-width: 640px;
  margin: 16px 0 0;
  color: #cbd5e1;
  font-size: clamp(17px, 1.45vw, 20px);
  line-height: 1.55;
  font-weight: 760;
}
.report-acq-v4-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 20px;
}
.report-acq-v4-actions .landing-button,
.report-acq-v4-final .landing-button {
  min-height: 56px;
  border-radius: 8px;
  padding-inline: 24px;
  font-size: 16px;
}
.report-acq-v4-microcopy {
  margin: 16px 0 0;
  color: #94a3b8;
  font-size: 14px;
  font-weight: 850;
}
.report-acq-v4-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}
.report-acq-v4-proof span {
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 999px;
  background: rgba(255, 255, 255, .07);
  color: #e2e8f0;
  padding: 8px 11px;
  font-size: 12px;
  font-weight: 950;
}
.report-acq-v4-mockup {
  position: relative;
  display: grid;
  gap: 14px;
  border: 1px solid rgba(255, 255, 255, .16);
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(15, 23, 42, .86), rgba(7, 11, 20, .92)),
    #0f172a;
  box-shadow: 0 34px 90px rgba(0, 0, 0, .36), inset 0 1px 0 rgba(255, 255, 255, .09);
  padding: clamp(16px, 2.2vw, 24px);
  transform: perspective(1200px) rotateY(-7deg) rotateX(3deg);
}
.report-acq-v4-mockup::after {
  content: "";
  position: absolute;
  inset: 12px;
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 8px;
  pointer-events: none;
}
.report-acq-v4-mockup-top,
.report-acq-v4-kpi-row,
.report-acq-v4-mockup-bottom,
.report-acq-v4-panel-head,
.report-acq-v4-example-grid,
.report-acq-v4-why-grid {
  display: grid;
  gap: 14px;
}
.report-acq-v4-mockup-top {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
}
.report-acq-v4-mockup-top span,
.report-acq-v4-panel-head span,
.report-acq-v4-mini-bars span,
.report-acq-v4-donut-card span,
.report-acq-v4-public-card span {
  display: block;
  color: #94a3b8;
  font-size: 11px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-v4-mockup-top strong {
  display: block;
  margin-top: 4px;
  color: #fff;
  font-size: 26px;
  line-height: 1.06;
}
.report-acq-v4-mockup-top b {
  display: grid;
  place-items: center;
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #101827 0 49%, transparent 50%),
    conic-gradient(#22c55e 0 72%, #38bdf8 72% 87%, rgba(255, 255, 255, .14) 87%);
  color: #fff;
  font-size: 23px;
}
.report-acq-v4-kpi-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}
.report-acq-v4-kpi-row article,
.report-acq-v4-growth-card,
.report-acq-v4-mini-bars,
.report-acq-v4-donut-card,
.report-acq-v4-card-grid article,
.report-acq-v4-panel,
.report-acq-v4-audience-grid article,
.report-acq-v4-step-grid article,
.report-acq-v4-public-card {
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .065);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
}
.report-acq-v4-kpi-row article {
  padding: 14px;
}
.report-acq-v4-kpi-row span {
  display: block;
  color: #94a3b8;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
}
.report-acq-v4-kpi-row strong {
  display: block;
  margin-top: 6px;
  color: #fff;
  font-size: 23px;
}
.report-acq-v4-growth-card {
  padding: 16px;
}
.report-acq-v4-panel-head {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  margin-bottom: 12px;
}
.report-acq-v4-panel-head em {
  border-radius: 999px;
  background: rgba(255, 0, 51, .14);
  color: #fb7185;
  padding: 6px 9px;
  font-size: 11px;
  font-style: normal;
  font-weight: 950;
}
.report-acq-v4-growth-card svg,
.report-acq-v4-line-chart {
  width: 100%;
  height: auto;
  display: block;
}
.report-acq-v4-growth-card .grid,
.report-acq-v4-line-chart .grid {
  fill: none;
  stroke: rgba(255, 255, 255, .08);
  stroke-width: 1;
}
.report-acq-v4-growth-card .fill {
  fill: url(#reportGrowthFill);
}
.report-acq-v4-growth-card .line,
.report-acq-v4-line-chart .line {
  fill: none;
  stroke: #38bdf8;
  stroke-width: 5;
  stroke-linecap: round;
}
.report-acq-v4-growth-card circle {
  fill: #ff0033;
  stroke: #fff;
  stroke-width: 4;
}
.report-acq-v4-line-chart .area {
  fill: rgba(56, 189, 248, .16);
}
.report-acq-v4-mockup-bottom {
  grid-template-columns: 1.1fr .9fr;
}
.report-acq-v4-mini-bars,
.report-acq-v4-donut-card {
  padding: 14px;
}
.report-acq-v4-mini-bars div {
  display: flex;
  align-items: end;
  gap: 9px;
  height: 120px;
  margin-top: 14px;
  transform: perspective(600px) rotateX(13deg);
  transform-origin: bottom;
}
.report-acq-v4-mini-bars i {
  flex: 1;
  border-radius: 6px 6px 2px 2px;
  background: linear-gradient(180deg, #22c55e, #38bdf8);
  box-shadow: 7px 8px 0 rgba(0, 0, 0, .18);
}
.report-acq-v4-mini-bars small,
.report-acq-v4-donut-card small {
  display: block;
  margin-top: 10px;
  color: #94a3b8;
  font-weight: 800;
}
.report-acq-v4-donut-card i,
.report-acq-v4-donut-legend > i {
  display: block;
  width: 138px;
  height: 138px;
  margin: 16px auto 10px;
  border-radius: 50%;
  background:
    radial-gradient(circle at center, #101827 0 42%, transparent 43%),
    conic-gradient(#38bdf8 0 28%, #ff0033 28% 54%, #22c55e 54% 78%, #facc15 78% 100%);
  box-shadow: inset 0 -16px 28px rgba(0, 0, 0, .24), 0 18px 38px rgba(56, 189, 248, .16);
  transform: perspective(800px) rotateX(12deg);
}
.report-acq-v4-section {
  padding: 92px 0;
  background:
    linear-gradient(180deg, #070b14, #0a1020 44%, #070b14),
    #070b14;
}
.report-acq-v4-section-head {
  max-width: 860px;
  margin-bottom: 32px;
}
.report-acq-v4-section-head.centered {
  margin-inline: auto;
  text-align: center;
}
.report-acq-v4-section-head h2,
.report-acq-v4-why h2,
.report-acq-v4-example h2,
.report-acq-v4-final h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 5vw, 66px);
  line-height: .98;
  letter-spacing: 0;
}
.report-acq-v4-section-head p:not(.landing-eyebrow),
.report-acq-v4-why p,
.report-acq-v4-example p,
.report-acq-v4-final p {
  color: #a7b3c7;
  font-size: 18px;
  line-height: 1.65;
  font-weight: 760;
}
.report-acq-v4-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.report-acq-v4-card-grid article {
  display: grid;
  gap: 12px;
  min-height: 218px;
  padding: 20px;
  background: linear-gradient(180deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .04));
}
.report-acq-v4-card-grid i,
.report-acq-v4-step-grid span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: rgba(255, 0, 51, .14);
  color: #fb7185;
  font-style: normal;
  font-weight: 950;
}
.report-acq-v4-card-grid strong,
.report-acq-v4-audience-grid strong,
.report-acq-v4-step-grid strong {
  color: #fff;
  font-size: 21px;
  line-height: 1.15;
}
.report-acq-v4-card-grid p,
.report-acq-v4-audience-grid p,
.report-acq-v4-step-grid p {
  margin: 0;
  color: #a7b3c7;
  font-weight: 760;
  line-height: 1.55;
}
.report-acq-v4-dashboard {
  background:
    linear-gradient(135deg, rgba(255, 0, 51, .12), transparent 28%),
    linear-gradient(225deg, rgba(56, 189, 248, .12), transparent 32%),
    #090f1d;
}
.report-acq-v4-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.report-acq-v4-panel {
  min-width: 0;
  padding: 18px;
  background: rgba(12, 18, 31, .78);
}
.report-acq-v4-panel.wide {
  grid-column: span 1;
}
.report-acq-v4-revenue-bars {
  display: flex;
  align-items: end;
  gap: 10px;
  min-height: 240px;
  padding-top: 16px;
}
.report-acq-v4-revenue-bars div {
  flex: 1;
  display: grid;
  gap: 8px;
  align-items: end;
  height: 220px;
}
.report-acq-v4-revenue-bars i {
  display: block;
  min-height: 18px;
  border-radius: 6px 6px 2px 2px;
  background: linear-gradient(180deg, #facc15, #ff0033);
  box-shadow: inset -8px -8px 0 rgba(0, 0, 0, .14), 8px 9px 0 rgba(0, 0, 0, .13);
}
.report-acq-v4-revenue-bars span {
  color: #e2e8f0;
  font-size: 12px;
  font-weight: 950;
  text-align: center;
}
.report-acq-v4-panel > p {
  color: #94a3b8;
  font-size: 13px;
  font-weight: 800;
}
.report-acq-v4-donut-legend {
  display: grid;
  grid-template-columns: 210px minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  min-height: 260px;
}
.report-acq-v4-donut-legend ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.report-acq-v4-donut-legend li {
  display: flex;
  gap: 9px;
  align-items: center;
  color: #dbeafe;
  font-weight: 850;
}
.report-acq-v4-donut-legend b {
  width: 12px;
  height: 12px;
  border-radius: 4px;
  background: #38bdf8;
}
.report-acq-v4-donut-legend li:nth-child(2) b { background: #ff0033; }
.report-acq-v4-donut-legend li:nth-child(3) b { background: #22c55e; }
.report-acq-v4-donut-legend li:nth-child(4) b { background: #facc15; }
.report-acq-v4-video-bars {
  display: grid;
  gap: 13px;
  padding: 12px 0 4px;
}
.report-acq-v4-video-bars div {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr) 56px;
  gap: 12px;
  align-items: center;
}
.report-acq-v4-video-bars span,
.report-acq-v4-video-bars strong {
  color: #e2e8f0;
  font-size: 13px;
  font-weight: 950;
}
.report-acq-v4-video-bars i {
  position: relative;
  display: block;
  height: 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .08);
  overflow: hidden;
}
.report-acq-v4-video-bars i::before {
  content: "";
  display: block;
  width: var(--w);
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #38bdf8, #ff0033);
}
.report-acq-v4-why {
  background: #070b14;
}
.report-acq-v4-why-grid,
.report-acq-v4-example-grid {
  grid-template-columns: minmax(0, .95fr) minmax(320px, 1.05fr);
  align-items: center;
}
.report-acq-v4-audience-grid {
  display: grid;
  gap: 14px;
}
.report-acq-v4-audience-grid article {
  padding: 20px;
  background: linear-gradient(135deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .035));
}
.report-acq-v4-steps {
  background:
    linear-gradient(180deg, #0a1020, #070b14),
    #070b14;
}
.report-acq-v4-step-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.report-acq-v4-step-grid article {
  display: grid;
  gap: 13px;
  padding: 20px;
  background: rgba(255, 255, 255, .06);
}
.report-acq-v4-example {
  background:
    linear-gradient(115deg, rgba(34, 197, 94, .12), transparent 35%),
    #090f1d;
}
.report-acq-v4-public-card {
  padding: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .09), rgba(255, 255, 255, .045)),
    #101827;
}
.report-acq-v4-public-card strong {
  display: block;
  margin-top: 7px;
  color: #fff;
  font-size: clamp(26px, 3vw, 42px);
  line-height: 1.04;
}
.report-acq-v4-public-card small {
  display: block;
  margin-top: 14px;
  color: #94a3b8;
  font-weight: 850;
}
.report-acq-v4-public-preview {
  display: grid;
  grid-template-columns: 1.3fr .85fr .85fr;
  gap: 12px;
  margin-top: 22px;
  min-height: 220px;
}
.report-acq-v4-public-preview i {
  border-radius: 8px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .14), rgba(255, 255, 255, .04)),
    #172033;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
}
.report-acq-v4-public-preview i:first-child {
  background:
    linear-gradient(180deg, rgba(56, 189, 248, .22), rgba(255, 0, 51, .10)),
    #172033;
}
.report-acq-v4-final {
  padding: 104px 0;
  text-align: center;
  background:
    linear-gradient(135deg, rgba(255, 0, 51, .20), rgba(56, 189, 248, .15)),
    #070b14;
}
.report-acq-v4-final .landing-shell {
  max-width: 880px;
}
.report-acq-v4-final p {
  max-width: 720px;
  margin: 18px auto 28px;
}
.report-acq-v4 .report-acq-footer {
  border-top: 1px solid rgba(255, 255, 255, .08);
  background: #050812;
  color: #cbd5e1;
}

@media (max-width: 1120px) {
  .report-acq-v4-hero-grid,
  .report-acq-v4-why-grid,
  .report-acq-v4-example-grid {
    grid-template-columns: 1fr;
  }
  .report-acq-v4-mockup {
    transform: none;
  }
  .report-acq-v4-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .report-acq-v4-step-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .report-acq-v4 .landing-nav {
    display: none;
  }
  .report-acq-v4-hero {
    min-height: 0;
    padding: 112px 0 58px;
  }
  .report-acq-v4-hero-copy,
  .report-acq-v4-mockup,
  .report-acq-v4-panel {
    min-width: 0;
    width: 100%;
  }
  .report-acq-v4-hero h1 {
    max-width: 100%;
    font-size: clamp(38px, 11vw, 56px);
    overflow-wrap: break-word;
  }
  .report-acq-v4-lead,
  .report-acq-v4-section-head p:not(.landing-eyebrow),
  .report-acq-v4-why p,
  .report-acq-v4-example p,
  .report-acq-v4-final p {
    max-width: 100%;
    font-size: 16px;
    overflow-wrap: break-word;
  }
  .report-acq-v4-actions,
  .report-acq-v4-actions .landing-button,
  .report-acq-v4-final .landing-button,
  .report-acq-v4-example .landing-button {
    width: 100%;
  }
  .report-acq-v4-kpi-row,
  .report-acq-v4-mockup-bottom,
  .report-acq-v4-card-grid,
  .report-acq-v4-dashboard-grid,
  .report-acq-v4-step-grid,
  .report-acq-v4-public-preview {
    grid-template-columns: 1fr;
  }
  .report-acq-v4-section {
    padding: 60px 0;
  }
  .report-acq-v4-donut-legend {
    grid-template-columns: 1fr;
    text-align: left;
  }
  .report-acq-v4-video-bars div {
    grid-template-columns: 1fr;
    gap: 7px;
  }
  .report-acq-v4-public-preview {
    min-height: 0;
  }
  .report-acq-v4-public-preview i {
    min-height: 120px;
  }
}

@media (max-width: 520px) {
  .report-acq-v4-mockup {
    padding: 14px;
  }
  .report-acq-v4-mockup-top {
    grid-template-columns: 1fr;
  }
  .report-acq-v4-mockup-top b {
    width: 62px;
    height: 62px;
  }
  .report-acq-v4-revenue-bars {
    gap: 7px;
  }
  .report-acq-v4-revenue-bars span {
    font-size: 10px;
  }
}

@media print {
  body {
    background: #fff !important;
  }
  .no-print,
  .site-header,
  .app-shell-sidebar,
  .app-shell-topbar,
  .cookie-banner,
  #cookie-banner {
    display: none !important;
  }
  .container,
  .section,
  .channel-report-page {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
  }
  .channel-report-page {
    gap: 14px !important;
  }
  .channel-report-hero,
  .channel-report-score-card,
  .channel-report-signal,
  .channel-report-kpi,
  .channel-report-chart,
  .channel-report-data-note,
  .channel-report-action-plan,
  .channel-report-public-cta,
  .channel-report-video-section {
    box-shadow: none !important;
    break-inside: avoid;
  }
  .channel-report-chart-grid,
  .channel-report-kpi-grid,
  .channel-report-storyline,
  .channel-report-decision-cards,
  .channel-report-plan-grid,
  .channel-report-insight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .channel-report-command-center,
  .channel-report-hero {
    grid-template-columns: 1fr !important;
  }
  .channel-report-chart.wide {
    grid-column: 1 / -1 !important;
  }
  .channel-report-video-table {
    min-width: 0 !important;
    font-size: 10px;
  }
}

/* Late override: the app-shell version of Niche Finder restyles the inner sidebar. */
body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-finder-sidebar {
  top: 0;
  border-right: 1px solid rgba(255, 255, 255, .08);
  background:
    radial-gradient(circle at 12% 4%, rgba(255, 0, 61, .20), transparent 10rem),
    radial-gradient(circle at 100% 100%, rgba(123, 44, 255, .16), transparent 14rem),
    linear-gradient(180deg, #07101f 0%, #0b1323 52%, #130817 100%);
  box-shadow: 18px 0 44px rgba(15, 23, 42, .12);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand {
  border-bottom-color: rgba(255, 255, 255, .10);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-logo strong {
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand > span {
  color: rgba(255, 255, 255, .78);
  text-shadow: none;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-brand em {
  border-color: rgba(255, 255, 255, .14);
  background: rgba(255, 255, 255, .08);
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group > span {
  color: rgba(226, 232, 240, .58);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a {
  color: #dbe5f2;
  background: transparent;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a:hover {
  border-color: rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .075);
  color: #fff;
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a.active {
  border-color: rgba(255, 0, 61, .38);
  color: #fff;
  background: linear-gradient(110deg, #ff003d, #7b2cff);
  box-shadow: 0 16px 34px rgba(255, 0, 61, .18), inset 0 1px 0 rgba(255, 255, 255, .13);
}

body.impact-app-active-niche .niche-tab-thumbnails.niche-finder-global-shell .niche-sidebar-group a.active::before {
  background: #fff;
  opacity: 1;
}

/* Final cascade for every Niche Finder sidebar after app-shell overrides. */
body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell {
  --niche-sidebar-w: 284px;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell:not(.niche-tab-thumbnails) {
  grid-template-rows: auto minmax(0, 1fr);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell:not(.niche-tab-thumbnails) .niche-dashboard-returnbar {
  grid-column: 2;
  grid-row: 1;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell:not(.niche-tab-thumbnails) .niche-finder-main {
  grid-column: 2;
  grid-row: 2;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
  grid-column: 1;
  grid-row: 1 / -1;
  position: sticky;
  top: 0;
  display: flex;
  flex-direction: column;
  gap: 18px;
  width: 100%;
  height: 100vh;
  max-height: 100vh;
  padding: 22px 16px;
  color: #f8fafc;
  border: 0;
  border-right: 1px solid rgba(255, 255, 255, .08);
  border-radius: 0;
  background:
    radial-gradient(circle at 15% 0%, rgba(255, 0, 61, .26), transparent 30%),
    radial-gradient(circle at 100% 20%, rgba(99, 102, 241, .18), transparent 32%),
    linear-gradient(180deg, #071120 0%, #0e1728 55%, #070b14 100%);
  box-shadow: 20px 0 60px rgba(15, 23, 42, .18);
  overflow-y: auto;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-brand {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
  row-gap: 2px;
  padding: 6px 3px 18px;
  border-bottom: 0;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-logo {
  display: contents;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-logo span {
  grid-row: 1 / span 2;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 14px;
  color: #fff;
  background:
    radial-gradient(circle at 24% 18%, rgba(255, 255, 255, .34), transparent 24%),
    linear-gradient(135deg, #ff0033 0%, #fb3f78 52%, #6a4cff 100%);
  box-shadow: 0 16px 34px rgba(255, 0, 61, .34), inset 0 1px 0 rgba(255, 255, 255, .24);
  font-size: 15px;
  font-weight: 950;
  letter-spacing: 0;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-logo strong {
  min-width: 0;
  color: #fff;
  font-size: 18px;
  line-height: 1.05;
  letter-spacing: 0;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-brand > span {
  min-width: 0;
  color: rgba(226, 232, 240, .72);
  font-size: 13px;
  font-weight: 850;
  letter-spacing: 0;
  text-transform: none;
  text-shadow: none;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-brand em {
  display: none;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group {
  display: grid;
  gap: 7px;
  margin: 0;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group + .niche-sidebar-group {
  margin-top: 8px;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group > span {
  padding: 0 10px 3px;
  color: rgba(203, 213, 225, .64);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 46px;
  padding: 8px 10px;
  border: 1px solid transparent;
  border-radius: 16px;
  color: #dbeafe;
  background: transparent;
  box-shadow: none;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.15;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a::before {
  display: none;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-link-icon {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 10px;
  color: #fff;
  background: rgba(255, 255, 255, .07);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
  font-size: 10px;
  font-weight: 950;
  letter-spacing: .02em;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-link-icon svg {
  width: 17px;
  height: 17px;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a:hover {
  border-color: rgba(255, 255, 255, .10);
  color: #fff;
  background: rgba(255, 255, 255, .075);
  transform: translateX(2px);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a.active {
  border-color: rgba(255, 255, 255, .13);
  color: #fff;
  background: linear-gradient(115deg, #ff003d 0%, #d91268 46%, #6338f2 100%);
  box-shadow: 0 18px 36px rgba(255, 0, 61, .24), inset 0 1px 0 rgba(255, 255, 255, .18);
  transform: translateX(0);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a.active .niche-sidebar-link-icon {
  border-color: transparent;
  background: rgba(255, 255, 255, .20);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .22);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-bottom {
  display: grid;
  gap: 12px;
  margin-top: auto;
  padding-top: 14px;
  border-top: 1px solid rgba(255, 255, 255, .09);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card {
  display: grid;
  gap: 10px;
  padding: 15px;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: 18px;
  color: #fff;
  background:
    radial-gradient(circle at 20% 0%, rgba(255, 0, 61, .30), transparent 44%),
    radial-gradient(circle at 100% 100%, rgba(59, 130, 246, .18), transparent 42%),
    linear-gradient(140deg, rgba(255, 255, 255, .10), rgba(255, 255, 255, .04));
  box-shadow: 0 20px 45px rgba(0, 0, 0, .16);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card strong {
  color: #ff6385;
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card p {
  margin: 0;
  color: #f8fafc;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.45;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card span {
  display: block;
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255, 255, 255, .16);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card span i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #ff003d, #7b2cff, #315dff);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card em {
  color: rgba(226, 232, 240, .78);
  font-size: 12px;
  font-style: normal;
  font-weight: 850;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card a,
body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-bottom > a,
body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-guide-drawer summary {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 9px 11px;
  border: 1px solid rgba(255, 255, 255, .12);
  border-radius: 13px;
  color: #dbeafe;
  background: rgba(255, 255, 255, .055);
  font-size: 12px;
  font-weight: 900;
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card a {
  justify-self: start;
  min-height: 34px;
  color: #fff;
  border-color: rgba(255, 0, 61, .38);
}

body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-bottom > a:hover,
body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-guide-drawer summary:hover,
body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-plan-card a:hover {
  color: #fff;
  border-color: rgba(255, 255, 255, .22);
  background: rgba(255, 255, 255, .10);
}

@media (max-width: 980px) {
  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell:not(.niche-tab-thumbnails) .niche-dashboard-returnbar {
    grid-column: 1;
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    top: 0;
    z-index: 1000;
    width: min(86vw, 320px);
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0 24px 24px 0;
    transform: translateX(-106%);
    transition: transform .22s ease;
  }

  body.niche-sidebar-open .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar,
  .impact-app-shell .niche-finder-app.niche-finder-global-shell.sidebar-open .niche-finder-sidebar {
    transform: translateX(0) !important;
  }
}

/* Sidebar consistency: Dashboard, Impact Studio and Niche Finder share the same rail. */
@media (min-width: 981px) {
  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell,
  .impact-app-shell .niche-finder-app.niche-finder-global-shell {
    --niche-sidebar-w: 284px !important;
    grid-template-columns: 284px minmax(0, 1fr) !important;
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar,
  .impact-app-shell .niche-finder-app.niche-finder-global-shell .niche-finder-sidebar {
    width: 284px !important;
    max-width: 284px !important;
    min-width: 284px !important;
    padding: 22px 16px !important;
    color: #f8fafc !important;
    border: 0 !important;
    border-right: 1px solid rgba(255, 255, 255, .08) !important;
    border-radius: 0 !important;
    background:
      radial-gradient(circle at 15% 0%, rgba(255, 0, 61, .26), transparent 30%),
      radial-gradient(circle at 100% 20%, rgba(99, 102, 241, .18), transparent 32%),
      linear-gradient(180deg, #071120 0%, #0e1728 55%, #070b14 100%) !important;
    box-shadow: 20px 0 60px rgba(15, 23, 42, .18) !important;
  }

  body.impact-app-active-niche .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a,
  .impact-app-shell .niche-finder-app.niche-finder-global-shell .niche-sidebar-group a {
    min-height: 46px !important;
    padding: 8px 10px !important;
    border-radius: 16px !important;
  }
}
