:root {
  --rvcc-blue: #2364f4;
  --rvcc-ink: #111a35;
  --rvcc-muted: #68738f;
  --rvcc-line: #dfe7f5;
  --rvcc-green: #19ad5c;
  --rvcc-soft: #f5f8ff;
}
.rvcc-admin-precheck { margin: 22px 0; padding: 22px; border: 1px solid #dfe6f2; border-radius: 8px; background: #fff; box-shadow: 0 12px 28px rgba(20, 52, 110, .07); }
.rvcc-admin-precheck > header { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.rvcc-admin-precheck > header span { color: #3264f5; font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.rvcc-admin-precheck h2 { margin: 4px 0 0; color: #0d1733; }
.rvcc-admin-precheck > header > code,
.rvcc-precheck-client code { padding: 8px 10px; border-radius: 6px; color: #173675; background: #eef3ff; }
.rvcc-admin-precheck > p { max-width: 980px; color: #5f6d88; line-height: 1.6; }
.rvcc-precheck-client { display: grid; grid-template-columns: auto minmax(160px, max-content) minmax(220px, 1fr); gap: 10px 14px; align-items: center; margin: 16px 0; padding: 14px; border-radius: 7px; background: #f7f9fd; }
.rvcc-precheck-client small { color: #6d7890; }
.rvcc-precheck-grid { display: grid; gap: 12px; }
.rvcc-precheck-grid > article { display: grid; grid-template-columns: minmax(180px, .7fr) minmax(260px, 1.4fr) auto; gap: 16px; align-items: center; padding: 16px; border: 1px solid #e1e6f0; border-left: 4px solid #f3a529; border-radius: 7px; }
.rvcc-precheck-grid > article.is-passed { border-left-color: #14a667; }
.rvcc-precheck-user,
.rvcc-precheck-result { display: flex; flex-wrap: wrap; gap: 5px 10px; align-items: center; }
.rvcc-precheck-user { flex-direction: column; align-items: flex-start; }
.rvcc-precheck-user span,
.rvcc-precheck-result span { color: #68758f; font-size: 12px; }
.rvcc-precheck-result b { padding: 4px 8px; border-radius: 999px; color: #875b00; background: #fff3d7; }
.rvcc-precheck-grid .is-passed .rvcc-precheck-result b { color: #087844; background: #e6f8ef; }
.rvcc-precheck-result em { flex-basis: 100%; color: #b23b49; font-size: 12px; }
.rvcc-precheck-empty { padding: 18px; border: 1px dashed #cfd8e8; border-radius: 7px; background: #fafbfe; }
@media (max-width: 820px) {
  .rvcc-precheck-client,
  .rvcc-precheck-grid > article { grid-template-columns: 1fr; }
  .rvcc-admin-precheck > header { align-items: flex-start; flex-direction: column; }
}
.rvcc-provider-metrics article > b img { display: block; width: 28px; height: 28px; object-fit: contain; }
.rvcc-provider-metrics article > div small { display: block; margin-top: 2px; color: #71809c; font-size: 10px; line-height: 1.3; }

.rvcc-shell,
.rvcc-admin {
  box-sizing: border-box;
  color: var(--rvcc-ink);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.rvcc-shell *,
.rvcc-admin * { box-sizing: border-box; }

.rvcc-shell {
  width: 100%;
  margin: 22px 0;
  padding: 24px;
  border: 1px solid var(--rvcc-line);
  border-radius: 8px;
  background: linear-gradient(135deg, #fff 0%, #f5f8ff 100%);
  box-shadow: 0 16px 40px rgba(31, 63, 135, .08);
}

.rvcc-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 20px;
}

.rvcc-heading > div > span,
.rvcc-admin-heading span {
  color: var(--rvcc-blue);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.rvcc-heading h2,
.rvcc-admin-heading h1 {
  margin: 4px 0 6px;
  color: var(--rvcc-ink);
  font-size: clamp(24px, 3vw, 34px);
  line-height: 1.1;
}

.rvcc-heading p,
.rvcc-admin-heading p {
  max-width: 720px;
  margin: 0;
  color: var(--rvcc-muted);
  font-size: 14px;
  line-height: 1.6;
}

.rvcc-heading > i {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  border: 1px solid #d8e5ff;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #fff 5%, #77a0ff 35%, #2364f4 70%, #173dad 100%);
  box-shadow: 0 12px 28px rgba(35, 100, 244, .22);
}

.rvcc-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.rvcc-platform-card {
  display: grid;
  grid-template-columns: 52px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  min-height: 118px;
  padding: 18px;
  border: 1px solid var(--rvcc-line);
  border-radius: 8px;
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.rvcc-platform-card:hover {
  border-color: #afc8ff;
  box-shadow: 0 12px 28px rgba(31, 63, 135, .09);
  transform: translateY(-2px);
}

.rvcc-platform-icon {
  display: grid;
  width: 52px;
  height: 52px;
  place-items: center;
  border-radius: 8px;
  border: 1px solid var(--rvcc-line);
  background: #fff;
}

.rvcc-platform-icon img {
  display: block;
  width: 28px;
  height: 28px;
  object-fit: contain;
}

.rvcc-platform-card.is-youtube .rvcc-platform-icon { background: #fff0f0; color: #e82929; }
.rvcc-platform-card.is-instagram .rvcc-platform-icon { background: #fff0fa; color: #d52e8d; }
.rvcc-platform-card.is-tiktok .rvcc-platform-icon { background: #ebfcfb; color: #101727; }
.rvcc-platform-card.is-twitch .rvcc-platform-icon { background: #f3efff; color: #7143d7; }
.rvcc-platform-card.is-x .rvcc-platform-icon { background: #edf0f5; color: #111; }
.rvcc-platform-card.is-connected { border-color: #bde9ce; }
.rvcc-platform-card.is-staged { background: #fafbfe; color: #8a94aa; }
.rvcc-platform-copy h3 { margin: 0 0 4px; font-size: 17px; }
.rvcc-platform-copy strong,
.rvcc-platform-copy small,
.rvcc-platform-copy em { display: block; }
.rvcc-platform-copy strong { color: var(--rvcc-ink); font-size: 14px; }
.rvcc-platform-copy small { margin-top: 4px; color: var(--rvcc-muted); font-size: 12px; line-height: 1.4; }
.rvcc-platform-copy em { margin-top: 5px; color: #bc2a2a; font-size: 11px; font-style: normal; }
.rvcc-platform-card > span { padding: 7px 9px; border-radius: 20px; background: #eef1f7; font-size: 11px; font-weight: 700; white-space: nowrap; }

.rvcc-card-actions { display: flex; flex-direction: column; gap: 7px; }
.rvcc-card-actions a {
  display: inline-flex;
  min-height: 34px;
  align-items: center;
  justify-content: center;
  padding: 7px 12px;
  border: 1px solid #cfd9ea;
  border-radius: 6px;
  color: var(--rvcc-ink);
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}
.rvcc-card-actions .is-primary { border-color: var(--rvcc-blue); background: var(--rvcc-blue); color: #fff; }
.rvcc-card-actions .is-danger { color: #b62323; }
.rvcc-card-actions .is-disabled { pointer-events: none; opacity: .5; }

.rvcc-platform-dashboard .rvcc-heading img { width: 68px; height: 68px; border-radius: 50%; object-fit: cover; }
.rvcc-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-bottom: 18px; }
.rvcc-metrics article { padding: 18px; border: 1px solid var(--rvcc-line); border-radius: 8px; background: #fff; }
.rvcc-metrics strong { display: block; color: var(--rvcc-ink); font-size: 26px; }
.rvcc-metrics span { color: var(--rvcc-muted); font-size: 12px; }
.rvcc-video-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.rvcc-video-grid a { overflow: hidden; border: 1px solid var(--rvcc-line); border-radius: 8px; background: #fff; color: var(--rvcc-ink); text-decoration: none; }
.rvcc-video-grid img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }
.rvcc-video-grid div { padding: 10px; }
.rvcc-video-grid strong { display: -webkit-box; overflow: hidden; font-size: 12px; line-height: 1.4; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.rvcc-video-grid span { display: block; margin-top: 5px; color: var(--rvcc-muted); font-size: 10px; line-height: 1.4; }

.rvcc-admin { max-width: 1320px; margin: 24px 20px 0 0; }
.rvcc-admin-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; padding: 24px; border-radius: 8px; background: linear-gradient(130deg, #10245c, #2364f4); color: #fff; }
.rvcc-admin-heading h1,
.rvcc-admin-heading p { color: #fff; }
.rvcc-admin-heading span { color: #b9d1ff; }
.rvcc-admin-heading > strong { padding: 10px 14px; border: 1px solid rgba(255,255,255,.3); border-radius: 6px; }
.rvcc-admin-provider-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.rvcc-admin-provider { padding: 22px; border: 1px solid #dbe3f1; border-radius: 8px; background: #fff; box-shadow: 0 10px 25px rgba(25, 46, 91, .06); }
.rvcc-admin-provider header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.rvcc-admin-provider h2 { margin: 0; }
.rvcc-admin-provider header span { padding: 6px 9px; border-radius: 20px; background: #eef1f7; color: #68738f; font-size: 11px; font-weight: 800; }
.rvcc-admin-provider.is-live header span { background: #e7f8ed; color: #168446; }
.rvcc-admin-provider label { display: block; margin-top: 12px; color: #29334e; font-weight: 700; }
.rvcc-admin-provider input { width: 100%; margin-top: 5px; }
.rvcc-admin-provider textarea { width: 100%; min-height: 72px; margin-top: 5px; resize: vertical; }
.rvcc-admin-provider p { color: #68738f; font-size: 12px; line-height: 1.5; }
.rvcc-admin-status { margin-top: 26px; padding: 22px; border: 1px solid #dbe3f1; border-radius: 8px; background: #fff; }
.rvcc-admin-status table { width: 100%; border-collapse: collapse; }
.rvcc-admin-status th,
.rvcc-admin-status td { padding: 12px; border-bottom: 1px solid #e7ecf4; text-align: left; vertical-align: top; }
.rvcc-admin-status td small { display: block; color: #7b8498; }
.rvcc-admin-status .is-healthy { color: #168446; }
.rvcc-admin-status .is-error { color: #b62323; }

.rvcc-copy-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 0 0 20px; padding: 20px; border: 1px solid #dbe3f1; border-radius: 8px; background: #fff; }
.rvcc-copy-grid label { color: #29334e; font-weight: 700; }
.rvcc-copy-grid input { width: 100%; margin-top: 5px; font-family: monospace; font-size: 11px; }
.rvcc-live-metrics { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.rvcc-live-metrics article { position: relative; min-height: 168px; overflow: hidden; padding: 20px; }
.rvcc-live-metrics article > i { display: inline-grid; min-width: 42px; height: 30px; place-items: center; margin-bottom: 12px; border-radius: 6px; background: #eef4ff; color: var(--rvcc-blue); font-size: 10px; font-style: normal; font-weight: 900; text-transform: uppercase; }
.rvcc-live-metrics .rvcc-spark { position: absolute; right: 12px; bottom: 10px; width: 46%; height: 50px; }
.rvcc-spark polyline { fill: none; stroke: #2364f4; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; vector-effect: non-scaling-stroke; }
.rvcc-provider-metrics { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin: 0 0 18px; }
.rvcc-provider-metrics article { display: flex; align-items: center; gap: 10px; min-width: 0; padding: 12px; border: 1px solid var(--rvcc-line); border-radius: 8px; background: #fff; }
.rvcc-provider-metrics b { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 7px; background: #eef4ff; color: var(--rvcc-blue); font-size: 10px; }
.rvcc-provider-metrics div { min-width: 0; }
.rvcc-provider-metrics strong, .rvcc-provider-metrics span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rvcc-provider-metrics strong { font-size: 12px; }
.rvcc-provider-metrics span { color: var(--rvcc-muted); font-size: 10px; }
.rvcc-provider-metrics em { margin-left: auto; color: var(--rvcc-green); font-size: 11px; font-style: normal; font-weight: 800; }
.rvcc-content-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.rvcc-content-grid a { display: grid; grid-template-columns: 92px minmax(0, 1fr); overflow: hidden; min-height: 92px; border: 1px solid var(--rvcc-line); border-radius: 8px; background: #fff; color: var(--rvcc-ink); text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.rvcc-content-grid a:hover { transform: translateY(-2px); box-shadow: 0 12px 24px rgba(31, 63, 135, .1); }
.rvcc-content-grid img { width: 92px; height: 100%; min-height: 92px; object-fit: contain; background: #eef3fb; }
.rvcc-content-grid div { min-width: 0; padding: 10px; }
.rvcc-content-grid small, .rvcc-content-grid strong, .rvcc-content-grid span { display: block; }
.rvcc-content-grid small { color: var(--rvcc-blue); font-size: 9px; font-weight: 800; text-transform: uppercase; }
.rvcc-content-grid strong { display: -webkit-box; overflow: hidden; margin: 4px 0; font-size: 11px; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.rvcc-content-grid span { color: var(--rvcc-muted); font-size: 9px; }
.rvcc-public-metrics { max-width: 1320px; margin-right: auto; margin-left: auto; }
.rvcc-delete-box { padding: 24px; border: 1px solid var(--rvcc-line); border-radius: 8px; background: #fff; }
.rvcc-delete-box h2 { margin-top: 0; color: var(--rvcc-ink); }
.rvcc-delete-button { display: inline-flex; min-height: 44px; align-items: center; padding: 10px 16px; border-radius: 6px; background: #b62323; color: #fff !important; font-weight: 800; text-decoration: none !important; }

@media (max-width: 980px) {
  .rvcc-card-grid,
  .rvcc-admin-provider-grid { grid-template-columns: 1fr; }
  .rvcc-copy-grid { grid-template-columns: 1fr 1fr; }
  .rvcc-live-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rvcc-provider-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rvcc-content-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rvcc-video-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .rvcc-shell { margin: 16px 0; padding: 18px 14px; }
  .rvcc-heading { align-items: flex-start; }
  .rvcc-heading > i { width: 44px; height: 44px; flex-basis: 44px; }
  .rvcc-platform-card { grid-template-columns: 46px minmax(0, 1fr); padding: 14px; }
  .rvcc-platform-icon { width: 46px; height: 46px; }
  .rvcc-card-actions,
  .rvcc-platform-card > span { grid-column: 1 / -1; }
  .rvcc-card-actions { flex-direction: row; }
  .rvcc-card-actions a { flex: 1; }
  .rvcc-metrics { grid-template-columns: 1fr; }
  .rvcc-live-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rvcc-live-metrics article { min-height: 148px; padding: 15px; }
  .rvcc-live-metrics strong { font-size: 22px; }
  .rvcc-provider-metrics, .rvcc-copy-grid { grid-template-columns: 1fr; }
  .rvcc-content-grid { grid-template-columns: 1fr; }
  .rvcc-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .rvcc-admin { margin-right: 10px; }
  .rvcc-admin-heading { align-items: flex-start; }
  .rvcc-admin-status { overflow-x: auto; }
}
