:root {
  --midnight: #0b0b12;
  --graphite: #171727;
  --graphite-2: #1e1e31;
  --graphite-3: #29293d;
  --violet: #8b5cf6;
  --violet-2: #6d38ee;
  --cyan: #22d3ee;
  --snow: #f8fafc;
  --muted: #b6b8c6;
  --muted-2: #9194a8;
  --success: #37d39a;
  --warning: #ffb454;
  --danger: #ff637f;
  --border: rgba(255, 255, 255, 0.085);
  --soft-border: rgba(255, 255, 255, 0.055);
  --shadow: 0 24px 70px rgba(0, 0, 0, 0.3);
  --radius-xl: 28px;
  --radius-lg: 20px;
  --radius-md: 14px;
  --sidebar: 248px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  min-height: 100vh;
  overflow-x: hidden;
  background: var(--midnight);
  color: var(--snow);
  font-family: "Manrope", Inter, "Segoe UI", sans-serif;
  font-size: 15px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
}

button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
svg { display: block; }
[hidden] { display: none !important; }

::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #0d0d16; }
::-webkit-scrollbar-thumb { background: #323247; border: 2px solid #0d0d16; border-radius: 999px; }

.ambient {
  position: fixed;
  z-index: -1;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  filter: blur(130px);
  pointer-events: none;
  opacity: .09;
}
.ambient-one { top: -260px; left: 12%; background: var(--violet); }
.ambient-two { right: -310px; bottom: -250px; background: var(--cyan); }

.app-shell { min-height: 100vh; }
.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 50;
  display: flex;
  width: var(--sidebar);
  flex-direction: column;
  padding: 24px 18px 18px;
  border-right: 1px solid var(--soft-border);
  background: rgba(11, 11, 18, .92);
  backdrop-filter: blur(24px);
}
.brand { display: flex; align-items: center; min-height: 56px; padding: 0 8px 20px; }
.brand img { width: 193px; height: auto; }
.side-nav { display: grid; min-height: 0; flex: 1; align-content: start; gap: 5px; margin-top: 8px; overflow-y: auto; padding-right: 2px; }
.nav-section-label {
  margin: 18px 12px 7px;
  color: var(--muted-2);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.nav-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 44px;
  padding: 0 13px;
  overflow: hidden;
  border: 1px solid transparent;
  border-radius: 12px;
  color: var(--muted);
  font-size: 13px;
  font-weight: 650;
  transition: .2s ease;
}
.nav-item::before {
  position: absolute;
  inset: 8px auto 8px 0;
  width: 3px;
  border-radius: 4px;
  background: var(--violet);
  content: "";
  opacity: 0;
}
.nav-item:hover { color: var(--snow); background: rgba(255,255,255,.035); }
.nav-item.active {
  color: var(--snow);
  border-color: rgba(139,92,246,.2);
  background: linear-gradient(90deg, rgba(139,92,246,.16), rgba(139,92,246,.035));
}
.nav-item.active::before { opacity: 1; }
.nav-icon { display: grid; width: 22px; height: 22px; place-items: center; }
.nav-icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.nav-badge {
  margin-left: auto;
  min-width: 20px;
  padding: 2px 6px;
  border-radius: 999px;
  background: rgba(34,211,238,.12);
  color: var(--cyan);
  font-size: 10px;
  text-align: center;
}
.sidebar-card {
  position: relative;
  margin-top: auto;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 18px;
  background: radial-gradient(circle at 100% 0, rgba(34,211,238,.14), transparent 45%), linear-gradient(145deg, rgba(139,92,246,.16), rgba(23,23,39,.9));
}
.sidebar-card-icon { color: var(--cyan); font-size: 20px; }
.sidebar-card strong { display: block; margin-top: 8px; font-size: 14px; }
.sidebar-card p { margin: 5px 0 14px; color: var(--muted); font-size: 11px; }
.sidebar-footer { display: flex; align-items: center; gap: 7px; padding: 17px 8px 0; color: var(--muted-2); font-size: 10px; }
.sidebar-footer .version { margin-left: auto; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 4px rgba(55,211,154,.09); }

.main-shell { min-height: 100vh; padding-left: var(--sidebar); }
.topbar {
  position: sticky;
  top: 0;
  z-index: 40;
  display: flex;
  height: 78px;
  align-items: center;
  gap: 18px;
  padding: 0 30px;
  border-bottom: 1px solid var(--soft-border);
  background: rgba(11,11,18,.78);
  backdrop-filter: blur(24px);
}
.search {
  display: flex;
  width: min(560px, 45vw);
  height: 44px;
  align-items: center;
  gap: 10px;
  padding: 0 12px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(255,255,255,.035);
  transition: .2s ease;
}
.search:focus-within { border-color: rgba(139,92,246,.55); box-shadow: 0 0 0 3px rgba(139,92,246,.1); }
.search svg { width: 18px; height: 18px; fill: none; stroke: var(--muted); stroke-width: 1.8; stroke-linecap: round; }
.search input { width: 100%; border: 0; outline: 0; background: transparent; color: var(--snow); font-size: 12px; }
.search input::placeholder { color: var(--muted-2); }
.search kbd { padding: 3px 7px; border: 1px solid var(--border); border-radius: 6px; color: var(--muted-2); font-size: 10px; }
.topbar-actions { display: flex; align-items: center; gap: 9px; margin-left: auto; }
.icon-btn {
  position: relative;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  padding: 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(255,255,255,.03);
  font-size: 22px;
  transition: .2s ease;
}
.icon-btn:hover { border-color: rgba(139,92,246,.4); background: rgba(139,92,246,.09); }
.icon-btn svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.action-dot { position: absolute; top: 7px; right: 7px; width: 6px; height: 6px; border: 1px solid var(--midnight); border-radius: 50%; background: var(--violet); }
.action-dot.cyan { background: var(--cyan); }
.select-wrap { display: flex; height: 40px; align-items: center; gap: 5px; padding: 0 8px; border: 1px solid var(--border); border-radius: 12px; background: rgba(255,255,255,.03); }
.select-wrap span { color: var(--cyan); }
.select-wrap select { border: 0; outline: 0; background: transparent; color: var(--snow); font-size: 11px; font-weight: 800; }
.select-wrap option, .role-switcher option { background: var(--graphite); color: var(--snow); }
.role-switcher {
  position: relative;
  display: flex;
  min-width: 152px;
  height: 48px;
  align-items: center;
  gap: 9px;
  padding: 0 11px;
  border: 1px solid rgba(139,92,246,.22);
  border-radius: 14px;
  background: linear-gradient(145deg, rgba(139,92,246,.12), rgba(255,255,255,.025));
}
.role-switcher select { position: absolute; inset: 0; width: 100%; opacity: 0; }
.role-avatar { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border-radius: 10px; background: linear-gradient(135deg,var(--violet),var(--cyan)); color: #fff; font-size: 12px; font-weight: 800; }
.role-copy { display: flex; min-width: 66px; flex-direction: column; line-height: 1.15; }
.role-copy small { color: var(--muted-2); font-size: 8px; text-transform: uppercase; }
.role-copy strong { margin-top: 3px; font-size: 11px; }
.role-switcher > svg { width: 16px; fill: none; stroke: var(--muted); stroke-width: 1.8; }
.mobile-menu { display: none; }

.main-content { width: min(1500px, 100%); margin: 0 auto; padding: 28px 30px 70px; outline: 0; }
.page-enter { animation: pageEnter .35s ease both; }
@keyframes pageEnter { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
.eyebrow { color: var(--cyan); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
h1, h2, h3, h4, p { margin-top: 0; }
h1 { margin-bottom: 12px; font-size: clamp(34px, 5vw, 64px); line-height: 1.02; letter-spacing: -.055em; }
h2 { margin-bottom: 8px; font-size: 24px; line-height: 1.2; letter-spacing: -.03em; }
h3 { margin-bottom: 6px; font-size: 16px; }
.muted { color: var(--muted); }
.gradient-text { background: linear-gradient(90deg,var(--violet),var(--cyan)); -webkit-background-clip: text; background-clip: text; color: transparent; }

.btn {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 13px;
  font-size: 12px;
  font-weight: 800;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
}
.btn:hover { transform: translateY(-2px); }
.btn-primary { background: linear-gradient(135deg,var(--violet),var(--violet-2)); color: #fff; box-shadow: 0 10px 30px rgba(139,92,246,.18); }
.btn-primary:hover { box-shadow: 0 12px 35px rgba(139,92,246,.28); }
.btn-secondary { border-color: var(--border); background: rgba(255,255,255,.045); color: var(--snow); }
.btn-ghost { border-color: transparent; background: transparent; color: var(--muted); }
.btn-small { min-height: 34px; padding: 0 13px; border-radius: 10px; font-size: 10px; }
.btn-cyan { background: var(--cyan); color: #071014; }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; }

.hero {
  position: relative;
  min-height: 480px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: var(--radius-xl);
  background: #10101a;
  box-shadow: var(--shadow);
}
.hero-image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; opacity: .92; }
.hero::after { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,7,12,.98) 0%, rgba(7,7,12,.86) 35%, rgba(7,7,12,.25) 68%, rgba(7,7,12,.08) 100%), linear-gradient(0deg,rgba(7,7,12,.65),transparent 45%); content: ""; }
.hero-content { position: relative; z-index: 2; display: flex; min-height: 480px; max-width: 650px; flex-direction: column; justify-content: center; padding: 58px; }
.hero-kicker { display: inline-flex; width: fit-content; align-items: center; gap: 8px; margin-bottom: 20px; padding: 7px 11px; border: 1px solid rgba(34,211,238,.2); border-radius: 999px; background: rgba(34,211,238,.07); color: var(--cyan); font-size: 9px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.live-pulse { width: 7px; height: 7px; border-radius: 50%; background: var(--danger); box-shadow: 0 0 0 5px rgba(255,99,127,.1); animation: pulse 2s infinite; }
@keyframes pulse { 50% { box-shadow: 0 0 0 10px rgba(255,99,127,0); } }
.hero p { max-width: 520px; margin-bottom: 25px; color: #b9bbc8; font-size: 16px; }
.hero-proof { display: flex; align-items: center; gap: 14px; margin-top: 28px; color: var(--muted); font-size: 10px; }
.avatar-stack { display: flex; }
.avatar-stack img, .avatar-stack span { width: 29px; height: 29px; margin-left: -7px; border: 2px solid var(--midnight); border-radius: 50%; object-fit: cover; }
.avatar-stack img:first-child, .avatar-stack span:first-child { margin-left: 0; }
.hero-float {
  position: absolute;
  z-index: 3;
  right: 28px;
  bottom: 28px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 13px 15px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 16px;
  background: rgba(11,11,18,.72);
  backdrop-filter: blur(18px);
}
.hero-float strong { display: block; font-size: 12px; }
.hero-float small { color: var(--muted); font-size: 9px; }
.hero-float-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 12px; background: rgba(55,211,154,.12); color: var(--success); font-weight: 800; }

.stats-strip { display: grid; grid-template-columns: repeat(4,1fr); gap: 12px; margin-top: 16px; }
.stat-card { padding: 19px; border: 1px solid var(--border); border-radius: 17px; background: rgba(23,23,39,.66); }
.stat-card .stat-top { display: flex; align-items: center; justify-content: space-between; }
.stat-card small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.stat-card strong { display: block; margin-top: 7px; font-size: 22px; letter-spacing: -.04em; }
.trend { color: var(--success); font-size: 9px; }
.trend.down { color: var(--danger); }

.section { margin-top: 38px; }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.section-head p { margin: 5px 0 0; color: var(--muted); font-size: 11px; }
.text-link { border: 0; background: transparent; color: var(--cyan); font-size: 11px; font-weight: 800; }
.filter-row { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px; }
.filter-pill { min-height: 34px; padding: 0 13px; border: 1px solid var(--border); border-radius: 999px; background: rgba(255,255,255,.025); color: var(--muted); font-size: 10px; font-weight: 750; }
.filter-pill:hover, .filter-pill.active { border-color: rgba(139,92,246,.4); background: rgba(139,92,246,.12); color: var(--snow); }

.live-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.live-card, .creator-card, .content-card, .opportunity-card, .panel {
  border: 1px solid var(--border);
  background: linear-gradient(150deg,rgba(30,30,49,.93),rgba(20,20,32,.96));
  transition: transform .22s ease, border-color .22s ease;
}
.live-card:hover, .creator-card:hover, .content-card:hover, .opportunity-card:hover { transform: translateY(-4px); border-color: rgba(139,92,246,.32); }
.live-card { overflow: hidden; border-radius: var(--radius-lg); }
.card-media { position: relative; aspect-ratio: 16/9; overflow: hidden; background: var(--graphite); }
.card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.live-card:hover .card-media img, .content-card:hover .card-media img { transform: scale(1.035); }
.media-overlay { position: absolute; inset: 0; background: linear-gradient(0deg,rgba(5,5,8,.65),transparent 55%); }
.live-badge { position: absolute; top: 12px; left: 12px; display: flex; align-items: center; gap: 6px; padding: 5px 8px; border-radius: 7px; background: #ee3c63; color: white; font-size: 8px; font-weight: 900; letter-spacing: .08em; }
.viewer-badge { position: absolute; top: 12px; right: 12px; padding: 5px 8px; border-radius: 7px; background: rgba(5,5,8,.6); backdrop-filter: blur(8px); color: white; font-size: 8px; }
.play-button { position: absolute; inset: 50% auto auto 50%; display: grid; width: 48px; height: 48px; place-items: center; transform: translate(-50%,-50%); border: 1px solid rgba(255,255,255,.25); border-radius: 50%; background: rgba(11,11,18,.55); backdrop-filter: blur(10px); opacity: .86; transition: .2s ease; }
.play-button::after { width: 0; height: 0; margin-left: 3px; border-top: 7px solid transparent; border-bottom: 7px solid transparent; border-left: 11px solid #fff; content: ""; }
.live-card:hover .play-button { transform: translate(-50%,-50%) scale(1.08); background: var(--violet); }
.live-card-body { padding: 15px; }
.creator-line { display: flex; align-items: center; gap: 10px; }
.avatar { width: 38px; height: 38px; flex: 0 0 38px; border: 2px solid rgba(139,92,246,.45); border-radius: 50%; object-fit: cover; }
.avatar.large { width: 64px; height: 64px; flex-basis: 64px; }
.creator-line strong { display: block; overflow: hidden; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.creator-line small { color: var(--muted); font-size: 9px; }
.verified { display: inline-grid; width: 14px; height: 14px; place-items: center; margin-left: 4px; border-radius: 50%; background: var(--cyan); color: #081013; font-size: 8px; vertical-align: 1px; }
.card-title { margin: 11px 0 0; overflow: hidden; font-size: 13px; text-overflow: ellipsis; white-space: nowrap; }
.card-meta { display: flex; align-items: center; gap: 12px; margin-top: 8px; color: var(--muted); font-size: 8px; }

.creator-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.creator-card { position: relative; overflow: hidden; border-radius: var(--radius-lg); }
.creator-cover { height: 122px; overflow: hidden; }
.creator-cover img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.9); }
.creator-card::before { position: absolute; z-index: 1; top: 78px; right: 16px; width: 42px; height: 42px; border-radius: 50%; background: radial-gradient(circle at 30% 30%,var(--cyan),var(--violet)); content: ""; opacity: .2; filter: blur(15px); }
.creator-card-body { padding: 0 15px 15px; }
.creator-card .avatar { position: relative; width: 52px; height: 52px; margin-top: -26px; border: 3px solid var(--graphite); }
.creator-name-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 8px; }
.creator-name-row strong { font-size: 12px; }
.creator-card p { display: -webkit-box; min-height: 32px; margin: 6px 0 12px; overflow: hidden; color: var(--muted); font-size: 9px; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.creator-stats { display: flex; align-items: center; justify-content: space-between; padding-top: 11px; border-top: 1px solid var(--soft-border); color: var(--muted); font-size: 8px; }
.price { color: var(--snow); font-weight: 800; }

.opportunity-grid { display: grid; grid-template-columns: 1.1fr .9fr .9fr; gap: 14px; }
.opportunity-card { position: relative; min-height: 186px; overflow: hidden; padding: 22px; border-radius: var(--radius-lg); }
.opportunity-card.featured { background: radial-gradient(circle at 100% 0,rgba(34,211,238,.17),transparent 40%), linear-gradient(145deg,rgba(139,92,246,.21),rgba(23,23,39,.95)); }
.opportunity-icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 13px; background: rgba(139,92,246,.14); color: var(--violet); font-size: 18px; }
.opportunity-card h3 { margin-top: 18px; }
.opportunity-card p { margin-bottom: 16px; color: var(--muted); font-size: 10px; }
.opportunity-value { position: absolute; top: 21px; right: 20px; color: var(--success); font-size: 11px; font-weight: 800; }

.page-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 25px; }
.page-header h1 { margin: 4px 0 8px; font-size: clamp(30px,4vw,46px); }
.page-header p { margin: 0; color: var(--muted); font-size: 12px; }
.date-pill { padding: 9px 12px; border: 1px solid var(--border); border-radius: 11px; background: rgba(255,255,255,.025); color: var(--muted); font-size: 10px; }
.metric-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 13px; }
.metric-card { position: relative; min-height: 134px; padding: 18px; overflow: hidden; border: 1px solid var(--border); border-radius: 18px; background: linear-gradient(145deg,rgba(30,30,49,.85),rgba(20,20,32,.9)); }
.metric-card::after { position: absolute; right: -35px; bottom: -55px; width: 130px; height: 130px; border-radius: 50%; background: var(--accent,var(--violet)); content: ""; opacity: .07; filter: blur(12px); }
.metric-head { display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-size: 9px; }
.metric-icon { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 11px; background: color-mix(in srgb,var(--accent,var(--violet)) 13%,transparent); color: var(--accent,var(--violet)); font-size: 15px; }
.metric-card strong { display: block; margin-top: 16px; font-size: 24px; letter-spacing: -.04em; }
.metric-card small { color: var(--success); font-size: 8px; }
.dashboard-grid { display: grid; grid-template-columns: 1.5fr .85fr; gap: 15px; margin-top: 16px; }
.panel { padding: 20px; border-radius: var(--radius-lg); }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
.panel-head h3 { margin: 0; }
.panel-head span { color: var(--muted); font-size: 9px; }
.chart { display: flex; height: 210px; align-items: flex-end; gap: 9px; padding: 20px 8px 0; border-bottom: 1px solid var(--border); }
.chart-bar { position: relative; min-width: 12px; flex: 1; border-radius: 7px 7px 2px 2px; background: linear-gradient(0deg,rgba(139,92,246,.25),var(--violet)); }
.chart-bar:nth-child(2n) { background: linear-gradient(0deg,rgba(34,211,238,.18),var(--cyan)); }
.chart-bar:hover::after { position: absolute; top: -29px; left: 50%; padding: 4px 6px; transform: translateX(-50%); border-radius: 6px; background: var(--snow); color: var(--midnight); content: attr(data-value); font-size: 8px; font-weight: 800; }
.chart-labels { display: flex; justify-content: space-around; margin-top: 10px; color: var(--muted-2); font-size: 8px; }
.activity-list, .message-list, .notification-list { display: grid; gap: 10px; }
.activity-item { display: flex; align-items: center; gap: 11px; padding: 10px; border-radius: 12px; background: rgba(255,255,255,.025); }
.activity-icon { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; background: rgba(139,92,246,.11); color: var(--violet); }
.activity-item strong { display: block; font-size: 10px; }
.activity-item small { color: var(--muted); font-size: 8px; }
.activity-value { margin-left: auto; color: var(--success); font-size: 9px; font-weight: 800; }

.data-table-wrap { overflow-x: auto; border: 1px solid var(--border); border-radius: var(--radius-lg); background: rgba(23,23,39,.7); }
.data-table { width: 100%; border-collapse: collapse; min-width: 760px; }
.data-table th { padding: 13px 16px; border-bottom: 1px solid var(--border); color: var(--muted-2); font-size: 8px; font-weight: 800; letter-spacing: .08em; text-align: left; text-transform: uppercase; }
.data-table td { padding: 14px 16px; border-bottom: 1px solid var(--soft-border); color: #d4d5de; font-size: 10px; }
.data-table tr:last-child td { border-bottom: 0; }
.data-table tbody tr:hover { background: rgba(255,255,255,.018); }
.table-person { display: flex; align-items: center; gap: 9px; }
.table-person .avatar { width: 32px; height: 32px; flex-basis: 32px; }
.badge { display: inline-flex; align-items: center; gap: 5px; padding: 5px 8px; border-radius: 999px; background: rgba(139,92,246,.11); color: #b9a2ff; font-size: 8px; font-weight: 800; }
.badge.success { background: rgba(55,211,154,.1); color: var(--success); }
.badge.warning { background: rgba(255,180,84,.1); color: var(--warning); }
.badge.danger { background: rgba(255,99,127,.1); color: var(--danger); }
.badge.cyan { background: rgba(34,211,238,.1); color: var(--cyan); }

.content-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.content-card { overflow: hidden; border-radius: var(--radius-lg); }
.content-card-body { padding: 14px; }
.content-card-body h3 { font-size: 12px; }
.content-card-body p { margin: 0; color: var(--muted); font-size: 9px; }
.content-actions { display: flex; align-items: center; gap: 7px; margin-top: 12px; }
.content-actions .btn:last-child { margin-left: auto; }
.empty-state { padding: 70px 20px; border: 1px dashed rgba(255,255,255,.12); border-radius: var(--radius-lg); color: var(--muted); text-align: center; }
.empty-icon { display: grid; width: 60px; height: 60px; margin: 0 auto 15px; place-items: center; border-radius: 20px; background: rgba(139,92,246,.1); color: var(--violet); font-size: 26px; }

.pricing-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.price-card { position: relative; padding: 24px; border: 1px solid var(--border); border-radius: 22px; background: rgba(23,23,39,.84); }
.price-card.popular { border-color: rgba(139,92,246,.55); background: radial-gradient(circle at 100% 0,rgba(34,211,238,.11),transparent 35%),linear-gradient(145deg,rgba(139,92,246,.16),rgba(23,23,39,.96)); }
.popular-label { position: absolute; top: 14px; right: 14px; color: var(--cyan); font-size: 8px; font-weight: 900; }
.price-card .amount { margin: 17px 0; font-size: 32px; font-weight: 800; }
.price-card .amount small { color: var(--muted); font-size: 10px; font-weight: 500; }
.feature-list { display: grid; gap: 10px; margin: 20px 0; padding: 0; list-style: none; color: #c1c2cd; font-size: 10px; }
.feature-list li::before { margin-right: 8px; color: var(--success); content: "✓"; }

.gift-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 12px; }
.gift-card { padding: 18px 10px; border: 1px solid var(--border); border-radius: 17px; background: rgba(23,23,39,.7); text-align: center; transition: .2s ease; }
.gift-card:hover { transform: translateY(-3px); border-color: rgba(139,92,246,.4); }
.gift-card .gift-emoji { display: block; font-size: 28px; }
.gift-card strong { display: block; margin-top: 9px; font-size: 13px; }
.gift-card small { color: var(--muted); font-size: 8px; }

.form-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.field { display: grid; gap: 7px; }
.field.full { grid-column: 1/-1; }
.field label { color: var(--muted); font-size: 9px; font-weight: 750; }
.input, .textarea, .select {
  width: 100%;
  min-height: 44px;
  padding: 0 13px;
  border: 1px solid var(--border);
  border-radius: 12px;
  outline: 0;
  background: rgba(255,255,255,.03);
  color: var(--snow);
  font-size: 11px;
}
.textarea { min-height: 110px; padding-top: 12px; resize: vertical; }
.input:focus, .textarea:focus, .select:focus { border-color: rgba(139,92,246,.55); box-shadow: 0 0 0 3px rgba(139,92,246,.08); }
.select option { background: var(--graphite); }
.toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 14px 0; border-bottom: 1px solid var(--soft-border); }
.toggle-copy strong { display: block; font-size: 11px; }
.toggle-copy small { color: var(--muted); font-size: 8px; }
.toggle { position: relative; width: 40px; height: 23px; border-radius: 999px; background: #343447; }
.toggle::after { position: absolute; top: 3px; left: 3px; width: 17px; height: 17px; border-radius: 50%; background: #fff; content: ""; transition: .2s; }
.toggle.on { background: var(--violet); }
.toggle.on::after { left: 20px; }

.kanban { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; }
.kanban-column { min-height: 430px; padding: 14px; border: 1px solid var(--border); border-radius: 18px; background: rgba(23,23,39,.5); }
.kanban-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; font-size: 11px; font-weight: 800; }
.kanban-count { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 7px; background: rgba(255,255,255,.06); color: var(--muted); font-size: 8px; }
.kanban-card { margin-bottom: 10px; padding: 13px; border: 1px solid var(--border); border-radius: 13px; background: var(--graphite); }
.kanban-card strong { display: block; font-size: 10px; }
.kanban-card p { margin: 6px 0 10px; color: var(--muted); font-size: 8px; }
.kanban-meta { display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); font-size: 8px; }

.drawer {
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  width: min(410px,100vw);
  height: 100vh;
  padding: 23px;
  transform: translateX(105%);
  border-left: 1px solid var(--border);
  background: rgba(15,15,25,.98);
  box-shadow: -25px 0 70px rgba(0,0,0,.35);
  transition: transform .3s ease;
}
.drawer.open { transform: none; }
.drawer-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 18px; border-bottom: 1px solid var(--border); }
.drawer-head h2 { margin: 4px 0 0; }
.drawer-content { padding-top: 16px; }
.message-item { display: flex; align-items: center; gap: 11px; padding: 12px; border-radius: 13px; }
.message-item:hover { background: rgba(255,255,255,.035); }
.message-item strong { display: block; font-size: 10px; }
.message-item p { max-width: 220px; margin: 3px 0 0; overflow: hidden; color: var(--muted); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.message-time { margin-left: auto; color: var(--muted-2); font-size: 8px; }
.unread-dot { width: 7px; height: 7px; margin-left: auto; border-radius: 50%; background: var(--violet); }
.scrim { position: fixed; z-index: 90; inset: 0; background: rgba(0,0,0,.58); backdrop-filter: blur(3px); }

.modal { position: fixed; z-index: 110; inset: 0; display: grid; place-items: center; padding: 20px; background: rgba(0,0,0,.64); backdrop-filter: blur(7px); opacity: 0; pointer-events: none; transition: opacity .2s ease; }
.modal.open { opacity: 1; pointer-events: auto; }
.modal-card { position: relative; width: min(560px,100%); max-height: 90vh; overflow-y: auto; padding: 29px; border: 1px solid rgba(139,92,246,.25); border-radius: 24px; background: radial-gradient(circle at 100% 0,rgba(34,211,238,.1),transparent 34%),var(--graphite); box-shadow: var(--shadow); transform: translateY(10px) scale(.98); transition: .2s ease; }
.modal.open .modal-card { transform: none; }
.modal-close { position: absolute; top: 15px; right: 15px; z-index: 2; }
.modal-visual { display: grid; width: 66px; height: 66px; margin-bottom: 18px; place-items: center; border-radius: 20px; background: linear-gradient(135deg,var(--violet),var(--cyan)); font-size: 27px; }
.modal-card h2 { padding-right: 42px; font-size: 25px; }
.modal-card p { color: var(--muted); font-size: 11px; }
.modal-summary { margin: 20px 0; padding: 14px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.025); }
.modal-summary-row { display: flex; align-items: center; justify-content: space-between; margin: 7px 0; color: var(--muted); font-size: 10px; }
.modal-summary-row strong { color: var(--snow); }
.toast-region { position: fixed; z-index: 120; right: 22px; bottom: 22px; display: grid; width: min(340px,calc(100vw - 44px)); gap: 9px; }
.toast { display: flex; align-items: center; gap: 11px; padding: 13px 15px; border: 1px solid rgba(34,211,238,.2); border-radius: 14px; background: rgba(23,23,39,.96); box-shadow: var(--shadow); animation: toastIn .25s ease both; }
.toast-icon { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 9px; background: rgba(55,211,154,.12); color: var(--success); }
.toast strong { display: block; font-size: 10px; }
.toast small { color: var(--muted); font-size: 8px; }
@keyframes toastIn { from { opacity:0; transform:translateY(8px); } }

@media (max-width: 1180px) {
  :root { --sidebar: 218px; }
  .brand img { width: 176px; }
  .topbar { padding-inline: 20px; }
  .main-content { padding-inline: 20px; }
  .creator-grid { grid-template-columns: repeat(2,1fr); }
  .opportunity-grid { grid-template-columns: repeat(2,1fr); }
  .opportunity-card:first-child { grid-column: 1/-1; }
  .metric-grid { grid-template-columns: repeat(2,1fr); }
  .language-select { display: none; }
}

@media (max-width: 900px) {
  .sidebar { transform: translateX(-105%); width: 250px; transition: transform .28s ease; }
  .sidebar.open { z-index: 95; transform: none; }
  .main-shell { padding-left: 0; }
  .mobile-menu { display: grid; }
  .mobile-menu span { width: 17px; height: 1.5px; margin: 2px 0; background: currentColor; }
  .topbar { gap: 10px; }
  .search { width: auto; flex: 1; }
  .search kbd { display: none; }
  .role-switcher { min-width: 46px; padding: 0 7px; }
  .role-copy, .role-switcher > svg { display: none; }
  .hero-content { padding: 42px; }
  .live-grid, .content-grid { grid-template-columns: repeat(2,1fr); }
  .live-card:last-child { display: none; }
  .stats-strip { grid-template-columns: repeat(2,1fr); }
  .dashboard-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  .topbar { height: 68px; padding: 0 13px; }
  .topbar-actions .icon-btn { display: none; }
  .search { height: 40px; }
  .main-content { padding: 17px 13px 55px; }
  .hero { min-height: 540px; border-radius: 22px; }
  .hero-image { object-position: 62% center; }
  .hero::after { background: linear-gradient(0deg,rgba(7,7,12,.98) 5%,rgba(7,7,12,.82) 56%,rgba(7,7,12,.25)); }
  .hero-content { min-height: 540px; justify-content: flex-end; padding: 25px; }
  .hero-content h1 { font-size: 39px; }
  .hero-content p { font-size: 12px; }
  .hero-proof, .hero-float { display: none; }
  .stats-strip, .metric-grid { grid-template-columns: repeat(2,1fr); }
  .stat-card { padding: 14px; }
  .stat-card strong { font-size: 18px; }
  .section { margin-top: 30px; }
  .section-head { align-items: flex-start; }
  .live-grid, .creator-grid, .content-grid, .opportunity-grid, .pricing-grid, .kanban { grid-template-columns: 1fr; }
  .live-card:last-child { display: block; }
  .opportunity-card:first-child { grid-column: auto; }
  .creator-grid { display: flex; margin-right: -13px; overflow-x: auto; padding-right: 13px; scroll-snap-type: x mandatory; }
  .creator-card { min-width: 245px; scroll-snap-align: start; }
  .page-header { align-items: flex-start; flex-direction: column; }
  .page-header .button-row { width: 100%; }
  .page-header .btn { flex: 1; }
  .gift-grid { grid-template-columns: repeat(2,1fr); }
  .form-grid { grid-template-columns: 1fr; }
  .field.full { grid-column: auto; }
  .drawer { padding: 18px; }
  .modal-card { padding: 23px; }
}

/* Readability pass approved for the demo */
.section-head p,
.page-header p {
  font-size: 14px;
  line-height: 1.6;
}

.creator-card p,
.opportunity-card p,
.content-card-body p {
  font-size: 12px;
  line-height: 1.55;
}

.creator-card p {
  min-height: 38px;
}

.sidebar-card p,
.creator-line small,
.card-meta,
.creator-stats,
.metric-head,
.metric-card small,
.panel-head span,
.chart-labels,
.activity-item small,
.activity-value,
.gift-card small,
.field label,
.toggle-copy small,
.kanban-card p,
.kanban-meta,
.message-item p,
.message-time,
.modal-summary-row {
  font-size: 11px;
}

.activity-item strong,
.data-table td,
.feature-list,
.input,
.textarea,
.select,
.modal-card p {
  font-size: 12px;
}

.data-table th,
.badge,
.live-badge,
.viewer-badge,
.popular-label {
  font-size: 10px;
}

@media (max-width: 620px) {
  .hero-content p {
    font-size: 14px;
    line-height: 1.55;
  }
}

/* Large-desktop readability pass */
@media (min-width: 901px) {
  .nav-item {
    font-size: 15px;
  }

  .nav-section-label,
  .eyebrow {
    font-size: 11px;
  }

  .sidebar-card strong {
    font-size: 16px;
  }

  .sidebar-card p {
    font-size: 13px;
    line-height: 1.5;
  }

  .search input {
    font-size: 13px;
  }

  .btn,
  .btn-small {
    font-size: 13px;
  }

  .section-head p,
  .page-header p {
    font-size: 16px;
    line-height: 1.6;
  }

  .creator-card p,
  .opportunity-card p {
    font-size: 14px;
    line-height: 1.55;
  }

  .content-card-body p,
  .creator-line small,
  .card-meta,
  .creator-stats,
  .metric-head,
  .metric-card small,
  .panel-head span,
  .chart-labels,
  .activity-item small,
  .activity-value,
  .gift-card small,
  .field label,
  .toggle-copy small,
  .kanban-card p,
  .kanban-meta,
  .message-item p,
  .message-time,
  .modal-summary-row {
    font-size: 13px;
  }

  .card-title,
  .content-card-body h3,
  .creator-line strong,
  .creator-name-row strong {
    font-size: 14px;
  }

  .activity-item strong,
  .data-table td,
  .feature-list,
  .input,
  .textarea,
  .select {
    font-size: 13px;
  }

  .data-table th,
  .badge,
  .live-badge,
  .viewer-badge,
  .popular-label {
    font-size: 11px;
  }

  .filter-pill {
    font-size: 12px;
  }

  .modal-card p {
    font-size: 14px;
  }
}

/* Approved typography lock — mandatory for every newer workflow
   Base: page descriptions 14px, card copy 12px, metadata 11px, micro labels 10px.
   Large desktop: 16px / 14px / 13px / 11px. */
.wallet-page,
.checkout-page,
.receipt-page,
.payout-page,
.billing-page,
.creator-content-page,
.content-builder-page,
.content-detail-page,
.creator-profile-page,
.live-room-page,
.studio-live-page,
.marketplace-page,
.campaign-builder-page,
.offer-builder-page,
.offers-page,
.offer-detail-page,
.contracts-page,
.contract-detail-page {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}

.wallet-page p,
.checkout-page p,
.receipt-page p,
.payout-page p,
.billing-page p,
.creator-content-page p,
.content-builder-page p,
.content-detail-page p,
.creator-profile-page p,
.live-room-page p,
.studio-live-page p,
.marketplace-page p,
.campaign-builder-page p,
.offer-builder-page p,
.offers-page p,
.offer-detail-page p,
.contracts-page p,
.contract-detail-page p {
  font-size: var(--approved-card-copy);
  line-height: 1.55;
}

.wallet-page small,
.wallet-page em,
.checkout-page small,
.checkout-page em,
.receipt-page small,
.receipt-page em,
.payout-page small,
.payout-page em,
.billing-page small,
.billing-page em,
.creator-content-page small,
.creator-content-page em,
.content-builder-page small,
.content-builder-page em,
.content-detail-page small,
.content-detail-page em,
.creator-profile-page small,
.creator-profile-page em,
.live-room-page small,
.live-room-page em,
.studio-live-page small,
.studio-live-page em,
.marketplace-page small,
.marketplace-page em,
.campaign-builder-page small,
.campaign-builder-page em,
.offer-builder-page small,
.offer-builder-page em,
.offers-page small,
.offers-page em,
.offer-detail-page small,
.offer-detail-page em,
.contracts-page small,
.contracts-page em,
.contract-detail-page small,
.contract-detail-page em {
  font-size: var(--approved-meta-copy);
}

.wallet-page .page-header p,
.wallet-page .section-head p,
.checkout-page .page-header p,
.checkout-page .section-head p,
.receipt-page .page-header p,
.receipt-page .section-head p,
.payout-page .page-header p,
.payout-page .section-head p,
.billing-page .page-header p,
.billing-page .section-head p,
.creator-content-page .page-header p,
.creator-content-page .section-head p,
.content-builder-page .content-builder-intro,
.content-detail-page .content-detail-head p,
.creator-profile-page .page-header p,
.live-room-page .page-header p,
.studio-live-page .page-header p,
.marketplace-page .page-header p,
.campaign-builder-page .campaign-builder-intro,
.offer-builder-page .page-header p,
.offers-page .page-header p,
.offer-detail-page .offer-detail-head p,
.contracts-page .page-header p,
.contract-detail-page .contract-document-head p {
  font-size: var(--approved-page-copy);
  line-height: 1.6;
}

.wallet-page .badge,
.checkout-page .badge,
.receipt-page .badge,
.payout-page .badge,
.billing-page .badge,
.creator-content-page .badge,
.content-builder-page .badge,
.content-detail-page .badge,
.creator-profile-page .badge,
.live-room-page .badge,
.studio-live-page .badge,
.marketplace-page .badge,
.campaign-builder-page .badge,
.offer-builder-page .badge,
.offers-page .badge,
.offer-detail-page .badge,
.contracts-page .badge,
.contract-detail-page .badge {
  font-size: var(--approved-micro-copy);
}

.wallet-page .btn,
.checkout-page .btn,
.receipt-page .btn,
.payout-page .btn,
.billing-page .btn,
.creator-content-page .btn,
.content-builder-page .btn,
.content-detail-page .btn,
.creator-profile-page .btn,
.live-room-page .btn,
.studio-live-page .btn,
.marketplace-page .btn,
.campaign-builder-page .btn,
.offer-builder-page .btn,
.offers-page .btn,
.offer-detail-page .btn,
.contracts-page .btn,
.contract-detail-page .btn {
  font-size: var(--approved-card-copy);
}

@media (min-width: 901px) {
  .wallet-page,
  .checkout-page,
  .receipt-page,
  .payout-page,
  .billing-page,
  .creator-content-page,
  .content-builder-page,
  .content-detail-page,
  .creator-profile-page,
  .live-room-page,
  .studio-live-page,
  .marketplace-page,
  .campaign-builder-page,
  .offer-builder-page,
  .offers-page,
  .offer-detail-page,
  .contracts-page,
  .contract-detail-page {
    --approved-page-copy: 16px;
    --approved-card-copy: 14px;
    --approved-meta-copy: 13px;
    --approved-micro-copy: 11px;
  }

  .wallet-page .btn,
  .checkout-page .btn,
  .receipt-page .btn,
  .payout-page .btn,
  .billing-page .btn,
  .creator-content-page .btn,
  .content-builder-page .btn,
  .content-detail-page .btn,
  .creator-profile-page .btn,
  .live-room-page .btn,
  .studio-live-page .btn,
  .marketplace-page .btn,
  .campaign-builder-page .btn,
  .offer-builder-page .btn,
  .offers-page .btn,
  .offer-detail-page .btn,
  .contracts-page .btn,
  .contract-detail-page .btn {
    font-size: 13px;
  }
}

/* Financial flows */
.wallet-hero {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 210px;
  margin-bottom: 18px;
  padding: 28px;
  overflow: hidden;
  border: 1px solid rgba(139,92,246,.28);
  border-radius: var(--radius-lg);
  background: radial-gradient(circle at 82% 20%,rgba(34,211,238,.13),transparent 34%),linear-gradient(135deg,rgba(139,92,246,.22),rgba(23,23,39,.9) 58%,rgba(34,211,238,.08));
  box-shadow: 0 22px 60px rgba(0,0,0,.2);
}

.wallet-hero > div { position: relative; z-index: 1; }
.wallet-hero > div > strong { display: block; margin: 12px 0 4px; font-size: clamp(32px,4vw,52px); line-height: 1; letter-spacing: -.045em; }
.wallet-hero p { margin: 8px 0 18px; color: var(--muted); font-size: 12px; }
.wallet-hero-mark { color: rgba(255,255,255,.045); font-size: clamp(88px,13vw,170px); font-weight: 900; letter-spacing: -.1em; transform: rotate(-7deg); }
.wallet-metrics { margin-bottom: 22px; }
.wallet-layout,.billing-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: start; gap: 16px; }
.wallet-side { display: grid; gap: 14px; }
.payment-method-card > .btn,.wallet-side .panel > .btn { width: 100%; margin-top: 14px; }
.payment-method-card > p { margin: 10px 0 0; color: var(--muted); font-size: 10px; text-align: center; }
.demo-card { display: grid; min-height: 132px; padding: 18px; border: 1px solid rgba(255,255,255,.1); border-radius: 15px; background: linear-gradient(145deg,#2c2353,#171727 65%,#123542); box-shadow: inset 0 1px rgba(255,255,255,.08); }
.demo-card span { color: var(--cyan); font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.demo-card strong { align-self: end; font-size: 18px; letter-spacing: .1em; }
.demo-card small { color: var(--muted); font-size: 9px; }
.wallet-control-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--soft-border); font-size: 10px; }
.wallet-control-row span { color: var(--muted); }
.wallet-control-row:last-of-type { border-bottom: 0; }
.transaction-ref { color: var(--muted-2); font-size: 9px; }
.money-in { color: var(--success); }
.money-out { color: #fda4af; }

.checkout-layout,.payout-layout { display: grid; grid-template-columns: minmax(0,1fr) 360px; align-items: start; gap: 16px; }
.checkout-layout > main,.payout-layout > main { display: grid; gap: 14px; }
.checkout-panel { padding: 20px; }
.checkout-methods { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.checkout-method { display: grid; grid-template-columns: 40px minmax(0,1fr) 20px; align-items: center; gap: 11px; min-height: 78px; padding: 13px; border: 1px solid var(--border); border-radius: 13px; color: var(--text); background: rgba(255,255,255,.018); text-align: left; cursor: pointer; transition: .2s ease; }
.checkout-method:hover { border-color: rgba(139,92,246,.45); transform: translateY(-1px); }
.checkout-method.selected { border-color: var(--violet); background: rgba(139,92,246,.1); box-shadow: 0 0 0 1px rgba(139,92,246,.12); }
.checkout-method.disabled { opacity: .45; cursor: not-allowed; transform: none; }
.checkout-method > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 10px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 11px; font-weight: 900; }
.checkout-method strong,.checkout-method small { display: block; }
.checkout-method strong { font-size: 11px; }
.checkout-method small { margin-top: 3px; color: var(--muted); font-size: 9px; }
.checkout-method i { color: var(--success); font-style: normal; }
.checkout-billing-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.checkout-billing-grid > span { padding: 12px; border-radius: 11px; background: rgba(255,255,255,.022); }
.checkout-billing-grid small,.checkout-billing-grid strong { display: block; }
.checkout-billing-grid small { margin-bottom: 5px; color: var(--muted); font-size: 8px; text-transform: uppercase; }
.checkout-billing-grid strong { font-size: 11px; }
.finance-disclosure { display: flex; align-items: flex-start; gap: 11px; padding: 14px; border: 1px solid rgba(34,211,238,.16); border-radius: 13px; background: rgba(34,211,238,.05); }
.finance-disclosure > span { color: var(--cyan); font-size: 18px; }
.finance-disclosure strong { display: block; font-size: 11px; }
.finance-disclosure p { margin: 4px 0 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.finance-disclosure .btn { margin-left: auto; }
.checkout-summary { position: sticky; top: 94px; }
.checkout-summary .panel { padding: 22px; }
.checkout-summary h2 { margin: 12px 0 4px; font-size: 22px; }
.checkout-summary > section > p { margin: 0 0 20px; color: var(--muted); font-size: 11px; }
.checkout-line,.checkout-balance { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--soft-border); color: var(--muted); font-size: 10px; }
.checkout-line strong,.checkout-balance strong { color: var(--text); text-align: right; }
.checkout-total { display: flex; align-items: center; justify-content: space-between; margin-top: 5px; padding: 16px 0; font-size: 12px; }
.checkout-total strong { font-size: 22px; }
.checkout-balance { margin-bottom: 14px; border: 0; border-radius: 9px; padding: 10px; background: rgba(255,255,255,.025); }
.checkout-summary .btn,.payout-destination .btn { width: 100%; }
.checkout-summary section > small,.payout-destination > small { display: block; margin-top: 10px; color: var(--muted); font-size: 9px; text-align: center; }
.not-configured { color: var(--cyan) !important; font-size: 9px; }

.payment-success { display: flex; align-items: center; flex-direction: column; max-width: 650px; margin: 9vh auto 0; padding: 42px; border: 1px solid rgba(34,197,94,.22); border-radius: 24px; background: radial-gradient(circle at 50% 0,rgba(34,197,94,.13),transparent 40%),rgba(23,23,39,.72); text-align: center; }
.success-ring { display: grid; width: 68px; height: 68px; margin-bottom: 20px; place-items: center; border: 1px solid rgba(34,197,94,.45); border-radius: 50%; color: var(--success); background: rgba(34,197,94,.1); font-size: 28px; box-shadow: 0 0 35px rgba(34,197,94,.12); }
.payment-success h1 { max-width: 520px; margin: 10px 0; font-size: clamp(28px,4vw,44px); line-height: 1.08; }
.payment-success > p { max-width: 480px; color: var(--muted); font-size: 12px; }
.payment-success-value { display: grid; min-width: 300px; margin: 18px 0; padding: 16px 24px; border-radius: 14px; background: rgba(255,255,255,.025); }
.payment-success-value small,.payment-success-value span { color: var(--muted); font-size: 9px; }
.payment-success-value strong { margin: 5px 0; font-size: 23px; }

.receipt-shell { display: grid; grid-template-columns: minmax(0,720px) 300px; justify-content: center; align-items: start; gap: 16px; }
.receipt-document { padding: 32px; border: 1px solid var(--border); border-radius: 20px; background: linear-gradient(150deg,rgba(30,30,49,.96),rgba(16,16,26,.98)); box-shadow: 0 25px 70px rgba(0,0,0,.22); }
.receipt-brand { display: flex; align-items: center; gap: 10px; padding-bottom: 22px; border-bottom: 1px solid var(--soft-border); }
.receipt-logo { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: white; background: linear-gradient(135deg,var(--violet),var(--cyan)); font-size: 12px; font-weight: 900; }
.receipt-brand strong,.receipt-brand small { display: block; }
.receipt-brand strong { font-size: 13px; }
.receipt-brand small { color: var(--muted); font-size: 9px; }
.receipt-brand .badge { margin-left: auto; }
.receipt-title { padding: 28px 0 18px; }
.receipt-title h1 { margin: 8px 0 4px; font-size: 30px; }
.receipt-title p { margin: 0; color: var(--muted); font-size: 10px; }
.receipt-parties { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-bottom: 24px; }
.receipt-parties > span { padding: 14px; border-radius: 12px; background: rgba(255,255,255,.022); }
.receipt-parties small,.receipt-parties strong,.receipt-parties p { display: block; }
.receipt-parties small { margin-bottom: 6px; color: var(--muted); font-size: 8px; }
.receipt-parties strong { font-size: 11px; }
.receipt-parties p { margin: 3px 0 0; color: var(--muted); font-size: 9px; }
.receipt-items { border: 1px solid var(--soft-border); border-radius: 13px; overflow: hidden; }
.receipt-items > div { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px 15px; border-bottom: 1px solid var(--soft-border); font-size: 10px; }
.receipt-items > div:first-child { color: var(--muted); background: rgba(255,255,255,.02); font-size: 8px; text-transform: uppercase; }
.receipt-items > div:last-child { border-bottom: 0; }
.receipt-items .receipt-total { padding: 18px 15px; }
.receipt-items .receipt-total strong { font-size: 18px; }
.receipt-note { margin-top: 18px; padding: 13px; border-left: 2px solid var(--cyan); background: rgba(34,211,238,.035); }
.receipt-note strong { font-size: 10px; }
.receipt-note p { margin: 3px 0 0; color: var(--muted); font-size: 9px; }
.receipt-actions { display: grid; gap: 13px; }
.receipt-actions .panel { display: grid; gap: 10px; }
.receipt-actions h3 { margin: 0; }
.receipt-actions p { margin: 0 0 5px; color: var(--muted); font-size: 10px; }

.payout-amount-card > strong { display: block; margin: 12px 0 7px; font-size: clamp(36px,5vw,58px); letter-spacing: -.045em; }
.payout-amount-card > p { max-width: 650px; color: var(--muted); font-size: 11px; line-height: 1.6; }
.payout-amount-card .field { max-width: 420px; margin-top: 22px; }
.quick-amounts { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 10px; }
.quick-amounts button { padding: 8px 11px; border: 1px solid var(--border); border-radius: 9px; color: var(--muted-2); background: transparent; font-size: 9px; cursor: pointer; }
.quick-amounts button:hover { border-color: var(--violet); color: var(--text); }
.payout-destination { position: sticky; top: 94px; }
.bank-destination { display: flex; align-items: center; gap: 11px; margin: 16px 0; padding: 13px; border-radius: 12px; background: rgba(255,255,255,.025); }
.bank-destination > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 11px; font-weight: 900; }
.bank-destination strong,.bank-destination small { display: block; }
.bank-destination strong { font-size: 11px; }
.bank-destination small { margin-top: 3px; color: var(--muted); font-size: 9px; }

.invoice-list { display: grid; gap: 9px; }
.invoice-row { display: grid; grid-template-columns: 40px minmax(180px,1fr) 120px 105px auto; align-items: center; gap: 12px; padding: 13px; border: 1px solid var(--border); border-radius: 13px; background: rgba(23,23,39,.64); }
.invoice-icon { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 10px; color: var(--cyan); background: rgba(34,211,238,.07); }
.invoice-main strong,.invoice-main small,.invoice-row > div > small,.invoice-row > div > strong { display: block; }
.invoice-main strong,.invoice-row > div > strong { font-size: 10px; }
.invoice-main small,.invoice-row > div > small { margin-top: 3px; color: var(--muted); font-size: 8px; }

@media (max-width: 1100px) {
  .wallet-layout,.billing-layout,.checkout-layout,.payout-layout,.receipt-shell { grid-template-columns: 1fr; }
  .checkout-summary,.payout-destination { position: static; }
  .wallet-side { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 700px) {
  .wallet-hero { min-height: 190px; padding: 20px; }
  .wallet-hero-mark { position: absolute; right: 4px; bottom: -20px; }
  .wallet-layout,.billing-layout,.wallet-side { grid-template-columns: 1fr; }
  .checkout-methods,.checkout-billing-grid,.receipt-parties { grid-template-columns: 1fr; }
  .checkout-panel,.checkout-summary .panel,.receipt-document,.payment-success { padding: 18px; }
  .payment-success { margin-top: 4vh; }
  .payment-success-value { min-width: 0; width: 100%; }
  .invoice-row { grid-template-columns: 40px minmax(0,1fr) auto; }
  .invoice-row > div:nth-of-type(2) { grid-column: 2; }
  .invoice-row > .badge { grid-column: 2; width: max-content; }
  .invoice-row > .btn { grid-column: 3; grid-row: 1/4; }
  .finance-disclosure { flex-wrap: wrap; }
  .finance-disclosure .btn { width: 100%; margin-left: 0; }
}

/* Creator content publishing */
.content-metric-strip {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin-bottom: 18px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  background: rgba(23,23,39,.68);
}

.content-metric-strip > span {
  display: grid;
  gap: 5px;
  min-height: 108px;
  padding: 18px;
  border-right: 1px solid var(--soft-border);
}

.content-metric-strip > span:last-child { border-right: 0; }
.content-metric-strip small { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.content-metric-strip strong { font-size: 24px; }
.content-metric-strip em { color: var(--muted-2); font-size: 9px; font-style: normal; }
.content-library-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.content-library-toolbar .filter-row { margin: 0; }
.content-view-note { color: var(--muted); font-size: 10px; white-space: nowrap; }
.creator-content-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.creator-content-grid > .empty-state { grid-column: 1/-1; }
.creator-content-card { overflow: hidden; border: 1px solid var(--border); border-radius: 16px; background: rgba(23,23,39,.72); transition: .2s ease; }
.creator-content-card:hover { border-color: rgba(139,92,246,.38); transform: translateY(-2px); }
.creator-content-media { position: relative; display: block; width: 100%; aspect-ratio: 16/9; overflow: hidden; border: 0; color: white; background: var(--graphite-2); cursor: pointer; }
.creator-content-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.creator-content-card:hover .creator-content-media img { transform: scale(1.025); }
.creator-content-media > .badge { position: absolute; top: 11px; left: 11px; z-index: 2; }
.creator-content-media > i { position: absolute; z-index: 2; top: 50%; left: 50%; display: grid; width: 48px; height: 48px; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: 50%; background: rgba(8,8,14,.64); font-size: 14px; font-style: normal; transform: translate(-50%,-50%); backdrop-filter: blur(8px); }
.creator-content-media > small { position: absolute; z-index: 2; right: 11px; bottom: 10px; padding: 4px 7px; border-radius: 6px; background: rgba(8,8,14,.78); font-size: 8px; }
.creator-content-media > em { position: absolute; z-index: 2; left: 11px; bottom: 10px; padding: 5px 8px; border-radius: 7px; color: #ddd6fe; background: rgba(76,29,149,.78); font-size: 8px; font-style: normal; font-weight: 800; }
.creator-content-body { padding: 15px; }
.creator-content-meta { display: flex; justify-content: space-between; gap: 10px; color: var(--muted); font-size: 8px; }
.creator-content-body h3 { min-height: 38px; margin: 9px 0 5px; font-size: 14px; line-height: 1.35; }
.creator-content-body > p { min-height: 38px; margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.creator-content-performance { display: grid; grid-template-columns: repeat(3,1fr); gap: 6px; margin: 13px 0; padding: 10px 0; border-block: 1px solid var(--soft-border); }
.creator-content-performance small,.creator-content-performance strong { display: block; }
.creator-content-performance small { color: var(--muted); font-size: 8px; }
.creator-content-performance strong { margin-top: 3px; font-size: 11px; }
.creator-content-actions { display: flex; gap: 7px; }
.creator-content-actions .btn { flex: 1; }

.content-builder-shell { display: grid; grid-template-columns: 270px minmax(0,1fr); align-items: start; gap: 16px; }
.content-builder-side { position: sticky; top: 94px; min-height: 580px; padding: 24px; border: 1px solid var(--border); border-radius: 18px; background: linear-gradient(155deg,rgba(139,92,246,.13),rgba(23,23,39,.78) 48%,rgba(34,211,238,.04)); }
.content-builder-mark { display: grid; width: 48px; height: 48px; margin-bottom: 20px; place-items: center; border-radius: 14px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 18px; }
.content-builder-side h2 { margin: 9px 0 6px; font-size: 22px; }
.content-builder-side > p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.55; }
.content-builder-steps { display: grid; gap: 0; margin-top: 28px; }
.content-builder-steps > span { position: relative; display: flex; align-items: center; gap: 11px; min-height: 70px; color: var(--muted); }
.content-builder-steps > span:not(:last-child)::after { position: absolute; top: 46px; bottom: -10px; left: 15px; width: 1px; background: var(--border); content: ""; }
.content-builder-steps i { position: relative; z-index: 1; display: grid; width: 31px; height: 31px; flex: 0 0 31px; place-items: center; border: 1px solid var(--border); border-radius: 50%; background: var(--graphite-2); font-size: 9px; font-style: normal; }
.content-builder-steps strong,.content-builder-steps small { display: block; }
.content-builder-steps strong { color: var(--muted-2); font-size: 10px; }
.content-builder-steps small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.content-builder-steps .active i { border-color: var(--violet); color: white; background: var(--violet); box-shadow: 0 0 20px rgba(139,92,246,.22); }
.content-builder-steps .active strong { color: var(--text); }
.content-builder-steps .done i { border-color: rgba(34,197,94,.35); color: var(--success); background: rgba(34,197,94,.08); }
.content-builder-steps .done:not(:last-child)::after { background: rgba(34,197,94,.28); }
.content-side-note { position: absolute; right: 18px; bottom: 18px; left: 18px; padding: 13px; border: 1px solid rgba(34,211,238,.13); border-radius: 11px; background: rgba(34,211,238,.04); }
.content-side-note strong { display: block; font-size: 10px; }
.content-side-note p { margin: 4px 0 0; color: var(--muted); font-size: 8px; line-height: 1.5; }
.content-builder-main { min-width: 0; }
.content-builder-card { padding: 26px; border: 1px solid var(--border); border-radius: 18px; background: rgba(23,23,39,.7); }
.content-builder-card > h1 { margin: 9px 0 7px; font-size: clamp(27px,3.3vw,42px); letter-spacing: -.035em; }
.content-builder-intro { max-width: 680px; margin: 0 0 22px; color: var(--muted); font-size: 12px; line-height: 1.65; }
.content-type-grid,.content-choice-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-bottom: 16px; }
.content-type-card,.content-choice-card { display: grid; grid-template-columns: 44px minmax(0,1fr) 22px; align-items: center; gap: 11px; min-height: 82px; padding: 14px; border: 1px solid var(--border); border-radius: 13px; color: var(--text); background: rgba(255,255,255,.017); text-align: left; cursor: pointer; transition: .2s ease; }
.content-type-card:hover,.content-choice-card:hover { border-color: rgba(139,92,246,.42); }
.content-type-card.selected,.content-choice-card.selected { border-color: var(--violet); background: rgba(139,92,246,.09); box-shadow: 0 0 0 1px rgba(139,92,246,.1); }
.content-type-card > span,.content-choice-card > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.07); font-size: 15px; }
.content-type-card strong,.content-type-card small,.content-choice-card strong,.content-choice-card p,.content-choice-card small { display: block; }
.content-type-card strong,.content-choice-card strong { font-size: 11px; }
.content-type-card small,.content-choice-card small { margin-top: 4px; color: var(--muted); font-size: 8px; }
.content-type-card i,.content-choice-card i { color: var(--success); font-style: normal; }
.content-choice-card p { margin: 4px 0 0; color: var(--muted-2); font-size: 9px; }
.content-upload-zone { display: grid; width: 100%; min-height: 200px; margin-bottom: 20px; place-items: center; padding: 25px; border: 1px dashed rgba(139,92,246,.45); border-radius: 15px; color: var(--text); background: radial-gradient(circle at 50% 10%,rgba(139,92,246,.09),transparent 52%),rgba(255,255,255,.012); cursor: pointer; }
.content-upload-zone:hover { border-color: var(--cyan); background-color: rgba(34,211,238,.025); }
.content-upload-zone > span { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 50%; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 19px; }
.content-upload-zone strong { margin: 10px 0 4px; font-size: 13px; }
.content-upload-zone small { color: var(--muted); font-size: 9px; }
.content-upload-zone em { margin-top: 13px; padding: 8px 12px; border-radius: 8px; color: white; background: var(--violet); font-size: 9px; font-style: normal; font-weight: 800; }
.content-upload-ready { position: relative; display: flex; align-items: flex-end; min-height: 220px; margin-bottom: 20px; overflow: hidden; padding: 18px; border: 1px solid var(--border); border-radius: 15px; }
.content-upload-ready > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.content-upload-ready > div { position: relative; z-index: 2; min-width: 0; }
.content-upload-ready strong,.content-upload-ready small { display: block; }
.content-upload-ready strong { margin: 8px 0 3px; font-size: 13px; }
.content-upload-ready small { color: #c5c6d0; font-size: 9px; }
.content-upload-ready > .btn { position: relative; z-index: 2; margin-left: auto; }
.content-details-form .field > small { display: block; margin-top: 5px; color: var(--muted); font-size: 8px; }
.content-builder-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--soft-border); }
.content-builder-section { margin-top: 16px; padding: 18px; border: 1px solid var(--soft-border); border-radius: 14px; background: rgba(255,255,255,.012); }
.content-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 13px; }
.content-section-head h3 { margin: 0; font-size: 13px; }
.content-section-head p { margin: 4px 0 0; color: var(--muted); font-size: 9px; }
.content-builder-section .content-choice-grid { margin-bottom: 0; }
.content-schedule-field { max-width: 420px; margin-top: 13px; }
.content-setting-list { display: grid; gap: 7px; }
.content-setting-list > button { display: flex; align-items: center; justify-content: space-between; padding: 11px 13px; border: 0; border-radius: 10px; color: var(--text); background: rgba(255,255,255,.022); text-align: left; cursor: pointer; }
.content-setting-list strong,.content-setting-list small { display: block; }
.content-setting-list strong { font-size: 10px; }
.content-setting-list small { margin-top: 3px; color: var(--muted); font-size: 8px; }
.content-setting-list .toggle { display: block; flex: 0 0 auto; }

.content-review-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr); gap: 14px; }
.content-review-preview,.content-safety-panel { overflow: hidden; border: 1px solid var(--soft-border); border-radius: 15px; background: rgba(255,255,255,.015); }
.content-review-media { position: relative; aspect-ratio: 16/9; overflow: hidden; }
.content-review-media > img { width: 100%; height: 100%; object-fit: cover; }
.content-review-media > button { position: absolute; z-index: 2; top: 50%; left: 50%; display: grid; width: 58px; height: 58px; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 50%; color: white; background: rgba(8,8,14,.62); font-size: 18px; transform: translate(-50%,-50%); }
.content-review-media > .badge { position: absolute; z-index: 2; top: 13px; left: 13px; }
.content-review-preview > div:last-child { padding: 17px; }
.content-review-preview h2 { margin: 8px 0 6px; font-size: 20px; }
.content-review-preview p { margin: 0; color: var(--muted); font-size: 10px; line-height: 1.6; }
.content-review-meta { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 13px; }
.content-review-meta span { padding: 6px 8px; border-radius: 7px; color: var(--muted-2); background: rgba(255,255,255,.03); font-size: 8px; }
.content-safety-panel { padding: 18px; }
.content-safety-head { display: flex; align-items: center; gap: 10px; padding-bottom: 15px; border-bottom: 1px solid var(--soft-border); }
.content-safety-head > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 50%; color: var(--success); background: rgba(34,197,94,.09); }
.content-safety-head strong,.content-safety-head p { display: block; }
.content-safety-head strong { font-size: 12px; }
.content-safety-head p { margin: 3px 0 0; color: var(--muted); font-size: 8px; }
.content-check-list { display: grid; gap: 11px; margin: 16px 0; }
.content-check-list > span { display: flex; align-items: flex-start; gap: 9px; }
.content-check-list i { display: grid; width: 23px; height: 23px; flex: 0 0 23px; place-items: center; border-radius: 50%; font-size: 8px; font-style: normal; }
.content-check-list .passed i { color: var(--success); background: rgba(34,197,94,.09); }
.content-check-list .manual i { color: var(--warning); background: rgba(245,158,11,.09); }
.content-check-list strong,.content-check-list small { display: block; }
.content-check-list strong { font-size: 9px; }
.content-check-list small { margin-top: 3px; color: var(--muted); font-size: 8px; line-height: 1.4; }
.content-rights-confirm { display: flex; align-items: flex-start; gap: 9px; padding: 12px; border-radius: 10px; background: rgba(255,255,255,.022); color: var(--muted-2); font-size: 8px; line-height: 1.5; }
.content-rights-confirm input { margin-top: 2px; accent-color: var(--violet); }
.content-policy-note { display: flex; align-items: flex-start; gap: 8px; margin-top: 12px; color: var(--cyan); }
.content-policy-note p { margin: 0; color: var(--muted); font-size: 8px; line-height: 1.5; }

.content-detail-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.content-detail-head h1 { margin: 7px 0 5px; font-size: clamp(28px,4vw,46px); letter-spacing: -.04em; }
.content-detail-head p { max-width: 760px; margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.content-detail-head > div:last-child { display: flex; align-items: center; gap: 8px; }
.content-detail-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; align-items: start; gap: 15px; }
.content-detail-layout > main { min-width: 0; }
.content-detail-stage { position: relative; aspect-ratio: 16/9; overflow: hidden; border: 1px solid var(--border); border-radius: 18px; background: var(--graphite-2); }
.content-detail-stage > img { width: 100%; height: 100%; object-fit: cover; }
.content-detail-stage > button { position: absolute; z-index: 2; top: 50%; left: 50%; display: grid; width: 68px; height: 68px; place-items: center; border: 1px solid rgba(255,255,255,.25); border-radius: 50%; color: white; background: rgba(8,8,14,.62); font-size: 21px; transform: translate(-50%,-50%); backdrop-filter: blur(10px); }
.content-detail-stage > div { position: absolute; z-index: 2; right: 14px; bottom: 14px; left: 14px; display: flex; justify-content: space-between; color: white; font-size: 9px; }
.content-detail-stage > div span { padding: 6px 9px; border-radius: 7px; background: rgba(8,8,14,.66); }
.content-engagement-bar { display: flex; align-items: center; gap: 8px; margin: 10px 0 14px; padding: 10px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(23,23,39,.58); }
.content-engagement-bar button { padding: 7px 10px; border: 0; border-radius: 8px; color: var(--muted-2); background: rgba(255,255,255,.035); font-size: 9px; cursor: pointer; }
.content-engagement-bar button.active { color: #fda4af; background: rgba(244,63,94,.08); }
.content-engagement-bar > span { margin-left: auto; color: var(--muted); font-size: 9px; }
.content-comment-compose { display: grid; grid-template-columns: 36px minmax(0,1fr) auto; align-items: center; gap: 8px; margin: 14px 0; }
.content-comment-compose > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; color: white; background: linear-gradient(135deg,var(--violet),var(--cyan)); font-size: 10px; font-weight: 900; }
.content-comment-list { display: grid; gap: 8px; }
.content-comment-list > article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; gap: 9px; padding: 11px; border-radius: 11px; background: rgba(255,255,255,.018); }
.content-comment-list > article > span { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 9px; font-weight: 900; }
.content-comment-list strong { font-size: 9px; }
.content-comment-list small { margin-left: 6px; color: var(--muted); font-size: 8px; }
.content-comment-list p { margin: 5px 0; color: var(--muted-2); font-size: 10px; line-height: 1.5; }
.content-comment-list button { border: 0; color: var(--muted); background: transparent; font-size: 8px; cursor: pointer; }
.content-detail-side { display: grid; gap: 13px; }
.content-detail-metrics { display: grid; grid-template-columns: repeat(2,1fr); gap: 8px; }
.content-detail-metrics > span { padding: 11px; border-radius: 10px; background: rgba(255,255,255,.022); }
.content-detail-metrics small,.content-detail-metrics strong,.content-detail-metrics em { display: block; }
.content-detail-metrics small { color: var(--muted); font-size: 8px; }
.content-detail-metrics strong { margin: 4px 0; font-size: 16px; }
.content-detail-metrics em { color: var(--success); font-size: 8px; font-style: normal; }
.content-detail-side .panel > .btn { width: 100%; margin-top: 13px; }
.content-danger-zone { padding: 14px; border: 1px solid rgba(244,63,94,.13); border-radius: 12px; background: rgba(244,63,94,.035); }
.content-danger-zone strong { font-size: 10px; }
.content-danger-zone p { margin: 4px 0 7px; color: var(--muted); font-size: 8px; }
.content-danger-zone .text-link { color: #fda4af; }

@media (max-width: 1180px) {
  .creator-content-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .content-builder-shell { grid-template-columns: 225px minmax(0,1fr); }
  .content-review-layout,.content-detail-layout { grid-template-columns: 1fr; }
  .content-detail-side { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .content-danger-zone { grid-column: 1/-1; }
}

@media (max-width: 820px) {
  .content-metric-strip { grid-template-columns: repeat(2,1fr); }
  .content-metric-strip > span:nth-child(2) { border-right: 0; }
  .content-metric-strip > span:nth-child(-n+2) { border-bottom: 1px solid var(--soft-border); }
  .content-library-toolbar { align-items: flex-start; flex-direction: column; }
  .content-library-toolbar .filter-row { width: 100%; flex-wrap: nowrap; overflow-x: auto; }
  .content-library-toolbar .filter-pill { white-space: nowrap; }
  .content-builder-shell { grid-template-columns: 1fr; }
  .content-builder-side { position: static; min-height: 0; }
  .content-builder-side > p,.content-side-note { display: none; }
  .content-builder-steps { grid-template-columns: repeat(3,1fr); margin-top: 16px; }
  .content-builder-steps > span { align-items: flex-start; min-height: 45px; }
  .content-builder-steps > span:not(:last-child)::after { top: 15px; right: -2px; bottom: auto; left: 32px; width: auto; height: 1px; }
  .content-builder-steps small { display: none; }
  .content-detail-head { flex-direction: column; }
}

@media (max-width: 620px) {
  .creator-content-grid,.content-type-grid,.content-choice-grid,.content-detail-side { grid-template-columns: 1fr; }
  .content-builder-card { padding: 18px; }
  .content-builder-actions { flex-direction: column-reverse; }
  .content-builder-actions .btn { width: 100%; }
  .content-upload-ready { align-items: flex-start; flex-direction: column; justify-content: flex-end; }
  .content-upload-ready > .btn { margin: 10px 0 0; }
  .content-engagement-bar { align-items: flex-start; flex-wrap: wrap; }
  .content-engagement-bar > span { width: 100%; margin-left: 0; }
  .content-comment-compose { grid-template-columns: 34px minmax(0,1fr); }
  .content-comment-compose .btn { grid-column: 2; }
  .content-detail-stage > button { width: 56px; height: 56px; }
}

/* Readability floor for the content workspace */
.creator-content-body > p,
.content-review-preview p,
.content-detail-head p,
.content-comment-list p,
.content-builder-side > p {
  font-size: 11px;
}

.content-type-card small,
.content-choice-card small,
.content-choice-card p,
.content-section-head p,
.content-setting-list small,
.content-check-list small,
.content-policy-note p,
.content-rights-confirm,
.content-upload-zone small,
.content-upload-ready small {
  font-size: 10px;
}

.creator-content-meta,
.creator-content-performance small,
.content-review-meta span,
.content-detail-metrics small,
.content-detail-metrics em,
.content-danger-zone p {
  font-size: 9px;
}

/* Authentication and onboarding */
.auth-entry {
  min-height: 40px;
  padding: 0 15px;
  border: 1px solid rgba(139,92,246,.34);
  border-radius: 12px;
  background: rgba(139,92,246,.1);
  color: #d9cdfd;
  font-size: 12px;
  font-weight: 800;
  transition: .2s ease;
}

.auth-entry:hover {
  border-color: rgba(139,92,246,.65);
  background: rgba(139,92,246,.18);
  color: var(--snow);
}

.auth-flow {
  position: fixed;
  z-index: 200;
  inset: 0;
  overflow: auto;
  visibility: hidden;
  background: var(--midnight);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, visibility .25s ease;
}

.auth-flow.open {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.auth-close {
  position: fixed;
  z-index: 205;
  top: 21px;
  right: 22px;
  display: grid;
  width: 43px;
  height: 43px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 13px;
  background: rgba(11,11,18,.64);
  color: var(--snow);
  font-size: 24px;
  backdrop-filter: blur(16px);
}

.auth-content,
.auth-shell {
  min-height: 100vh;
}

.auth-shell {
  display: grid;
  grid-template-columns: minmax(380px,.88fr) minmax(550px,1.12fr);
}

.auth-visual {
  position: sticky;
  top: 0;
  display: flex;
  height: 100vh;
  min-height: 720px;
  flex-direction: column;
  justify-content: space-between;
  overflow: hidden;
  padding: 42px;
  background: #11111c;
}

.auth-visual > img.auth-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 62% center;
  opacity: .72;
}

.auth-visual::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(8,8,14,.98),rgba(8,8,14,.15) 65%), linear-gradient(90deg,rgba(8,8,14,.48),transparent);
  content: "";
}

.auth-visual-head,
.auth-visual-copy {
  position: relative;
  z-index: 1;
}

.auth-visual-head img {
  width: 215px;
}

.auth-visual-copy {
  max-width: 540px;
}

.auth-visual-copy h2 {
  margin: 14px 0;
  font-size: clamp(34px,4vw,58px);
  line-height: 1.03;
  letter-spacing: -.055em;
}

.auth-visual-copy p {
  max-width: 470px;
  margin-bottom: 26px;
  color: #d0d2dc;
  font-size: 15px;
}

.auth-proof-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 9px;
}

.auth-proof {
  padding: 13px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 13px;
  background: rgba(11,11,18,.48);
  backdrop-filter: blur(12px);
}

.auth-proof strong {
  display: block;
  font-size: 16px;
}

.auth-proof small {
  color: #b8bac7;
  font-size: 10px;
}

.auth-panel {
  display: flex;
  min-height: 100vh;
  align-items: center;
  justify-content: center;
  padding: 68px 9%;
  background: radial-gradient(circle at 100% 0,rgba(34,211,238,.07),transparent 30%), radial-gradient(circle at 0 100%,rgba(139,92,246,.09),transparent 34%),var(--midnight);
}

.auth-card {
  width: min(590px,100%);
}

.auth-card-head {
  margin-bottom: 26px;
}

.auth-card-head h1 {
  margin: 7px 0 10px;
  font-size: clamp(34px,4vw,47px);
}

.auth-card-head p {
  color: var(--muted);
  font-size: 14px;
}

.auth-tabs {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  margin-bottom: 24px;
  padding: 4px;
  border: 1px solid var(--border);
  border-radius: 14px;
  background: rgba(255,255,255,.025);
}

.auth-tab {
  min-height: 42px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  font-weight: 800;
}

.auth-tab.active {
  background: rgba(139,92,246,.15);
  color: var(--snow);
  box-shadow: inset 0 0 0 1px rgba(139,92,246,.18);
}

.social-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 10px;
}

.social-btn {
  display: flex;
  min-height: 48px;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(255,255,255,.035);
  color: var(--snow);
  font-size: 13px;
  font-weight: 750;
}

.social-btn:hover {
  border-color: rgba(139,92,246,.4);
}

.social-mark {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 8px;
  background: var(--snow);
  color: #101017;
  font-weight: 900;
}

.auth-divider {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 22px 0;
  color: var(--muted-2);
  font-size: 11px;
}

.auth-divider::before,
.auth-divider::after {
  height: 1px;
  flex: 1;
  background: var(--border);
  content: "";
}

.auth-form {
  display: grid;
  gap: 14px;
}

.auth-form .field label {
  color: #d2d3dd;
  font-size: 12px;
}

.auth-form .input,
.auth-form .select {
  min-height: 50px;
  padding-inline: 15px;
  font-size: 14px;
}

.auth-form-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}

.check-label {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  color: var(--muted);
  font-size: 12px;
}

.check-label input {
  margin-top: 3px;
  accent-color: var(--violet);
}

.auth-link {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--cyan);
  font-size: 12px;
  font-weight: 800;
}

.auth-submit {
  width: 100%;
  min-height: 52px;
  margin-top: 4px;
  font-size: 14px;
}

.auth-note {
  margin: 20px 0 0;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
}

.password-reset-card { max-width: 560px; }
.password-reset-mark {
  display: grid;
  width: 58px;
  height: 58px;
  margin-bottom: 18px;
  place-items: center;
  border: 1px solid rgba(34,211,238,.22);
  border-radius: 18px;
  color: var(--cyan);
  background: rgba(34,211,238,.08);
  font-size: 22px;
  font-weight: 900;
}
.password-reset-mark.success { color: #86efac; border-color: rgba(34,197,94,.25); background: rgba(34,197,94,.09); }
.password-reset-safety { display: flex; align-items: flex-start; gap: 11px; margin: 18px 0; padding: 14px; border: 1px solid var(--soft-border); border-radius: 14px; background: rgba(255,255,255,.02); }
.password-reset-safety > span { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 10px; color: var(--cyan); background: rgba(34,211,238,.08); font-weight: 900; }
.password-reset-safety strong { display: block; font-size: 12px; }
.password-reset-safety p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.password-reset-back { display: block; width: 100%; margin-top: 16px; text-align: center; }
.password-rules { display: grid; gap: 6px; padding: 12px 14px; border-radius: 12px; background: rgba(34,197,94,.05); color: #b7e6c5; font-size: 11px; }
.password-reset-result { display: grid; gap: 9px; margin: 20px 0; }
.password-reset-result > span { display: flex; align-items: flex-start; gap: 11px; padding: 13px; border: 1px solid rgba(34,197,94,.18); border-radius: 13px; background: rgba(34,197,94,.035); }
.password-reset-result i { display: grid; width: 27px; height: 27px; flex: 0 0 27px; place-items: center; border-radius: 50%; color: #86efac; background: rgba(34,197,94,.11); font-size: 11px; font-style: normal; font-weight: 900; }
.password-reset-result strong,.password-reset-result small { display: block; }
.password-reset-result strong { font-size: 12px; }
.password-reset-result small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.two-factor-modal { max-width: 570px; }
.two-factor-modal > p,.two-factor-demo-hint { font-size: 12px; line-height: 1.55; }
.two-factor-modal .field label { font-size: 11px; }
.two-factor-connect { display: grid; grid-template-columns: 170px minmax(0,1fr); align-items: center; gap: 18px; margin: 18px 0; padding: 15px; border: 1px solid var(--soft-border); border-radius: 15px; background: rgba(255,255,255,.018); }
.two-factor-connect small,.two-factor-connect strong,.two-factor-connect p { display: block; }
.two-factor-connect small { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .08em; }
.two-factor-connect strong { margin-top: 7px; color: var(--cyan); font-size: 12px; line-height: 1.5; overflow-wrap: anywhere; }
.two-factor-connect p { margin: 7px 0 0; color: var(--muted); font-size: 11px; }
.two-factor-qr { display: grid; width: 170px; height: 170px; grid-template-columns: repeat(17,1fr); grid-template-rows: repeat(17,1fr); padding: 8px; border: 5px solid #fff; border-radius: 8px; background: #fff; box-shadow: 0 12px 35px rgba(0,0,0,.28); }
.two-factor-qr i { display: block; background: #fff; }
.two-factor-qr i.dark { background: #090a11; }
.two-factor-code-input { font-size: 20px !important; font-weight: 800; letter-spacing: .35em; text-align: center; }
.two-factor-demo-hint { margin: 10px 0 15px; padding: 10px 12px; border-radius: 10px; color: var(--muted); background: rgba(34,211,238,.045); }
.two-factor-demo-hint strong { color: var(--cyan); }
.two-factor-recovery-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 18px 0; }
.two-factor-recovery-grid code { padding: 11px 8px; border: 1px solid rgba(139,92,246,.2); border-radius: 10px; color: #ddd3ff; background: rgba(139,92,246,.055); font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-size: 11px; text-align: center; }
.two-factor-login-card > .badge { display: inline-flex; margin: 15px 0 3px; }
.two-factor-recovery-input { text-transform: uppercase; letter-spacing: .05em; }
.danger-button { border-color: rgba(248,113,113,.3) !important; background: linear-gradient(135deg,#ef4444,#b91c1c) !important; }

@media (min-width: 901px) {
  .password-reset-safety strong,.password-reset-result strong { font-size: 14px; }
  .password-reset-safety p,.password-reset-result small,.password-rules { font-size: 13px; }
  .two-factor-modal > p,.two-factor-demo-hint { font-size: 14px; }
  .two-factor-modal .field label,.two-factor-connect strong,.two-factor-recovery-grid code { font-size: 13px; }
  .two-factor-connect p { font-size: 13px; }
  .two-factor-connect small { font-size: 11px; }
}

@media (max-width: 560px) {
  .two-factor-connect { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .two-factor-recovery-grid { grid-template-columns: 1fr; }
}

.onboarding-shell {
  display: grid;
  min-height: 100vh;
  grid-template-columns: 315px 1fr;
}

.onboarding-side {
  position: sticky;
  top: 0;
  height: 100vh;
  padding: 36px 30px;
  border-right: 1px solid var(--border);
  background: radial-gradient(circle at 0 0,rgba(139,92,246,.2),transparent 38%),var(--graphite);
}

.onboarding-side > img {
  width: 205px;
}

.onboarding-side h2 {
  margin: 48px 0 8px;
  font-size: 25px;
}

.onboarding-side > p {
  color: var(--muted);
  font-size: 13px;
}

.onboarding-steps {
  display: grid;
  gap: 6px;
  margin-top: 35px;
}

.onboarding-step {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px;
  border-radius: 12px;
  color: var(--muted-2);
}

.onboarding-step.active {
  background: rgba(139,92,246,.12);
  color: var(--snow);
}

.onboarding-step.done {
  color: var(--success);
}

.step-number {
  display: grid;
  width: 31px;
  height: 31px;
  flex: 0 0 31px;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 10px;
  font-size: 11px;
  font-weight: 900;
}

.onboarding-step.active .step-number {
  border-color: transparent;
  background: linear-gradient(135deg,var(--violet),var(--cyan));
  color: white;
}

.onboarding-step strong {
  display: block;
  font-size: 12px;
}

.onboarding-step small {
  font-size: 9px;
}

.onboarding-main {
  display: flex;
  min-height: 100vh;
  align-items: center;
  justify-content: center;
  padding: 74px 7%;
  background: radial-gradient(circle at 100% 0,rgba(34,211,238,.06),transparent 35%),var(--midnight);
}

.onboarding-card {
  width: min(850px,100%);
}

.onboarding-card h1 {
  margin: 6px 0 10px;
  font-size: clamp(34px,4vw,50px);
}

.onboarding-intro {
  max-width: 650px;
  margin-bottom: 30px;
  color: var(--muted);
  font-size: 15px;
}

.role-choice-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 13px;
}

.role-choice {
  position: relative;
  min-height: 144px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 17px;
  background: rgba(23,23,39,.7);
  color: var(--snow);
  text-align: left;
  transition: .2s ease;
}

.role-choice:hover,
.role-choice.selected {
  border-color: rgba(139,92,246,.58);
  background: linear-gradient(145deg,rgba(139,92,246,.17),rgba(23,23,39,.92));
  transform: translateY(-2px);
}

.role-choice.selected::after {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  width: 23px;
  height: 23px;
  place-items: center;
  border-radius: 50%;
  background: var(--success);
  color: #07120e;
  content: "✓";
  font-size: 11px;
  font-weight: 900;
}

.role-choice-icon {
  display: grid;
  width: 38px;
  height: 38px;
  margin-bottom: 13px;
  place-items: center;
  border-radius: 12px;
  background: rgba(139,92,246,.14);
  color: #b89dff;
  font-size: 17px;
}

.role-choice strong {
  display: block;
  font-size: 15px;
}

.role-choice p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.interest-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

.interest-chip {
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: rgba(255,255,255,.025);
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
}

.interest-chip.selected {
  border-color: rgba(34,211,238,.45);
  background: rgba(34,211,238,.1);
  color: var(--snow);
}

.upload-zone {
  display: grid;
  min-height: 170px;
  place-items: center;
  padding: 25px;
  border: 1px dashed rgba(139,92,246,.45);
  border-radius: 18px;
  background: rgba(139,92,246,.05);
  text-align: center;
}

.upload-zone.done {
  border-style: solid;
  border-color: rgba(55,211,154,.5);
  background: rgba(55,211,154,.06);
}

.upload-zone-icon {
  display: grid;
  width: 50px;
  height: 50px;
  margin: 0 auto 11px;
  place-items: center;
  border-radius: 16px;
  background: rgba(139,92,246,.14);
  color: var(--violet);
  font-size: 21px;
}

.upload-zone strong {
  display: block;
  font-size: 14px;
}

.upload-zone p {
  margin: 5px 0 12px;
  color: var(--muted);
  font-size: 11px;
}

.onboarding-summary {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 12px;
}

.summary-card {
  padding: 17px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: rgba(23,23,39,.7);
}

.summary-card span {
  color: var(--muted);
  font-size: 10px;
}

.summary-card strong {
  display: block;
  margin-top: 6px;
  font-size: 14px;
}

.onboarding-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--border);
}

.onboarding-actions .btn {
  min-width: 130px;
}

@media (max-width: 900px) {
  .auth-entry {
    min-width: 58px;
    padding: 0 9px;
    font-size: 10px;
  }

  .auth-shell {
    grid-template-columns: 1fr;
  }

  .auth-visual {
    display: none;
  }

  .auth-panel {
    padding: 70px 8%;
  }

  .onboarding-shell {
    grid-template-columns: 1fr;
  }

  .onboarding-side {
    position: relative;
    height: auto;
    padding: 22px;
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .onboarding-side > img {
    width: 170px;
  }

  .onboarding-side h2,
  .onboarding-side > p {
    display: none;
  }

  .onboarding-steps {
    grid-template-columns: repeat(4,1fr);
    margin-top: 18px;
  }

  .onboarding-step {
    justify-content: center;
  }

  .onboarding-step > div {
    display: none;
  }

  .onboarding-main {
    min-height: auto;
    padding: 45px 6% 70px;
  }
}

@media (max-width: 620px) {
  .auth-close {
    top: 13px;
    right: 13px;
  }

  .auth-panel {
    align-items: flex-start;
    padding: 65px 18px 45px;
  }

  .auth-card-head h1,
  .onboarding-card h1 {
    font-size: 32px;
  }

  .social-grid,
  .role-choice-grid,
  .onboarding-summary {
    grid-template-columns: 1fr;
  }

  .auth-form-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .onboarding-side {
    padding: 17px;
  }

  .onboarding-main {
    padding: 35px 18px 60px;
  }

  .onboarding-intro {
    font-size: 13px;
  }

  .onboarding-actions .btn {
    min-width: 0;
    flex: 1;
  }
}

/* Public creator profile and monetization journey */
.creator-card-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.creator-card-actions .btn {
  min-width: 0;
  padding-inline: 10px;
}

.creator-profile-page {
  width: min(1500px,100%);
  margin: 0 auto;
}

.profile-back {
  margin-bottom: 14px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--muted);
  font-size: 13px;
  font-weight: 750;
}

.profile-back:hover {
  color: var(--cyan);
}

.profile-hero {
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 26px;
  background: linear-gradient(145deg,rgba(29,29,48,.96),rgba(15,15,25,.98));
  box-shadow: 0 28px 85px rgba(0,0,0,.25);
}

.profile-cover {
  position: relative;
  height: 250px;
  overflow: hidden;
  background: var(--graphite);
}

.profile-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 38%;
  filter: saturate(.85) contrast(1.03);
  transform: scale(1.02);
}

.profile-cover::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg,rgba(8,8,14,.5),transparent 58%),linear-gradient(0deg,rgba(18,18,31,.98),transparent 60%);
  content: "";
}

.profile-cover span {
  position: absolute;
  z-index: 1;
  right: 8%;
  bottom: -90px;
  width: 280px;
  height: 180px;
  border-radius: 50%;
  background: var(--cyan);
  opacity: .1;
  filter: blur(65px);
}

.profile-identity {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: end;
  gap: 22px;
  padding: 0 28px 22px;
}

.profile-avatar {
  width: 132px;
  height: 132px;
  margin-top: -68px;
  border: 5px solid #181829;
  border-radius: 36px;
  object-fit: cover;
  box-shadow: 0 14px 40px rgba(0,0,0,.38);
}

.profile-primary {
  padding-top: 18px;
}

.profile-name {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;
}

.profile-name h1 {
  margin: 0;
  font-size: clamp(30px,3.2vw,46px);
  letter-spacing: -.045em;
}

.verified.large {
  width: 22px;
  height: 22px;
  margin-left: 0;
  font-size: 12px;
}

.profile-handle {
  margin: 2px 0 8px;
  color: var(--muted);
  font-size: 13px;
}

.profile-headline {
  max-width: 760px;
  margin: 0;
  color: #e0e1e9;
  font-size: 15px;
  line-height: 1.55;
}

.profile-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

.profile-chips span {
  padding: 6px 9px;
  border: 1px solid var(--soft-border);
  border-radius: 999px;
  background: rgba(255,255,255,.025);
  color: var(--muted);
  font-size: 11px;
}

.profile-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 5px;
}

.profile-actions .btn {
  white-space: nowrap;
}

.profile-stats {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  margin: 0 28px;
  border-top: 1px solid var(--border);
}

.profile-stats > span {
  padding: 17px 20px;
  border-right: 1px solid var(--soft-border);
}

.profile-stats > span:last-child {
  border-right: 0;
}

.profile-stats strong,
.profile-stats small {
  display: block;
}

.profile-stats strong {
  font-size: 19px;
}

.profile-stats small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 11px;
}

.profile-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 350px;
  align-items: start;
  gap: 18px;
  margin-top: 22px;
}

.profile-main {
  min-width: 0;
}

.profile-tabs {
  position: sticky;
  z-index: 20;
  top: 78px;
  display: flex;
  gap: 5px;
  margin-bottom: 16px;
  padding: 6px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: rgba(15,15,25,.94);
  backdrop-filter: blur(18px);
}

.profile-tabs button {
  min-height: 39px;
  flex: 1;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.profile-tabs button:hover {
  color: var(--snow);
}

.profile-tabs button.active {
  background: linear-gradient(135deg,rgba(139,92,246,.24),rgba(34,211,238,.09));
  color: var(--snow);
  box-shadow: inset 0 0 0 1px rgba(139,92,246,.22);
}

.profile-tab-panel {
  min-height: 500px;
}

.profile-featured {
  display: grid;
  grid-template-columns: minmax(0,1.38fr) minmax(270px,.72fr);
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: radial-gradient(circle at 100% 0,rgba(139,92,246,.13),transparent 40%),var(--graphite);
}

.profile-featured-media {
  position: relative;
  min-height: 310px;
  overflow: hidden;
}

.profile-featured-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-featured-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 28px;
}

.profile-featured-copy h2 {
  margin: 8px 0;
  font-size: clamp(24px,2.4vw,36px);
  line-height: 1.15;
}

.profile-featured-copy p,
.profile-section-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}

.profile-featured-copy .button-row {
  align-items: center;
  justify-content: space-between;
  margin-top: 22px;
}

.profile-featured-copy .button-row > span {
  color: var(--muted);
  font-size: 11px;
  white-space: nowrap;
}

.profile-featured-copy .button-row strong {
  color: var(--snow);
}

.profile-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
}

.profile-section-head.compact {
  margin-top: 30px;
}

.profile-section-head h2 {
  margin: 4px 0 0;
  font-size: 25px;
}

.profile-post-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 13px;
}

.profile-post {
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: linear-gradient(145deg,rgba(29,29,47,.95),rgba(19,19,31,.98));
  transition: transform .2s ease,border-color .2s ease;
}

.profile-post:hover {
  transform: translateY(-3px);
  border-color: rgba(139,92,246,.38);
}

.profile-post-media {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
}

.profile-post-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.profile-post.locked .profile-post-media img {
  filter: blur(3px) brightness(.62);
  transform: scale(1.04);
}

.profile-post-label {
  position: absolute;
  z-index: 2;
  top: 10px;
  left: 10px;
  padding: 5px 7px;
  border-radius: 7px;
  background: rgba(8,8,13,.68);
  color: white;
  font-size: 9px;
  font-weight: 800;
}

.profile-post-play {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 50%;
  background: rgba(10,10,17,.62);
  backdrop-filter: blur(8px);
  font-size: 15px;
}

.profile-post:hover .profile-post-play {
  background: var(--violet);
}

.profile-post-body {
  padding: 13px;
}

.profile-post-body h3 {
  min-height: 42px;
  margin: 10px 0 7px;
  font-size: 14px;
  line-height: 1.45;
}

.profile-post-body p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
}

.profile-commerce {
  position: sticky;
  top: 78px;
  display: grid;
  gap: 13px;
}

.community-card,
.profile-gift-card,
.profile-safe-card {
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(145deg,rgba(29,29,48,.98),rgba(17,17,28,.98));
}

.community-card {
  position: relative;
  overflow: hidden;
  padding: 22px;
}

.community-card::before {
  position: absolute;
  top: -80px;
  right: -70px;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: var(--violet);
  content: "";
  opacity: .14;
  filter: blur(45px);
}

.community-card.subscribed {
  border-color: rgba(55,211,154,.28);
}

.community-card-head {
  position: relative;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-top: 11px;
}

.community-card-head h2,
.community-card-head p {
  margin: 0;
}

.community-card-head h2 {
  font-size: 24px;
}

.community-card-head p {
  color: var(--muted);
  font-size: 10px;
}

.community-card-head > strong {
  font-size: 21px;
  white-space: nowrap;
}

.community-card-head > strong small {
  color: var(--muted);
  font-size: 9px;
  font-weight: 500;
}

.community-card ul {
  display: grid;
  gap: 9px;
  margin: 20px 0;
  padding: 0;
  color: #d4d5df;
  font-size: 11px;
  list-style: none;
}

.community-card li::before {
  margin-right: 8px;
  color: var(--success);
  content: "✓";
}

.commission-note {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 14px;
  padding: 10px 12px;
  border: 1px solid rgba(55,211,154,.13);
  border-radius: 11px;
  background: rgba(55,211,154,.055);
  color: var(--muted);
  font-size: 10px;
}

.commission-note strong {
  color: var(--success);
  font-size: 13px;
}

.community-card > .btn {
  width: 100%;
}

.commerce-fine {
  display: block;
  margin-top: 10px;
  color: var(--muted-2);
  font-size: 9px;
  text-align: center;
}

.profile-gift-card {
  padding: 18px;
}

.profile-gift-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 10px;
}

.profile-gift-head h3 {
  margin: 3px 0 0;
}

.profile-gift-head > span {
  color: var(--muted);
  font-size: 9px;
}

.profile-gifts {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 6px;
  margin-top: 14px;
}

.profile-gifts button {
  display: grid;
  min-width: 0;
  min-height: 54px;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 11px;
  background: rgba(255,255,255,.025);
}

.profile-gifts button:hover {
  transform: translateY(-2px);
  border-color: rgba(139,92,246,.45);
  background: rgba(139,92,246,.1);
}

.profile-gifts button span {
  font-size: 18px;
}

.profile-gifts button small {
  color: var(--muted);
  font-size: 8px;
}

.profile-gift-card > p {
  margin: 12px 0 0;
  color: var(--muted-2);
  font-size: 9px;
  line-height: 1.5;
}

.profile-safe-card {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 14px;
}

.profile-safe-card > span {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 10px;
  background: rgba(55,211,154,.1);
  color: var(--success);
}

.profile-safe-card strong {
  display: block;
  font-size: 11px;
}

.profile-safe-card p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 9px;
}

.profile-schedule {
  display: grid;
  gap: 11px;
}

.schedule-card {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 17px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 17px;
  background: linear-gradient(145deg,rgba(29,29,47,.9),rgba(19,19,31,.95));
}

.schedule-date {
  display: grid;
  width: 60px;
  height: 64px;
  place-items: center;
  border: 1px solid rgba(139,92,246,.22);
  border-radius: 14px;
  background: rgba(139,92,246,.09);
}

.schedule-date strong {
  align-self: end;
  font-size: 23px;
  line-height: 1;
}

.schedule-date span {
  align-self: start;
  color: var(--violet);
  font-size: 9px;
  font-weight: 900;
}

.schedule-card h3 {
  margin: 7px 0 4px;
  font-size: 14px;
}

.schedule-card p {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
}

.profile-about-grid {
  display: grid;
  grid-template-columns: 1.35fr .85fr;
  gap: 14px;
}

.profile-about-grid .panel > p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}

.profile-detail-list,
.trust-list {
  display: grid;
  gap: 9px;
  margin-top: 20px;
}

.profile-detail-list span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 0;
  border-bottom: 1px solid var(--soft-border);
}

.profile-detail-list small {
  color: var(--muted);
  font-size: 10px;
}

.profile-detail-list strong {
  font-size: 11px;
  text-align: right;
}

.trust-list span {
  padding: 10px;
  border-radius: 10px;
  background: rgba(55,211,154,.055);
  color: #cfeadf;
  font-size: 11px;
}

.profile-about-grid .text-link {
  margin-top: 20px;
  padding: 0;
}

@media (max-width: 1180px) {
  .profile-layout {
    grid-template-columns: minmax(0,1fr) 320px;
  }

  .profile-featured {
    grid-template-columns: 1fr;
  }

  .profile-featured-media {
    min-height: 270px;
  }

  .profile-featured-copy {
    padding: 22px;
  }

  .profile-identity {
    grid-template-columns: auto minmax(0,1fr);
  }

  .profile-actions {
    grid-column: 2;
    padding-top: 3px;
  }
}

@media (max-width: 900px) {
  .profile-cover {
    height: 220px;
  }

  .profile-identity {
    padding-inline: 22px;
  }

  .profile-layout {
    grid-template-columns: 1fr;
  }

  .profile-commerce {
    position: static;
    grid-row: 1;
    grid-template-columns: minmax(0,1.2fr) minmax(280px,.8fr);
  }

  .profile-safe-card {
    grid-column: 1/-1;
  }

  .profile-main {
    grid-row: 2;
  }

  .profile-tabs {
    top: 68px;
  }

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

@media (max-width: 620px) {
  .creator-card-actions {
    grid-template-columns: 1fr;
  }

  .profile-back {
    font-size: 12px;
  }

  .profile-hero {
    border-radius: 21px;
  }

  .profile-cover {
    height: 175px;
  }

  .profile-cover img {
    object-position: center;
  }

  .profile-identity {
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 0 17px 18px;
  }

  .profile-avatar {
    width: 94px;
    height: 94px;
    margin-top: -47px;
    border-width: 4px;
    border-radius: 27px;
  }

  .profile-primary {
    padding-top: 0;
  }

  .profile-name h1 {
    font-size: 31px;
  }

  .profile-name .badge {
    width: 100%;
    max-width: max-content;
  }

  .profile-headline {
    font-size: 13px;
  }

  .profile-chips {
    display: grid;
    grid-template-columns: 1fr;
  }

  .profile-chips span {
    width: max-content;
    max-width: 100%;
  }

  .profile-actions {
    display: grid;
    grid-column: 1;
    grid-template-columns: 1fr 1fr auto;
    width: 100%;
  }

  .profile-actions .btn {
    padding-inline: 10px;
  }

  .profile-stats {
    grid-template-columns: repeat(2,1fr);
    margin: 0 17px;
  }

  .profile-stats > span {
    padding: 14px 9px;
  }

  .profile-stats > span:nth-child(2) {
    border-right: 0;
  }

  .profile-stats > span:nth-child(-n+2) {
    border-bottom: 1px solid var(--soft-border);
  }

  .profile-stats strong {
    font-size: 17px;
  }

  .profile-commerce {
    grid-template-columns: 1fr;
  }

  .profile-safe-card {
    grid-column: auto;
  }

  .community-card {
    padding: 19px;
  }

  .profile-tabs {
    gap: 2px;
    margin-right: -13px;
    margin-left: -13px;
    overflow-x: auto;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
    padding-inline: 13px;
  }

  .profile-tabs button {
    min-width: 94px;
  }

  .profile-featured {
    border-radius: 18px;
  }

  .profile-featured-media {
    min-height: 210px;
  }

  .profile-featured-copy {
    padding: 19px;
  }

  .profile-featured-copy .button-row {
    align-items: flex-start;
    flex-direction: column;
  }

  .profile-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .profile-section-head.compact {
    align-items: flex-end;
    flex-direction: row;
  }

  .profile-section-head h2 {
    font-size: 22px;
  }

  .profile-post-grid,
  .profile-about-grid {
    grid-template-columns: 1fr;
  }

  .profile-post-body h3 {
    min-height: 0;
  }

  .schedule-card {
    grid-template-columns: auto minmax(0,1fr);
    gap: 12px;
  }

  .schedule-card .btn {
    grid-column: 1/-1;
    width: 100%;
  }
}

@media (min-width: 901px) {
  .profile-back,
  .profile-handle,
  .profile-featured-copy p,
  .profile-section-head p,
  .profile-about-grid .panel > p {
    font-size: 14px;
  }

  .profile-chips span,
  .profile-tabs button,
  .profile-post-body p,
  .community-card ul,
  .profile-detail-list strong,
  .trust-list span {
    font-size: 12px;
  }
}

/* Full Live experience: viewer room and creator control room */
.viewer-live-page,
.studio-live-page {
  width: min(1540px,100%);
  margin: 0 auto;
}

.live-viewer-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}

.live-viewer-top .profile-back {
  margin: 0;
}

.live-viewer-top > div {
  display: flex;
  align-items: center;
  gap: 8px;
}

.live-room-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 380px;
  align-items: start;
  gap: 15px;
}

.live-room-main {
  min-width: 0;
}

.live-stage,
.studio-preview-stage,
.studio-broadcast-stage {
  position: relative;
  overflow: hidden;
  border: 1px solid var(--border);
  background: #07070b;
}

.live-stage {
  aspect-ratio: 16/9;
  border-radius: 22px 22px 0 0;
}

.live-stage > img,
.studio-preview-stage > img,
.studio-broadcast-stage > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.live-stage-shade {
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg,rgba(5,5,9,.82),transparent 38%),linear-gradient(180deg,rgba(5,5,9,.4),transparent 25%);
}

.live-stage-top,
.studio-preview-top {
  position: absolute;
  z-index: 3;
  top: 16px;
  right: 16px;
  left: 16px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.live-stage-top .live-badge,
.live-stage-top .viewer-badge {
  position: static;
  font-size: 10px;
}

.live-stage-bottom,
.studio-preview-copy {
  position: absolute;
  z-index: 3;
  right: 22px;
  bottom: 20px;
  left: 22px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 18px;
}

.live-stage-bottom h1,
.studio-preview-copy h2 {
  margin: 6px 0 0;
  max-width: 850px;
  font-size: clamp(24px,2.7vw,42px);
  line-height: 1.12;
  letter-spacing: -.035em;
}

.live-duration {
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.14);
  border-radius: 9px;
  background: rgba(5,5,8,.58);
  font-size: 11px;
  font-weight: 800;
  white-space: nowrap;
}

.live-stage-center {
  position: absolute;
  z-index: 2;
  right: 25px;
  bottom: 100px;
}

.live-reaction-float {
  position: absolute;
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  background: rgba(139,92,246,.56);
  backdrop-filter: blur(7px);
  animation: liveReaction 3.5s ease-in-out infinite;
}

.live-reaction-float.two {
  right: 34px;
  bottom: 28px;
  background: rgba(34,211,238,.45);
  animation-delay: -1.5s;
}

@keyframes liveReaction {
  0%,100% { opacity:.35; transform:translateY(15px) scale(.8); }
  50% { opacity:1; transform:translateY(-25px) scale(1); }
}

.live-player-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 10px 13px;
  border: 1px solid var(--border);
  border-top: 0;
  border-radius: 0 0 18px 18px;
  background: rgba(17,17,28,.96);
}

.live-player-controls > div {
  display: flex;
  align-items: center;
  gap: 5px;
}

.live-control-button {
  display: flex;
  min-height: 38px;
  align-items: center;
  gap: 7px;
  padding: 0 10px;
  border: 1px solid transparent;
  border-radius: 10px;
  background: transparent;
  color: var(--muted);
}

.live-control-button:hover,
.live-control-button.active {
  border-color: var(--border);
  background: rgba(255,255,255,.045);
  color: var(--snow);
}

.live-control-button.danger:hover {
  border-color: rgba(255,99,127,.25);
  color: var(--danger);
}

.live-control-button span {
  font-size: 16px;
}

.live-control-button small {
  font-size: 10px;
  font-weight: 750;
}

.live-creator-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 14px;
  padding: 15px;
  border: 1px solid var(--border);
  border-radius: 17px;
  background: linear-gradient(145deg,rgba(29,29,48,.94),rgba(18,18,30,.96));
}

.live-creator-identity {
  display: flex;
  min-width: 0;
  align-items: center;
  gap: 11px;
  padding: 0;
  border: 0;
  background: transparent;
  text-align: left;
}

.live-creator-identity > span {
  min-width: 0;
}

.live-creator-identity strong,
.live-creator-identity small {
  display: block;
}

.live-creator-identity strong {
  font-size: 14px;
}

.live-creator-identity strong i {
  margin-left: 5px;
  font-style: normal;
}

.live-creator-identity small {
  margin-top: 3px;
  overflow: hidden;
  color: var(--muted);
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.live-creator-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.live-description {
  margin-top: 14px;
}

.live-description > p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}

.live-topic-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 15px;
}

.live-topic-row span {
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(139,92,246,.09);
  color: #c7b7f8;
  font-size: 9px;
}

.live-community-panel {
  position: sticky;
  top: 78px;
  display: grid;
  grid-template-rows: auto auto minmax(240px,1fr) auto auto auto;
  height: min(760px,calc(100vh - 100px));
  min-height: 620px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 21px;
  background: linear-gradient(160deg,rgba(28,28,46,.98),rgba(14,14,24,.99));
}

.live-community-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 17px 18px 13px;
  border-bottom: 1px solid var(--soft-border);
}

.live-community-head h2 {
  margin: 3px 0 0;
  font-size: 20px;
}

.live-community-notice {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 11px;
  padding: 10px;
  border: 1px solid rgba(34,211,238,.12);
  border-radius: 11px;
  background: rgba(34,211,238,.045);
}

.live-community-notice > span {
  color: var(--cyan);
}

.live-community-notice p {
  margin: 0;
  color: var(--muted);
  font-size: 9px;
  line-height: 1.5;
}

.live-chat-scroll,
.studio-chat-feed {
  display: grid;
  align-content: start;
  gap: 6px;
  overflow-y: auto;
  padding: 7px 12px 13px;
}

.live-chat-message {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 8px;
  border-radius: 11px;
}

.live-chat-message:hover {
  background: rgba(255,255,255,.025);
}

.live-chat-avatar {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 9px;
  background: hsl(var(--chat-hue) 65% 48% / .2);
  color: hsl(var(--chat-hue) 85% 76%);
  font-size: 10px;
  font-weight: 900;
}

.live-chat-avatar.self {
  background: linear-gradient(135deg,var(--violet),var(--cyan));
  color: white;
}

.live-chat-user {
  display: flex;
  align-items: center;
  gap: 6px;
}

.live-chat-user strong {
  font-size: 10px;
}

.live-chat-user span {
  padding: 2px 5px;
  border-radius: 5px;
  background: rgba(139,92,246,.12);
  color: #c4b2fa;
  font-size: 7px;
  font-weight: 800;
}

.live-chat-user small {
  color: var(--muted-2);
  font-size: 7px;
}

.live-chat-message p {
  margin: 3px 0 0;
  color: #d5d6df;
  font-size: 10px;
  line-height: 1.45;
}

.live-gift-event {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 5px 2px;
  padding: 10px;
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 12px;
  background: linear-gradient(90deg,rgba(139,92,246,.11),rgba(34,211,238,.045));
}

.live-gift-event > span {
  font-size: 23px;
}

.live-gift-event p,
.live-gift-event small {
  margin: 0;
}

.live-gift-event strong,
.live-gift-event small {
  display: block;
}

.live-gift-event strong {
  font-size: 9px;
}

.live-gift-event small {
  color: var(--muted);
  font-size: 8px;
}

.live-gift-dock {
  padding: 11px 12px;
  border-top: 1px solid var(--soft-border);
  background: rgba(255,255,255,.018);
}

.live-gift-dock > div:first-child {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.live-gift-dock strong,
.live-gift-dock small {
  font-size: 9px;
}

.live-gift-dock > div:first-child small {
  color: var(--muted);
}

.live-gift-dock > div:last-child {
  display: grid;
  grid-template-columns: repeat(5,1fr);
  gap: 5px;
}

.live-gift-dock button {
  display: grid;
  min-width: 0;
  min-height: 45px;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: rgba(255,255,255,.025);
}

.live-gift-dock button:hover {
  border-color: rgba(139,92,246,.4);
  background: rgba(139,92,246,.1);
}

.live-gift-dock button small {
  display: block;
  color: var(--muted);
  font-size: 7px;
}

.live-chat-compose {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 11px 12px;
  border-top: 1px solid var(--soft-border);
}

.live-chat-compose input {
  min-width: 0;
  height: 38px;
  padding: 0 11px;
  border: 1px solid var(--border);
  border-radius: 10px;
  outline: 0;
  background: rgba(255,255,255,.035);
  color: var(--snow);
  font-size: 10px;
}

.live-chat-compose input:focus {
  border-color: rgba(139,92,246,.5);
}

.live-chat-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  border-top: 1px solid var(--soft-border);
  color: var(--muted-2);
  font-size: 8px;
}

.live-chat-foot button {
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--cyan);
  font-size: inherit;
}

/* Creator Live Studio */
.studio-setup-layout,
.studio-active-grid {
  display: grid;
  grid-template-columns: minmax(0,1.45fr) minmax(350px,.75fr);
  align-items: start;
  gap: 16px;
}

.studio-preview-column,
.studio-broadcast-column {
  min-width: 0;
}

.studio-preview-stage,
.studio-broadcast-stage {
  aspect-ratio: 16/9;
  border-radius: 22px;
}

.studio-preview-top {
  color: var(--muted);
  font-size: 10px;
}

.studio-safe-area {
  position: absolute;
  z-index: 2;
  inset: 12%;
  border: 1px dashed rgba(255,255,255,.18);
  border-radius: 8px;
  pointer-events: none;
}

.studio-safe-area span {
  position: absolute;
  top: -9px;
  left: 12px;
  padding: 2px 5px;
  background: rgba(5,5,8,.7);
  color: rgba(255,255,255,.45);
  font-size: 7px;
}

.studio-preview-copy {
  display: block;
}

.studio-preview-copy h2 {
  font-size: clamp(22px,2.3vw,36px);
}

.studio-preview-copy p {
  margin: 6px 0 0;
  color: rgba(255,255,255,.65);
  font-size: 10px;
}

.studio-control-dock {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 11px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: rgba(18,18,30,.94);
}

.studio-control {
  display: grid;
  min-width: 84px;
  min-height: 58px;
  place-items: center;
  padding: 7px 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
  color: var(--muted);
}

.studio-control:hover,
.studio-control.active {
  border-color: rgba(55,211,154,.25);
  background: rgba(55,211,154,.07);
  color: var(--snow);
}

.studio-control.off {
  border-color: rgba(255,99,127,.22);
  background: rgba(255,99,127,.06);
  color: var(--danger);
}

.studio-control.end {
  border-color: rgba(255,99,127,.32);
  background: rgba(255,99,127,.12);
  color: #ff92a6;
}

.studio-control span {
  font-size: 18px;
}

.studio-control small {
  font-size: 8px;
  font-weight: 750;
}

.studio-sources,
.studio-source-switcher {
  margin-top: 15px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(23,23,39,.68);
}

.studio-section-title {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 13px;
}

.studio-section-title h3 {
  margin: 3px 0 0;
  font-size: 16px;
}

.studio-camera-grid {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 10px;
}

.studio-camera {
  min-width: 0;
  padding: 7px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(255,255,255,.02);
  text-align: left;
}

.studio-camera:hover,
.studio-camera.selected {
  border-color: rgba(139,92,246,.5);
  background: rgba(139,92,246,.07);
}

.studio-camera > span {
  position: relative;
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 9px;
  background: #09090f;
}

.studio-camera img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.studio-camera i {
  position: absolute;
  top: 6px;
  right: 6px;
  padding: 3px 5px;
  border-radius: 5px;
  background: var(--success);
  color: #06120d;
  font-size: 7px;
  font-style: normal;
  font-weight: 900;
}

.studio-camera strong,
.studio-camera small {
  display: block;
}

.studio-camera strong {
  margin: 8px 3px 0;
  overflow: hidden;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.studio-camera small {
  margin: 2px 3px 3px;
  overflow: hidden;
  color: var(--muted);
  font-size: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.studio-setup-panel,
.studio-monitor-panel {
  display: grid;
  gap: 13px;
}

.studio-details-panel .textarea {
  min-height: 82px;
}

.studio-check-list {
  display: grid;
}

.studio-check-list > span {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 9px;
  padding: 9px 0;
  border-bottom: 1px solid var(--soft-border);
}

.studio-check-list > span:last-child {
  border-bottom: 0;
}

.studio-check-list i {
  display: grid;
  width: 25px;
  height: 25px;
  place-items: center;
  border-radius: 8px;
  background: rgba(55,211,154,.1);
  color: var(--success);
  font-size: 9px;
  font-style: normal;
}

.studio-check-list strong,
.studio-check-list small {
  display: block;
}

.studio-check-list strong {
  font-size: 9px;
}

.studio-check-list small {
  color: var(--muted);
  font-size: 8px;
}

.studio-check-list em {
  color: var(--success);
  font-size: 8px;
  font-style: normal;
}

.studio-go-live {
  padding: 18px;
  border: 1px solid rgba(139,92,246,.25);
  border-radius: 19px;
  background: radial-gradient(circle at 100% 0,rgba(34,211,238,.11),transparent 40%),linear-gradient(145deg,rgba(139,92,246,.13),rgba(23,23,39,.95));
}

.studio-go-live > div {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 14px;
}

.studio-go-live p,
.studio-go-live small {
  margin: 0;
}

.studio-go-live p strong,
.studio-go-live p small {
  display: block;
}

.studio-go-live p strong {
  font-size: 11px;
}

.studio-go-live p small,
.studio-go-live > small {
  color: var(--muted);
  font-size: 8px;
}

.studio-go-live .btn {
  width: 100%;
}

.studio-go-live > small {
  display: block;
  margin-top: 10px;
  text-align: center;
}

/* Active creator control room */
.studio-broadcast-stage .studio-preview-copy {
  z-index: 3;
}

.studio-live-status {
  position: absolute;
  z-index: 3;
  top: 16px;
  left: 50%;
  display: flex;
  gap: 6px;
  transform: translateX(-50%);
}

.studio-live-status span {
  padding: 4px 6px;
  border-radius: 6px;
  background: rgba(5,5,8,.6);
  color: rgba(255,255,255,.7);
  font-size: 7px;
}

.studio-control-dock.on-air {
  border-color: rgba(255,99,127,.14);
}

.studio-live-metrics {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 8px;
  margin-top: 12px;
}

.studio-live-metrics > span {
  padding: 12px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(23,23,39,.7);
}

.studio-live-metrics small,
.studio-live-metrics strong,
.studio-live-metrics em {
  display: block;
}

.studio-live-metrics small {
  color: var(--muted);
  font-size: 8px;
}

.studio-live-metrics strong {
  margin: 7px 0 2px;
  font-size: 17px;
}

.studio-live-metrics em {
  color: var(--success);
  font-size: 7px;
  font-style: normal;
}

.studio-camera-grid.compact .studio-camera small {
  display: none;
}

.studio-chat-monitor {
  display: grid;
  grid-template-rows: auto minmax(270px,1fr) auto;
  max-height: 540px;
}

.studio-chat-feed {
  min-height: 270px;
  padding-inline: 0;
}

.studio-moderation-row {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  padding-top: 11px;
  border-top: 1px solid var(--soft-border);
}

.studio-moderation-row button {
  padding: 5px 7px;
  border: 1px solid var(--border);
  border-radius: 8px;
  background: rgba(255,255,255,.025);
  color: var(--muted);
  font-size: 8px;
}

.studio-health-score {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  margin-bottom: 15px;
}

.studio-health-score > strong {
  font-size: 25px;
}

.studio-health-score > span {
  height: 7px;
  overflow: hidden;
  border-radius: 99px;
  background: var(--graphite-3);
}

.studio-health-score i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,var(--success),var(--cyan));
}

.studio-health-score > small {
  color: var(--success);
  font-size: 8px;
}

.studio-health-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.studio-health-list span {
  padding: 9px;
  border-radius: 9px;
  background: rgba(255,255,255,.025);
}

.studio-health-list small,
.studio-health-list strong {
  display: block;
}

.studio-health-list small {
  color: var(--muted);
  font-size: 7px;
}

.studio-health-list strong {
  margin-top: 3px;
  font-size: 9px;
}

.studio-health .btn {
  width: 100%;
  margin-top: 13px;
}

.studio-safety-note {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 13px;
  border: 1px solid rgba(34,211,238,.14);
  border-radius: 14px;
  background: rgba(34,211,238,.045);
}

.studio-safety-note > span {
  color: var(--cyan);
}

.studio-safety-note strong {
  display: block;
  font-size: 9px;
}

.studio-safety-note p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.5;
}

@media (max-width: 1180px) {
  .live-room-layout {
    grid-template-columns: minmax(0,1fr) 330px;
  }

  .studio-setup-layout,
  .studio-active-grid {
    grid-template-columns: minmax(0,1fr) 340px;
  }

  .studio-control {
    min-width: 70px;
  }

  .studio-live-metrics {
    grid-template-columns: repeat(2,1fr);
  }
}

@media (max-width: 900px) {
  .live-room-layout,
  .studio-setup-layout,
  .studio-active-grid {
    grid-template-columns: 1fr;
  }

  .live-community-panel {
    position: static;
    height: 680px;
    min-height: 0;
  }

  .studio-setup-panel,
  .studio-monitor-panel {
    grid-template-columns: 1fr 1fr;
  }

  .studio-go-live,
  .studio-safety-note {
    grid-column: 1/-1;
  }

  .studio-chat-monitor {
    max-height: 540px;
  }
}

@media (max-width: 620px) {
  .live-viewer-top {
    align-items: flex-start;
    flex-direction: column;
  }

  .live-viewer-top > div {
    width: 100%;
    justify-content: space-between;
  }

  .live-stage,
  .studio-preview-stage,
  .studio-broadcast-stage {
    aspect-ratio: 4/3;
    margin-right: -13px;
    margin-left: -13px;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .live-stage-bottom,
  .studio-preview-copy {
    right: 15px;
    bottom: 14px;
    left: 15px;
  }

  .live-stage-bottom h1,
  .studio-preview-copy h2 {
    font-size: 23px;
  }

  .live-stage-center {
    right: 15px;
    bottom: 85px;
  }

  .live-player-controls {
    margin-right: -13px;
    margin-left: -13px;
    border-right: 0;
    border-left: 0;
    border-radius: 0 0 14px 14px;
  }

  .live-control-button {
    min-height: 34px;
    padding: 0 8px;
  }

  .live-control-button small {
    display: none;
  }

  .live-creator-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .live-creator-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .live-creator-actions .btn {
    min-width: 0;
    padding-inline: 9px;
  }

  .live-description .panel-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .live-community-panel {
    height: 650px;
    border-radius: 18px;
  }

  .live-gift-dock button {
    font-size: 15px;
  }

  .live-chat-compose {
    grid-template-columns: minmax(0,1fr) auto;
  }

  .live-chat-compose .live-chat-avatar {
    display: none;
  }

  .studio-live-page .page-header {
    margin-bottom: 15px;
  }

  .studio-control-dock {
    justify-content: flex-start;
    margin-right: -13px;
    margin-left: -13px;
    overflow-x: auto;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
    padding-inline: 13px;
  }

  .studio-control {
    min-width: 78px;
    flex: 0 0 78px;
  }

  .studio-camera-grid,
  .studio-camera-grid.compact {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
  }

  .studio-camera {
    min-width: 185px;
    scroll-snap-align: start;
  }

  .studio-setup-panel,
  .studio-monitor-panel {
    grid-template-columns: 1fr;
  }

  .studio-go-live,
  .studio-safety-note {
    grid-column: auto;
  }

  .studio-live-status {
    display: none;
  }

  .studio-live-metrics {
    grid-template-columns: repeat(2,1fr);
  }
}

@media (min-width: 901px) {
  .live-description > p,
  .live-chat-message p,
  .live-community-notice p,
  .studio-check-list strong,
  .studio-go-live p strong,
  .studio-safety-note strong {
    font-size: 12px;
  }

  .live-chat-user strong,
  .live-gift-event strong,
  .live-chat-compose input,
  .studio-camera strong,
  .studio-check-list small,
  .studio-go-live p small,
  .studio-go-live > small,
  .studio-check-list em,
  .studio-safety-note p {
    font-size: 10px;
  }
}

/* Talent marketplace, campaigns, offers and contracts */
.marketplace-page,
.campaign-builder-page,
.offer-builder-page,
.offers-page,
.offer-detail-page,
.contracts-page,
.contract-detail-page {
  width: min(1500px,100%);
  margin: 0 auto;
}

.button-count {
  display: inline-grid;
  min-width: 21px;
  height: 21px;
  margin-left: 5px;
  place-items: center;
  border-radius: 7px;
  background: rgba(139,92,246,.16);
  color: #d5c9fc;
  font-size: 9px;
}

.marketplace-overview,
.campaign-summary-strip,
.offers-metric-strip,
.contract-metric-strip {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 10px;
  margin-bottom: 16px;
}

.marketplace-overview > span,
.campaign-summary-strip > span,
.offers-metric-strip > span,
.contract-metric-strip > span {
  padding: 15px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: linear-gradient(145deg,rgba(29,29,47,.83),rgba(19,19,31,.9));
}

.marketplace-overview small,
.marketplace-overview strong,
.marketplace-overview em,
.campaign-summary-strip small,
.campaign-summary-strip strong,
.offers-metric-strip small,
.offers-metric-strip strong,
.offers-metric-strip em,
.contract-metric-strip small,
.contract-metric-strip strong {
  display: block;
}

.marketplace-overview small,
.campaign-summary-strip small,
.offers-metric-strip small,
.contract-metric-strip small {
  color: var(--muted);
  font-size: 9px;
}

.marketplace-overview strong,
.campaign-summary-strip strong,
.offers-metric-strip strong,
.contract-metric-strip strong {
  margin: 7px 0 2px;
  font-size: 19px;
}

.marketplace-overview em,
.offers-metric-strip em {
  color: var(--success);
  font-size: 8px;
  font-style: normal;
}

.marketplace-filter-panel {
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(23,23,39,.68);
}

.marketplace-search {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 7px 7px 7px 13px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(8,8,14,.45);
}

.marketplace-search > span {
  color: var(--muted);
  font-size: 18px;
}

.marketplace-search input {
  min-width: 0;
  border: 0;
  outline: 0;
  background: transparent;
  color: var(--snow);
  font-size: 12px;
}

.marketplace-selects {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 10px;
  margin-top: 12px;
}

.marketplace-selects label {
  display: grid;
  gap: 6px;
}

.marketplace-selects small {
  color: var(--muted);
  font-size: 8px;
  font-weight: 750;
}

.marketplace-category-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid var(--soft-border);
}

.marketplace-results-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 15px;
  margin: 26px 0 13px;
}

.marketplace-results-head h2,
.marketplace-results-head p {
  margin: 0;
}

.marketplace-results-head h2 {
  font-size: 23px;
}

.marketplace-results-head p {
  margin-top: 4px;
  color: var(--muted);
  font-size: 10px;
}

.marketplace-results-head label {
  display: flex;
  align-items: center;
  gap: 8px;
  color: var(--muted);
  font-size: 9px;
}

.marketplace-results-head .select {
  width: 170px;
}

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

.marketplace-grid > .empty-state {
  grid-column: 1/-1;
}

.marketplace-talent-card {
  display: grid;
  grid-template-columns: minmax(180px,.72fr) minmax(0,1.28fr);
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(145deg,rgba(30,30,49,.93),rgba(18,18,30,.98));
  transition: transform .2s ease,border-color .2s ease;
}

.marketplace-talent-card:hover {
  transform: translateY(-3px);
  border-color: rgba(139,92,246,.34);
}

.marketplace-talent-media {
  position: relative;
  min-height: 285px;
  overflow: hidden;
}

.marketplace-talent-media > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.marketplace-match {
  position: absolute;
  z-index: 2;
  top: 11px;
  left: 11px;
  padding: 6px 8px;
  border: 1px solid rgba(55,211,154,.2);
  border-radius: 8px;
  background: rgba(6,19,14,.72);
  color: var(--success);
  font-size: 9px;
  font-weight: 900;
}

.marketplace-shortlist {
  position: absolute;
  z-index: 2;
  top: 10px;
  right: 10px;
  display: grid;
  width: 34px;
  height: 34px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 10px;
  background: rgba(8,8,13,.62);
  backdrop-filter: blur(8px);
}

.marketplace-shortlist.active {
  border-color: rgba(255,99,127,.35);
  background: rgba(255,99,127,.13);
  color: #ff8aa0;
}

.marketplace-talent-media > div:last-child {
  position: absolute;
  z-index: 2;
  right: 11px;
  bottom: 11px;
  left: 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.marketplace-talent-media > div:last-child > span:last-child {
  color: white;
  font-size: 9px;
  font-weight: 750;
}

.marketplace-talent-body {
  min-width: 0;
  padding: 17px;
}

.marketplace-talent-name,
.marketplace-talent-name > div {
  display: flex;
  align-items: center;
  gap: 9px;
}

.marketplace-talent-name {
  justify-content: space-between;
}

.marketplace-talent-name strong,
.marketplace-talent-name small {
  display: block;
}

.marketplace-talent-name strong {
  font-size: 12px;
}

.marketplace-talent-name strong i,
.offer-list-person strong i,
.campaign-talent-row strong i,
.offer-talent-title strong i {
  margin-left: 4px;
  font-style: normal;
}

.marketplace-talent-name small {
  color: var(--muted);
  font-size: 8px;
}

.marketplace-talent-name > span {
  padding: 4px 6px;
  border-radius: 7px;
  background: rgba(255,255,255,.035);
  color: var(--muted);
  font-size: 7px;
}

.marketplace-talent-body > p {
  min-height: 34px;
  margin: 12px 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.55;
}

.marketplace-talent-metrics {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  overflow: hidden;
  border: 1px solid var(--soft-border);
  border-radius: 11px;
}

.marketplace-talent-metrics span {
  padding: 9px;
  border-right: 1px solid var(--soft-border);
}

.marketplace-talent-metrics span:last-child {
  border-right: 0;
}

.marketplace-talent-metrics small,
.marketplace-talent-metrics strong {
  display: block;
}

.marketplace-talent-metrics small {
  color: var(--muted);
  font-size: 7px;
}

.marketplace-talent-metrics strong {
  margin-top: 3px;
  font-size: 10px;
}

.marketplace-markets {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 11px 0;
  color: var(--muted);
  font-size: 8px;
}

.marketplace-markets strong {
  color: #d7d8e1;
}

.marketplace-talent-actions {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 7px;
}

.marketplace-talent-actions .btn {
  min-width: 0;
  padding-inline: 8px;
}

.marketplace-trust-strip {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 18px;
  padding: 14px 16px;
  border: 1px solid rgba(34,211,238,.13);
  border-radius: 15px;
  background: rgba(34,211,238,.04);
}

.marketplace-trust-strip > span {
  display: grid;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 10px;
  background: rgba(55,211,154,.1);
  color: var(--success);
}

.marketplace-trust-strip strong,
.marketplace-trust-strip p {
  display: block;
  margin: 0;
}

.marketplace-trust-strip strong {
  font-size: 10px;
}

.marketplace-trust-strip p {
  margin-top: 2px;
  color: var(--muted);
  font-size: 8px;
}

.marketplace-trust-strip .text-link {
  margin-left: auto;
  white-space: nowrap;
}

.modal-talent-list {
  display: grid;
  gap: 7px;
  margin: 16px 0;
}

.modal-talent-list > button {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(255,255,255,.025);
  text-align: left;
}

.modal-talent-list strong,
.modal-talent-list small {
  display: block;
}

.modal-talent-list strong {
  font-size: 10px;
}

.modal-talent-list small,
.modal-talent-list em {
  color: var(--muted);
  font-size: 8px;
  font-style: normal;
}

/* Campaign builder */
.campaign-builder-shell {
  display: grid;
  grid-template-columns: 290px minmax(0,1fr);
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 24px;
  background: rgba(17,17,28,.92);
}

.campaign-builder-side {
  position: relative;
  min-height: 700px;
  padding: 28px;
  overflow: hidden;
  border-right: 1px solid var(--border);
  background: radial-gradient(circle at 0 0,rgba(139,92,246,.18),transparent 38%),linear-gradient(160deg,rgba(29,29,48,.96),rgba(13,13,22,.98));
}

.campaign-builder-mark {
  display: grid;
  width: 47px;
  height: 47px;
  margin-bottom: 25px;
  place-items: center;
  border-radius: 15px;
  background: linear-gradient(135deg,var(--violet),var(--cyan));
  font-size: 22px;
}

.campaign-builder-side h2 {
  margin: 8px 0;
  font-size: 27px;
}

.campaign-builder-side > p {
  margin: 0;
  color: var(--muted);
  font-size: 10px;
  line-height: 1.6;
}

.campaign-builder-steps {
  display: grid;
  gap: 9px;
  margin-top: 32px;
}

.campaign-builder-steps > span {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 11px;
  border: 1px solid transparent;
  border-radius: 12px;
  color: var(--muted);
}

.campaign-builder-steps > span.active {
  border-color: rgba(139,92,246,.25);
  background: rgba(139,92,246,.1);
  color: var(--snow);
}

.campaign-builder-steps > span.done {
  color: #c7ddcf;
}

.campaign-builder-steps i {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 9px;
  background: rgba(255,255,255,.045);
  font-size: 9px;
  font-style: normal;
  font-weight: 900;
}

.campaign-builder-steps .active i {
  background: var(--violet);
}

.campaign-builder-steps .done i {
  background: rgba(55,211,154,.13);
  color: var(--success);
}

.campaign-builder-steps strong,
.campaign-builder-steps small {
  display: block;
}

.campaign-builder-steps strong {
  font-size: 10px;
}

.campaign-builder-steps small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 7px;
}

.campaign-side-note {
  position: absolute;
  right: 22px;
  bottom: 22px;
  left: 22px;
  padding: 12px;
  border: 1px solid rgba(34,211,238,.13);
  border-radius: 12px;
  background: rgba(34,211,238,.045);
}

.campaign-side-note strong {
  font-size: 9px;
}

.campaign-side-note p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 8px;
}

.campaign-builder-main {
  min-width: 0;
  padding: 42px clamp(24px,5vw,70px);
}

.campaign-builder-card {
  max-width: 880px;
  margin: 0 auto;
}

.campaign-builder-card > h1 {
  margin: 8px 0;
  font-size: clamp(31px,4vw,47px);
  letter-spacing: -.045em;
}

.campaign-builder-intro {
  max-width: 680px;
  margin: 0 0 28px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}

.campaign-form {
  padding: 20px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(255,255,255,.018);
}

.campaign-builder-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;
  margin-top: 20px;
}

.campaign-builder-section {
  margin-top: 16px;
  padding: 18px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(255,255,255,.018);
}

.campaign-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 13px;
}

.campaign-section-head h3,
.campaign-section-head p {
  margin: 0;
}

.campaign-section-head p {
  margin-top: 3px;
  color: var(--muted);
  font-size: 9px;
}

.deliverable-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.deliverable-card {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 13px;
  border: 1px solid var(--border);
  border-radius: 13px;
  background: rgba(255,255,255,.018);
  text-align: left;
}

.deliverable-card.selected {
  border-color: rgba(139,92,246,.42);
  background: rgba(139,92,246,.08);
}

.deliverable-card > span {
  display: grid;
  width: 35px;
  height: 35px;
  place-items: center;
  border-radius: 10px;
  background: rgba(139,92,246,.1);
  color: #bca6fb;
}

.deliverable-card strong {
  display: block;
  font-size: 10px;
}

.deliverable-card p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 8px;
}

.deliverable-card > i {
  display: grid;
  width: 24px;
  height: 24px;
  place-items: center;
  border-radius: 8px;
  background: rgba(255,255,255,.045);
  font-size: 9px;
  font-style: normal;
}

.deliverable-card.selected > i {
  background: var(--success);
  color: #07130e;
}

.campaign-talent-list {
  display: grid;
  gap: 7px;
}

.campaign-talent-row {
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto auto;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: rgba(255,255,255,.018);
  text-align: left;
}

.campaign-talent-row.selected {
  border-color: rgba(55,211,154,.24);
  background: rgba(55,211,154,.045);
}

.campaign-talent-row strong,
.campaign-talent-row small {
  display: block;
}

.campaign-talent-row strong {
  font-size: 10px;
}

.campaign-talent-row small {
  color: var(--muted);
  font-size: 8px;
}

.campaign-talent-row em {
  color: var(--success);
  font-size: 8px;
  font-style: normal;
}

.campaign-talent-row > i {
  min-width: 54px;
  color: var(--muted);
  font-size: 8px;
  font-style: normal;
  text-align: right;
}

.campaign-review-grid {
  display: grid;
  grid-template-columns: minmax(0,1.2fr) minmax(260px,.8fr);
  gap: 14px;
}

.campaign-review-grid > section,
.campaign-review-grid > aside {
  padding: 20px;
  border: 1px solid var(--border);
  border-radius: 18px;
  background: rgba(255,255,255,.018);
}

.campaign-review-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--muted);
  font-size: 8px;
}

.campaign-review-head strong {
  color: var(--warning);
}

.campaign-review-grid h2 {
  margin: 14px 0 3px;
  font-size: 24px;
}

.campaign-review-grid section > p {
  margin: 0;
  color: var(--muted);
  font-size: 9px;
}

.campaign-review-list {
  display: grid;
  gap: 8px;
  margin-top: 20px;
}

.campaign-review-list > span {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 9px 0;
  border-bottom: 1px solid var(--soft-border);
}

.campaign-review-list small {
  color: var(--muted);
  font-size: 8px;
}

.campaign-review-list strong {
  font-size: 9px;
  text-align: right;
}

.campaign-review-talent {
  display: grid;
  gap: 8px;
  margin-top: 13px;
}

.campaign-review-talent > span {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px;
  border-radius: 10px;
  background: rgba(255,255,255,.025);
}

.campaign-review-talent strong,
.campaign-review-talent small {
  display: block;
  font-size: 8px;
}

.campaign-review-talent small {
  color: var(--success);
}

.unconfigured-fee {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 16px;
  padding: 11px;
  border: 1px solid rgba(34,211,238,.14);
  border-radius: 11px;
  background: rgba(34,211,238,.045);
}

.unconfigured-fee > span {
  color: var(--cyan);
}

.unconfigured-fee strong {
  display: block;
  font-size: 9px;
}

.unconfigured-fee p {
  margin: 3px 0 0;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.5;
}

.campaign-confirm {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin-top: 16px;
  color: var(--muted);
  font-size: 9px;
}

.campaign-kanban-status {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
  color: var(--muted);
}

.kanban-progress {
  height: 5px;
  margin: 11px 0;
  overflow: hidden;
  border-radius: 9px;
  background: var(--graphite-3);
}

.kanban-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,var(--violet),var(--cyan));
}

/* Offers */
.offer-builder-layout,
.offer-detail-layout,
.contract-detail-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 340px;
  align-items: start;
  gap: 15px;
}

.offer-builder-form,
.offer-detail-layout > main {
  min-width: 0;
}

.offer-builder-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-top: 13px;
}

.offer-talent-summary {
  display: grid;
  gap: 12px;
}

.offer-talent-cover {
  position: relative;
  height: 155px;
  margin: -20px -20px 0;
  overflow: hidden;
  border-radius: 20px 20px 0 0;
}

.offer-talent-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.offer-talent-title {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: -31px;
}

.offer-talent-title .avatar {
  position: relative;
  border: 3px solid var(--graphite);
}

.offer-talent-title strong,
.offer-talent-title small {
  display: block;
}

.offer-talent-title strong {
  font-size: 11px;
}

.offer-talent-title small {
  color: var(--muted);
  font-size: 8px;
}

.offer-talent-summary .panel > p {
  color: var(--muted);
  font-size: 9px;
}

.offer-talent-stats {
  display: grid;
  grid-template-columns: 1fr 1fr;
  margin: 13px 0;
  border: 1px solid var(--soft-border);
  border-radius: 10px;
}

.offer-talent-stats span {
  padding: 9px;
}

.offer-talent-stats span:first-child {
  border-right: 1px solid var(--soft-border);
}

.offer-talent-stats small,
.offer-talent-stats strong {
  display: block;
}

.offer-talent-stats small {
  color: var(--muted);
  font-size: 7px;
}

.offer-talent-stats strong {
  margin-top: 2px;
  font-size: 10px;
}

.offer-talent-summary .btn {
  width: 100%;
}

.offer-summary-card {
  padding: 17px;
  border: 1px solid var(--border);
  border-radius: 17px;
  background: rgba(23,23,39,.75);
}

.offer-summary-card > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 9px 0;
  border-bottom: 1px solid var(--soft-border);
  color: var(--muted);
  font-size: 8px;
}

.offer-summary-card > div strong {
  color: var(--snow);
}

.not-configured {
  color: var(--cyan) !important;
}

.offer-summary-card > p {
  margin: 11px 0 0;
  color: var(--muted);
  font-size: 8px;
  line-height: 1.5;
}

.offers-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  margin: 22px 0 12px;
}

.offers-toolbar .filter-row {
  margin: 0;
}

.offers-toolbar .select {
  width: 160px;
}

.offers-list {
  display: grid;
  gap: 9px;
}

.offer-list-card {
  display: grid;
  grid-template-columns: minmax(190px,1.2fr) minmax(150px,1fr) minmax(120px,.7fr) auto auto;
  align-items: center;
  gap: 14px;
  padding: 13px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: rgba(23,23,39,.72);
}

.offer-list-person {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.offer-list-person strong,
.offer-list-person small,
.offer-list-campaign small,
.offer-list-campaign strong,
.offer-list-campaign span,
.offer-list-value small,
.offer-list-value strong,
.offer-list-value span {
  display: block;
}

.offer-list-person strong,
.offer-list-campaign strong,
.offer-list-value strong {
  font-size: 10px;
}

.offer-list-person small,
.offer-list-campaign small,
.offer-list-campaign span,
.offer-list-value small,
.offer-list-value span {
  color: var(--muted);
  font-size: 7px;
}

.offer-list-campaign span,
.offer-list-value span {
  margin-top: 3px;
}

.offer-detail-head,
.contract-document-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 15px;
}

.offer-detail-head h1,
.contract-document-head h1 {
  margin: 5px 0;
  font-size: clamp(30px,4vw,44px);
}

.offer-detail-head p,
.contract-document-head p {
  margin: 0;
  color: var(--muted);
  font-size: 11px;
}

.offer-detail-head > div:last-child,
.contract-document-head > div:last-child {
  display: flex;
  align-items: center;
  gap: 8px;
}

.offer-role-banner {
  display: flex;
  align-items: center;
  gap: 11px;
  margin-bottom: 14px;
  padding: 12px 14px;
  border: 1px solid rgba(139,92,246,.18);
  border-radius: 14px;
  background: rgba(139,92,246,.055);
}

.offer-role-banner > span {
  display: grid;
  width: 33px;
  height: 33px;
  flex: 0 0 33px;
  place-items: center;
  border-radius: 10px;
  background: rgba(139,92,246,.12);
  color: #c3b1fa;
}

.offer-role-banner strong {
  font-size: 10px;
}

.offer-role-banner p {
  margin: 2px 0 0;
  color: var(--muted);
  font-size: 8px;
}

.offer-role-banner .btn {
  margin-left: auto;
}

.offer-commercial-summary .panel-head > strong {
  font-size: 23px;
}

.contract-term-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
}

.contract-term-grid > span {
  padding: 11px;
  border: 1px solid var(--soft-border);
  border-radius: 11px;
  background: rgba(255,255,255,.018);
}

.contract-term-grid small,
.contract-term-grid strong {
  display: block;
}

.contract-term-grid small {
  color: var(--muted);
  font-size: 8px;
}

.contract-term-grid strong {
  margin-top: 4px;
  font-size: 9px;
}

.offer-deliverables {
  margin-top: 18px;
}

.offer-deliverables ul {
  display: grid;
  gap: 7px;
  padding: 0;
  list-style: none;
}

.offer-deliverables li {
  padding: 10px;
  border-radius: 10px;
  background: rgba(255,255,255,.023);
}

.offer-deliverables strong,
.offer-deliverables small {
  display: block;
}

.offer-deliverables strong {
  font-size: 9px;
}

.offer-deliverables small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 8px;
}

.offer-message {
  margin-top: 12px;
}

.offer-message p {
  margin-bottom: 0;
  color: #d5d6df;
  font-size: 11px;
  font-style: italic;
  line-height: 1.7;
}

.offer-detail-layout > aside,
.contract-side {
  display: grid;
  gap: 12px;
}

.negotiation-timeline,
.contract-progress {
  display: grid;
}

.negotiation-timeline > span,
.contract-progress > span {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 7px 0 15px;
}

.negotiation-timeline > span::after,
.contract-progress > span::after {
  position: absolute;
  top: 32px;
  bottom: -3px;
  left: 13px;
  width: 1px;
  background: var(--border);
  content: "";
}

.negotiation-timeline > span:last-child::after,
.contract-progress > span:last-child::after {
  display: none;
}

.negotiation-timeline i,
.contract-progress i {
  display: grid;
  width: 27px;
  height: 27px;
  flex: 0 0 27px;
  place-items: center;
  border-radius: 9px;
  background: rgba(255,255,255,.045);
  color: var(--muted);
  font-size: 8px;
  font-style: normal;
}

.negotiation-timeline .done i,
.contract-progress .done i {
  background: rgba(55,211,154,.12);
  color: var(--success);
}

.negotiation-timeline .active i,
.contract-progress .active i {
  background: var(--violet);
  color: white;
}

.negotiation-timeline strong,
.negotiation-timeline small,
.contract-progress strong,
.contract-progress small {
  display: block;
}

.negotiation-timeline strong,
.contract-progress strong {
  font-size: 9px;
}

.negotiation-timeline small,
.contract-progress small {
  margin-top: 2px;
  color: var(--muted);
  font-size: 7px;
}

.offer-detail-actions p,
.contract-action-panel p {
  color: var(--muted);
  font-size: 9px;
  line-height: 1.55;
}

.offer-detail-actions .btn,
.contract-action-panel .btn {
  width: 100%;
  margin-top: 8px;
}

.offer-detail-actions .text-link {
  width: 100%;
  margin-top: 13px;
}

/* Contract document */
.contract-document-head > div:last-child {
  flex-wrap: wrap;
  justify-content: flex-end;
}

.contract-detail-layout {
  grid-template-columns: minmax(0,1fr) 330px;
}

.contract-document {
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: 20px;
  background: linear-gradient(145deg,rgba(29,29,47,.91),rgba(18,18,30,.97));
}

.contract-parties {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 20px;
  padding: 24px;
  border-bottom: 1px solid var(--border);
  background: rgba(139,92,246,.045);
}

.contract-parties > span:last-child {
  text-align: right;
}

.contract-parties small,
.contract-parties strong,
.contract-parties p {
  display: block;
  margin: 0;
}

.contract-parties small {
  color: var(--muted);
  font-size: 8px;
}

.contract-parties strong {
  margin: 5px 0 2px;
  font-size: 15px;
}

.contract-parties p {
  color: var(--muted);
  font-size: 8px;
}

.contract-parties > i {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border: 1px solid var(--border);
  border-radius: 12px;
  color: var(--muted);
  font-style: normal;
}

.contract-block {
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 15px;
  padding: 22px 24px;
  border-bottom: 1px solid var(--soft-border);
}

.contract-block:last-child {
  border-bottom: 0;
}

.contract-number {
  display: grid;
  width: 31px;
  height: 31px;
  place-items: center;
  border-radius: 10px;
  background: rgba(139,92,246,.1);
  color: #bda8f9;
  font-size: 8px;
  font-weight: 900;
}

.contract-block h3 {
  margin: 4px 0 9px;
  font-size: 15px;
}

.contract-block p,
.contract-block li {
  color: var(--muted);
  font-size: 9px;
  line-height: 1.65;
}

.contract-value-box {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: 8px;
}

.contract-value-box > span {
  padding: 10px;
  border: 1px solid var(--soft-border);
  border-radius: 10px;
  background: rgba(255,255,255,.018);
}

.contract-value-box small,
.contract-value-box strong {
  display: block;
}

.contract-value-box small {
  color: var(--muted);
  font-size: 7px;
}

.contract-value-box strong {
  margin-top: 4px;
  font-size: 9px;
}

.contract-action-panel > small {
  display: block;
  margin-top: 10px;
  color: var(--muted-2);
  font-size: 7px;
  text-align: center;
}

@media (max-width: 1180px) {
  .marketplace-grid {
    grid-template-columns: 1fr;
  }

  .marketplace-talent-card {
    grid-template-columns: 240px minmax(0,1fr);
  }

  .offer-list-card {
    grid-template-columns: minmax(190px,1.1fr) minmax(150px,1fr) auto auto;
  }

  .offer-list-value {
    display: none;
  }
}

@media (max-width: 900px) {
  .marketplace-overview,
  .campaign-summary-strip,
  .offers-metric-strip,
  .contract-metric-strip {
    grid-template-columns: repeat(2,1fr);
  }

  .campaign-builder-shell {
    grid-template-columns: 1fr;
  }

  .campaign-builder-side {
    min-height: 0;
    padding: 22px;
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }

  .campaign-builder-mark,
  .campaign-builder-side > p,
  .campaign-side-note {
    display: none;
  }

  .campaign-builder-side h2 {
    margin-bottom: 18px;
  }

  .campaign-builder-steps {
    grid-template-columns: repeat(3,1fr);
    margin: 0;
  }

  .campaign-builder-steps > span {
    justify-content: center;
  }

  .campaign-builder-steps > span > div {
    display: none;
  }

  .campaign-builder-main {
    padding: 35px 5%;
  }

  .offer-builder-layout,
  .offer-detail-layout,
  .contract-detail-layout {
    grid-template-columns: 1fr;
  }

  .offer-talent-summary,
  .offer-detail-layout > aside,
  .contract-side {
    grid-template-columns: 1fr 1fr;
  }

  .offer-talent-summary .profile-safe-card,
  .contract-side .profile-safe-card {
    grid-column: 1/-1;
  }

  .offer-list-card {
    grid-template-columns: minmax(0,1fr) auto auto;
  }

  .offer-list-campaign,
  .offer-list-value {
    display: none;
  }
}

@media (max-width: 620px) {
  .marketplace-overview,
  .campaign-summary-strip,
  .offers-metric-strip,
  .contract-metric-strip {
    grid-template-columns: repeat(2,1fr);
  }

  .marketplace-search {
    grid-template-columns: auto minmax(0,1fr);
  }

  .marketplace-search .btn {
    grid-column: 1/-1;
    width: 100%;
  }

  .marketplace-selects {
    grid-template-columns: 1fr;
  }

  .marketplace-results-head {
    align-items: stretch;
    flex-direction: column;
  }

  .marketplace-results-head label {
    justify-content: space-between;
  }

  .marketplace-results-head .select {
    width: 190px;
  }

  .marketplace-talent-card {
    grid-template-columns: 1fr;
  }

  .marketplace-talent-media {
    min-height: 230px;
  }

  .marketplace-trust-strip {
    align-items: flex-start;
  }

  .marketplace-trust-strip .text-link {
    display: none;
  }

  .campaign-builder-shell {
    margin-right: -13px;
    margin-left: -13px;
    border-right: 0;
    border-left: 0;
    border-radius: 0;
  }

  .campaign-builder-side {
    padding: 18px;
  }

  .campaign-builder-side h2 {
    font-size: 22px;
  }

  .campaign-builder-main {
    padding: 27px 18px 40px;
  }

  .campaign-builder-card > h1 {
    font-size: 33px;
  }

  .deliverable-grid,
  .campaign-review-grid,
  .offer-talent-summary,
  .offer-detail-layout > aside,
  .contract-side {
    grid-template-columns: 1fr;
  }

  .campaign-talent-row {
    grid-template-columns: auto minmax(0,1fr) auto;
  }

  .campaign-talent-row em {
    display: none;
  }

  .campaign-builder-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .campaign-builder-actions .btn {
    min-width: 0;
    padding-inline: 9px;
  }

  .offers-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .offers-toolbar .filter-row {
    flex-wrap: nowrap;
    overflow-x: auto;
  }

  .offers-toolbar .filter-pill {
    white-space: nowrap;
  }

  .offers-toolbar .select {
    width: 100%;
  }

  .offer-list-card {
    grid-template-columns: minmax(0,1fr) auto;
  }

  .offer-list-card > .badge {
    grid-column: 1;
    width: max-content;
  }

  .offer-list-card > .btn {
    grid-column: 2;
    grid-row: 1/3;
  }

  .offer-detail-head,
  .contract-document-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .offer-detail-head > div:last-child,
  .contract-document-head > div:last-child {
    width: 100%;
    justify-content: space-between;
  }

  .offer-role-banner {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .offer-role-banner .btn {
    width: 100%;
    margin-left: 0;
  }

  .contract-term-grid,
  .contract-value-box {
    grid-template-columns: 1fr;
  }

  .contract-parties {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .contract-parties > span:last-child {
    text-align: left;
  }

  .contract-parties > i {
    width: 30px;
    height: 30px;
  }

  .contract-block {
    padding: 18px;
  }
}

@media (min-width: 901px) {
  .marketplace-talent-body > p,
  .campaign-builder-intro,
  .offer-detail-head p,
  .contract-document-head p,
  .offer-message p {
    font-size: 13px;
  }

  .marketplace-talent-name strong,
  .marketplace-overview small,
  .campaign-summary-strip small,
  .offers-metric-strip small,
  .contract-metric-strip small,
  .campaign-builder-side > p,
  .campaign-builder-steps strong,
  .deliverable-card strong,
  .campaign-talent-row strong,
  .offer-list-person strong,
  .offer-list-campaign strong,
  .offer-list-value strong,
  .contract-block p,
  .contract-block li {
    font-size: 11px;
  }
}

/* Keep the approved typography lock last in the cascade. */
:is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.content-builder-page,.content-detail-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.campaign-builder-page,.offer-builder-page,.offers-page,.offer-detail-page,.contracts-page,.contract-detail-page) p {
  font-size: var(--approved-card-copy);
  line-height: 1.55;
}

:is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.content-builder-page,.content-detail-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.campaign-builder-page,.offer-builder-page,.offers-page,.offer-detail-page,.contracts-page,.contract-detail-page) :is(small,em) {
  font-size: var(--approved-meta-copy);
}

:is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.offer-builder-page,.offers-page,.contracts-page) :is(.page-header,.section-head) p,
.content-builder-page .content-builder-intro,
.content-detail-page .content-detail-head p,
.campaign-builder-page .campaign-builder-intro,
.offer-detail-page .offer-detail-head p,
.contract-detail-page .contract-document-head p {
  font-size: var(--approved-page-copy);
  line-height: 1.6;
}

:is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.content-builder-page,.content-detail-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.campaign-builder-page,.offer-builder-page,.offers-page,.offer-detail-page,.contracts-page,.contract-detail-page) .badge {
  font-size: var(--approved-micro-copy);
}

:is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.content-builder-page,.content-detail-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.campaign-builder-page,.offer-builder-page,.offers-page,.offer-detail-page,.contracts-page,.contract-detail-page) .btn {
  font-size: var(--approved-card-copy);
}

@media (min-width: 901px) {
  :is(.wallet-page,.checkout-page,.receipt-page,.payout-page,.billing-page,.creator-content-page,.content-builder-page,.content-detail-page,.creator-profile-page,.live-room-page,.studio-live-page,.marketplace-page,.campaign-builder-page,.offer-builder-page,.offers-page,.offer-detail-page,.contracts-page,.contract-detail-page) .btn {
    font-size: 13px;
  }
}

/* Explicit metadata that is not rendered through <small>. */
.creator-content-meta,
.content-view-note,
.content-review-meta span,
.content-engagement-bar button,
.content-engagement-bar > span,
.content-comment-list button,
.content-builder-steps strong,
.content-builder-steps i,
.content-rights-confirm,
.demo-card span,
.wallet-control-row,
.transaction-ref,
.checkout-method strong,
.checkout-billing-grid strong,
.finance-disclosure strong,
.checkout-line,
.checkout-balance,
.not-configured,
.quick-amounts button,
.bank-destination strong,
.invoice-main strong,
.invoice-row > div > strong {
  font-size: var(--approved-meta-copy);
}

.creator-content-body h3,
.content-type-card strong,
.content-choice-card strong,
.content-side-note strong,
.content-section-head h3,
.content-setting-list strong,
.content-check-list strong,
.content-comment-list strong,
.content-danger-zone strong,
.receipt-note strong {
  font-size: var(--approved-card-copy);
}

.receipt-items > div,
.receipt-parties strong,
.receipt-brand strong,
.receipt-actions p,
.invoice-row,
.payment-method-card > p {
  font-size: var(--approved-card-copy);
}

.receipt-items > div:first-child,
.content-metric-strip small {
  font-size: var(--approved-micro-copy);
}

.content-metric-strip em {
  font-size: var(--approved-meta-copy);
}

.wallet-layout > section,
.billing-layout > section {
  min-width: 0;
}

.wallet-page .data-table-wrap,
.billing-page .data-table-wrap {
  width: 100%;
  max-width: 100%;
}

/* Erotic 18+ — isolated restricted category */
.erotic-hub-page,
.erotic-policy-page,
.erotic-setup-page,
.erotic-home-control-page,
.erotic-home-insights-page,
.erotic-home-billing-page,
.erotic-home-payouts-page,
.erotic-home-payout-admin-page,
.erotic-home-ops-page,
.verification-page,
.settings-page,
.moderation-page {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}

.restricted-filter {
  border-color: rgba(244,114,182,.28);
  color: #f9a8d4;
  background: rgba(190,24,93,.07);
}

.restricted-filter:hover,
.restricted-filter.verified {
  border-color: rgba(244,114,182,.58);
  color: #fce7f3;
  background: rgba(190,24,93,.14);
}

.adult-gate-mark {
  display: grid;
  width: 64px;
  height: 64px;
  margin-bottom: 17px;
  place-items: center;
  border: 1px solid rgba(244,114,182,.38);
  border-radius: 50%;
  color: #f9a8d4;
  background: radial-gradient(circle,rgba(190,24,93,.18),rgba(190,24,93,.04));
  font-size: 19px;
  font-weight: 900;
  box-shadow: 0 0 34px rgba(190,24,93,.13);
}

.adult-gate-checks,
.adult-policy-list {
  display: grid;
  gap: 8px;
  margin: 18px 0;
}

.adult-gate-checks > span,
.adult-policy-list > span {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 10px;
  border-radius: 10px;
  background: rgba(255,255,255,.022);
}

.adult-gate-checks i,
.adult-policy-list i {
  display: grid;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  place-items: center;
  border-radius: 50%;
  color: var(--success);
  background: rgba(34,197,94,.08);
  font-style: normal;
}

.adult-gate-checks > span:nth-child(4) i,
.adult-policy-list .blocked i {
  color: #fda4af;
  background: rgba(244,63,94,.08);
}

.adult-gate-checks strong,
.adult-gate-checks small,
.adult-policy-list strong,
.adult-policy-list small {
  display: block;
}

.adult-gate-checks strong,
.adult-policy-list strong { font-size: 12px; }
.adult-gate-checks small,
.adult-policy-list small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.5; }

.adult-consent {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 12px;
  border: 1px solid rgba(244,114,182,.16);
  border-radius: 11px;
  color: var(--muted-2);
  background: rgba(190,24,93,.045);
  font-size: 11px;
  line-height: 1.5;
}

.adult-consent input { margin-top: 2px; accent-color: #ec4899; }
.adult-demo-note { display: block; margin-top: 9px; color: var(--muted); font-size: 11px; text-align: center; }

.adult-access-page {
  display: flex;
  align-items: center;
  flex-direction: column;
  max-width: 680px;
  margin: 8vh auto;
  padding: 42px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 24px;
  background: radial-gradient(circle at 50% 0,rgba(190,24,93,.14),transparent 45%),rgba(23,23,39,.72);
  text-align: center;
}

.adult-access-page h1 { margin: 9px 0; font-size: clamp(30px,5vw,50px); }
.adult-access-page p { max-width: 520px; margin: 0 0 20px; color: var(--muted); }
.adult-disabled .empty-icon { width: 70px; border-color: rgba(244,114,182,.25); color: #f9a8d4; }
.adult-gate-mark.compact { width: 44px; height: 44px; margin: 0; font-size: 13px; }

.badge.adult {
  border: 1px solid rgba(244,114,182,.3);
  color: #fbcfe8;
  background: rgba(190,24,93,.15);
}

.adult-policy-banner {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 14px;
  background: linear-gradient(90deg,rgba(190,24,93,.1),rgba(139,92,246,.05));
}

.adult-policy-banner > span {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.15);
  font-weight: 900;
}

.adult-policy-banner strong { display: block; font-size: 12px; }
.adult-policy-banner p { margin: 4px 0 0; color: var(--muted); }
.adult-policy-banner .text-link { margin-left: auto; white-space: nowrap; }

.adult-filter-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
}

.adult-filter-row > span {
  margin-left: auto;
  padding: 7px 10px;
  border-radius: 8px;
  color: #fda4af;
  background: rgba(244,63,94,.07);
  font-size: 11px;
  font-weight: 800;
}

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

.erotic-card {
  overflow: hidden;
  border: 1px solid rgba(244,114,182,.15);
  border-radius: 17px;
  background: rgba(23,23,39,.76);
}

.erotic-card-media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 4/3;
  overflow: hidden;
  border: 0;
  color: white;
  background: var(--graphite-2);
  cursor: pointer;
}

.erotic-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(3px) saturate(.72) brightness(.72);
  transform: scale(1.04);
}

.erotic-card-media > span,
.restricted-modal-preview > span {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,rgba(8,8,14,.1),rgba(8,8,14,.74));
}

.erotic-card-media > i,
.restricted-modal-preview > i {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  color: #fbcfe8;
  background: rgba(190,24,93,.62);
  font-size: 12px;
  font-style: normal;
  font-weight: 900;
}

.erotic-card-media > em {
  position: absolute;
  z-index: 2;
  right: 12px;
  bottom: 11px;
  padding: 6px 8px;
  border-radius: 7px;
  color: white;
  background: rgba(8,8,14,.72);
  font-style: normal;
}

.erotic-card > div { padding: 16px; }
.erotic-card h3 { margin: 8px 0 5px; }
.erotic-card p { min-height: 56px; margin: 0; color: var(--muted); }
.erotic-card-meta { display: flex; justify-content: space-between; gap: 9px; margin: 14px 0; padding-top: 12px; border-top: 1px solid var(--soft-border); color: var(--muted-2); font-size: 11px; }
.erotic-card .btn { width: 100%; }

.verification-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  padding: 20px;
  border: 1px solid rgba(244,114,182,.22);
  border-radius: 18px;
  background:
    radial-gradient(circle at 10% 0,rgba(244,114,182,.16),transparent 34%),
    linear-gradient(135deg,rgba(190,24,93,.1),rgba(23,23,39,.74) 55%,rgba(34,211,238,.035));
}

.verification-hero h2 {
  margin: 5px 0 7px;
}

.verification-hero p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
}

.verification-status-grid,
.verification-admin-metrics,
.moderation-policy-strip {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.verification-status-card,
.verification-admin-metrics > span,
.moderation-policy-strip article {
  padding: 15px;
  border: 1px solid var(--soft-border);
  border-radius: 15px;
  background: rgba(255,255,255,.018);
}

.verification-status-card.success { border-color: rgba(34,197,94,.24); background: rgba(34,197,94,.04); }
.verification-status-card.warning { border-color: rgba(245,158,11,.25); background: rgba(245,158,11,.045); }
.verification-status-card.danger { border-color: rgba(244,63,94,.25); background: rgba(244,63,94,.045); }

.verification-status-card > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.verification-status-card h3 {
  margin: 0 0 7px;
}

.verification-status-card p {
  min-height: 44px;
  margin: 0 0 14px;
  color: var(--muted);
}

.verification-status-card .btn {
  width: 100%;
}

.verification-panel {
  margin-bottom: 16px;
}

.verification-check-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
}

.verification-check-grid > span {
  display: flex;
  gap: 10px;
  padding: 12px;
  border-radius: 12px;
  background: rgba(255,255,255,.025);
}

.verification-check-grid i {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  border-radius: 50%;
  color: var(--success);
  background: rgba(34,197,94,.08);
  font-style: normal;
  font-weight: 900;
}

.verification-check-grid strong,
.verification-check-grid small {
  display: block;
}

.verification-check-grid small {
  margin-top: 3px;
  color: var(--muted);
}

.verification-admin-metrics > span {
  display: grid;
  gap: 5px;
}

.verification-admin-metrics small,
.verification-admin-metrics em {
  color: var(--muted);
  font-style: normal;
}

.verification-admin-metrics strong {
  font-size: clamp(20px,3vw,30px);
}

.verification-table td:first-child small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
}

.table-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 6px;
}

.verification-log {
  display: grid;
  gap: 7px;
  margin-top: 16px;
  padding: 14px;
  border: 1px solid rgba(244,114,182,.16);
  border-radius: 14px;
  background: rgba(190,24,93,.04);
}

.verification-log p {
  margin: 0;
  color: var(--muted-2);
}

.moderation-policy-strip {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

.moderation-policy-strip article {
  display: flex;
  align-items: flex-start;
  gap: 11px;
}

.policy-hero {
  display: grid;
  grid-template-columns: minmax(0,1.4fr) minmax(280px,.6fr);
  gap: 16px;
  margin-bottom: 16px;
  padding: 22px;
  border: 1px solid rgba(244,114,182,.24);
  border-radius: 20px;
  background:
    radial-gradient(circle at 8% 0,rgba(244,114,182,.18),transparent 36%),
    linear-gradient(135deg,rgba(190,24,93,.12),rgba(23,23,39,.76) 58%,rgba(34,211,238,.035));
}

.policy-hero h2 {
  max-width: 900px;
  margin: 7px 0 9px;
  font-size: clamp(28px,4vw,48px);
  letter-spacing: -.045em;
}

.policy-hero p {
  max-width: 860px;
  margin: 0;
  color: var(--muted);
}

.policy-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 18px;
}

.policy-hero aside {
  display: grid;
  align-content: start;
  gap: 8px;
  padding: 17px;
  border: 1px solid rgba(34,211,238,.15);
  border-radius: 16px;
  background: rgba(255,255,255,.025);
}

.policy-hero aside > span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 14px;
  color: #cffafe;
  background: rgba(34,211,238,.1);
  font-weight: 900;
}

.policy-hero aside strong,
.policy-card strong,
.policy-home-grid strong,
.policy-flow strong {
  display: block;
}

.policy-summary-grid,
.policy-home-grid,
.policy-flow {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.policy-card,
.policy-home-grid > span,
.policy-flow article,
.policy-panel {
  border: 1px solid var(--soft-border);
  border-radius: 16px;
  background: rgba(255,255,255,.02);
}

.policy-card {
  display: flex;
  gap: 12px;
  padding: 15px;
}

.policy-card.success { border-color: rgba(34,197,94,.23); background: rgba(34,197,94,.04); }
.policy-card.danger { border-color: rgba(244,63,94,.26); background: rgba(244,63,94,.045); }

.policy-card > span,
.policy-flow article > span {
  display: grid;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  place-items: center;
  border-radius: 12px;
  color: #fbcfe8;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.policy-card p,
.policy-home-grid p,
.policy-flow p,
.policy-panel p {
  margin: 5px 0 0;
  color: var(--muted);
}

.policy-split {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 16px;
  margin-bottom: 16px;
}

.policy-panel {
  padding: 16px;
}

.policy-panel.blocked {
  border-color: rgba(244,63,94,.18);
  background: rgba(244,63,94,.025);
}

.policy-list {
  display: grid;
  gap: 9px;
  padding: 0;
  margin: 16px 0 0;
  list-style: none;
}

.policy-list li {
  display: flex;
  gap: 10px;
  padding: 12px;
  border-radius: 12px;
  background: rgba(255,255,255,.025);
}

.policy-list i {
  display: grid;
  width: 26px;
  height: 26px;
  flex: 0 0 26px;
  place-items: center;
  border-radius: 50%;
  color: var(--success);
  background: rgba(34,197,94,.08);
  font-style: normal;
  font-weight: 900;
}

.policy-list.blocked i {
  color: #fda4af;
  background: rgba(244,63,94,.09);
}

.policy-list strong,
.policy-list p {
  display: block;
}

.policy-home-grid {
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin: 15px 0 0;
}

.policy-home-grid > span {
  padding: 14px;
}

.policy-flow article {
  padding: 15px;
}

.policy-flow article > span {
  margin-bottom: 12px;
}

.policy-disclaimer {
  margin-top: 0;
}

.home-setup-shell {
  display: grid;
  grid-template-columns: minmax(270px,.35fr) minmax(0,1fr);
  gap: 16px;
  align-items: start;
}

.home-setup-side,
.home-setup-card {
  border: 1px solid rgba(244,114,182,.18);
  border-radius: 20px;
  background: rgba(23,23,39,.72);
}

.home-setup-side {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 12px;
  padding: 18px;
}

.home-setup-mark {
  display: grid;
  width: 56px;
  height: 56px;
  place-items: center;
  border: 1px solid rgba(244,114,182,.28);
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.13);
  font-weight: 900;
}

.home-setup-side h2 {
  margin: 0;
}

.home-setup-side p {
  margin: 0;
  color: var(--muted);
}

.home-setup-steps {
  display: grid;
  gap: 8px;
}

.home-setup-steps button {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid var(--soft-border);
  border-radius: 12px;
  color: var(--muted);
  background: rgba(255,255,255,.018);
  text-align: left;
}

.home-setup-steps button.active,
.home-setup-steps button.done {
  border-color: rgba(244,114,182,.34);
  color: var(--snow);
  background: rgba(190,24,93,.08);
}

.home-setup-steps i {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 9px;
  background: rgba(244,114,182,.11);
  color: #fbcfe8;
  font-style: normal;
  font-weight: 900;
}

.home-setup-steps strong,
.home-setup-steps small,
.home-setup-status strong,
.home-setup-status span,
.home-setup-mini-policy strong {
  display: block;
}

.home-setup-status,
.home-setup-mini-policy {
  padding: 13px;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  background: rgba(255,255,255,.02);
}

.home-setup-status.success { border-color: rgba(34,197,94,.24); background: rgba(34,197,94,.045); }
.home-setup-status.warning { border-color: rgba(245,158,11,.24); background: rgba(245,158,11,.045); }
.home-setup-status.danger { border-color: rgba(244,63,94,.24); background: rgba(244,63,94,.045); }

.home-setup-status > span {
  color: var(--muted);
}

.home-setup-status strong {
  margin-top: 4px;
  font-size: clamp(20px,3vw,28px);
}

.home-setup-card {
  padding: 22px;
}

.home-setup-card h1 {
  margin: 7px 0 9px;
  font-size: clamp(30px,4vw,50px);
  letter-spacing: -.045em;
}

.home-setup-intro {
  max-width: 860px;
  margin: 0 0 18px;
  color: var(--muted);
}

.home-setup-check-grid,
.home-camera-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 16px;
}

.home-setup-check-grid button,
.home-camera-grid button {
  min-width: 0;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  color: var(--muted-2);
  background: rgba(255,255,255,.02);
  text-align: left;
}

.home-setup-check-grid button {
  display: flex;
  gap: 11px;
  padding: 13px;
}

.home-setup-check-grid button.selected,
.home-camera-grid button.selected {
  border-color: rgba(34,197,94,.28);
  background: rgba(34,197,94,.045);
}

.home-setup-check-grid i {
  display: grid;
  width: 28px;
  height: 28px;
  flex: 0 0 28px;
  place-items: center;
  border-radius: 50%;
  color: var(--success);
  background: rgba(34,197,94,.09);
  font-style: normal;
  font-weight: 900;
}

.home-setup-check-grid strong,
.home-camera-grid strong {
  display: block;
}

.home-setup-check-grid p,
.home-camera-grid p {
  margin: 4px 0 0;
  color: var(--muted);
}

.home-camera-grid button {
  padding: 8px;
}

.home-camera-grid button > span {
  position: relative;
  display: block;
  aspect-ratio: 16/9;
  overflow: hidden;
  border-radius: 11px;
  background: #09090f;
}

.home-camera-grid img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.8) brightness(.72);
}

.home-camera-grid i {
  position: absolute;
  top: 8px;
  right: 8px;
  padding: 4px 6px;
  border-radius: 7px;
  color: #07130d;
  background: var(--success);
  font-style: normal;
  font-weight: 900;
}

.home-camera-grid strong,
.home-camera-grid p {
  margin-right: 5px;
  margin-left: 5px;
}

.home-camera-grid strong {
  margin-top: 10px;
}

.home-setup-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.home-setup-form-preview,
.home-setup-review-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.8fr);
  gap: 16px;
  align-items: start;
}

.home-setup-preview-card {
  overflow: hidden;
  border: 1px solid rgba(244,114,182,.18);
  border-radius: 17px;
  background: rgba(255,255,255,.022);
}

.home-setup-preview-card > div:last-child {
  padding: 15px;
}

.home-setup-preview-media {
  position: relative;
  aspect-ratio: 16/10;
  overflow: hidden;
}

.home-setup-preview-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: blur(2px) saturate(.78) brightness(.72);
  transform: scale(1.02);
}

.home-setup-preview-media i,
.home-setup-preview-media em {
  position: absolute;
  z-index: 2;
  font-style: normal;
  font-weight: 900;
}

.home-setup-preview-media i {
  top: 12px;
  left: 12px;
  display: grid;
  width: 42px;
  height: 42px;
  place-items: center;
  border-radius: 50%;
  color: #fbcfe8;
  background: rgba(190,24,93,.55);
}

.home-setup-preview-media em {
  right: 12px;
  bottom: 12px;
  padding: 6px 8px;
  border-radius: 7px;
  color: white;
  background: rgba(8,8,14,.72);
}

.home-setup-preview-card h3 {
  margin: 7px 0 5px;
}

.home-setup-preview-meta,
.home-setup-camera-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 12px;
}

.home-setup-preview-meta > span:not(.badge),
.home-setup-camera-tags span {
  padding: 6px 8px;
  border-radius: 8px;
  color: var(--muted-2);
  background: rgba(255,255,255,.035);
}

.home-setup-review-panel {
  padding: 16px;
  border: 1px solid var(--soft-border);
  border-radius: 16px;
  background: rgba(255,255,255,.02);
}

.home-setup-submit-note {
  margin-top: 14px;
  padding: 13px;
  border-radius: 13px;
}

.home-setup-submit-note.ready {
  border: 1px solid rgba(34,197,94,.2);
  background: rgba(34,197,94,.045);
}

.home-setup-submit-note.blocked {
  border: 1px solid rgba(245,158,11,.2);
  background: rgba(245,158,11,.045);
}

.home-setup-submit-note strong {
  display: block;
}

.opportunity-card.restricted-home {
  border-color: rgba(244,114,182,.22);
  background: linear-gradient(145deg,rgba(190,24,93,.08),rgba(23,23,39,.76));
}

.moderation-policy-strip article > span {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.moderation-policy-strip strong {
  display: block;
  font-size: var(--approved-card-copy);
}

.moderation-policy-strip p {
  margin: 4px 0 0;
  color: var(--muted);
}

.erotic-home-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 16px;
  padding: 20px;
  border: 1px solid rgba(244,114,182,.24);
  border-radius: 18px;
  background:
    radial-gradient(circle at 12% 0,rgba(244,114,182,.18),transparent 34%),
    linear-gradient(135deg,rgba(190,24,93,.12),rgba(139,92,246,.07) 50%,rgba(34,211,238,.035));
  box-shadow: 0 22px 60px rgba(0,0,0,.22);
}

.erotic-home-hero h2 {
  margin: 5px 0 7px;
}

.erotic-home-hero p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
}

.erotic-home-hero div div,
.erotic-home-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 13px;
}

.erotic-home-hero div div span,
.erotic-home-meta span {
  padding: 6px 8px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 999px;
  color: var(--muted-2);
  background: rgba(255,255,255,.035);
  font-size: var(--approved-meta-copy);
  font-weight: 800;
}

.erotic-home-rules {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 16px;
}

.erotic-home-rules article,
.erotic-home-creator-panel {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 14px;
  border: 1px solid rgba(244,114,182,.16);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
}

.erotic-home-rules article > span,
.erotic-home-creator-panel > span {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.13);
  font-weight: 900;
}

.erotic-home-rules strong,
.erotic-home-creator-panel strong {
  display: block;
  font-size: var(--approved-card-copy);
}

.erotic-home-rules p,
.erotic-home-creator-panel p {
  margin: 4px 0 0;
  color: var(--muted);
}

.erotic-home-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}

.erotic-home-card {
  overflow: hidden;
  border: 1px solid rgba(244,114,182,.16);
  border-radius: 18px;
  background: rgba(23,23,39,.77);
}

.erotic-home-card.unlocked {
  border-color: rgba(34,197,94,.26);
}

.erotic-home-media {
  position: relative;
  display: block;
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  border: 0;
  color: white;
  background: var(--graphite-2);
  cursor: pointer;
}

.erotic-home-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.82) brightness(.78);
  transition: .24s ease;
}

.erotic-home-card.locked .erotic-home-media img {
  filter: blur(3px) saturate(.7) brightness(.68);
  transform: scale(1.035);
}

.erotic-home-media > i,
.erotic-home-media > em,
.erotic-home-media > b {
  position: absolute;
  z-index: 2;
  font-style: normal;
}

.erotic-home-media > i {
  top: 12px;
  left: 12px;
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 50%;
  color: #fbcfe8;
  background: rgba(190,24,93,.7);
  font-weight: 900;
}

.erotic-home-media > em {
  right: 12px;
  top: 13px;
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(8,8,14,.72);
  font-size: var(--approved-micro-copy);
  font-weight: 900;
}

.erotic-home-media > b {
  left: 12px;
  bottom: 12px;
  padding: 7px 9px;
  border-radius: 8px;
  color: white;
  background: rgba(8,8,14,.72);
  font-size: var(--approved-micro-copy);
}

.erotic-home-card > div {
  padding: 16px;
}

.erotic-home-card h3 {
  margin: 8px 0 6px;
}

.erotic-home-card p {
  min-height: 58px;
  margin: 0;
  color: var(--muted);
}

.erotic-home-card .btn {
  width: 100%;
  margin-top: 14px;
}

.erotic-home-note {
  margin-top: 16px;
}

.erotic-home-room-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 360px;
  gap: 16px;
}

.erotic-home-stage {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  border: 1px solid rgba(244,114,182,.18);
  border-radius: 24px;
  background: var(--graphite-2);
}

.erotic-home-stage img {
  width: 100%;
  height: 100%;
  min-height: 560px;
  object-fit: cover;
  filter: saturate(.9) brightness(.78);
}

.erotic-home-stage.locked img {
  filter: blur(5px) saturate(.7) brightness(.58);
  transform: scale(1.035);
}

.viewer-badge.no-chat {
  color: #fbcfe8;
  border-color: rgba(244,114,182,.22);
  background: rgba(190,24,93,.16);
}

.erotic-home-lock-overlay {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 50%;
  width: min(420px,calc(100% - 36px));
  padding: 24px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(244,114,182,.24);
  border-radius: 18px;
  background: rgba(14,14,24,.88);
  text-align: center;
  backdrop-filter: blur(16px);
}

.erotic-home-lock-overlay > span {
  display: grid;
  width: 54px;
  height: 54px;
  margin: 0 auto 12px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.16);
  font-weight: 900;
}

.erotic-home-lock-overlay strong,
.erotic-home-live-note strong {
  display: block;
  font-size: var(--approved-card-copy);
}

.erotic-home-lock-overlay p,
.erotic-home-live-note p {
  margin: 6px 0 14px;
  color: var(--muted);
}

.erotic-home-live-note {
  position: absolute;
  z-index: 4;
  right: 18px;
  bottom: 18px;
  max-width: 330px;
  padding: 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 14px;
  background: rgba(8,8,14,.68);
  backdrop-filter: blur(12px);
}

.erotic-home-live-note > span {
  display: inline-flex;
  margin-bottom: 7px;
  padding: 5px 8px;
  border-radius: 999px;
  color: white;
  background: #ee3c63;
  font-size: var(--approved-micro-copy);
  font-weight: 900;
}

.erotic-home-camera-strip {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
  margin-top: 12px;
}

.erotic-home-camera-strip button,
.erotic-home-room-list button {
  border: 1px solid var(--soft-border);
  border-radius: 12px;
  color: white;
  background: rgba(255,255,255,.025);
  cursor: pointer;
}

.erotic-home-camera-strip button {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px;
  text-align: left;
}

.erotic-home-camera-strip button.active {
  border-color: rgba(244,114,182,.32);
  background: rgba(190,24,93,.1);
}

.erotic-home-camera-strip span {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.erotic-home-camera-strip strong,
.erotic-home-camera-strip small {
  display: block;
}

.erotic-home-camera-strip small {
  color: var(--muted);
}

.erotic-home-side {
  display: grid;
  gap: 12px;
  align-content: start;
}

.erotic-home-no-chat,
.erotic-home-compliance {
  display: flex;
  align-items: flex-start;
  gap: 11px;
}

.erotic-home-no-chat > span,
.erotic-home-compliance > span {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.13);
  font-weight: 900;
}

.erotic-home-room-list {
  display: grid;
  gap: 9px;
}

.erotic-home-room-list .panel-head {
  margin-bottom: 2px;
}

.erotic-home-room-list button {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px;
  text-align: left;
}

.erotic-home-room-list img {
  width: 46px;
  height: 46px;
  border-radius: 10px;
  object-fit: cover;
  filter: saturate(.8) brightness(.82);
}

.erotic-home-room-list strong,
.erotic-home-room-list small {
  display: block;
}

.erotic-home-room-list small {
  color: var(--muted);
}

.erotic-home-creator-panel {
  margin-top: 12px;
  background: rgba(190,24,93,.05);
}

.erotic-home-creator-panel .btn {
  margin-left: auto;
  white-space: nowrap;
}

.adult-safety-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 16px;
}

.adult-safety-grid article {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 14px;
  border: 1px solid var(--soft-border);
  border-radius: 12px;
  background: rgba(255,255,255,.015);
}

.adult-safety-grid article > span { color: #f9a8d4; font-weight: 900; }
.adult-safety-grid strong { display: block; font-size: 12px; }
.adult-safety-grid p { margin: 4px 0 0; color: var(--muted); }

.restricted-modal-preview {
  position: relative;
  height: 190px;
  margin: -8px -8px 20px;
  overflow: hidden;
  border-radius: 16px;
}

.restricted-modal-preview img { width: 100%; height: 100%; object-fit: cover; filter: blur(5px) brightness(.65); transform: scale(1.05); }

.creator-adult-requirements,
.adult-live-disabled {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 14px;
  padding: 14px;
  border: 1px solid rgba(244,114,182,.18);
  border-radius: 12px;
  background: rgba(190,24,93,.055);
}

.creator-adult-requirements > span,
.adult-live-disabled > span {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.creator-adult-requirements strong,
.adult-live-disabled strong { display: block; font-size: 12px; }
.creator-adult-requirements p,
.adult-live-disabled p { margin: 4px 0 0; color: var(--muted); }
.creator-adult-requirements em { margin-left: auto; color: var(--success); font-size: 11px; font-style: normal; white-space: nowrap; }
.creator-adult-requirements.pending em { color: var(--warning); }

.restricted-builder .content-builder-side,
.adult-review,
.creator-content-card.restricted {
  border-color: rgba(244,114,182,.2);
}

.restricted-builder .content-builder-mark,
.content-side-note.adult {
  border-color: rgba(244,114,182,.2);
  color: #f9a8d4;
  background: rgba(190,24,93,.08);
}

.content-upload-zone.restricted { border-color: rgba(244,114,182,.45); background-color: rgba(190,24,93,.035); }
.content-upload-ready.restricted img,
.content-review-media.restricted img,
.creator-content-media.restricted img,
.content-detail-stage.restricted img { filter: blur(3px) saturate(.75) brightness(.72); transform: scale(1.03); }

.adult-admin-panel {
  margin-top: 16px;
  padding: 20px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 17px;
  background: linear-gradient(145deg,rgba(190,24,93,.08),rgba(23,23,39,.74) 48%,rgba(139,92,246,.04));
}

.adult-admin-head { display: flex; align-items: center; gap: 13px; }
.adult-admin-head > span:first-child { display: grid; width: 52px; height: 52px; flex: 0 0 52px; place-items: center; border-radius: 50%; color: #f9a8d4; background: rgba(190,24,93,.14); font-weight: 900; }
.adult-admin-head h2 { margin: 4px 0; }
.adult-admin-head p { margin: 0; color: var(--muted); }
.adult-admin-head > .badge { margin-left: auto; }
.adult-admin-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin-top: 17px; }
.adult-admin-grid > span { padding: 12px; border-radius: 10px; background: rgba(255,255,255,.022); }
.adult-admin-grid small,.adult-admin-grid strong { display: block; }
.adult-admin-grid small { color: var(--muted); }
.adult-admin-grid strong { margin-top: 5px; font-size: 12px; }
.adult-admin-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 15px; }
.danger-outline { border-color: rgba(244,63,94,.28); color: #fda4af; }

/* Erotic Home • synchronized subscriber states */
.erotic-home-media.runtime-hidden img,
.erotic-home-stage.runtime-privacy > img,
.erotic-home-stage.runtime-offline > img,
.erotic-home-stage.runtime-emergency > img {
  filter: blur(5px) grayscale(.25) saturate(.5) brightness(.42);
  transform: scale(1.03);
}

.erotic-home-media > em.runtime-privacy,
.live-badge.runtime-privacy {
  color: #a5f3fc;
  border-color: rgba(34,211,238,.25);
  background: rgba(8,145,178,.2);
}

.erotic-home-media > em.runtime-offline,
.live-badge.runtime-offline {
  color: #d1d5db;
  background: rgba(31,41,55,.74);
}

.erotic-home-media > em.runtime-emergency,
.live-badge.runtime-emergency {
  color: #fda4af;
  border-color: rgba(244,63,94,.28);
  background: rgba(159,18,57,.3);
}

.erotic-home-sync-overlay {
  position: absolute;
  z-index: 5;
  top: 50%;
  left: 50%;
  width: min(460px,calc(100% - 40px));
  padding: 24px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 18px;
  background: rgba(10,10,18,.9);
  text-align: center;
  backdrop-filter: blur(15px);
}

.erotic-home-sync-overlay > span {
  display: grid;
  width: 54px;
  height: 54px;
  margin: 0 auto 12px;
  place-items: center;
  border-radius: 50%;
  color: #67e8f9;
  background: rgba(8,145,178,.15);
  font-weight: 900;
}

.erotic-home-sync-overlay.emergency > span {
  color: #fda4af;
  background: rgba(244,63,94,.14);
}

.erotic-home-sync-overlay.offline > span {
  color: #d1d5db;
  background: rgba(107,114,128,.14);
}

.erotic-home-sync-overlay > strong,
.erotic-home-sync-overlay > small {
  display: block;
}

.erotic-home-sync-overlay > strong {
  font-size: var(--approved-card-copy);
}

.erotic-home-sync-overlay > p {
  margin: 7px 0 14px;
  color: var(--muted);
}

.erotic-home-sync-overlay > .btn {
  width: 100%;
}

.erotic-home-sync-overlay > small {
  margin-top: 10px;
  color: var(--muted);
}

.erotic-home-camera-strip.synchronized button[disabled] {
  opacity: .58;
  cursor: default;
}

.erotic-home-camera-strip.synchronized button.active {
  opacity: 1;
}

.erotic-home-preview-banner,
.erotic-home-live-again {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
  padding: 13px 15px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 14px;
  background: linear-gradient(120deg,rgba(190,24,93,.1),rgba(23,23,39,.72));
}

.erotic-home-preview-banner > span,
.erotic-home-live-again > span {
  padding: 6px 9px;
  border-radius: 999px;
  color: #fbcfe8;
  background: rgba(190,24,93,.18);
  font-size: var(--approved-micro-copy);
  font-weight: 900;
  white-space: nowrap;
}

.erotic-home-live-again {
  border-color: rgba(34,197,94,.22);
  background: linear-gradient(120deg,rgba(22,163,74,.09),rgba(23,23,39,.72));
}

.erotic-home-live-again > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #86efac;
  background: rgba(22,163,74,.14);
}

.erotic-home-preview-banner strong,
.erotic-home-preview-banner p,
.erotic-home-live-again strong,
.erotic-home-live-again p {
  display: block;
  margin: 0;
}

.erotic-home-preview-banner p,
.erotic-home-live-again p {
  margin-top: 3px;
  color: var(--muted);
}

.erotic-home-preview-banner .btn,
.erotic-home-live-again .btn {
  margin-left: auto;
  white-space: nowrap;
}

.erotic-home-viewer-guest {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  border-color: rgba(244,114,182,.18);
}

.erotic-home-viewer-guest > span {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.13);
  font-weight: 900;
}

.erotic-home-viewer-guest.approved > span {
  color: #86efac;
  background: rgba(34,197,94,.11);
}

.erotic-home-viewer-guest strong,
.erotic-home-viewer-guest p {
  display: block;
  margin: 0;
}

.erotic-home-viewer-guest p {
  margin-top: 4px;
  color: var(--muted);
}

.erotic-home-drawer-alert {
  border-color: rgba(34,197,94,.18);
  background: rgba(34,197,94,.055);
}

.erotic-home-drawer-alert .activity-icon {
  color: #86efac;
}

@media (max-width: 680px) {
  .erotic-home-preview-banner,
  .erotic-home-live-again { align-items: flex-start; flex-wrap: wrap; }
  .erotic-home-preview-banner .btn,
  .erotic-home-live-again .btn { width: 100%; margin-left: 0; }
  .erotic-home-sync-overlay { padding: 19px; }
}

/* Creator • Erotic Home 24/7 room control */
.creator-home-policy-bar {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 16px 0;
  padding: 14px 16px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 15px;
  background: linear-gradient(120deg,rgba(190,24,93,.09),rgba(23,23,39,.72));
}

.creator-home-policy-bar > span:first-child {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.creator-home-policy-bar strong,
.creator-home-policy-bar p {
  display: block;
  margin: 0;
}

.creator-home-policy-bar p {
  margin-top: 3px;
  color: var(--muted);
}

.creator-home-policy-bar .badge {
  margin-left: auto;
  white-space: nowrap;
}

.creator-home-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 370px;
  gap: 16px;
  align-items: start;
}

.creator-home-layout > main {
  min-width: 0;
}

.creator-home-stage {
  position: relative;
  min-height: 540px;
  overflow: hidden;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 22px;
  background: #0d0d16;
}

.creator-home-stage > img {
  width: 100%;
  height: 540px;
  object-fit: cover;
  filter: saturate(.78) brightness(.68);
}

.creator-home-stage.privacy > img,
.creator-home-stage.offline > img,
.creator-home-stage.emergency > img {
  filter: blur(4px) grayscale(.25) saturate(.55) brightness(.42);
  transform: scale(1.025);
}

.creator-home-stage-top,
.creator-home-stage-bottom {
  position: absolute;
  z-index: 3;
  right: 18px;
  left: 18px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
}

.creator-home-stage-top {
  top: 18px;
  justify-content: flex-start;
}

.creator-home-stage-bottom {
  bottom: 18px;
  align-items: flex-end;
}

.creator-home-stage-bottom h2 {
  margin: 5px 0 3px;
}

.creator-home-stage-bottom p {
  margin: 0;
  color: #d7d7e3;
}

.creator-home-stage-bottom > span {
  padding: 7px 10px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(8,8,14,.7);
  font-size: var(--approved-meta-copy);
  font-weight: 800;
  white-space: nowrap;
}

.creator-home-stage-state {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 50%;
  width: min(430px,calc(100% - 40px));
  padding: 22px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 17px;
  background: rgba(10,10,18,.86);
  text-align: center;
  backdrop-filter: blur(14px);
}

.creator-home-stage-state > span {
  display: grid;
  width: 48px;
  height: 48px;
  margin: 0 auto 11px;
  place-items: center;
  border-radius: 50%;
  color: #67e8f9;
  background: rgba(8,145,178,.13);
  font-weight: 900;
}

.creator-home-stage-state.emergency > span {
  color: #fda4af;
  background: rgba(244,63,94,.13);
}

.creator-home-stage-state strong {
  display: block;
  font-size: var(--approved-card-copy);
}

.creator-home-stage-state p {
  margin: 7px 0 0;
  color: var(--muted);
}

.creator-home-demo-live {
  position: absolute;
  z-index: 4;
  top: 18px;
  right: 18px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.creator-home-demo-live strong,
.creator-home-demo-live span {
  display: block;
  padding: 5px 8px;
  border-radius: 7px;
  color: #e7e7ef;
  background: rgba(8,8,14,.68);
  font-size: var(--approved-micro-copy);
}

.creator-home-demo-live span {
  margin-top: 5px;
  color: var(--muted);
}

.creator-home-command-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 10px;
  padding: 13px;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  background: rgba(23,23,39,.8);
}

.creator-home-command-bar > div:first-child {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.creator-home-command-bar p,
.creator-home-command-bar strong,
.creator-home-command-bar small {
  display: block;
  margin: 0;
}

.creator-home-command-bar small {
  margin-top: 3px;
  color: var(--muted);
}

.creator-home-command-bar > div:last-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.status-dot.online {
  background: var(--success);
  box-shadow: 0 0 0 5px rgba(34,197,94,.1);
}

.btn.emergency {
  border-color: rgba(244,63,94,.32);
  color: #fda4af;
}

.creator-home-command-bar .btn[disabled],
.creator-home-camera .btn[disabled] {
  opacity: .44;
  cursor: not-allowed;
}

.creator-home-cameras {
  margin-top: 28px;
}

.creator-home-cameras .studio-section-title p {
  margin: 4px 0 0;
  color: var(--muted);
}

.creator-home-camera-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 12px;
}

.creator-home-camera {
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  background: rgba(23,23,39,.74);
}

.creator-home-camera.selected {
  border-color: rgba(244,114,182,.42);
  box-shadow: inset 0 0 0 1px rgba(244,114,182,.08);
}

.creator-home-camera.disabled {
  opacity: .65;
}

.creator-home-camera > div:first-child {
  position: relative;
  height: 126px;
  margin-bottom: 11px;
  overflow: hidden;
  border-radius: 10px;
}

.creator-home-camera img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: saturate(.72) brightness(.68);
}

.creator-home-camera.disabled img {
  filter: grayscale(.7) brightness(.42);
}

.creator-home-camera > div:first-child > i {
  position: absolute;
  z-index: 3;
  right: 8px;
  bottom: 8px;
  padding: 5px 7px;
  border-radius: 7px;
  color: #fbcfe8;
  background: rgba(8,8,14,.76);
  font-size: var(--approved-micro-copy);
  font-style: normal;
  font-weight: 900;
}

.creator-home-camera h3 {
  margin: 5px 0 4px;
}

.creator-home-camera p {
  min-height: 44px;
  margin: 0;
  color: var(--muted);
}

.creator-home-camera > div:last-child {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 7px;
  margin-top: 11px;
}

.creator-home-side {
  display: grid;
  gap: 12px;
  align-content: start;
}

.creator-home-health-score {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 5px 12px;
  align-items: center;
  margin: 14px 0;
}

.creator-home-health-score > strong {
  grid-row: 1 / 3;
  color: #86efac;
  font-size: 29px;
}

.creator-home-health-score > span {
  height: 7px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
}

.creator-home-health-score i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg,var(--success),var(--cyan));
}

.creator-home-health-score small {
  color: var(--muted);
}

.creator-home-guest-person {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  padding: 12px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 11px;
  background: rgba(255,255,255,.02);
}

.creator-home-guest-person > span {
  display: grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.14);
  font-weight: 900;
}

.creator-home-guest-person strong,
.creator-home-guest-person p {
  display: block;
  margin: 0;
}

.creator-home-guest-person p {
  margin-top: 4px;
  color: var(--muted);
}

.creator-home-guest-actions {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.creator-home-notices article {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,.06);
}

.creator-home-notices article > span {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.12);
  font-weight: 900;
}

.creator-home-notices article strong,
.creator-home-notices article p,
.creator-home-notices article small {
  display: block;
  margin: 0;
}

.creator-home-notices article p {
  margin-top: 3px;
  color: var(--muted);
}

.creator-home-notices article small {
  margin-top: 5px;
  color: var(--muted-2);
}

.creator-home-no-contact {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  border-color: rgba(244,114,182,.18);
  background: rgba(190,24,93,.05);
}

.creator-home-no-contact > span {
  display: grid;
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.13);
  font-weight: 900;
}

.creator-home-no-contact strong,
.creator-home-no-contact p {
  display: block;
  margin: 0;
}

.creator-home-no-contact p {
  margin-top: 4px;
  color: var(--muted);
}

.creator-home-audit {
  margin-top: 20px;
}

.erotic-home-control-page .eyebrow,
.creator-home-demo-live strong,
.creator-home-demo-live span,
.creator-home-camera > div:first-child > i {
  font-size: var(--approved-micro-copy);
}

@media (max-width: 1180px) {
  .creator-home-layout { grid-template-columns: 1fr; }
  .creator-home-side { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 780px) {
  .creator-home-policy-bar { align-items: flex-start; flex-wrap: wrap; }
  .creator-home-policy-bar .badge { width: 100%; margin-left: 0; text-align: center; }
  .creator-home-command-bar { align-items: flex-start; flex-direction: column; }
  .creator-home-command-bar > div:last-child { width: 100%; justify-content: stretch; }
  .creator-home-command-bar .btn { flex: 1 1 calc(50% - 7px); }
  .creator-home-camera-grid { grid-template-columns: 1fr; }
  .creator-home-side { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .creator-home-stage,
  .creator-home-stage > img { min-height: 470px; height: 470px; }
  .creator-home-stage-top { flex-wrap: wrap; }
  .creator-home-stage-bottom { align-items: flex-start; flex-direction: column; }
  .creator-home-stage-bottom > span { align-self: flex-start; }
  .creator-home-command-bar > div:last-child { flex-direction: column; }
  .creator-home-command-bar .btn { width: 100%; }
}

/* Admin • Erotic Home 24/7 operations */
.ops-policy-strip {
  display: grid;
  grid-template-columns: auto repeat(3,minmax(0,1fr));
  gap: 12px;
  align-items: center;
  margin-top: 16px;
  padding: 15px;
  border: 1px solid rgba(244,114,182,.2);
  border-radius: 16px;
  background: linear-gradient(120deg,rgba(190,24,93,.1),rgba(23,23,39,.68));
}

.ops-policy-strip > span {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 50%;
  color: #f9a8d4;
  background: rgba(190,24,93,.16);
  font-weight: 900;
}

.ops-policy-strip > div {
  min-width: 0;
  padding-left: 12px;
  border-left: 1px solid rgba(255,255,255,.08);
}

.ops-policy-strip strong,
.ops-policy-strip p {
  display: block;
  margin: 0;
}

.ops-policy-strip p {
  margin-top: 4px;
  color: var(--muted);
}

.ops-section-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin: 34px 0 14px;
}

.ops-section-head h2 {
  margin: 4px 0;
}

.ops-section-head p {
  margin: 0;
  color: var(--muted);
}

.ops-filter-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 7px;
}

.ops-filter-row .filter-pill {
  font-size: var(--approved-meta-copy);
  white-space: nowrap;
}

.erotic-home-ops-page .eyebrow,
.ops-room-badge,
.ops-room-facts small,
.ops-preview-top span {
  font-size: var(--approved-micro-copy);
}

.ops-control-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) 390px;
  gap: 16px;
  align-items: start;
}

.ops-room-list {
  display: grid;
  gap: 11px;
  min-width: 0;
}

.ops-room-row {
  display: grid;
  grid-template-columns: 200px minmax(0,1fr);
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--soft-border);
  border-radius: 16px;
  background: rgba(23,23,39,.76);
  transition: border-color .2s ease,transform .2s ease,background .2s ease;
}

.ops-room-row:hover,
.ops-room-row.selected {
  border-color: rgba(244,114,182,.35);
  background: linear-gradient(125deg,rgba(190,24,93,.075),rgba(23,23,39,.8) 45%);
}

.ops-room-row:hover {
  transform: translateY(-1px);
}

.ops-room-thumb {
  position: relative;
  min-height: 176px;
  overflow: hidden;
  background: #11111c;
}

.ops-room-thumb img {
  width: 100%;
  height: 100%;
  min-height: 176px;
  object-fit: cover;
  filter: saturate(.78) brightness(.68);
}

.ops-room-row[data-status="privacy"] .ops-room-thumb img,
.ops-room-row[data-status="offline"] .ops-room-thumb img,
.ops-room-row[data-status="review"] .ops-room-thumb img,
.ops-room-row[data-status="suspended"] .ops-room-thumb img {
  filter: grayscale(.35) saturate(.5) brightness(.46);
}

.ops-room-badge {
  position: absolute;
  z-index: 2;
  top: 11px;
  left: 11px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 9px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  color: #e7e7ef;
  background: rgba(9,9,16,.76);
  font-size: var(--approved-micro-copy);
  font-weight: 900;
  backdrop-filter: blur(10px);
}

.ops-room-badge.live { color: #86efac; border-color: rgba(34,197,94,.25); }
.ops-room-badge.privacy { color: #67e8f9; border-color: rgba(34,211,238,.25); }
.ops-room-badge.review { color: #fde68a; border-color: rgba(245,158,11,.28); }
.ops-room-badge.suspended { color: #fda4af; border-color: rgba(244,63,94,.3); }

.ops-room-thumb > small {
  position: absolute;
  z-index: 2;
  right: 10px;
  bottom: 10px;
  left: 10px;
  color: #f6f6fb;
  font-weight: 800;
}

.ops-room-body {
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 16px;
}

.ops-room-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.ops-room-title h3 {
  margin: 5px 0 3px;
}

.ops-room-title p {
  margin: 0;
  color: var(--muted);
}

.ops-room-title > .badge {
  flex: 0 0 auto;
}

.badge.privacy {
  color: #67e8f9;
  border-color: rgba(34,211,238,.22);
  background: rgba(8,145,178,.12);
}

.ops-room-facts,
.ops-inspector-facts {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
  margin-top: 13px;
}

.ops-room-facts > span,
.ops-inspector-facts > span {
  min-width: 0;
  padding: 9px;
  border-radius: 9px;
  background: rgba(255,255,255,.025);
}

.ops-room-facts small,
.ops-room-facts strong,
.ops-inspector-facts small,
.ops-inspector-facts strong {
  display: block;
}

.ops-room-facts small {
  color: var(--muted);
  font-size: var(--approved-micro-copy);
  letter-spacing: .08em;
}

.ops-room-facts strong,
.ops-inspector-facts strong {
  margin-top: 4px;
  font-size: var(--approved-meta-copy);
}

.ops-room-facts strong.alert {
  color: #fda4af;
}

.ops-room-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: auto;
  padding-top: 13px;
}

.ops-room-actions .btn[disabled],
.ops-inspector-controls .btn[disabled] {
  opacity: .42;
  cursor: not-allowed;
}

.ops-room-inspector {
  position: sticky;
  top: 84px;
  overflow: hidden;
  padding: 16px;
  border: 1px solid rgba(244,114,182,.22);
  border-radius: 18px;
  background: linear-gradient(155deg,rgba(190,24,93,.085),rgba(18,18,31,.96) 42%);
  box-shadow: var(--shadow);
}

.ops-inspector-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 13px;
}

.ops-inspector-head h2 {
  margin: 5px 0 0;
}

.ops-inspector-preview {
  position: relative;
  min-height: 245px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: #0c0c14;
}

.ops-inspector-preview > img {
  width: 100%;
  height: 245px;
  object-fit: cover;
  filter: saturate(.74) brightness(.62);
}

.ops-preview-top,
.ops-preview-bottom {
  position: absolute;
  z-index: 3;
  right: 12px;
  left: 12px;
  display: flex;
  justify-content: space-between;
  gap: 7px;
}

.ops-preview-top {
  top: 12px;
}

.ops-preview-top span {
  padding: 6px 8px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  color: #fbcfe8;
  background: rgba(9,9,16,.7);
  font-size: var(--approved-micro-copy);
  font-weight: 900;
}

.ops-preview-bottom {
  bottom: 12px;
  flex-direction: column;
}

.ops-preview-bottom strong,
.ops-preview-bottom small {
  display: block;
}

.ops-preview-state {
  position: absolute;
  z-index: 4;
  top: 50%;
  left: 50%;
  width: calc(100% - 48px);
  padding: 14px;
  transform: translate(-50%,-50%);
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 12px;
  background: rgba(10,10,17,.82);
  text-align: center;
  backdrop-filter: blur(10px);
}

.ops-preview-state strong,
.ops-preview-state small {
  display: block;
}

.ops-preview-state small {
  margin-top: 5px;
  color: var(--muted);
}

.ops-preview-state.privacy strong { color: #67e8f9; }
.ops-preview-state.review strong { color: #fde68a; }
.ops-preview-state.suspended strong { color: #fda4af; }

.ops-inspector-facts {
  grid-template-columns: repeat(2,minmax(0,1fr));
  margin-top: 10px;
}

.ops-inspector-facts small {
  color: var(--muted);
}

.ops-compliance-checks {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.ops-compliance-checks > div {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.06);
  border-radius: 10px;
  background: rgba(255,255,255,.02);
}

.ops-compliance-checks > div > span {
  display: grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 50%;
  color: var(--success);
  background: rgba(34,197,94,.1);
  font-weight: 900;
}

.ops-compliance-checks > div.attention > span {
  color: #fda4af;
  background: rgba(244,63,94,.12);
}

.ops-compliance-checks p,
.ops-compliance-checks strong,
.ops-compliance-checks small {
  display: block;
  margin: 0;
}

.ops-compliance-checks small {
  margin-top: 3px;
  color: var(--muted);
}

.ops-inspector-controls {
  display: grid;
  gap: 8px;
  margin-top: 13px;
}

.ops-demo-note {
  margin: 13px 0 0;
  color: var(--muted);
  text-align: center;
}

.ops-audit-panel {
  margin-top: 16px;
  padding: 16px;
  border: 1px solid var(--soft-border);
  border-radius: 15px;
  background: rgba(23,23,39,.58);
}

.ops-audit-panel p {
  display: flex;
  gap: 9px;
  margin: 8px 0 0;
  padding-top: 8px;
  border-top: 1px solid rgba(255,255,255,.055);
  color: var(--muted);
}

.ops-audit-panel p > span {
  color: #f472b6;
}

.ops-general-live {
  margin-top: 34px;
}

@media (max-width: 1180px) {
  .ops-control-layout { grid-template-columns: 1fr; }
  .ops-room-inspector { position: static; }
  .ops-policy-strip { grid-template-columns: auto repeat(2,minmax(0,1fr)); }
  .ops-policy-strip > div:last-child { grid-column: 2 / -1; }
}

@media (max-width: 820px) {
  .ops-section-head { align-items: flex-start; flex-direction: column; }
  .ops-filter-row { justify-content: flex-start; width: 100%; overflow-x: auto; flex-wrap: nowrap; }
  .ops-room-row { grid-template-columns: 160px minmax(0,1fr); }
  .ops-room-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .ops-policy-strip { grid-template-columns: 1fr; align-items: start; }
  .ops-policy-strip > div,
  .ops-policy-strip > div:last-child { grid-column: auto; padding: 10px 0 0; border-top: 1px solid rgba(255,255,255,.08); border-left: 0; }
  .ops-room-row { grid-template-columns: 1fr; }
  .ops-room-thumb,
  .ops-room-thumb img { min-height: 190px; max-height: 230px; }
  .ops-room-title { align-items: flex-start; }
  .ops-room-actions .btn { flex: 1 1 calc(50% - 7px); }
  .ops-inspector-facts { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

/* Erotic Home creator payouts and manual Admin review */
.eh-payout-metrics,.eh-payout-admin-metrics { margin-bottom: 18px; }
.eh-payout-metrics .metric-card:first-child { border-color: rgba(34,197,94,.24); background: linear-gradient(145deg,rgba(34,197,94,.06),rgba(18,18,31,.94)); }
.eh-payout-policy { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin: 0 0 20px; padding: 12px; border: 1px solid rgba(244,114,182,.18); border-radius: 18px; background: linear-gradient(120deg,rgba(190,24,93,.07),rgba(139,92,246,.045)); }
.eh-payout-policy article { display: flex; align-items: flex-start; gap: 11px; min-width: 0; padding: 12px; border: 1px solid rgba(255,255,255,.065); border-radius: 13px; background: rgba(255,255,255,.022); }
.eh-payout-policy article > span { display: grid; flex: 0 0 36px; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: #fbcfe8; background: rgba(190,24,93,.14); font-weight: 900; }
.eh-payout-policy article > div { min-width: 0; }
.eh-payout-policy small { color: #f9a8d4; letter-spacing: .07em; }
.eh-payout-policy strong { display: block; margin-top: 3px; }
.eh-payout-policy p { margin: 3px 0 0; color: var(--muted); }

.eh-payout-current { display: grid; grid-template-columns: 44px minmax(0,1fr) auto auto; align-items: center; gap: 14px; margin-bottom: 18px; padding: 15px 17px; border: 1px solid rgba(245,158,11,.25); border-radius: 16px; background: rgba(245,158,11,.055); }
.eh-payout-current.status-paid { border-color: rgba(34,197,94,.23); background: rgba(34,197,94,.05); }
.eh-payout-current.status-rejected { border-color: rgba(244,63,94,.25); background: rgba(244,63,94,.05); }
.eh-payout-current > span:first-child { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 50%; color: #fcd34d; background: rgba(245,158,11,.13); font-size: 18px; font-weight: 900; }
.eh-payout-current.status-paid > span:first-child { color: #86efac; background: rgba(34,197,94,.13); }
.eh-payout-current.status-rejected > span:first-child { color: #fda4af; background: rgba(244,63,94,.13); }
.eh-payout-current > div { min-width: 0; }
.eh-payout-current small { color: var(--muted); letter-spacing: .06em; }
.eh-payout-current strong { display: block; margin: 3px 0; }
.eh-payout-current p { margin: 0; color: var(--muted); }

.eh-payout-layout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(320px,.65fr); align-items: start; gap: 18px; }
.eh-payout-layout > main { display: grid; gap: 15px; min-width: 0; }
.eh-payout-request { min-width: 0; }
.eh-payout-amount { display: grid; max-width: 480px; gap: 7px; margin-top: 20px; }
.eh-payout-amount > span { color: var(--muted); font-weight: 700; }
.eh-payout-amount > div { display: flex; align-items: center; min-height: 66px; overflow: hidden; border: 1px solid rgba(244,114,182,.3); border-radius: 14px; background: rgba(190,24,93,.055); }
.eh-payout-amount b { align-self: stretch; display: grid; min-width: 68px; place-items: center; border-right: 1px solid rgba(244,114,182,.2); color: #f9a8d4; background: rgba(190,24,93,.09); }
.eh-payout-amount input { width: 100%; min-width: 0; padding: 0 16px; border: 0; outline: 0; color: var(--text); background: transparent; font: inherit; font-size: clamp(24px,3vw,34px); font-weight: 900; letter-spacing: -.035em; }
.eh-payout-amount input:disabled { color: var(--muted); }
.eh-payout-amount > small { color: var(--muted); }
.eh-payout-request .quick-amounts { margin-top: 12px; }
.eh-payout-breakdown { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 9px; margin-top: 20px; padding-top: 17px; border-top: 1px solid rgba(255,255,255,.075); }
.eh-payout-breakdown > span { display: grid; gap: 5px; padding: 12px; border: 1px solid rgba(255,255,255,.065); border-radius: 12px; background: rgba(255,255,255,.022); }
.eh-payout-breakdown small { color: var(--muted); }
.eh-payout-breakdown i { color: var(--muted); font-size: 18px; font-style: normal; }
.eh-payout-separation { display: flex; align-items: flex-start; gap: 13px; padding: 15px; border: 1px solid rgba(244,114,182,.2); border-radius: 15px; background: rgba(190,24,93,.055); }
.eh-payout-separation > span { display: grid; flex: 0 0 40px; width: 40px; height: 40px; place-items: center; border-radius: 50%; color: #fbcfe8; background: rgba(190,24,93,.15); font-weight: 900; }
.eh-payout-separation p { margin: 4px 0 0; color: var(--muted); }
.eh-payout-destination { position: sticky; top: 92px; }
.eh-bank-account { display: flex; align-items: center; gap: 12px; margin: 16px 0; padding: 14px; border: 1px solid rgba(139,92,246,.2); border-radius: 14px; background: rgba(139,92,246,.055); }
.eh-bank-account > span { display: grid; flex: 0 0 44px; width: 44px; height: 44px; place-items: center; border-radius: 12px; color: #c4b5fd; background: rgba(139,92,246,.13); font-weight: 900; }
.eh-bank-account p { margin: 4px 0 0; color: var(--muted); }
.eh-payout-rule-list { display: grid; margin-bottom: 16px; }
.eh-payout-rule-list > span { display: flex; justify-content: space-between; gap: 14px; padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.eh-payout-rule-list small { color: var(--muted); }
.eh-payout-destination > .btn { width: 100%; }
.eh-payout-destination > small { display: block; margin-top: 10px; color: var(--muted); text-align: center; }
.eh-payout-history { min-width: 0; }
.eh-payout-history .data-table-wrap { margin-top: 14px; }
.eh-payout-table th,.eh-payout-table td { white-space: nowrap; }

.eh-payout-admin-layout { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(300px,.65fr); align-items: start; gap: 18px; }
.eh-admin-payout-review { border-color: rgba(245,158,11,.22); }
.eh-admin-payout-review.status-approved { border-color: rgba(139,92,246,.28); }
.eh-admin-payout-review.status-paid { border-color: rgba(34,197,94,.24); }
.eh-admin-payout-review.status-rejected { border-color: rgba(244,63,94,.24); }
.eh-admin-payout-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; }
.eh-admin-payout-head h2 { margin: 5px 0 3px; }
.eh-admin-payout-head p { margin: 0; color: var(--muted); }
.eh-admin-payout-amount { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; margin: 18px 0; }
.eh-admin-payout-amount > span { display: grid; gap: 5px; padding: 13px; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; background: rgba(255,255,255,.023); }
.eh-admin-payout-amount small { color: var(--muted); }
.eh-admin-payout-amount strong { font-size: 18px; }
.eh-admin-review-checks { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
.eh-admin-review-checks article { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1px solid rgba(34,197,94,.13); border-radius: 12px; background: rgba(34,197,94,.035); }
.eh-admin-review-checks article > span { display: grid; flex: 0 0 28px; width: 28px; height: 28px; place-items: center; border-radius: 50%; color: #86efac; background: rgba(34,197,94,.11); font-weight: 900; }
.eh-admin-review-checks p { margin: 3px 0 0; color: var(--muted); }
.eh-admin-payout-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 16px; }
.eh-payout-audit { position: sticky; top: 92px; }
.eh-payout-audit > p { display: flex; gap: 9px; margin: 0; padding: 12px 0; border-bottom: 1px solid rgba(255,255,255,.07); color: var(--muted); }
.eh-payout-audit > p > span { color: #f472b6; }
.eh-payout-empty { min-height: 420px; border: 1px solid var(--border); border-radius: 18px; background: rgba(18,18,31,.72); }
.eh-payout-document { border-color: rgba(34,197,94,.2); background: rgba(34,197,94,.045); }

@media (max-width: 1080px) {
  .eh-payout-policy { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .eh-payout-layout,.eh-payout-admin-layout { grid-template-columns: 1fr; }
  .eh-payout-destination,.eh-payout-audit { position: static; }
}

@media (max-width: 700px) {
  .eh-payout-policy { grid-template-columns: 1fr; }
  .eh-payout-current { grid-template-columns: 40px minmax(0,1fr); }
  .eh-payout-current > .badge,.eh-payout-current > .btn { grid-column: 2; justify-self: start; }
  .eh-payout-breakdown { grid-template-columns: 1fr; }
  .eh-payout-breakdown > i { justify-self: center; transform: rotate(90deg); }
  .eh-admin-payout-head { flex-direction: column; }
  .eh-admin-payout-amount,.eh-admin-review-checks { grid-template-columns: 1fr; }
  .eh-admin-payout-actions .btn { width: 100%; }
}

/* Erotic Home viewer subscriptions and billing */
.eh-billing-metrics { margin-bottom: 18px; }
.eh-billing-metrics .metric-card:first-child { border-color: rgba(244,114,182,.24); background: linear-gradient(145deg,rgba(190,24,93,.11),rgba(18,18,31,.94)); }

.eh-billing-assurance,
.eh-checkout-assurance {
  display: flex;
  align-items: center;
  gap: 15px;
  margin: 0 0 20px;
  padding: 16px 18px;
  border: 1px solid rgba(244,114,182,.22);
  border-radius: 16px;
  background: linear-gradient(120deg,rgba(190,24,93,.09),rgba(34,211,238,.035));
}

.eh-billing-assurance > span:first-child,
.eh-checkout-assurance > span:first-child {
  display: grid;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 50%;
  color: #fbcfe8;
  background: rgba(190,24,93,.17);
  font-weight: 900;
}

.eh-billing-assurance > div,
.eh-checkout-assurance > div { flex: 1 1 auto; }
.eh-billing-assurance p,.eh-checkout-assurance p { margin: 4px 0 0; color: var(--muted); }

.eh-billing-layout { display: grid; grid-template-columns: minmax(300px,.7fr) minmax(0,1.3fr); align-items: start; gap: 18px; }
.eh-billing-room-list { padding: 16px; border: 1px solid var(--border); border-radius: 18px; background: rgba(18,18,31,.82); }
.eh-billing-room-list > .panel-head { margin-bottom: 12px; }
.eh-billing-room { margin-top: 9px; }
.eh-billing-room-main { display: grid; width: 100%; grid-template-columns: 58px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 10px; border: 1px solid rgba(255,255,255,.075); border-radius: 14px; color: var(--text); background: rgba(255,255,255,.02); text-align: left; transition: border-color .2s ease,background .2s ease,transform .2s ease; }
.eh-billing-room-main:hover { border-color: rgba(139,92,246,.38); background: rgba(139,92,246,.06); transform: translateY(-1px); }
.eh-billing-room.selected .eh-billing-room-main { border-color: rgba(244,114,182,.35); background: rgba(190,24,93,.08); box-shadow: inset 3px 0 #f472b6; }
.eh-billing-room-main img { width: 58px; height: 58px; object-fit: cover; border-radius: 11px; filter: saturate(.8); }
.eh-billing-room-main > span { display: grid; min-width: 0; gap: 4px; }
.eh-billing-room-main small { color: #67e8f9; letter-spacing: .05em; }
.eh-billing-room-main strong,.eh-billing-room-main em { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.eh-billing-room-main em { color: var(--muted); font-style: normal; }

.eh-billing-detail { display: grid; min-width: 0; gap: 16px; }
.eh-subscription-card { overflow: hidden; border-color: rgba(255,255,255,.11); }
.eh-subscription-card.status-active { border-color: rgba(34,197,94,.22); background: linear-gradient(145deg,rgba(34,197,94,.045),rgba(18,18,31,.92)); }
.eh-subscription-card.status-canceled { border-color: rgba(245,158,11,.25); }
.eh-subscription-card.status-expired { border-color: rgba(244,63,94,.24); }
.eh-subscription-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; }
.eh-subscription-head h2 { margin: 5px 0 3px; }
.eh-subscription-head p { margin: 0; color: var(--muted); }
.eh-plan-price { display: flex; align-items: flex-end; justify-content: space-between; gap: 15px; margin: 20px 0; padding: 16px; border: 1px solid rgba(244,114,182,.18); border-radius: 14px; background: rgba(190,24,93,.055); }
.eh-plan-price > div { display: grid; gap: 4px; }
.eh-plan-price small { color: #f9a8d4; letter-spacing: .08em; }
.eh-plan-price strong { font-size: clamp(24px,3vw,34px); letter-spacing: -.04em; }
.eh-plan-price strong em { color: var(--muted); font-size: var(--approved-card-copy); font-style: normal; font-weight: 600; letter-spacing: 0; }
.eh-plan-price > span { padding: 7px 10px; border-radius: 99px; color: #c4b5fd; background: rgba(139,92,246,.1); font-size: var(--approved-meta-copy); }
.eh-billing-details { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 9px; }
.eh-billing-details > span { display: grid; gap: 5px; min-width: 0; padding: 12px; border: 1px solid rgba(255,255,255,.07); border-radius: 12px; background: rgba(255,255,255,.022); }
.eh-billing-details small { color: var(--muted); }
.eh-billing-details strong { overflow-wrap: anywhere; }
.eh-status-message { display: flex; align-items: flex-start; gap: 12px; margin: 16px 0; padding: 13px; border-radius: 13px; background: rgba(255,255,255,.035); }
.eh-status-message > span { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border-radius: 10px; color: #c4b5fd; background: rgba(139,92,246,.13); font-weight: 900; }
.eh-status-message.active > span { color: #86efac; background: rgba(34,197,94,.12); }
.eh-status-message.canceled > span { color: #fcd34d; background: rgba(245,158,11,.12); }
.eh-status-message.expired > span { color: #fda4af; background: rgba(244,63,94,.12); }
.eh-status-message p { margin: 3px 0 0; color: var(--muted); }
.eh-billing-actions { display: flex; flex-wrap: wrap; gap: 9px; }

.eh-billing-timeline article { display: grid; grid-template-columns: 34px minmax(0,1fr); gap: 12px; padding: 13px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.eh-billing-timeline article:last-child { border-bottom: 0; }
.eh-billing-timeline article > i { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 50%; color: var(--muted); background: rgba(255,255,255,.055); font-style: normal; }
.eh-billing-timeline article.complete > i { color: #86efac; background: rgba(34,197,94,.11); }
.eh-billing-timeline article.current > i { color: #c4b5fd; background: rgba(139,92,246,.12); }
.eh-billing-timeline article.warning > i { color: #fcd34d; background: rgba(245,158,11,.12); }
.eh-billing-timeline article p { margin: 4px 0 0; color: var(--muted); }
.eh-billing-demo-note { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; border: 1px dashed rgba(34,211,238,.25); border-radius: 14px; background: rgba(34,211,238,.035); }
.eh-billing-demo-note > span { padding: 5px 7px; border-radius: 7px; color: #67e8f9; background: rgba(34,211,238,.1); font-size: var(--approved-micro-copy); font-weight: 900; }
.eh-billing-demo-note p { margin: 3px 0 0; color: var(--muted); }

.eh-checkout-assurance { margin-top: -3px; }
.eh-order-label { display: inline-flex; margin: 5px 0 14px; padding: 6px 8px; border-radius: 7px; color: #f9a8d4; background: rgba(190,24,93,.1); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.eh-receipt-details { display: flex; align-items: center; gap: 12px; margin-top: 14px; padding: 13px; border: 1px solid rgba(244,114,182,.2); border-radius: 12px; background: rgba(190,24,93,.055); }
.eh-receipt-details > span { display: grid; flex: 0 0 38px; width: 38px; height: 38px; place-items: center; border-radius: 50%; color: #fbcfe8; background: rgba(190,24,93,.16); font-weight: 900; }
.eh-receipt-details > div { flex: 1 1 auto; }
.eh-receipt-details p { margin: 3px 0 0; color: var(--muted); }
.eh-receipt-details > strong { color: #86efac; white-space: nowrap; }

@media (max-width: 1050px) {
  .eh-billing-layout { grid-template-columns: 1fr; }
  .eh-billing-room-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; }
  .eh-billing-room-list > .panel-head { grid-column: 1 / -1; }
  .eh-billing-room { margin: 0; }
  .eh-billing-details { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 650px) {
  .eh-billing-assurance,.eh-checkout-assurance { align-items: flex-start; flex-wrap: wrap; }
  .eh-billing-assurance > .badge,.eh-checkout-assurance > .badge { margin-left: 59px; }
  .eh-billing-room-list { grid-template-columns: 1fr; }
  .eh-billing-room-main { grid-template-columns: 52px minmax(0,1fr); }
  .eh-billing-room-main img { width: 52px; height: 52px; }
  .eh-billing-room-main > i { grid-column: 2; justify-self: start; }
  .eh-subscription-head,.eh-plan-price { align-items: flex-start; flex-direction: column; }
  .eh-billing-details { grid-template-columns: 1fr; }
  .eh-billing-actions .btn { width: 100%; }
  .eh-receipt-details { align-items: flex-start; flex-wrap: wrap; }
}

/* Erotic Home creator analytics and separate subscription ledger */
.home-insights-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 0 0 22px;
  padding: 14px 16px;
  border: 1px solid rgba(244,114,182,.18);
  border-radius: 16px;
  background: linear-gradient(120deg,rgba(190,24,93,.09),rgba(34,211,238,.035));
}

.home-insights-toolbar > div { display: flex; align-items: center; gap: 9px; flex-wrap: wrap; }
.home-insights-toolbar > div:first-child { display: grid; gap: 3px; }
.home-insights-toolbar > div:first-child strong { font-size: 16px; color: var(--text); }
.home-insights-toolbar .filter-pill { min-height: 36px; padding: 7px 13px; }

.home-insights-metrics { margin-bottom: 20px; }
.home-insights-metrics .metric-card:first-child { border-color: rgba(244,114,182,.26); background: linear-gradient(145deg,rgba(190,24,93,.12),rgba(18,18,31,.94)); }
.home-insights-metrics .metric-card:nth-child(3) { border-color: rgba(34,197,94,.22); }

.home-insights-money-flow {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);
  align-items: stretch;
  gap: 12px;
  margin: 0 0 22px;
  padding: 16px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 18px;
  background: rgba(13,13,24,.82);
}

.home-insights-money-flow > i { align-self: center; color: var(--muted); font-size: 20px; font-style: normal; }
.home-insights-money-flow article { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(255,255,255,.025); }
.home-insights-money-flow article > span { display: grid; flex: 0 0 34px; width: 34px; height: 34px; place-items: center; border-radius: 10px; color: #fbcfe8; background: rgba(190,24,93,.16); font-weight: 900; }
.home-insights-money-flow article.net { border-color: rgba(34,197,94,.24); background: rgba(34,197,94,.055); }
.home-insights-money-flow article.net > span { color: #86efac; background: rgba(34,197,94,.14); }
.home-insights-money-flow small { display: block; color: var(--muted); letter-spacing: .08em; }
.home-insights-money-flow strong { display: block; margin-top: 3px; color: var(--text); font-size: 15px; }
.home-insights-money-flow p { margin: 3px 0 0; color: var(--muted); }

.home-insights-grid { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(330px,.8fr); gap: 18px; margin-bottom: 18px; }
.home-insights-grid.detail { grid-template-columns: minmax(0,1.15fr) minmax(330px,.85fr); }
.home-insights-grid > .panel { min-width: 0; }

.home-insights-chart { display: flex; align-items: flex-end; gap: 9px; height: 250px; margin-top: 18px; padding: 28px 4px 2px; border-bottom: 1px solid rgba(255,255,255,.1); background: repeating-linear-gradient(to top,transparent 0,transparent 54px,rgba(255,255,255,.045) 55px); }
.home-insights-chart > span { position: relative; display: flex; flex: 1 1 0; justify-content: center; min-width: 8px; max-height: 100%; border-radius: 7px 7px 0 0; background: linear-gradient(to top,rgba(139,92,246,.4),rgba(244,114,182,.92)); transition: filter .2s ease,transform .2s ease; }
.home-insights-chart > span:hover { filter: brightness(1.18); transform: translateY(-2px); }
.home-insights-chart > span::before { content: attr(data-value); position: absolute; top: -22px; color: #e8e7ef; font-size: var(--approved-micro-copy); font-weight: 800; opacity: 0; white-space: nowrap; transition: opacity .2s ease; }
.home-insights-chart > span:hover::before { opacity: 1; }
.home-insights-chart > span small { position: absolute; bottom: -24px; color: var(--muted); white-space: nowrap; }

.home-insights-audience > div:last-child { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 18px; }
.home-insights-audience > div:last-child > span { display: grid; gap: 5px; min-width: 0; padding: 14px; border: 1px solid rgba(255,255,255,.075); border-radius: 13px; background: rgba(255,255,255,.025); }
.home-insights-audience strong { font-size: clamp(20px,2vw,28px); color: var(--text); }
.home-insights-audience small,.home-insights-audience em { color: var(--muted); font-style: normal; }

.home-camera-performance article { display: grid; grid-template-columns: minmax(150px,1fr) minmax(170px,1fr) auto; align-items: center; gap: 16px; padding: 15px 0; border-bottom: 1px solid rgba(255,255,255,.075); }
.home-camera-performance article:last-child { border-bottom: 0; }
.home-camera-performance article > div:first-child { display: grid; gap: 5px; }
.home-camera-performance article small { color: var(--muted); }
.home-camera-performance article > em { color: #86efac; font-style: normal; font-weight: 800; }
.home-camera-progress { display: grid; grid-template-columns: minmax(90px,1fr) 42px; align-items: center; gap: 10px; }
.home-camera-progress > span { height: 8px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.08); }
.home-camera-progress > span i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--violet),#f472b6); }
.home-camera-progress strong { text-align: right; }

.home-uptime-panel article { display: grid; gap: 8px; margin-top: 14px; }
.home-uptime-panel article > div { display: flex; justify-content: space-between; gap: 12px; }
.home-uptime-panel article > span { height: 9px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.075); }
.home-uptime-panel article > span i { display: block; height: 100%; border-radius: inherit; }
.home-uptime-panel > p { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.075); color: var(--muted); }

.home-insights-separation { display: flex; align-items: center; gap: 15px; margin: 20px 0 26px; padding: 16px 18px; border: 1px solid rgba(244,114,182,.22); border-radius: 16px; background: rgba(190,24,93,.065); }
.home-insights-separation > span { display: grid; flex: 0 0 44px; width: 44px; height: 44px; place-items: center; border-radius: 50%; color: #fbcfe8; background: rgba(190,24,93,.18); font-weight: 900; }
.home-insights-separation > div { flex: 1 1 auto; }
.home-insights-separation p { margin: 4px 0 0; color: var(--muted); }

.home-insights-transactions { min-width: 0; margin-top: 6px; }
.home-insights-transactions .data-table-wrap { margin-top: 15px; }
.home-insights-table th,.home-insights-table td { white-space: nowrap; }
.home-insights-table .transaction-ref { color: #c4b5fd; font-family: ui-monospace,SFMono-Regular,Consolas,monospace; font-weight: 700; }
.home-insights-table .money-out { color: #fda4af; }
.home-insights-table .money-in { color: #86efac; }
.home-insights-demo-note { margin: 14px 0 0; padding: 12px 15px; border-radius: 12px; color: var(--muted); background: rgba(255,255,255,.025); text-align: center; }

@media (max-width: 1100px) {
  .home-insights-money-flow { grid-template-columns: 1fr; }
  .home-insights-money-flow > i { justify-self: center; transform: rotate(90deg); }
  .home-insights-grid,.home-insights-grid.detail { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .home-insights-toolbar { align-items: flex-start; flex-direction: column; }
  .home-insights-toolbar > div:last-child { width: 100%; overflow-x: auto; flex-wrap: nowrap; padding-bottom: 3px; }
  .home-insights-audience > div:last-child { grid-template-columns: 1fr; }
  .home-camera-performance article { grid-template-columns: 1fr auto; }
  .home-camera-progress { grid-column: 1 / -1; grid-row: 2; }
  .home-insights-separation { align-items: flex-start; flex-wrap: wrap; }
  .home-insights-separation .btn { width: 100%; }
  .home-insights-chart { gap: 5px; height: 210px; }
}

.erotic-hub-page p,
.erotic-policy-page p,
.erotic-setup-page p,
.erotic-home-control-page p,
.erotic-home-insights-page p,
.erotic-home-billing-page p,
.erotic-home-payouts-page p,
.erotic-home-payout-admin-page p,
.erotic-home-ops-page p,
.verification-page p,
.settings-page p,
.moderation-page p { font-size: var(--approved-card-copy); line-height: 1.55; }
.erotic-hub-page :is(small,em),
.erotic-policy-page :is(small,em),
.erotic-setup-page :is(small,em),
.erotic-home-control-page :is(small,em),
.erotic-home-insights-page :is(small,em),
.erotic-home-billing-page :is(small,em),
.erotic-home-payouts-page :is(small,em),
.erotic-home-payout-admin-page :is(small,em),
.erotic-home-ops-page :is(small,em),
.verification-page :is(small,em),
.settings-page :is(small,em),
.moderation-page :is(small,em) { font-size: var(--approved-meta-copy); }
:is(.erotic-hub-page,.erotic-policy-page,.erotic-setup-page,.erotic-home-control-page,.erotic-home-insights-page,.erotic-home-billing-page,.erotic-home-payouts-page,.erotic-home-payout-admin-page,.erotic-home-ops-page,.verification-page,.settings-page,.moderation-page) .page-header p { font-size: var(--approved-page-copy); line-height: 1.6; }
:is(.erotic-hub-page,.erotic-policy-page,.erotic-setup-page,.erotic-home-control-page,.erotic-home-insights-page,.erotic-home-billing-page,.erotic-home-payouts-page,.erotic-home-payout-admin-page,.erotic-home-ops-page,.verification-page,.settings-page,.moderation-page) .badge { font-size: var(--approved-micro-copy); }
:is(.erotic-hub-page,.erotic-policy-page,.erotic-setup-page,.erotic-home-control-page,.erotic-home-insights-page,.erotic-home-billing-page,.erotic-home-payouts-page,.erotic-home-payout-admin-page,.erotic-home-ops-page,.verification-page,.settings-page,.moderation-page) .btn { font-size: var(--approved-card-copy); }
.erotic-hub-page .erotic-home-media > em,
.erotic-hub-page .erotic-home-media > b,
.erotic-hub-page .erotic-home-live-note > span {
  font-size: var(--approved-micro-copy);
}

@media (min-width: 901px) {
  .erotic-hub-page,
  .erotic-policy-page,
  .erotic-setup-page,
  .erotic-home-control-page,
  .erotic-home-insights-page,
  .erotic-home-billing-page,
  .erotic-home-payouts-page,
  .erotic-home-payout-admin-page,
  .erotic-home-ops-page,
  .verification-page,
  .settings-page,
  .moderation-page {
    --approved-page-copy: 16px;
    --approved-card-copy: 14px;
    --approved-meta-copy: 13px;
    --approved-micro-copy: 11px;
  }

  :is(.erotic-hub-page,.erotic-policy-page,.erotic-setup-page,.erotic-home-control-page,.erotic-home-insights-page,.erotic-home-billing-page,.erotic-home-payouts-page,.erotic-home-payout-admin-page,.erotic-home-ops-page,.verification-page,.settings-page,.moderation-page) .btn { font-size: 13px; }
  .adult-gate-checks strong,.adult-policy-list strong { font-size: 14px; }
  .adult-gate-checks small,.adult-policy-list small,.adult-consent,.adult-demo-note { font-size: 13px; }
  .adult-policy-banner strong,.erotic-card-meta,.adult-safety-grid strong,.creator-adult-requirements strong,.adult-live-disabled strong,.adult-admin-grid strong,.policy-card strong,.policy-home-grid strong,.policy-flow strong,.policy-list strong,.home-setup-check-grid strong,.home-camera-grid strong,.home-setup-preview-card strong,.home-setup-steps strong,.home-setup-mini-policy strong { font-size: 14px; }
  .adult-filter-row > span,.creator-adult-requirements em { font-size: 13px; }
}

@media (max-width: 980px) {
  .erotic-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .erotic-home-grid,.erotic-home-rules { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .erotic-home-room-layout { grid-template-columns: 1fr; }
  .verification-status-grid,.verification-admin-metrics { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .adult-admin-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 680px) {
  .erotic-grid,.erotic-home-grid,.erotic-home-rules,.erotic-home-camera-strip,.verification-status-grid,.verification-admin-metrics,.verification-check-grid,.moderation-policy-strip,.adult-safety-grid,.adult-admin-grid,.policy-summary-grid,.policy-home-grid,.policy-flow,.policy-split,.policy-hero,.home-setup-shell,.home-setup-check-grid,.home-camera-grid,.home-setup-form-preview,.home-setup-review-layout { grid-template-columns: 1fr; }
  .adult-policy-banner,.erotic-home-hero,.verification-hero,.creator-adult-requirements,.adult-live-disabled,.adult-admin-head,.erotic-home-creator-panel { align-items: flex-start; flex-wrap: wrap; }
  .adult-policy-banner .text-link,.erotic-home-hero .btn,.verification-hero .btn,.creator-adult-requirements em,.adult-admin-head > .badge,.erotic-home-creator-panel .btn,.policy-hero-actions .btn,.home-setup-actions .btn { width: 100%; margin-left: 0; }
  .adult-filter-row { flex-wrap: nowrap; overflow-x: auto; }
  .adult-filter-row .filter-pill,.adult-filter-row > span { white-space: nowrap; }
  .adult-access-page { margin-top: 4vh; padding: 24px; }
  .adult-admin-actions { flex-direction: column; }
  .adult-admin-actions .btn { width: 100%; }
  .erotic-home-stage,
  .erotic-home-stage img {
    min-height: 470px;
  }
  .erotic-home-lock-overlay {
    padding: 18px;
  }
  .erotic-home-live-note {
    right: 12px;
    bottom: 12px;
    left: 12px;
    max-width: none;
  }
  .home-setup-side {
    position: static;
  }
}

/* Account settings */
.email-pending-banner {
  display: flex;
  align-items: center;
  gap: 13px;
  margin-bottom: 18px;
  padding: 14px 16px;
  border: 1px solid rgba(245,158,11,.28);
  border-radius: 15px;
  background: linear-gradient(110deg,rgba(245,158,11,.11),rgba(124,58,237,.05));
}
.email-pending-banner > span,.email-activation-mark {
  display: grid;
  width: 42px;
  height: 42px;
  flex: 0 0 42px;
  place-items: center;
  border-radius: 50%;
  color: #fcd34d;
  background: rgba(245,158,11,.13);
  font-size: 16px;
  font-weight: 900;
}
.email-pending-banner > div { min-width: 0; flex: 1; }
.email-pending-banner strong { display: block; font-size: 12px; }
.email-pending-banner p { margin: 3px 0 0; color: var(--muted); font-size: 11px; line-height: 1.5; }
.email-pending-banner .btn { flex: 0 0 auto; }
.nav-badge.pending { color: #fcd34d; background: rgba(245,158,11,.16); }
.email-activation-mark { width: 64px; height: 64px; margin-bottom: 15px; font-size: 22px; }
.email-activation-list,.account-pending-allowed { display: grid; gap: 9px; margin-top: 18px; }
.email-activation-list > span,.account-pending-allowed > span { display: flex; align-items: flex-start; gap: 10px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.02); }
.email-activation-list i,.account-pending-allowed i { display: grid; width: 25px; height: 25px; flex: 0 0 25px; place-items: center; border-radius: 50%; color: #86efac; background: rgba(34,197,94,.1); font-size: 11px; font-style: normal; font-weight: 900; }
.email-activation-list > span:nth-child(2) i,.account-pending-allowed > span:nth-child(3) i { color: #fda4af; background: rgba(244,63,94,.1); }
.email-activation-list strong,.account-pending-allowed strong { display: block; font-size: 12px; }
.email-activation-list small,.account-pending-allowed small { display: block; margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.account-pending-gate { width: min(760px,100%); margin: 6vh auto 0; padding: clamp(24px,5vw,44px); border: 1px solid rgba(245,158,11,.22); border-radius: 22px; background: radial-gradient(circle at 0 0,rgba(245,158,11,.1),transparent 38%),var(--panel); box-shadow: var(--shadow); }
.account-pending-gate h1 { margin: 8px 0 10px; font-size: clamp(30px,5vw,48px); }
.account-pending-gate > p { max-width: 650px; margin: 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.account-pending-gate > small { display: block; margin-top: 14px; color: var(--muted); font-size: 11px; }
.account-pending-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.email-onboarding-panel .btn { margin-top: 14px; }
.email-onboarding-panel .btn + .btn { margin-left: 7px; }
.email-onboarding-status { display: flex; align-items: flex-start; gap: 12px; padding: 14px; border: 1px solid rgba(245,158,11,.24); border-radius: 14px; background: rgba(245,158,11,.05); }
.email-onboarding-status.verified { border-color: rgba(34,197,94,.24); background: rgba(34,197,94,.05); }
.email-onboarding-status > span { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 50%; color: #fcd34d; background: rgba(245,158,11,.12); font-weight: 900; }
.email-onboarding-status.verified > span { color: #86efac; background: rgba(34,197,94,.12); }
.email-onboarding-status strong { font-size: 12px; }
.email-onboarding-status p,.onboarding-role-verification > p { margin: 4px 0 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.onboarding-role-verification { margin-top: 14px; }
.account-settings-page {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}
.account-settings-page p { font-size: var(--approved-card-copy); line-height: 1.55; }
.account-settings-page small { font-size: var(--approved-meta-copy); }
.account-settings-page .page-header p { font-size: var(--approved-page-copy); line-height: 1.6; }
.account-settings-page .badge { font-size: var(--approved-micro-copy); }
.account-settings-page .btn { font-size: var(--approved-card-copy); }
.account-settings-page .field label { font-size: var(--approved-meta-copy); }
.account-settings-page :is(.input,.textarea,.select) { font-size: var(--approved-card-copy); }

.account-settings-hero {
  display: grid;
  grid-template-columns: minmax(280px,1fr) minmax(480px,1.35fr);
  align-items: center;
  gap: 22px;
  min-height: 156px;
  margin-bottom: 16px;
  padding: 24px;
  border: 1px solid rgba(139,92,246,.2);
  border-radius: 22px;
  background: radial-gradient(circle at 0 0,rgba(139,92,246,.18),transparent 43%),radial-gradient(circle at 100% 100%,rgba(34,211,238,.08),transparent 38%),rgba(23,23,39,.72);
}
.account-identity { display: flex; align-items: center; gap: 16px; min-width: 0; }
.account-identity > span { display: grid; width: 66px; height: 66px; flex: 0 0 66px; place-items: center; border: 1px solid rgba(255,255,255,.14); border-radius: 20px; color: white; background: linear-gradient(135deg,var(--violet),var(--cyan)); font-size: 20px; font-weight: 900; box-shadow: 0 16px 34px rgba(54,34,121,.24); }
.account-identity small { color: var(--cyan); font-weight: 850; letter-spacing: .1em; }
.account-identity h2 { margin: 5px 0 3px; font-size: 24px; letter-spacing: -.025em; }
.account-identity p { margin: 0; color: var(--muted); overflow-wrap: anywhere; }
.account-status-list { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.account-status-list > span { display: flex; align-items: center; gap: 9px; min-height: 72px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.025); }
.account-status-list i { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-meta-copy); font-style: normal; font-weight: 900; }
.account-status-list small,.account-status-list strong { display: block; }
.account-status-list small { color: var(--muted); }
.account-status-list strong { margin-top: 3px; font-size: var(--approved-card-copy); }

.account-settings-layout { display: grid; grid-template-columns: 286px minmax(0,1fr); align-items: start; gap: 16px; }
.account-settings-nav { position: sticky; top: 94px; display: grid; gap: 5px; padding: 9px; border: 1px solid var(--border); border-radius: 18px; background: rgba(23,23,39,.7); }
.account-settings-nav > button { display: grid; grid-template-columns: 38px minmax(0,1fr); align-items: center; gap: 10px; min-height: 62px; padding: 9px 11px; border: 1px solid transparent; border-radius: 12px; color: var(--muted); background: transparent; text-align: left; transition: .2s ease; }
.account-settings-nav > button:hover { color: var(--snow); background: rgba(255,255,255,.025); }
.account-settings-nav > button.active { border-color: rgba(139,92,246,.26); color: var(--snow); background: linear-gradient(90deg,rgba(139,92,246,.15),rgba(139,92,246,.035)); }
.account-settings-nav > button > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--muted-2); background: rgba(255,255,255,.035); font-size: var(--approved-micro-copy); font-weight: 900; }
.account-settings-nav > button.active > span { color: var(--cyan); background: rgba(34,211,238,.08); }
.account-settings-nav strong,.account-settings-nav small { display: block; }
.account-settings-nav strong { font-size: var(--approved-card-copy); }
.account-settings-nav small { margin-top: 3px; color: var(--muted); line-height: 1.35; }
.account-settings-content { min-width: 0; }
.account-section-card { padding: 24px; border: 1px solid var(--border); border-radius: 20px; background: rgba(23,23,39,.72); }
.account-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding-bottom: 20px; border-bottom: 1px solid var(--soft-border); }
.account-card-head h2 { margin: 5px 0 5px; font-size: 25px; letter-spacing: -.025em; }
.account-card-head p { max-width: 690px; margin: 0; color: var(--muted); }
.account-avatar-editor { display: flex; align-items: center; gap: 14px; margin: 20px 0; padding: 16px; border: 1px solid var(--soft-border); border-radius: 15px; background: rgba(255,255,255,.018); }
.account-avatar-editor > span { display: grid; width: 64px; height: 64px; flex: 0 0 64px; place-items: center; border-radius: 18px; color: white; background: linear-gradient(135deg,#6d38ee,#22d3ee); font-size: 18px; font-weight: 900; }
.account-avatar-editor strong,.account-avatar-editor small { display: block; }
.account-avatar-editor strong { font-size: var(--approved-card-copy); }
.account-avatar-editor small { margin: 3px 0 9px; color: var(--muted); }
.account-form-grid { margin-top: 20px; }
.account-form-grid .input:disabled { color: var(--muted); cursor: not-allowed; opacity: .75; }
.account-save-strip { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 22px; padding-top: 18px; border-top: 1px solid var(--soft-border); }
.account-save-strip strong,.account-save-strip small { display: block; }
.account-save-strip strong { font-size: var(--approved-card-copy); }
.account-save-strip small { margin-top: 3px; color: var(--muted); }

.account-security-score { display: grid; min-width: 92px; padding: 9px 13px; border: 1px solid rgba(34,211,238,.17); border-radius: 13px; background: rgba(34,211,238,.045); text-align: right; }
.account-security-score strong { color: var(--cyan); font-size: 20px; }
.account-security-score small { color: var(--muted); }
.account-security-banner { display: flex; align-items: center; gap: 12px; margin: 20px 0 14px; padding: 15px; border: 1px solid rgba(255,180,84,.2); border-radius: 14px; background: rgba(255,180,84,.045); }
.account-security-banner.secure { border-color: rgba(55,211,154,.2); background: rgba(55,211,154,.045); }
.account-security-banner > span { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 12px; color: var(--warning); background: rgba(255,180,84,.09); font-weight: 900; }
.account-security-banner.secure > span { color: var(--success); background: rgba(55,211,154,.09); }
.account-security-banner strong { display: block; font-size: var(--approved-card-copy); }
.account-security-banner p { margin: 3px 0 0; color: var(--muted); }
.account-settings-group { margin-top: 14px; padding: 18px; border: 1px solid var(--soft-border); border-radius: 15px; background: rgba(255,255,255,.012); }
.account-settings-group > h3,.account-group-head h3 { margin: 0; font-size: 16px; }
.account-group-head { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding-bottom: 13px; }
.account-group-head p { margin: 4px 0 0; color: var(--muted); }
.account-toggle-row:last-child { border-bottom: 0; }
.account-settings-page .toggle-copy strong { font-size: var(--approved-card-copy); }
.account-settings-page .toggle-copy small { display: block; margin-top: 3px; font-size: var(--approved-meta-copy); line-height: 1.45; }
.account-device-list { display: grid; gap: 8px; }
.account-device-list article { display: flex; align-items: center; gap: 11px; padding: 12px; border-radius: 12px; background: rgba(255,255,255,.025); }
.account-device-list article > div { min-width: 0; }
.account-device-list strong,.account-device-list small { display: block; }
.account-device-list strong { font-size: var(--approved-card-copy); }
.account-device-list small { margin-top: 3px; color: var(--muted); }
.account-device-list article > :last-child { margin-left: auto; }
.account-device-icon { display: grid; width: 38px; height: 38px; flex: 0 0 38px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.07); }
.account-empty-row { padding: 18px; border: 1px dashed var(--border); border-radius: 12px; color: var(--muted); font-size: var(--approved-card-copy); text-align: center; }
.account-session-overview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 14px; }
.account-session-overview > span { min-height: 98px; padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.018); }
.account-session-overview small,.account-session-overview strong,.account-session-overview p { display: block; }
.account-session-overview small { color: var(--muted); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .07em; }
.account-session-overview strong { margin-top: 5px; color: var(--cyan); font-size: 25px; }
.account-session-overview p { margin: 3px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }
.account-device-list .account-session-card { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 14px; border: 1px solid transparent; }
.account-device-list .account-session-card.current { border-color: rgba(34,211,238,.16); background: rgba(34,211,238,.025); }
.account-device-list .account-session-card > :last-child { margin-left: 0; }
.account-session-copy { min-width: 0; }
.account-session-title { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.account-session-title strong { margin-right: 3px; }
.account-session-title .badge { font-size: var(--approved-micro-copy); }
.account-session-meta { display: flex; flex-wrap: wrap; gap: 5px 12px; margin-top: 8px; color: var(--muted-2); font-size: var(--approved-meta-copy); }
.account-session-meta span:not(:last-child)::after { content: "·"; margin-left: 12px; color: var(--muted); }
.account-session-actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 6px; max-width: 315px; }
.account-session-actions .btn { white-space: nowrap; }
.account-trust-policy { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; margin-top: 13px; padding: 13px; border: 1px solid rgba(245,158,11,.16); border-radius: 12px; background: rgba(245,158,11,.035); }
.account-trust-policy > span:first-child { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: #fcd34d; background: rgba(245,158,11,.09); font-weight: 900; }
.account-trust-policy strong { display: block; font-size: var(--approved-card-copy); }
.account-trust-policy p { margin: 3px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }
.account-session-modal > p { font-size: 12px; line-height: 1.55; }
.account-session-modal .field label { font-size: 11px; }
.security-history-group { overflow: hidden; }
.security-history-filters { display: flex; flex-wrap: wrap; gap: 7px; margin-bottom: 13px; }
.security-history-filters button { min-height: 34px; padding: 7px 12px; border: 1px solid var(--soft-border); border-radius: 999px; color: var(--muted); background: rgba(255,255,255,.018); font: inherit; font-size: var(--approved-meta-copy); font-weight: 750; cursor: pointer; }
.security-history-filters button:hover,.security-history-filters button.active { border-color: rgba(139,92,246,.3); color: var(--snow); background: rgba(139,92,246,.12); }
.security-event-list { display: grid; gap: 8px; }
.security-event-row { display: grid; width: 100%; grid-template-columns: 40px minmax(0,1fr) minmax(145px,auto); align-items: center; gap: 12px; padding: 13px; border: 1px solid var(--soft-border); border-left: 3px solid rgba(34,197,94,.5); border-radius: 13px; color: inherit; background: rgba(255,255,255,.018); text-align: left; cursor: pointer; transition: .2s ease; }
.security-event-row:hover { border-color: rgba(139,92,246,.28); background: rgba(139,92,246,.045); transform: translateY(-1px); }
.security-event-row.risk-medium { border-left-color: rgba(245,158,11,.8); }
.security-event-row.risk-high { border-left-color: rgba(244,63,94,.85); }
.security-event-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.07); font-size: var(--approved-card-copy); font-weight: 900; }
.risk-medium .security-event-icon { color: #fcd34d; background: rgba(245,158,11,.09); }
.risk-high .security-event-icon { color: #fda4af; background: rgba(244,63,94,.09); }
.security-event-copy { min-width: 0; }
.security-event-copy strong,.security-event-copy small,.security-event-copy em { display: block; }
.security-event-copy strong { font-size: var(--approved-card-copy); }
.security-event-copy small { margin-top: 3px; color: var(--muted); line-height: 1.45; }
.security-event-copy em { margin-top: 6px; color: var(--muted-2); font-size: var(--approved-meta-copy); font-style: normal; }
.security-event-side { display: grid; justify-items: end; gap: 5px; }
.security-event-side > small { color: var(--muted); font-size: var(--approved-meta-copy); }
.security-event-status { font-size: var(--approved-micro-copy); font-weight: 850; letter-spacing: .06em; }
.security-event-status.confirmed { color: #86efac; }
.security-event-status.pending { color: #fcd34d; }
.security-event-status.blocked { color: #fda4af; }
.security-retention-note { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; margin-top: 13px; padding: 13px; border: 1px solid rgba(245,158,11,.16); border-radius: 12px; background: rgba(245,158,11,.035); }
.security-retention-note > span:first-child { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: #fcd34d; background: rgba(245,158,11,.09); font-weight: 900; }
.security-retention-note strong { display: block; font-size: var(--approved-card-copy); }
.security-retention-note p { margin: 3px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }
.security-event-modal > p { font-size: 12px; line-height: 1.55; }
.account-protected-note { display: flex; align-items: flex-start; gap: 11px; margin-top: 15px; padding: 14px; border-left: 2px solid var(--cyan); border-radius: 0 12px 12px 0; background: rgba(34,211,238,.035); }
.account-protected-note > span { display: grid; min-width: 31px; height: 31px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-micro-copy); font-weight: 900; }
.account-protected-note strong { display: block; font-size: var(--approved-card-copy); }
.account-protected-note p { margin: 3px 0 0; color: var(--muted); }

.account-finance-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 20px; }
.account-finance-summary > span { min-height: 86px; padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.018); }
.account-finance-summary small,.account-finance-summary strong { display: block; }
.account-finance-summary small { color: var(--muted); }
.account-finance-summary strong { margin-top: 7px; font-size: var(--approved-card-copy); line-height: 1.4; }
.account-adult-status { display: flex; align-items: center; gap: 14px; margin-top: 20px; padding: 18px; border: 1px solid rgba(244,114,182,.2); border-radius: 15px; background: radial-gradient(circle at 0 50%,rgba(190,24,93,.12),transparent 38%),rgba(255,255,255,.012); }
.account-adult-status > span { display: grid; width: 54px; height: 54px; flex: 0 0 54px; place-items: center; border-radius: 50%; color: #f9a8d4; background: rgba(190,24,93,.12); font-size: var(--approved-card-copy); font-weight: 900; }
.account-adult-status strong { display: block; font-size: 16px; }
.account-adult-status p { margin: 4px 0 0; color: var(--muted); }
.account-adult-summary { grid-template-columns: repeat(4,minmax(0,1fr)); }
.account-adult-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 16px; }
.adult-activation-form { margin: 18px 0 14px; }
.adult-activation-steps { display: grid; gap: 9px; margin: 18px 0; }
.adult-activation-steps > span { display: flex; align-items: flex-start; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.02); }
.adult-activation-steps > span > i { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 50%; color: var(--muted); background: rgba(255,255,255,.06); font-size: 11px; font-style: normal; font-weight: 900; }
.adult-activation-steps > span.done { border-color: rgba(34,197,94,.22); background: rgba(34,197,94,.04); }
.adult-activation-steps > span.done > i { color: #86efac; background: rgba(34,197,94,.12); }
.adult-activation-steps > span.active { border-color: rgba(245,158,11,.25); background: rgba(245,158,11,.045); }
.adult-activation-steps > span.active > i { color: #fcd34d; background: rgba(245,158,11,.12); }
.adult-activation-steps > span.blocked { border-color: rgba(244,63,94,.25); background: rgba(244,63,94,.045); }
.adult-activation-steps > span.blocked > i { color: #fda4af; background: rgba(244,63,94,.12); }
.adult-activation-steps strong,.adult-activation-steps small { display: block; }
.adult-activation-steps strong { font-size: 12px; line-height: 1.4; }
.adult-activation-steps small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.5; }
.account-adult-steps { grid-template-columns: repeat(3,minmax(0,1fr)); margin: 16px 0; }
.route-adult-steps { width: min(100%,680px); grid-template-columns: repeat(3,minmax(0,1fr)); text-align: left; }
.adult-access-page > .btn + .btn { margin-left: 7px; }
.account-management-list { display: grid; gap: 9px; margin-top: 20px; }
.account-management-list article { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; align-items: center; gap: 13px; padding: 14px; border: 1px solid var(--soft-border); border-radius: 14px; background: rgba(255,255,255,.015); }
.account-management-list article > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; color: var(--cyan); background: rgba(34,211,238,.07); font-weight: 900; }
.account-management-list strong { display: block; font-size: var(--approved-card-copy); }
.account-management-list p { margin: 3px 0 0; color: var(--muted); }
.account-management-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin-top: 20px; }
.account-management-summary > span { min-height: 84px; padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.018); }
.account-management-summary small,.account-management-summary strong { display: block; }
.account-management-summary small { color: var(--muted); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .07em; }
.account-management-summary strong { margin-top: 8px; font-size: var(--approved-card-copy); }
.account-management-result,.account-deletion-scheduled { display: grid; grid-template-columns: 46px minmax(0,1fr) auto; align-items: center; gap: 13px; margin-top: 14px; padding: 15px; border: 1px solid rgba(34,197,94,.2); border-radius: 14px; background: rgba(34,197,94,.045); }
.account-management-result > span,.account-deletion-scheduled > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; color: #86efac; background: rgba(34,197,94,.1); font-weight: 900; }
.account-management-result strong,.account-deletion-scheduled strong { display: block; font-size: var(--approved-card-copy); }
.account-management-result p,.account-deletion-scheduled p { margin: 3px 0 0; color: var(--muted); }
.account-deletion-scheduled { border-color: rgba(245,158,11,.22); background: rgba(245,158,11,.045); }
.account-deletion-scheduled > span { color: #fcd34d; background: rgba(245,158,11,.1); }
.account-danger-zone { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 18px; padding: 17px; border: 1px solid rgba(255,99,127,.22); border-radius: 15px; background: rgba(255,99,127,.035); }
.account-danger-zone > div { display: flex; align-items: center; gap: 11px; }
.account-danger-zone > div > span { display: grid; width: 40px; height: 40px; flex: 0 0 40px; place-items: center; border-radius: 11px; color: var(--danger); background: rgba(255,99,127,.09); font-weight: 900; }
.account-danger-zone strong { display: block; font-size: var(--approved-card-copy); }
.account-danger-zone p { margin: 3px 0 0; color: var(--muted); }
.account-management-modal > p { font-size: 12px; line-height: 1.55; }
.account-management-modal .field label { font-size: 11px; }
.account-export-options,.account-impact-list,.account-blocker-list { display: grid; gap: 8px; margin: 18px 0; }
.account-export-options label { display: flex; align-items: flex-start; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(255,255,255,.018); cursor: pointer; }
.account-export-options input { margin-top: 3px; accent-color: var(--violet); }
.account-export-options strong,.account-export-options small { display: block; }
.account-export-options strong { font-size: 12px; }
.account-export-options small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.account-export-selection { display: grid; gap: 6px; margin: 15px 0; padding: 13px; border-radius: 12px; color: #b7e6c5; background: rgba(34,197,94,.05); font-size: 11px; }
.account-impact-list > span,.account-blocker-list > span { display: flex; align-items: flex-start; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(255,255,255,.018); }
.account-impact-list i,.account-blocker-list i { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: 11px; font-style: normal; font-weight: 900; }
.account-impact-list strong,.account-impact-list small,.account-blocker-list strong,.account-blocker-list small { display: block; }
.account-impact-list strong,.account-blocker-list strong { font-size: 12px; }
.account-impact-list small,.account-blocker-list small { margin-top: 3px; color: var(--muted); font-size: 11px; line-height: 1.45; }
.account-blocker-list > span:not(.resolved) { border-color: rgba(244,63,94,.16); background: rgba(244,63,94,.025); }
.account-blocker-list > span:not(.resolved) i { color: #fda4af; background: rgba(244,63,94,.09); }
.account-blocker-list > span.resolved { border-color: rgba(34,197,94,.16); background: rgba(34,197,94,.025); }
.account-blocker-list > span.resolved i { color: #86efac; background: rgba(34,197,94,.09); }
.account-modal-footnote { margin: 13px 0 0; color: var(--muted); font-size: 10px !important; text-align: center; }
.account-deactivated-page { display: grid; min-height: calc(100vh - 130px); place-items: center; }
.account-deactivated-gate { width: min(690px,100%); padding: 34px; border: 1px solid rgba(245,158,11,.22); border-radius: 24px; background: radial-gradient(circle at 50% 0,rgba(245,158,11,.1),transparent 42%),rgba(23,23,39,.86); text-align: center; }
.account-deactivated-mark { display: grid; width: 66px; height: 66px; margin: 0 auto 18px; place-items: center; border: 1px solid rgba(245,158,11,.25); border-radius: 20px; color: #fcd34d; background: rgba(245,158,11,.09); font-size: 24px; }
.account-deactivated-gate h1 { margin: 7px 0 8px; font-size: clamp(28px,4vw,43px); }
.account-deactivated-gate > p { margin: 0 auto 20px; color: var(--muted); font-size: var(--approved-page-copy); line-height: 1.6; }
.account-deactivated-gate .account-impact-list { text-align: left; }
.account-deactivated-gate > .btn { margin: 4px; }
.account-deactivated-gate > small { display: block; margin-top: 14px; color: var(--muted); font-size: var(--approved-meta-copy); }

@media (min-width: 901px) {
  .account-settings-page { --approved-page-copy: 16px; --approved-card-copy: 14px; --approved-meta-copy: 13px; --approved-micro-copy: 11px; }
  .account-settings-page .btn { font-size: 13px; }
  .adult-activation-steps strong { font-size: 14px; }
  .adult-activation-steps small { font-size: 13px; }
  .email-pending-banner strong,.email-activation-list strong,.account-pending-allowed strong,.email-onboarding-status strong { font-size: 14px; }
  .email-pending-banner p,.email-activation-list small,.account-pending-allowed small,.email-onboarding-status p,.onboarding-role-verification > p { font-size: 13px; }
}
@media (max-width: 1120px) {
  .account-settings-hero { grid-template-columns: 1fr; }
  .account-settings-layout { grid-template-columns: 230px minmax(0,1fr); }
  .account-status-list { max-width: 760px; }
  .account-adult-summary { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 780px) {
  .email-pending-banner { align-items: flex-start; flex-wrap: wrap; }
  .email-pending-banner .btn { width: 100%; }
  .account-pending-actions { flex-direction: column; }
  .account-pending-actions .btn { width: 100%; }
  .email-onboarding-panel .btn { width: 100%; }
  .email-onboarding-panel .btn + .btn { margin-left: 0; }
  .account-settings-layout { grid-template-columns: 1fr; }
  .account-settings-nav { position: static; display: flex; overflow-x: auto; padding: 7px; scroll-snap-type: x mandatory; }
  .account-settings-nav > button { min-width: 210px; scroll-snap-align: start; }
  .account-finance-summary { grid-template-columns: 1fr; }
  .account-management-summary { grid-template-columns: 1fr; }
  .account-session-overview { grid-template-columns: 1fr; }
  .account-device-list .account-session-card { grid-template-columns: 42px minmax(0,1fr); align-items: start; }
  .account-session-actions { grid-column: 2; justify-content: flex-start; max-width: none; }
  .security-event-row { grid-template-columns: 40px minmax(0,1fr); align-items: start; }
  .security-event-side { grid-column: 2; grid-template-columns: repeat(3,max-content); align-items: center; justify-content: start; justify-items: start; }
}
@media (max-width: 620px) {
  .account-settings-hero,.account-section-card { padding: 18px; }
  .account-status-list { grid-template-columns: 1fr; }
  .account-card-head,.account-group-head,.account-save-strip,.account-danger-zone { align-items: flex-start; flex-direction: column; }
  .account-card-head > .badge,.account-save-strip .btn,.account-group-head .btn,.account-danger-zone > .btn { width: 100%; }
  .account-avatar-editor { align-items: flex-start; }
  .account-device-list article { align-items: flex-start; }
  .account-device-list article > :last-child { margin-left: 0; }
  .account-session-actions .btn { width: 100%; }
  .account-trust-policy { grid-template-columns: 34px minmax(0,1fr); align-items: start; }
  .account-trust-policy > .badge { grid-column: 2; width: fit-content; }
  .security-retention-note { grid-template-columns: 34px minmax(0,1fr); align-items: start; }
  .security-retention-note > .badge { grid-column: 2; width: fit-content; }
  .security-event-side { grid-template-columns: 1fr; }
  .account-management-list article { grid-template-columns: 44px minmax(0,1fr); align-items: start; }
  .account-management-list article .btn { grid-column: 2; width: 100%; }
  .account-management-result,.account-deletion-scheduled { grid-template-columns: 44px minmax(0,1fr); align-items: start; }
  .account-management-result .btn,.account-deletion-scheduled .btn { grid-column: 2; width: 100%; }
  .account-deactivated-gate { padding: 24px 18px; }
  .account-deactivated-gate > .btn { width: 100%; margin: 4px 0; }
  .account-adult-summary { grid-template-columns: 1fr; }
  .account-adult-steps,.route-adult-steps { grid-template-columns: 1fr; }
  .account-adult-actions { flex-direction: column; }
  .account-adult-actions .btn { width: 100%; }
  .adult-access-page > .btn { width: 100%; }
  .adult-access-page > .btn + .btn { margin: 8px 0 0; }
}

@media (min-width: 901px) {
  .account-session-modal > p { font-size: 14px; }
  .account-session-modal .field label { font-size: 13px; }
  .security-event-modal > p { font-size: 14px; }
  .account-management-modal > p { font-size: 14px; }
  .account-management-modal .field label,.account-export-options strong,.account-impact-list strong,.account-blocker-list strong { font-size: 13px; }
  .account-export-options small,.account-export-selection,.account-impact-list small,.account-blocker-list small { font-size: 13px; }
  .account-modal-footnote { font-size: 11px !important; }
}

/* Application-wide approved typography lock.
   Descriptions and metadata must stay consistent on every role and route. */
#main-content .page-enter {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}

#main-content .page-enter p {
  font-size: var(--approved-card-copy);
  line-height: 1.55;
}

#main-content .page-enter :is(small,em) {
  font-size: var(--approved-meta-copy);
}

#main-content .page-enter :is(.page-header,.section-head) p {
  font-size: var(--approved-page-copy);
  line-height: 1.6;
}

#main-content .page-enter :is(.hero-kicker,.eyebrow,.date-pill,.badge,.live-badge,.viewer-badge,.popular-label,.opportunity-value,.button-count,.kanban-count) {
  font-size: var(--approved-micro-copy);
}

#main-content .page-enter :is(.hero-proof,.card-meta,.creator-stats,.kanban-meta,.marketplace-markets,.marketplace-talent-name > span,.marketplace-match,.offer-list-time,.offer-list-fee) {
  font-size: var(--approved-meta-copy);
}

#main-content .page-enter :is(
  .trend,
  .studio-preview-top > span,
  .studio-safe-area span,
  .studio-camera i,
  .studio-check-list i,
  .marketplace-results-head label,
  .marketplace-talent-media > div:last-child > span:last-child,
  .offer-list-campaign span,
  .offer-list-value span
) {
  font-size: var(--approved-meta-copy);
}

#main-content .page-enter :is(.btn,.filter-pill,.text-link) {
  font-size: var(--approved-card-copy);
}

#main-content .page-enter :is(
  .hero-float strong,
  .creator-line strong,
  .creator-name-row strong,
  .message-item strong,
  .kanban-card strong,
  .marketplace-talent-name strong,
  .marketplace-talent-metrics strong,
  .marketplace-trust-strip strong,
  .modal-talent-list strong,
  .campaign-builder-steps strong,
  .campaign-side-note strong,
  .deliverable-card strong,
  .campaign-talent-row strong,
  .offer-list-person strong,
  .offer-list-campaign strong,
  .offer-list-value strong,
  .invoice-main strong,
  .invoice-row > div > strong,
  .studio-camera strong,
  .studio-check-list strong,
  .live-chat-user strong,
  .live-gift-event strong,
  .studio-health-list strong,
  .studio-safety-note strong
) {
  font-size: var(--approved-card-copy);
}

#main-content .settings-page .toggle-copy strong {
  font-size: var(--approved-card-copy);
}

.analytics-interest-row { margin: 15px 0; }
.analytics-interest-row > div:first-child {
  display: flex;
  justify-content: space-between;
  font-size: var(--approved-meta-copy);
}
.analytics-interest-row > div:last-child {
  height: 7px;
  margin-top: 7px;
  overflow: hidden;
  border-radius: 9px;
  background: #29293d;
}
.analytics-interest-row i {
  display: block;
  height: 100%;
  border-radius: 9px;
  background: linear-gradient(90deg,var(--violet),var(--cyan));
}

@media (min-width: 901px) {
  #main-content .page-enter {
    --approved-page-copy: 16px;
    --approved-card-copy: 14px;
    --approved-meta-copy: 13px;
    --approved-micro-copy: 11px;
  }

  #main-content .page-enter :is(.btn,.filter-pill,.text-link) {
    font-size: 13px;
  }
}

/* Complete Admin Settings */
.admin-settings-page { width: min(1540px,100%); margin: 0 auto; }
.admin-settings-overview {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 10px;
  margin-bottom: 16px;
}
.admin-settings-overview > span {
  min-height: 112px;
  padding: 16px;
  border: 1px solid var(--border);
  border-radius: 16px;
  background: linear-gradient(145deg,rgba(30,30,49,.84),rgba(17,17,28,.94));
}
.admin-settings-overview small,.admin-settings-overview strong,.admin-settings-overview em { display: block; }
.admin-settings-overview small { color: var(--muted); }
.admin-settings-overview strong { margin-top: 8px; font-size: 16px; line-height: 1.35; }
.admin-settings-overview em { margin-top: 6px; color: var(--success); font-style: normal; }

.admin-settings-layout {
  display: grid;
  grid-template-columns: 278px minmax(0,1fr);
  align-items: start;
  gap: 16px;
}
.admin-settings-nav {
  position: sticky;
  top: 92px;
  display: grid;
  gap: 5px;
  padding: 9px;
  border: 1px solid var(--border);
  border-radius: 19px;
  background: rgba(20,20,33,.84);
  box-shadow: 0 18px 48px rgba(0,0,0,.18);
  backdrop-filter: blur(18px);
}
.admin-settings-nav > button {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr);
  align-items: center;
  gap: 10px;
  min-height: 66px;
  padding: 10px 11px;
  border: 1px solid transparent;
  border-radius: 13px;
  color: var(--muted);
  background: transparent;
  text-align: left;
  transition: .2s ease;
}
.admin-settings-nav > button:hover { color: var(--snow); background: rgba(255,255,255,.025); }
.admin-settings-nav > button.active {
  border-color: rgba(139,92,246,.3);
  color: var(--snow);
  background: linear-gradient(90deg,rgba(139,92,246,.18),rgba(34,211,238,.035));
}
.admin-settings-nav > button > span {
  display: grid;
  width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 11px;
  color: var(--muted-2);
  background: rgba(255,255,255,.04);
  font-size: 11px;
  font-weight: 900;
}
.admin-settings-nav > button.active > span { color: var(--cyan); background: rgba(34,211,238,.09); }
.admin-settings-nav strong,.admin-settings-nav small { display: block; }
.admin-settings-nav strong { font-size: var(--approved-card-copy); }
.admin-settings-nav small { margin-top: 3px; color: var(--muted); line-height: 1.35; }
.admin-settings-content { min-width: 0; }

.admin-section-card {
  overflow: hidden;
  padding: 25px;
  border: 1px solid var(--border);
  border-radius: 22px;
  background: radial-gradient(circle at 100% 0,rgba(34,211,238,.035),transparent 32%),rgba(23,23,39,.76);
  box-shadow: 0 20px 55px rgba(0,0,0,.16);
}
.admin-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding-bottom: 21px;
  border-bottom: 1px solid var(--soft-border);
}
.admin-section-head h2 { margin: 5px 0 5px; font-size: 27px; letter-spacing: -.03em; }
.admin-section-head p { max-width: 760px; margin: 0; color: var(--muted); }
.admin-section-head > .badge { flex: 0 0 auto; }

.admin-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 13px;
  margin-top: 22px;
}
.admin-form-grid.compact { margin-top: 16px; }
.admin-form-grid .full { grid-column: 1/-1; }
.admin-form-grid .input:disabled { color: var(--muted); opacity: .76; }

.admin-settings-group {
  margin-top: 17px;
  padding: 19px;
  border: 1px solid var(--soft-border);
  border-radius: 16px;
  background: rgba(255,255,255,.014);
}
.admin-settings-group > h3,.admin-group-head h3 { margin: 0; font-size: 17px; }
.admin-toggle-row:last-child { border-bottom: 0; }
.admin-toggle-control { display: flex; align-items: center; gap: 9px; }
.admin-toggle-control .badge { white-space: nowrap; }
.admin-group-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 14px;
}
.admin-group-head p { margin: 4px 0 0; color: var(--muted); }

.admin-protected-note {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-top: 17px;
  padding: 15px;
  border-left: 2px solid var(--cyan);
  border-radius: 0 13px 13px 0;
  background: rgba(34,211,238,.04);
}
.admin-protected-note > span {
  display: grid;
  min-width: 38px;
  height: 38px;
  place-items: center;
  border-radius: 11px;
  color: var(--cyan);
  background: rgba(34,211,238,.09);
  font-size: 12px;
  font-weight: 900;
}
.admin-protected-note strong { display: block; font-size: var(--approved-card-copy); }
.admin-protected-note p { margin: 4px 0 0; color: var(--muted); }

.admin-save-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 23px;
  padding-top: 19px;
  border-top: 1px solid var(--soft-border);
}
.admin-save-strip strong,.admin-save-strip small { display: block; }
.admin-save-strip strong { font-size: var(--approved-card-copy); }
.admin-save-strip small { margin-top: 3px; color: var(--muted); }
.admin-action-row { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 17px; }

.admin-security-score {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr);
  align-items: center;
  gap: 18px;
  margin-top: 20px;
  padding: 18px;
  border: 1px solid rgba(55,211,154,.2);
  border-radius: 17px;
  background: linear-gradient(100deg,rgba(55,211,154,.075),rgba(34,211,238,.025));
}
.admin-security-score > span { text-align: center; }
.admin-security-score > span strong,.admin-security-score > span small { display: block; }
.admin-security-score > span strong { color: var(--success); font-size: 31px; }
.admin-security-score > span small { color: var(--muted); }
.admin-security-score > div strong { display: block; font-size: 16px; }
.admin-security-score p { margin: 4px 0 0; color: var(--muted); }

.admin-role-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 20px;
}
.admin-role-grid article {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
}
.admin-role-grid article > span:first-child {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border-radius: 11px;
  color: var(--cyan);
  background: rgba(34,211,238,.08);
  font-size: 11px;
  font-weight: 900;
}
.admin-role-grid strong { display: block; font-size: var(--approved-card-copy); }
.admin-role-grid p { margin: 3px 0 0; color: var(--muted); }
.admin-permission-table { min-width: 720px; }

.admin-policy-grid { margin-top: 17px; }
.admin-live-status,.admin-commercial-banner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-top: 20px;
  padding: 17px;
  border: 1px solid rgba(55,211,154,.18);
  border-radius: 16px;
  background: rgba(55,211,154,.045);
}
.admin-live-status > span { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 10px; }
.admin-live-status i {
  grid-row: 1/3;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--success);
  box-shadow: 0 0 0 6px rgba(55,211,154,.1);
}
.admin-live-status strong,.admin-live-status small { display: block; }
.admin-live-status small { margin-top: 3px; color: var(--muted); }

.admin-fact-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 9px;
  margin-top: 17px;
}
.admin-fact-grid > span {
  min-height: 88px;
  padding: 14px;
  border: 1px solid var(--soft-border);
  border-radius: 13px;
  background: rgba(255,255,255,.018);
}
.admin-fact-grid small,.admin-fact-grid strong { display: block; }
.admin-fact-grid small { color: var(--muted); }
.admin-fact-grid strong { margin-top: 7px; font-size: var(--approved-card-copy); line-height: 1.4; }

.admin-commercial-banner { border-color: rgba(139,92,246,.2); background: rgba(139,92,246,.055); }
.admin-commercial-banner > span {
  display: grid;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  place-items: center;
  border-radius: 14px;
  color: white;
  background: linear-gradient(135deg,var(--violet),var(--cyan));
  font-size: 13px;
  font-weight: 900;
}
.admin-commercial-banner > div { flex: 1; }
.admin-commercial-banner strong { display: block; font-size: var(--approved-card-copy); }
.admin-commercial-banner p { margin: 4px 0 0; color: var(--muted); }

.admin-channel-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  margin-top: 17px;
}
.admin-channel-grid article {
  padding: 17px;
  border: 1px solid var(--soft-border);
  border-radius: 15px;
  background: rgba(255,255,255,.018);
}
.admin-channel-grid article > span { color: var(--cyan); font-size: 11px; font-weight: 900; letter-spacing: .09em; }
.admin-channel-grid strong { display: block; margin-top: 12px; font-size: var(--approved-card-copy); }
.admin-channel-grid p { margin: 5px 0 0; color: var(--muted); }

.admin-privacy-flow {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 9px;
  margin-top: 18px;
}
.admin-privacy-flow article { position: relative; display: flex; gap: 11px; padding: 14px; border: 1px solid var(--soft-border); border-radius: 14px; background: rgba(255,255,255,.016); }
.admin-privacy-flow article > span { display: grid; width: 31px; height: 31px; flex: 0 0 31px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-weight: 900; }
.admin-privacy-flow strong { display: block; font-size: var(--approved-card-copy); }
.admin-privacy-flow p { margin: 4px 0 0; color: var(--muted); }

.admin-service-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 9px;
  margin-top: 20px;
}
.admin-service-grid article {
  display: grid;
  grid-template-columns: 10px minmax(0,1fr) auto;
  align-items: center;
  gap: 11px;
  padding: 14px;
  border: 1px solid var(--soft-border);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
}
.admin-service-grid i { width: 9px; height: 9px; border-radius: 50%; background: var(--success); box-shadow: 0 0 0 5px rgba(55,211,154,.08); }
.admin-service-grid strong,.admin-service-grid small { display: block; }
.admin-service-grid strong { font-size: var(--approved-card-copy); }
.admin-service-grid small { margin-top: 3px; color: var(--muted); }
.admin-service-grid b { color: var(--muted); font-size: var(--approved-meta-copy); }

.admin-audit-list {
  margin-top: 18px;
  padding: 18px;
  border: 1px solid var(--soft-border);
  border-radius: 16px;
  background: rgba(255,255,255,.014);
}
.admin-audit-list article { display: flex; align-items: flex-start; gap: 11px; padding: 12px 0; border-bottom: 1px solid var(--soft-border); }
.admin-audit-list article:last-child { border-bottom: 0; }
.admin-audit-list article > span { display: grid; width: 29px; height: 29px; flex: 0 0 29px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.07); font-size: 11px; font-weight: 900; }
.admin-audit-list strong,.admin-audit-list small { display: block; }
.admin-audit-list strong { font-size: var(--approved-card-copy); }
.admin-audit-list small { margin-top: 3px; color: var(--muted); }

@media (max-width: 1180px) {
  .admin-settings-overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .admin-settings-layout { grid-template-columns: 230px minmax(0,1fr); }
  .admin-fact-grid,.admin-privacy-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 820px) {
  .admin-settings-layout { grid-template-columns: 1fr; }
  .admin-settings-nav { position: static; display: flex; overflow-x: auto; padding: 7px; scroll-snap-type: x mandatory; }
  .admin-settings-nav > button { min-width: 220px; scroll-snap-align: start; }
  .admin-settings-nav > button > span { flex: 0 0 38px; }
  .admin-channel-grid { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
  .admin-settings-overview,.admin-form-grid,.admin-role-grid,.admin-fact-grid,.admin-privacy-flow,.admin-service-grid { grid-template-columns: 1fr; }
  .admin-section-card { padding: 18px; border-radius: 19px; }
  .admin-section-head,.admin-save-strip,.admin-live-status,.admin-commercial-banner,.admin-group-head { align-items: flex-start; flex-direction: column; }
  .admin-section-head > .badge,.admin-save-strip .btn,.admin-live-status .btn,.admin-commercial-banner .btn,.admin-group-head .btn { width: 100%; }
  .admin-settings-group { padding: 15px; }
  .admin-toggle-row { align-items: flex-start; gap: 13px; }
  .admin-toggle-control { align-items: flex-end; flex-direction: column; }
  .admin-security-score { grid-template-columns: 1fr; text-align: center; }
  .admin-action-row { flex-direction: column; }
  .admin-action-row .btn { width: 100%; }
  .admin-role-grid article { grid-template-columns: 40px minmax(0,1fr); }
  .admin-role-grid article > .badge { grid-column: 2; width: max-content; }
}

/* Reusable application states: Loading, Empty, Error and Access denied */
.ui-state-fab { position: fixed; z-index: 80; left: calc(var(--sidebar) + 18px); bottom: 18px; display: flex; min-height: 42px; align-items: center; gap: 8px; padding: 0 14px; border: 1px solid rgba(139,92,246,.36); border-radius: 13px; background: rgba(20,20,33,.94); color: var(--snow); box-shadow: 0 15px 38px rgba(0,0,0,.3); backdrop-filter: blur(18px); transition: .2s ease; }
.ui-state-fab:hover { border-color: rgba(34,211,238,.5); transform: translateY(-2px); }
.ui-state-fab span { color: var(--cyan); font-size: 16px; }
.ui-state-fab strong { font-size: 12px; }
.ui-system-page { display: grid; min-height: calc(100vh - 176px); place-items: center; }
.ui-system-state { position: relative; width: min(720px,100%); padding: 52px; overflow: hidden; border: 1px solid var(--border); border-radius: 28px; background: radial-gradient(circle at 50% 0,rgba(139,92,246,.12),transparent 42%),rgba(20,20,33,.86); box-shadow: var(--shadow); text-align: center; }
.ui-system-state::after { position: absolute; inset: auto -15% -62% 35%; height: 330px; border-radius: 50%; background: rgba(34,211,238,.035); content: ""; pointer-events: none; }
.ui-state-orbit { position: relative; display: grid; width: 86px; height: 86px; margin: 0 auto 25px; place-items: center; border: 1px solid rgba(139,92,246,.36); border-radius: 50%; background: rgba(139,92,246,.1); box-shadow: 0 0 0 12px rgba(139,92,246,.035); }
.ui-state-orbit::before,.ui-state-orbit::after { position: absolute; border: 1px solid rgba(34,211,238,.2); border-radius: 50%; content: ""; }
.ui-state-orbit::before { inset: 13px -14px; }
.ui-state-orbit::after { inset: -12px 20px; }
.ui-state-orbit span { color: var(--cyan); font-size: 31px; font-weight: 800; }
.ui-system-state.error .ui-state-orbit { border-color: rgba(255,177,79,.36); background: rgba(255,177,79,.08); }
.ui-system-state.error .ui-state-orbit span { color: var(--warning); }
.ui-system-state.denied .ui-state-orbit { border-color: rgba(255,99,127,.36); background: rgba(255,99,127,.08); }
.ui-system-state.denied .ui-state-orbit span { color: #ff637f; }
.ui-system-state h1 { margin: 11px auto 14px; font-size: clamp(31px,5vw,52px); line-height: 1.06; }
.ui-system-state > p { max-width: 570px; margin: 0 auto; color: var(--muted); }
.ui-system-state > small { position: relative; z-index: 1; display: block; margin-top: 22px; color: var(--muted-2); }
.ui-state-actions { position: relative; z-index: 1; display: flex; justify-content: center; gap: 10px; margin-top: 28px; }
.ui-error-reference { display: inline-flex; align-items: center; gap: 10px; margin-top: 19px; padding: 9px 12px; border: 1px solid rgba(255,177,79,.18); border-radius: 10px; background: rgba(255,177,79,.055); }
.ui-error-reference span { color: var(--muted); font-size: var(--approved-meta-copy); }
.ui-error-reference strong { color: var(--warning); font-size: var(--approved-card-copy); }
.ui-skeleton-heading { width: 100%; margin-bottom: 28px; }
.ui-skeleton-heading span,.ui-skeleton-heading strong,.ui-skeleton-heading i,.ui-skeleton-grid span,.ui-skeleton-grid strong,.ui-skeleton-grid i,.ui-skeleton-grid em,.ui-skeleton-panel span,.ui-skeleton-panel i { position: relative; display: block; overflow: hidden; border-radius: 8px; background: rgba(255,255,255,.055); }
.ui-skeleton-heading span::after,.ui-skeleton-heading strong::after,.ui-skeleton-heading i::after,.ui-skeleton-grid span::after,.ui-skeleton-grid strong::after,.ui-skeleton-grid i::after,.ui-skeleton-grid em::after,.ui-skeleton-panel span::after,.ui-skeleton-panel i::after { position: absolute; inset: 0; background: linear-gradient(90deg,transparent,rgba(255,255,255,.085),transparent); content: ""; transform: translateX(-100%); animation: uiSkeleton 1.45s ease-in-out infinite; }
.ui-skeleton-heading span { width: 118px; height: 11px; }
.ui-skeleton-heading strong { width: min(470px,74%); height: 43px; margin-top: 13px; }
.ui-skeleton-heading i { width: min(620px,90%); height: 16px; margin-top: 14px; }
.ui-skeleton-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 15px; width: 100%; }
.ui-skeleton-grid article { min-height: 245px; padding: 19px; border: 1px solid var(--border); border-radius: 20px; background: rgba(23,23,39,.7); }
.ui-skeleton-grid span { width: 44px; height: 44px; border-radius: 13px; }
.ui-skeleton-grid strong { width: 73%; height: 19px; margin-top: 56px; }
.ui-skeleton-grid i { width: 100%; height: 11px; margin-top: 11px; }
.ui-skeleton-grid i:nth-of-type(2) { width: 66%; }
.ui-skeleton-grid em { width: 96px; height: 35px; margin-top: 24px; }
.ui-skeleton-panel { width: 100%; margin-top: 16px; padding: 20px; border: 1px solid var(--border); border-radius: 19px; background: rgba(23,23,39,.55); }
.ui-skeleton-panel span { width: 190px; height: 18px; }
.ui-skeleton-panel i { height: 10px; margin-top: 12px; }
.ui-skeleton-panel i:nth-of-type(2) { width: 86%; }
.ui-skeleton-panel i:nth-of-type(3) { width: 68%; }
.ui-loading-label { display: flex; align-items: center; justify-content: center; gap: 9px; margin: 22px 0 0; color: var(--muted); }
.ui-loading-label span { width: 9px; height: 9px; border: 2px solid rgba(34,211,238,.25); border-top-color: var(--cyan); border-radius: 50%; animation: uiSpin .8s linear infinite; }
@keyframes uiSkeleton { to { transform: translateX(100%); } }
@keyframes uiSpin { to { transform: rotate(360deg); } }
.ui-state-drawer > p { margin-bottom: 17px; color: var(--muted); font-size: 14px; line-height: 1.55; }
.ui-state-drawer > button { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; width: 100%; align-items: center; gap: 11px; margin-bottom: 8px; padding: 13px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.025); color: var(--snow); text-align: left; }
.ui-state-drawer > button:hover,.ui-state-drawer > button.active { border-color: rgba(139,92,246,.4); background: rgba(139,92,246,.09); }
.ui-state-drawer > button > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 11px; background: rgba(34,211,238,.07); color: var(--cyan); font-size: 18px; }
.ui-state-drawer > button strong,.ui-state-drawer > button small { display: block; }
.ui-state-drawer > button strong { font-size: 14px; }
.ui-state-drawer > button small { margin-top: 3px; color: var(--muted); font-size: 13px; line-height: 1.4; }
.ui-state-drawer > button em { color: var(--muted-2); font-size: 11px; font-style: normal; }
.ui-state-drawer > button.active em { color: var(--cyan); }
.ui-state-drawer > aside { margin-top: 18px; padding: 16px; border: 1px solid rgba(34,211,238,.14); border-radius: 14px; background: rgba(34,211,238,.045); }
.ui-state-drawer > aside strong { font-size: 14px; }
.ui-state-drawer > aside p { margin: 6px 0 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
@media (max-width: 900px) { .ui-state-fab { left: 14px; } .ui-system-page { min-height: calc(100vh - 124px); } .ui-skeleton-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .ui-skeleton-grid article:last-child { display: none; } }
@media (max-width: 620px) { .ui-state-fab { min-width: 42px; padding: 0 12px; } .ui-state-fab strong { display: none; } .ui-system-state { padding: 34px 20px; border-radius: 22px; } .ui-system-state h1 { font-size: 33px; } .ui-state-actions { flex-direction: column; } .ui-state-actions .btn { width: 100%; } .ui-skeleton-grid { grid-template-columns: 1fr; } .ui-skeleton-grid article:nth-child(n+2) { display: none; } .ui-skeleton-heading strong { width: 88%; height: 34px; } .ui-state-drawer > p { font-size: 12px; } .ui-state-drawer > button strong,.ui-state-drawer > aside strong { font-size: 12px; } .ui-state-drawer > button small,.ui-state-drawer > aside p { font-size: 11px; } .ui-state-drawer > button em { font-size: 10px; } }
@media (prefers-reduced-motion: reduce) { .ui-skeleton-heading *::after,.ui-skeleton-grid *::after,.ui-skeleton-panel *::after,.ui-loading-label span { animation: none; } }

/* Role identity verification (KYC / KYB) */
.identity-status-panel { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; align-items: center; gap: 14px; margin-top: 20px; padding: 18px; border: 1px solid rgba(255,177,79,.22); border-radius: 16px; background: rgba(255,177,79,.045); }
.identity-status-panel.success { border-color: rgba(55,211,154,.22); background: rgba(55,211,154,.045); }
.identity-status-panel.danger { border-color: rgba(255,99,127,.24); background: rgba(255,99,127,.045); }
.identity-status-panel > span { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 13px; color: var(--warning); background: rgba(255,177,79,.1); font-size: var(--approved-card-copy); font-weight: 900; }
.identity-status-panel.success > span { color: var(--success); background: rgba(55,211,154,.1); }
.identity-status-panel.danger > span { color: #ff637f; background: rgba(255,99,127,.1); }
.identity-status-panel strong,.identity-status-panel small { display: block; }
.identity-status-panel strong { font-size: var(--approved-card-copy); }
.identity-status-panel p { margin: 4px 0 0; color: var(--muted); }
.identity-status-panel small { margin-top: 5px; color: var(--muted-2); }
.identity-verification-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.identity-requirement-list { display: grid; gap: 9px; margin-top: 15px; }
.identity-requirement-list article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(255,255,255,.016); }
.identity-requirement-list article > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-meta-copy); font-weight: 900; }
.identity-requirement-list strong { font-size: var(--approved-card-copy); }
.identity-requirement-list p { margin: 3px 0 0; color: var(--muted); }
.identity-requirement-list i { color: var(--success); font-size: var(--approved-micro-copy); font-style: normal; font-weight: 900; }
.identity-protected-list { display: grid; gap: 9px; margin-top: 15px; }
.identity-protected-list > span { display: flex; align-items: center; gap: 10px; min-height: 43px; padding: 10px 12px; border: 1px solid var(--soft-border); border-radius: 11px; background: rgba(255,255,255,.016); }
.identity-protected-list i { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 8px; color: var(--warning); background: rgba(255,177,79,.08); font-style: normal; font-weight: 900; }
.identity-protected-list strong { font-size: var(--approved-card-copy); }
.identity-review-note { margin-top: 14px; padding: 15px; border: 1px solid rgba(255,177,79,.22); border-radius: 14px; background: rgba(255,177,79,.045); }
.identity-review-note.danger { border-color: rgba(255,99,127,.24); background: rgba(255,99,127,.045); }
.identity-review-note strong { font-size: var(--approved-card-copy); }
.identity-review-note p { margin: 5px 0 0; color: var(--muted); }
.verification-demo-review { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 14px; padding: 16px; border: 1px dashed rgba(139,92,246,.34); border-radius: 14px; background: rgba(139,92,246,.045); }
.verification-demo-review strong { font-size: var(--approved-card-copy); }
.verification-demo-review p { margin: 4px 0 0; color: var(--muted); }
.verification-demo-review > div:last-child { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
.verification-upload-list { display: grid; gap: 9px; margin: 16px 0; }
.verification-upload-list article { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.018); }
.verification-upload-list article.ready { border-color: rgba(55,211,154,.22); background: rgba(55,211,154,.035); }
.verification-upload-list article > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-card-copy); font-weight: 900; }
.verification-upload-list article.ready > span { color: var(--success); background: rgba(55,211,154,.09); }
.verification-upload-list strong { display: block; font-size: var(--approved-card-copy); }
.verification-upload-list p { margin: 3px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); line-height: 1.45; }
.identity-gate-page { --approved-page-copy:14px; --approved-card-copy:12px; --approved-meta-copy:11px; --approved-micro-copy:10px; display: grid; min-height: calc(100vh - 176px); place-items: center; }
.identity-gate { width: min(760px,100%); padding: 48px; border: 1px solid var(--border); border-radius: 27px; background: radial-gradient(circle at 50% 0,rgba(139,92,246,.13),transparent 42%),rgba(20,20,33,.9); box-shadow: var(--shadow); text-align: center; }
.identity-gate-mark { display: grid; width: 78px; height: 78px; margin: 0 auto 22px; place-items: center; border: 1px solid rgba(139,92,246,.34); border-radius: 24px; color: var(--cyan); background: rgba(139,92,246,.1); font-size: 22px; font-weight: 900; }
.identity-gate h1 { margin: 10px 0 13px; font-size: clamp(31px,5vw,48px); line-height: 1.05; text-transform: capitalize; }
.identity-gate > p { max-width: 620px; margin: 0 auto; color: var(--muted); font-size: var(--approved-page-copy); line-height: 1.6; }
.identity-gate-status { max-width: 560px; margin: 22px auto 0; padding: 16px; border: 1px solid var(--soft-border); border-radius: 15px; background: rgba(255,255,255,.018); }
.identity-gate-status strong { display: block; margin-top: 9px; font-size: var(--approved-card-copy); }
.identity-gate-status p { margin: 4px 0 0; color: var(--muted); font-size: var(--approved-card-copy); }
.identity-gate-actions { display: flex; justify-content: center; gap: 9px; margin-top: 22px; }
.identity-gate > small { display: block; margin-top: 17px; color: var(--muted-2); font-size: var(--approved-meta-copy); }
@media (min-width: 700px) { .identity-gate-page { --approved-page-copy:16px; --approved-card-copy:14px; --approved-meta-copy:13px; --approved-micro-copy:11px; } }
@media (max-width: 820px) { .identity-verification-grid { grid-template-columns: 1fr; } .identity-status-panel { grid-template-columns: 48px minmax(0,1fr); } .identity-status-panel .btn { grid-column: 1 / -1; width: 100%; } }
@media (max-width: 640px) { .verification-demo-review { align-items: stretch; flex-direction: column; } .verification-demo-review > div:last-child,.identity-gate-actions { flex-direction: column; } .verification-demo-review .btn,.identity-gate-actions .btn { width: 100%; } .verification-upload-list article { grid-template-columns: 36px minmax(0,1fr); } .verification-upload-list article .btn { grid-column: 1 / -1; width: 100%; } .identity-gate { padding: 34px 20px; border-radius: 22px; } }

/* One account with multiple separately approved roles */
.role-access-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin-top: 20px; }
.role-access-summary > span { padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.016); }
.role-access-summary small,.role-access-summary strong { display: block; }
.role-access-summary small { color: var(--muted); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.role-access-summary strong { margin-top: 7px; font-size: var(--approved-card-copy); }
.role-membership-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 14px; }
.role-membership-grid.admin { grid-template-columns: repeat(3,minmax(0,1fr)); }
.role-membership-card { padding: 18px; border: 1px solid var(--border); border-radius: 17px; background: rgba(255,255,255,.014); }
.role-membership-card.active { border-color: rgba(55,211,154,.2); background: linear-gradient(145deg,rgba(55,211,154,.04),rgba(255,255,255,.012)); }
.role-membership-card.pending { border-color: rgba(255,177,79,.22); background: linear-gradient(145deg,rgba(255,177,79,.045),rgba(255,255,255,.012)); }
.role-membership-card.rejected,.role-membership-card.suspended { border-color: rgba(255,99,127,.22); background: linear-gradient(145deg,rgba(255,99,127,.04),rgba(255,255,255,.012)); }
.role-membership-head { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 11px; }
.role-membership-head > span:first-child { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; color: white; background: linear-gradient(135deg,var(--violet),var(--cyan)); font-size: var(--approved-card-copy); font-weight: 900; }
.role-membership-head small,.role-membership-head h3 { display: block; }
.role-membership-head small { color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.role-membership-head h3 { margin: 3px 0 0; font-size: 18px; }
.role-membership-card > p { margin: 13px 0 0; color: var(--muted); }
.role-permission-list { display: grid; gap: 7px; margin-top: 14px; }
.role-permission-list > span { display: flex; align-items: flex-start; gap: 8px; color: var(--muted); font-size: var(--approved-meta-copy); line-height: 1.45; }
.role-permission-list i { display: grid; width: 20px; height: 20px; flex: 0 0 20px; place-items: center; border-radius: 7px; color: var(--cyan); background: rgba(34,211,238,.07); font-size: var(--approved-micro-copy); font-style: normal; font-weight: 900; }
.role-membership-meta { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 14px; }
.role-membership-meta > span { padding: 10px; border: 1px solid var(--soft-border); border-radius: 10px; background: rgba(255,255,255,.015); }
.role-membership-meta small,.role-membership-meta strong { display: block; }
.role-membership-meta small { color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .05em; }
.role-membership-meta strong { margin-top: 5px; font-size: var(--approved-meta-copy); }
.role-membership-note { display: block; margin-top: 10px; color: var(--muted); line-height: 1.45; }
.role-membership-actions { display: flex; min-height: 36px; align-items: center; justify-content: flex-end; gap: 8px; margin-top: 14px; }
.role-request-modal .field { margin-top: 16px; }
.role-request-modal .textarea { min-height: 98px; }
@media (max-width: 1180px) { .role-membership-grid.admin { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .role-membership-grid,.role-access-summary { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .role-membership-head { grid-template-columns: 40px minmax(0,1fr); } .role-membership-head > .badge { grid-column: 2; width: max-content; } .role-membership-actions { align-items: stretch; flex-direction: column; } .role-membership-actions .btn { width: 100%; } }

/* Legal Center, document records and cookie preferences */
.sidebar-footer { display: grid; gap: 9px; width: 100%; }
.sidebar-status { display: flex; align-items: center; gap: 7px; width: 100%; }
.sidebar-status .version { margin-left: auto; }
.sidebar-legal-links { display: flex; align-items: center; gap: 12px; padding-left: 14px; }
.sidebar-legal-links a,.sidebar-legal-links button { padding: 0; border: 0; color: var(--muted-2); background: transparent; font-size: 10px; }
.sidebar-legal-links a:hover,.sidebar-legal-links button:hover { color: var(--cyan); }
.auth-legal-links { position: fixed; z-index: 206; right: 78px; bottom: 20px; display: flex; align-items: center; gap: 8px; padding: 7px 10px; border: 1px solid var(--soft-border); border-radius: 10px; background: rgba(11,11,18,.84); backdrop-filter: blur(15px); }
.auth-legal-links button { padding: 3px 6px; border: 0; color: var(--muted); background: transparent; font-size: 11px; }
.auth-legal-links button:hover { color: var(--cyan); }

.legal-center-page,.legal-document-page {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}
.legal-center-page .page-header p,.legal-document-page .page-header p { font-size: var(--approved-page-copy); line-height: 1.6; }
.legal-owner-notice { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 14px; margin: 20px 0 16px; padding: 17px; border: 1px solid rgba(255,177,79,.22); border-radius: 16px; background: linear-gradient(90deg,rgba(255,177,79,.065),rgba(139,92,246,.03)); }
.legal-owner-notice > span:first-child { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: var(--warning); background: rgba(255,177,79,.11); font-weight: 900; }
.legal-owner-notice strong { display: block; font-size: var(--approved-card-copy); }
.legal-owner-notice p { margin: 4px 0 0; color: var(--muted); font-size: var(--approved-card-copy); }
.legal-overview-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 11px; margin-bottom: 29px; }
.legal-overview-grid article { padding: 17px; border: 1px solid var(--border); border-radius: 16px; background: rgba(23,23,39,.64); }
.legal-overview-grid small,.legal-overview-grid strong { display: block; }
.legal-overview-grid small { color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .08em; }
.legal-overview-grid strong { margin-top: 8px; font-size: 20px; }
.legal-overview-grid p { margin: 5px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }
.legal-section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin: 28px 0 15px; }
.legal-section-head h2 { margin: 6px 0 0; font-size: clamp(24px,3vw,34px); }
.legal-section-head p { margin: 7px 0 0; color: var(--muted); font-size: var(--approved-page-copy); }
.legal-document-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; }
.legal-document-card { display: flex; min-height: 272px; flex-direction: column; padding: 19px; border: 1px solid var(--border); border-radius: 19px; background: radial-gradient(circle at 100% 0,rgba(139,92,246,.08),transparent 40%),rgba(23,23,39,.68); transition: .2s ease; }
.legal-document-card:hover { border-color: rgba(139,92,246,.34); transform: translateY(-2px); }
.legal-document-card > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.legal-document-card > div:first-child > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 13px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-card-copy); font-weight: 900; }
.legal-document-card > small { display: block; margin-top: 20px; color: var(--cyan); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .08em; }
.legal-document-card h3 { margin: 6px 0 0; font-size: 19px; }
.legal-document-card p { margin: 8px 0 18px; color: var(--muted); font-size: var(--approved-card-copy); line-height: 1.55; }
.legal-document-card .btn { width: 100%; margin-top: auto; }
.legal-next-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-top: 16px; padding: 22px; border: 1px solid rgba(34,211,238,.16); border-radius: 19px; background: linear-gradient(120deg,rgba(34,211,238,.045),rgba(139,92,246,.045)); }
.legal-next-panel h2 { margin: 6px 0 0; font-size: 22px; }
.legal-next-panel p { max-width: 680px; margin: 7px 0 0; color: var(--muted); font-size: var(--approved-card-copy); }
.legal-next-panel > div:last-child { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 8px; }
.legal-next-panel > div:last-child > span { padding: 8px 10px; border: 1px solid var(--soft-border); border-radius: 10px; color: var(--muted); background: rgba(255,255,255,.02); font-size: var(--approved-meta-copy); }

.legal-document-hero { display: grid; grid-template-columns: minmax(0,1fr) 250px; gap: 18px; margin-top: 19px; padding: 28px; border: 1px solid var(--border); border-radius: 22px; background: radial-gradient(circle at 100% 0,rgba(34,211,238,.1),transparent 42%),linear-gradient(135deg,rgba(139,92,246,.09),rgba(23,23,39,.8)); }
.legal-document-hero h1 { margin: 8px 0 0; font-size: clamp(34px,5vw,57px); line-height: 1.04; letter-spacing: -.045em; }
.legal-document-hero p { max-width: 780px; margin: 13px 0 17px; color: var(--muted); font-size: var(--approved-page-copy); line-height: 1.6; }
.legal-document-hero > div > div { display: flex; flex-wrap: wrap; gap: 8px; }
.legal-document-hero aside { display: grid; align-content: center; gap: 5px; padding: 19px; border: 1px solid var(--soft-border); border-radius: 17px; background: rgba(11,11,18,.3); }
.legal-document-hero aside > span { display: grid; width: 48px; height: 48px; margin-bottom: 13px; place-items: center; border-radius: 14px; color: var(--cyan); background: rgba(34,211,238,.09); font-weight: 900; }
.legal-document-hero aside small { margin-top: 7px; color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.legal-document-hero aside strong { font-size: var(--approved-card-copy); }
.legal-disclaimer { display: flex; align-items: center; gap: 12px; margin: 12px 0; padding: 13px 15px; border: 1px solid rgba(255,177,79,.18); border-radius: 13px; background: rgba(255,177,79,.04); }
.legal-disclaimer > span { display: grid; width: 30px; height: 30px; flex: 0 0 30px; place-items: center; border-radius: 9px; color: var(--warning); background: rgba(255,177,79,.09); font-weight: 900; }
.legal-disclaimer p { margin: 0; color: var(--muted); font-size: var(--approved-card-copy); }
.legal-disclaimer .btn { margin-left: auto; }
.legal-document-layout { display: grid; grid-template-columns: 260px minmax(0,1fr); gap: 15px; align-items: start; }
.legal-document-nav { position: sticky; top: 96px; display: grid; gap: 7px; padding: 12px; border: 1px solid var(--border); border-radius: 17px; background: rgba(23,23,39,.72); }
.legal-document-nav > .eyebrow { padding: 6px 7px 9px; }
.legal-document-nav button { display: grid; grid-template-columns: 35px minmax(0,1fr); align-items: center; gap: 10px; padding: 10px; border: 1px solid transparent; border-radius: 11px; color: var(--muted); background: transparent; text-align: left; }
.legal-document-nav button:hover,.legal-document-nav button.active { border-color: rgba(139,92,246,.24); color: var(--snow); background: rgba(139,92,246,.08); }
.legal-document-nav button > span { display: grid; width: 33px; height: 33px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.06); font-size: var(--approved-micro-copy); font-weight: 900; }
.legal-document-nav strong,.legal-document-nav small { display: block; }
.legal-document-nav strong { font-size: var(--approved-card-copy); }
.legal-document-nav small { margin-top: 2px; color: var(--muted-2); font-size: var(--approved-micro-copy); }
.legal-document-copy { display: grid; gap: 11px; }
.legal-copy-section { display: grid; grid-template-columns: 48px minmax(0,1fr); gap: 14px; padding: 22px; border: 1px solid var(--border); border-radius: 18px; background: rgba(23,23,39,.62); }
.legal-copy-section > span { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; color: var(--violet); background: rgba(139,92,246,.1); font-size: var(--approved-meta-copy); font-weight: 900; }
.legal-copy-section h2 { margin: 2px 0 0; font-size: 21px; }
.legal-document-page .legal-copy-section p { margin: 9px 0 0; color: var(--muted); font-size: var(--approved-page-copy); line-height: 1.65; }
.legal-placeholder-line { display: flex; align-items: center; gap: 9px; margin-top: 15px; padding-top: 13px; border-top: 1px solid var(--soft-border); }
.legal-placeholder-line i { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: var(--warning); }
.legal-placeholder-line small { color: var(--muted-2); font-size: var(--approved-meta-copy); }
.legal-owner-handoff { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 13px; padding: 18px; border: 1px solid rgba(55,211,154,.18); border-radius: 17px; background: rgba(55,211,154,.035); }
.legal-owner-handoff > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; color: var(--success); background: rgba(55,211,154,.09); font-weight: 900; }
.legal-owner-handoff strong { font-size: var(--approved-card-copy); }
.legal-owner-handoff p { margin: 4px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }

.account-legal-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin-top: 20px; }
.account-legal-summary > span { padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.016); }
.account-legal-summary small,.account-legal-summary strong { display: block; }
.account-legal-summary small { color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.account-legal-summary strong { margin-top: 7px; font-size: var(--approved-card-copy); }
.account-legal-history { display: grid; gap: 8px; margin-top: 14px; }
.account-legal-history article { display: grid; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(255,255,255,.016); }
.account-legal-history article > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.07); }
.account-legal-history strong,.account-legal-history small { display: block; }
.account-legal-history strong { font-size: var(--approved-card-copy); }
.account-legal-history small { margin-top: 3px; color: var(--muted); font-size: var(--approved-meta-copy); }
.account-legal-history article > div:last-child { text-align: right; }
.account-legal-preferences { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin-top: 14px; }
.account-legal-preferences > span { display: grid; grid-template-columns: 12px minmax(0,1fr); align-items: center; gap: 7px; padding: 12px; border: 1px solid var(--soft-border); border-radius: 12px; background: rgba(255,255,255,.016); }
.account-legal-preferences i { width: 9px; height: 9px; border-radius: 50%; background: var(--muted-2); }
.account-legal-preferences i.on { background: var(--success); box-shadow: 0 0 0 4px rgba(55,211,154,.08); }
.account-legal-preferences strong { font-size: var(--approved-card-copy); }
.account-legal-preferences small { grid-column: 2; color: var(--muted); font-size: var(--approved-meta-copy); }
.cookie-preference-list { display: grid; gap: 8px; margin-top: 17px; }
.cookie-preference-list label { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 13px; border: 1px solid var(--border); border-radius: 12px; background: rgba(255,255,255,.018); }
.cookie-preference-list label.locked { border-color: rgba(55,211,154,.18); background: rgba(55,211,154,.03); }
.cookie-preference-list strong,.cookie-preference-list small { display: block; }
.cookie-preference-list strong { font-size: var(--approved-card-copy); }
.cookie-preference-list small { margin-top: 3px; color: var(--muted); font-size: var(--approved-meta-copy); }
.cookie-preference-list input { width: 19px; height: 19px; accent-color: var(--violet); }

@media (min-width: 700px) {
  .legal-center-page,.legal-document-page { --approved-page-copy: 16px; --approved-card-copy: 14px; --approved-meta-copy: 13px; --approved-micro-copy: 11px; }
}
@media (max-width: 1120px) {
  .legal-overview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .legal-document-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .legal-document-layout { grid-template-columns: 220px minmax(0,1fr); }
}
@media (max-width: 820px) {
  .legal-document-layout { grid-template-columns: 1fr; }
  .legal-document-nav { position: static; display: flex; overflow-x: auto; }
  .legal-document-nav > .eyebrow { display: none; }
  .legal-document-nav button { min-width: 210px; }
  .legal-document-hero { grid-template-columns: 1fr; }
  .legal-document-hero aside { grid-template-columns: 48px minmax(0,1fr); }
  .legal-document-hero aside > span { grid-row: 1 / 5; margin: 0 8px 0 0; }
  .legal-next-panel { align-items: flex-start; flex-direction: column; }
  .legal-next-panel > div:last-child { justify-content: flex-start; }
  .account-legal-preferences { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 620px) {
  .auth-legal-links { right: 50%; bottom: 10px; transform: translateX(50%); white-space: nowrap; }
  .legal-owner-notice { grid-template-columns: 40px minmax(0,1fr); }
  .legal-owner-notice > .badge { grid-column: 2; width: max-content; }
  .legal-overview-grid,.legal-document-grid,.account-legal-summary,.account-legal-preferences { grid-template-columns: 1fr; }
  .legal-document-card { min-height: 240px; }
  .legal-document-hero { padding: 20px; border-radius: 19px; }
  .legal-document-hero h1 { font-size: 36px; }
  .legal-disclaimer { align-items: flex-start; flex-wrap: wrap; }
  .legal-disclaimer .btn { width: 100%; margin-left: 0; }
  .legal-copy-section { grid-template-columns: 38px minmax(0,1fr); padding: 17px; }
  .legal-copy-section > span { width: 36px; height: 36px; }
  .legal-owner-handoff { grid-template-columns: 38px minmax(0,1fr); }
  .legal-owner-handoff .btn { grid-column: 1 / -1; width: 100%; }
  .account-legal-history article { grid-template-columns: 32px minmax(0,1fr); }
  .account-legal-history article > div:last-child { grid-column: 2; text-align: left; }
}

/* Help Center, FAQ search and local support history */
.help-center-page,.account-support-section,.support-request-modal,.support-ticket-modal {
  --approved-page-copy: 14px;
  --approved-card-copy: 12px;
  --approved-meta-copy: 11px;
  --approved-micro-copy: 10px;
}
.help-center-page .page-header p { font-size: var(--approved-page-copy); line-height: 1.6; }
.help-search-hero { position: relative; overflow: hidden; margin-top: 20px; padding: 28px; border: 1px solid rgba(139,92,246,.24); border-radius: 23px; background: radial-gradient(circle at 90% 0,rgba(34,211,238,.13),transparent 38%),linear-gradient(135deg,rgba(139,92,246,.13),rgba(23,23,39,.83)); }
.help-search-hero::after { position: absolute; right: -60px; bottom: -85px; width: 230px; height: 230px; border: 1px solid rgba(139,92,246,.13); border-radius: 50%; content:""; }
.help-search-hero > div,.help-search-form,.help-search-hero > small { position: relative; z-index: 1; }
.help-search-hero h2 { margin: 7px 0 0; font-size: clamp(28px,4vw,45px); letter-spacing: -.035em; }
.help-search-hero p { margin: 7px 0 0; color: var(--muted); font-size: var(--approved-page-copy); }
.help-search-form { display: grid; grid-template-columns: 24px minmax(0,1fr) auto; align-items: center; gap: 10px; max-width: 850px; margin-top: 22px; padding: 7px 7px 7px 16px; border: 1px solid rgba(255,255,255,.11); border-radius: 15px; background: rgba(11,11,18,.72); box-shadow: 0 16px 40px rgba(0,0,0,.2); }
.help-search-form > span { color: var(--muted); }
.help-search-form > span svg { width: 20px; height: 20px; }
.help-search-form .input { min-height: 45px; padding: 0; border: 0; background: transparent; font-size: var(--approved-card-copy); }
.help-search-form .input:focus { box-shadow: none; }
.help-search-hero > small { display: block; margin-top: 11px; color: var(--muted-2); font-size: var(--approved-meta-copy); }
.help-category-section { margin-top: 25px; }
.help-category-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
.help-category-card { position: relative; display: grid; min-height: 108px; grid-template-columns: 42px minmax(0,1fr); align-items: center; gap: 11px; padding: 15px; border: 1px solid var(--border); border-radius: 16px; color: var(--snow); background: rgba(23,23,39,.64); text-align: left; transition: .2s ease; }
.help-category-card:hover,.help-category-card.active { border-color: rgba(139,92,246,.38); background: linear-gradient(135deg,rgba(139,92,246,.1),rgba(34,211,238,.025)); transform: translateY(-2px); }
.help-category-card > span { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-meta-copy); font-weight: 900; }
.help-category-card strong,.help-category-card small { display: block; }
.help-category-card strong { font-size: var(--approved-card-copy); }
.help-category-card small { margin-top: 4px; color: var(--muted); font-size: var(--approved-meta-copy); line-height: 1.4; }
.help-category-card em { position: absolute; top: 10px; right: 10px; color: var(--muted-2); font-size: var(--approved-micro-copy); font-style: normal; font-weight: 800; }
.help-faq-section { margin-top: 30px; }
.help-faq-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; margin-bottom: 13px; }
.help-faq-head h2 { margin: 6px 0 0; font-size: clamp(24px,3vw,34px); }
.help-faq-head p { margin: 5px 0 0; color: var(--muted); font-size: var(--approved-page-copy); }
.help-result-notice { display: flex; align-items: center; gap: 9px; margin-bottom: 10px; padding: 11px 13px; border: 1px solid rgba(34,211,238,.14); border-radius: 12px; background: rgba(34,211,238,.035); }
.help-result-notice > span { display: grid; width: 30px; height: 30px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.08); font-size: var(--approved-meta-copy); font-weight: 900; }
.help-result-notice p { flex: 1; margin: 0; color: var(--muted); font-size: var(--approved-card-copy); }
.help-faq-list { display: grid; gap: 9px; }
.help-faq-item { overflow: hidden; border: 1px solid var(--border); border-radius: 16px; background: rgba(23,23,39,.62); }
.help-faq-item.open { border-color: rgba(139,92,246,.25); background: linear-gradient(135deg,rgba(139,92,246,.05),rgba(23,23,39,.68)); }
.help-faq-item > button { display: grid; width: 100%; grid-template-columns: 42px minmax(0,1fr) 34px; align-items: center; gap: 12px; padding: 16px; border: 0; color: var(--snow); background: transparent; text-align: left; }
.help-faq-item > button > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.07); font-size: var(--approved-micro-copy); font-weight: 900; }
.help-faq-item > button small,.help-faq-item > button strong { display: block; }
.help-faq-item > button small { color: var(--cyan); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.help-faq-item > button strong { margin-top: 4px; font-size: var(--approved-card-copy); }
.help-faq-item > button i { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: var(--muted); background: rgba(255,255,255,.035); font-size: 18px; font-style: normal; }
.help-faq-answer { padding: 0 70px 17px; }
.help-faq-answer[hidden] { display: none; }
.help-faq-answer p { margin: 0; color: var(--muted); font-size: var(--approved-page-copy); line-height: 1.65; }
.help-faq-answer .text-link { margin-top: 11px; }
.help-empty-result { padding: 45px 22px; border: 1px dashed var(--border); border-radius: 17px; text-align: center; }
.help-empty-result > span { display: grid; width: 48px; height: 48px; margin: 0 auto; place-items: center; border-radius: 14px; color: var(--cyan); background: rgba(34,211,238,.08); font-weight: 900; }
.help-empty-result h3 { margin: 14px 0 0; font-size: 20px; }
.help-empty-result p { margin: 7px 0 17px; color: var(--muted); font-size: var(--approved-card-copy); }
.help-support-layout { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(320px,.75fr); gap: 12px; margin-top: 18px; }
.help-support-cta { display: grid; grid-template-columns: 50px minmax(0,1fr) auto; align-items: center; gap: 14px; padding: 22px; border: 1px solid rgba(139,92,246,.23); border-radius: 19px; background: linear-gradient(120deg,rgba(139,92,246,.09),rgba(34,211,238,.045)); }
.help-support-cta > span { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 14px; color: var(--cyan); background: rgba(34,211,238,.09); font-size: 19px; }
.help-support-cta small { color: var(--cyan); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .07em; }
.help-support-cta h2 { margin: 4px 0 0; font-size: 21px; }
.help-support-cta p { margin: 5px 0 0; color: var(--muted); font-size: var(--approved-card-copy); }
.help-ticket-preview { padding: 17px; border: 1px solid var(--border); border-radius: 19px; background: rgba(23,23,39,.64); }
.help-ticket-preview > div:first-child { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 9px; }
.help-ticket-row,.account-support-ticket { display: grid; width: 100%; grid-template-columns: 34px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px; border: 1px solid transparent; border-radius: 11px; color: var(--snow); background: rgba(255,255,255,.015); text-align: left; }
.help-ticket-row:hover,.account-support-ticket:hover { border-color: rgba(139,92,246,.22); background: rgba(139,92,246,.05); }
.help-ticket-row > span,.account-support-ticket > span { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 9px; color: var(--cyan); background: rgba(34,211,238,.07); }
.help-ticket-row strong,.help-ticket-row small,.account-support-ticket strong,.account-support-ticket small { display: block; }
.help-ticket-row strong,.account-support-ticket strong { font-size: var(--approved-card-copy); }
.help-ticket-row small,.account-support-ticket small { margin-top: 3px; color: var(--muted); font-size: var(--approved-meta-copy); }
.help-no-tickets { margin: 18px 0; color: var(--muted); font-size: var(--approved-card-copy); text-align: center; }
.help-safety-note { display: grid; grid-template-columns: 38px minmax(0,1fr); align-items: center; gap: 12px; margin-top: 12px; padding: 14px; border: 1px solid rgba(255,177,79,.17); border-radius: 14px; background: rgba(255,177,79,.035); }
.help-safety-note > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 10px; color: var(--warning); background: rgba(255,177,79,.09); font-weight: 900; }
.help-safety-note strong { font-size: var(--approved-card-copy); }
.help-safety-note p { margin: 4px 0 0; color: var(--muted); font-size: var(--approved-meta-copy); }
.support-request-modal .field { margin-top: 13px; }
.support-request-modal .textarea { min-height: 120px; resize: vertical; }
.support-request-modal > p,.support-ticket-modal > p { font-size: var(--approved-card-copy); line-height: 1.55; }
.account-support-summary { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 9px; margin-top: 20px; }
.account-support-summary > span { padding: 14px; border: 1px solid var(--soft-border); border-radius: 13px; background: rgba(255,255,255,.016); }
.account-support-summary small,.account-support-summary strong { display: block; }
.account-support-summary small { color: var(--muted-2); font-size: var(--approved-micro-copy); font-weight: 800; letter-spacing: .06em; }
.account-support-summary strong { margin-top: 7px; font-size: var(--approved-card-copy); }
.account-support-actions { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 16px; }
.account-support-actions article { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 11px; padding: 15px; border: 1px solid var(--border); border-radius: 14px; background: rgba(255,255,255,.014); }
.account-support-actions article > span { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 11px; color: var(--cyan); background: rgba(34,211,238,.07); font-weight: 900; }
.account-support-actions strong { font-size: var(--approved-card-copy); }
.account-support-actions p { margin: 4px 0 12px; color: var(--muted); font-size: var(--approved-meta-copy); }
.account-support-actions .btn { grid-column: 1 / -1; width: 100%; }
.account-support-ticket-list { display: grid; gap: 8px; margin-top: 13px; }
.account-support-ticket { padding: 12px; border-color: var(--soft-border); }
.help-connected-card { border-color: rgba(55,211,154,.2); background: radial-gradient(circle at 100% 0,rgba(55,211,154,.09),transparent 40%),rgba(23,23,39,.68); }

#main-content .help-center-page .help-search-hero p,
#main-content .help-center-page .help-faq-head p,
#main-content .help-center-page .legal-section-head p { font-size: var(--approved-page-copy); line-height: 1.6; }

@media (min-width: 700px) {
  .help-center-page,.account-support-section,.support-request-modal,.support-ticket-modal { --approved-page-copy:16px; --approved-card-copy:14px; --approved-meta-copy:13px; --approved-micro-copy:11px; }
}
@media (max-width: 1120px) {
  .help-category-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .help-support-layout { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .help-search-hero { padding: 21px; }
  .help-search-form { grid-template-columns: 21px minmax(0,1fr); }
  .help-search-form .btn { grid-column: 1 / -1; width: 100%; }
  .help-category-grid,.account-support-summary,.account-support-actions { grid-template-columns: 1fr; }
  .help-support-cta { grid-template-columns: 44px minmax(0,1fr); }
  .help-support-cta .btn { grid-column: 1 / -1; width: 100%; }
  .help-faq-answer { padding: 0 17px 17px 70px; }
}
@media (max-width: 520px) {
  .help-faq-head { align-items: flex-start; flex-direction: column; }
  .help-faq-item > button { grid-template-columns: 38px minmax(0,1fr) 30px; padding: 13px; }
  .help-faq-item > button > span { width: 36px; height: 36px; }
  .help-faq-answer { padding: 0 13px 15px; }
  .help-result-notice { align-items: flex-start; flex-wrap: wrap; }
  .help-result-notice .text-link { width: 100%; text-align: left; }
  .help-ticket-row,.account-support-ticket { grid-template-columns: 32px minmax(0,1fr); }
  .help-ticket-row > em,.account-support-ticket > em { grid-column: 2; width: max-content; }
}

/* Creator Link Hub v58 — Creator Showcase */
.creator-link-hub-page,.account-link-hub-section,.link-hub-unpublished {
  --approved-page-copy:14px;
  --approved-card-copy:12px;
  --approved-meta-copy:11px;
  --approved-micro-copy:10px;
}
.creator-link-hub-page { --hub-accent:var(--violet); --hub-accent-2:var(--cyan); width:min(1320px,100%); margin:0 auto; padding:18px; border:1px solid rgba(139,92,246,.16); border-radius:28px; background:radial-gradient(circle at 10% 0,rgba(139,92,246,.12),transparent 31%),radial-gradient(circle at 100% 34%,rgba(34,211,238,.07),transparent 30%),rgba(11,11,18,.34); box-shadow:0 38px 90px rgba(0,0,0,.2); }
.creator-link-hub-page.theme-aurora { --hub-accent:#36d399; --hub-accent-2:#a78bfa; background:radial-gradient(circle at 10% 0,rgba(54,211,153,.12),transparent 31%),radial-gradient(circle at 100% 34%,rgba(167,139,250,.09),transparent 30%),rgba(11,11,18,.34); }
.creator-link-hub-page.theme-clean { --hub-accent:#d8d6ff; --hub-accent-2:#6ee7f5; background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(11,11,18,.4)); }
.link-hub-topbar { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:2px 3px 15px; }
.link-hub-brand { display:flex; align-items:center; gap:10px; color:var(--snow); font-size:var(--approved-card-copy); font-weight:800; }
.link-hub-brand img { width:132px; height:34px; object-fit:contain; object-position:left center; }
.link-hub-brand span { padding-left:10px; border-left:1px solid var(--border); color:var(--muted); }
.link-hub-topbar > div { display:flex; gap:8px; }
.link-hub-hero { overflow:hidden; border:1px solid var(--border); border-radius:23px; background:rgba(23,23,39,.72); }
.link-hub-cover { position:relative; height:285px; overflow:hidden; }
.link-hub-cover img { width:100%; height:100%; object-fit:cover; object-position:center 38%; filter:saturate(.82) contrast(1.05); }
.link-hub-cover > span { position:absolute; inset:0; background:linear-gradient(180deg,rgba(11,11,18,.03),rgba(11,11,18,.92)),linear-gradient(90deg,rgba(139,92,246,.18),transparent 50%); }
.link-hub-profile { position:relative; display:grid; grid-template-columns:136px minmax(0,1fr) auto; align-items:end; gap:19px; margin-top:-72px; padding:0 28px 25px; }
.link-hub-avatar { width:132px; height:132px; border:5px solid #171727; border-radius:34px; object-fit:cover; box-shadow:0 20px 40px rgba(0,0,0,.35); }
.link-hub-profile-copy > div:first-child { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.link-hub-profile-copy h1 { margin:7px 0 0; font-size:clamp(34px,5vw,59px); line-height:1; letter-spacing:-.05em; }
.link-hub-profile-copy h1 i { display:inline-grid; width:25px; height:25px; place-items:center; border-radius:50%; color:#07111a; background:var(--hub-accent-2); font-size:13px; font-style:normal; vertical-align:middle; }
.link-hub-handle { margin:8px 0 0; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-profile-copy h2 { max-width:760px; margin:14px 0 0; font-size:clamp(19px,2.5vw,29px); line-height:1.25; }
#main-content .creator-link-hub-page .link-hub-profile-copy > p:last-child { max-width:760px; margin:8px 0 0; color:var(--muted); font-size:var(--approved-page-copy); line-height:1.6; }
.link-hub-profile-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; padding-bottom:3px; }
.link-hub-public-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--border); }
.link-hub-public-stats > span { padding:18px 22px; border-right:1px solid var(--border); }
.link-hub-public-stats > span:last-child { border-right:0; }
.link-hub-public-stats strong,.link-hub-public-stats small { display:block; }
.link-hub-public-stats strong { font-size:23px; }
.link-hub-public-stats small { margin-top:4px; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-section { margin-top:17px; padding:22px; border:1px solid var(--border); border-radius:21px; background:rgba(23,23,39,.62); }
.link-hub-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:15px; }
.link-hub-section-head h2 { margin:5px 0 0; font-size:clamp(23px,3vw,32px); }
#main-content .creator-link-hub-page .link-hub-section-head p { margin:6px 0 0; color:var(--muted); font-size:var(--approved-page-copy); }
.link-hub-social-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.link-hub-social { position:relative; display:grid; min-height:78px; grid-template-columns:46px minmax(0,1fr) 25px; align-items:center; gap:11px; padding:13px; border:1px solid var(--soft-border); border-radius:15px; color:var(--snow); background:rgba(255,255,255,.018); text-align:left; transition:.2s ease; }
.link-hub-social:hover { border-color:color-mix(in srgb,var(--hub-accent) 44%,transparent); background:rgba(139,92,246,.06); transform:translateY(-2px); }
.link-hub-social > span { display:grid; width:44px; height:44px; place-items:center; border-radius:13px; color:var(--hub-accent-2); background:rgba(34,211,238,.07); font-size:var(--approved-meta-copy); font-weight:900; }
.link-hub-social > div { min-width:0; }
.link-hub-social strong,.link-hub-social small { display:block; }
.link-hub-social strong { font-size:var(--approved-card-copy); }
.link-hub-social small { overflow:hidden; margin-top:3px; color:var(--muted); font-size:var(--approved-meta-copy); text-overflow:ellipsis; white-space:nowrap; }
.link-hub-social > i { display:grid; width:23px; height:23px; place-items:center; border-radius:50%; color:var(--success); background:rgba(55,211,154,.08); font-size:10px; font-style:normal; }
.link-hub-social > i.warning { color:var(--warning); background:rgba(255,177,79,.09); }
.link-hub-featured-list { display:grid; gap:9px; }
.link-hub-featured-link { display:grid; width:100%; grid-template-columns:48px minmax(0,1fr) 34px; align-items:center; gap:13px; padding:16px; border:1px solid var(--soft-border); border-radius:16px; color:var(--snow); background:linear-gradient(90deg,rgba(139,92,246,.045),rgba(255,255,255,.012)); text-align:left; transition:.2s ease; }
.link-hub-featured-link:hover { border-color:rgba(139,92,246,.35); transform:translateX(3px); }
.link-hub-featured-link > span { display:grid; width:46px; height:46px; place-items:center; border-radius:13px; color:var(--hub-accent-2); background:rgba(34,211,238,.07); font-size:var(--approved-meta-copy); font-weight:900; }
.link-hub-featured-link small,.link-hub-featured-link strong { display:block; }
.link-hub-featured-link small { color:var(--hub-accent-2); font-size:var(--approved-micro-copy); font-weight:800; letter-spacing:.07em; }
.link-hub-featured-link strong { margin-top:3px; font-size:var(--approved-card-copy); }
#main-content .creator-link-hub-page .link-hub-featured-link p { margin:4px 0 0; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-featured-link > i { display:grid; width:32px; height:32px; place-items:center; border-radius:10px; color:var(--snow); background:rgba(255,255,255,.035); font-style:normal; }
.link-hub-content-grid,.link-hub-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.link-hub-content-grid article,.link-hub-service-grid article { overflow:hidden; border:1px solid var(--soft-border); border-radius:17px; background:rgba(255,255,255,.015); }
.link-hub-content-grid article > div { position:relative; height:175px; overflow:hidden; }
.link-hub-content-grid img { width:100%; height:100%; object-fit:cover; }
.link-hub-content-grid article > div > span { position:absolute; inset:0; background:linear-gradient(180deg,transparent,rgba(11,11,18,.65)); }
.link-hub-content-grid article > small { display:block; margin:13px 14px 0; color:var(--hub-accent-2); font-size:var(--approved-micro-copy); font-weight:800; letter-spacing:.07em; }
.link-hub-content-grid h3 { margin:5px 14px 0; font-size:18px; }
#main-content .creator-link-hub-page .link-hub-content-grid p { margin:6px 14px 14px; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-service-grid article { display:flex; min-height:225px; flex-direction:column; padding:18px; }
.link-hub-service-grid article > span { width:max-content; padding:6px 8px; border-radius:8px; color:var(--hub-accent-2); background:rgba(34,211,238,.07); font-size:var(--approved-micro-copy); font-weight:800; }
.link-hub-service-grid h3 { margin:13px 0 0; font-size:20px; }
#main-content .creator-link-hub-page .link-hub-service-grid p { margin:7px 0; color:var(--muted); font-size:var(--approved-card-copy); }
.link-hub-service-grid strong { margin:auto 0 13px; font-size:var(--approved-card-copy); }
.link-hub-live-card { display:flex; align-items:center; justify-content:space-between; gap:22px; padding:20px; border:1px solid rgba(255,99,127,.18); border-radius:17px; background:linear-gradient(110deg,rgba(255,99,127,.055),rgba(139,92,246,.055)); }
.link-hub-live-card h3 { margin:9px 0 0; font-size:22px; }
#main-content .creator-link-hub-page .link-hub-live-card p { margin:6px 0 0; color:var(--muted); font-size:var(--approved-card-copy); }
.link-hub-live-card > div:last-child { display:flex; align-items:center; gap:9px; }
.link-hub-live-card > div:last-child > span { min-width:57px; padding:9px; border:1px solid var(--soft-border); border-radius:11px; text-align:center; }
.link-hub-live-card > div:last-child strong,.link-hub-live-card > div:last-child small { display:block; }
.link-hub-live-card > div:last-child strong { font-size:20px; }
.link-hub-live-card > div:last-child small { margin-top:2px; color:var(--muted); font-size:var(--approved-micro-copy); }
.link-hub-restricted { display:grid; grid-template-columns:70px minmax(0,1fr) auto; align-items:center; gap:15px; margin-top:17px; padding:20px; border:1px solid rgba(255,80,140,.2); border-radius:20px; background:linear-gradient(110deg,rgba(255,80,140,.065),rgba(23,23,39,.68)); }
.link-hub-restricted > span { display:grid; width:66px; height:66px; place-items:center; border-radius:20px; color:#ff91bc; background:rgba(255,80,140,.11); font-weight:900; }
.link-hub-restricted small { color:#ff91bc; font-size:var(--approved-micro-copy); font-weight:800; letter-spacing:.07em; }
.link-hub-restricted h2 { margin:5px 0 0; font-size:20px; }
#main-content .creator-link-hub-page .link-hub-restricted p { margin:5px 0 0; color:var(--muted); font-size:var(--approved-card-copy); }
.link-hub-footer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:22px 5px 3px; }
.link-hub-footer > div { display:flex; align-items:center; gap:10px; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-footer img { width:110px; }
.link-hub-footer nav { display:flex; gap:8px; }
.link-hub-footer button { border:0; color:var(--muted); background:transparent; font-size:var(--approved-meta-copy); }
.link-hub-footer button:hover { color:var(--hub-accent-2); }
.link-hub-unpublished { display:grid; min-height:520px; place-items:center; align-content:center; padding:35px; border:1px solid var(--border); border-radius:24px; text-align:center; background:rgba(23,23,39,.6); }
.link-hub-unpublished > span:first-child { display:grid; width:62px; height:62px; place-items:center; border-radius:19px; color:var(--cyan); background:rgba(34,211,238,.08); font-size:24px; }
.link-hub-unpublished h1 { margin:9px 0 0; font-size:clamp(32px,5vw,52px); }
.link-hub-unpublished p { max-width:620px; color:var(--muted); }
.link-hub-contact-options { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:17px 0; }

.link-hub-editor-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:9px; margin-top:20px; }
.link-hub-editor-summary > span { padding:14px; border:1px solid var(--soft-border); border-radius:13px; background:rgba(255,255,255,.016); }
.link-hub-editor-summary small,.link-hub-editor-summary strong,.link-hub-editor-summary em { display:block; }
.link-hub-editor-summary small { color:var(--muted-2); font-size:var(--approved-micro-copy); font-weight:800; letter-spacing:.06em; }
.link-hub-editor-summary strong { margin-top:7px; font-size:20px; }
.link-hub-editor-summary em { margin-top:4px; color:var(--muted); font-size:var(--approved-meta-copy); font-style:normal; }
.account-link-hub-section .textarea { min-height:90px; }
.link-hub-theme-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin-top:14px; }
.link-hub-theme-grid button { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:center; gap:10px; padding:12px; border:1px solid var(--soft-border); border-radius:13px; color:var(--snow); background:rgba(255,255,255,.014); text-align:left; }
.link-hub-theme-grid button.active { border-color:rgba(139,92,246,.42); background:rgba(139,92,246,.075); }
.link-hub-theme-grid button > span { grid-row:1 / 3; width:44px; height:44px; border-radius:12px; }
.link-hub-theme-grid .theme-midnight { background:linear-gradient(135deg,#8b5cf6,#22d3ee); }
.link-hub-theme-grid .theme-aurora { background:linear-gradient(135deg,#36d399,#a78bfa); }
.link-hub-theme-grid .theme-clean { background:linear-gradient(135deg,#ecebff,#6ee7f5); }
.link-hub-theme-grid strong { font-size:var(--approved-card-copy); }
.link-hub-theme-grid small { color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-editor-list,.link-hub-feature-editor-list { display:grid; gap:8px; margin-top:14px; }
.link-hub-editor-row { display:grid; grid-template-columns:40px minmax(0,1fr) 150px; align-items:end; gap:10px; padding:12px; border:1px solid var(--soft-border); border-radius:13px; background:rgba(255,255,255,.014); }
.link-hub-editor-row > span { display:grid; width:38px; height:38px; place-items:center; align-self:center; border-radius:11px; color:var(--cyan); background:rgba(34,211,238,.07); font-size:var(--approved-micro-copy); font-weight:900; }
.link-hub-editor-row label,.link-hub-feature-editor label { display:block; margin-bottom:5px; color:var(--muted); font-size:var(--approved-meta-copy); }
.link-hub-editor-row > div:last-child { display:flex; align-items:center; justify-content:flex-end; gap:9px; padding-bottom:6px; }
.link-hub-editor-row > div:last-child small { overflow:hidden; max-width:100px; color:var(--muted); text-overflow:ellipsis; white-space:nowrap; }
.link-hub-feature-editor { display:grid; grid-template-columns:34px minmax(0,1fr) minmax(0,1fr) 44px; align-items:end; gap:9px; padding:12px; border:1px solid var(--soft-border); border-radius:13px; background:rgba(255,255,255,.014); }
.link-hub-feature-editor > span { display:grid; width:32px; height:32px; place-items:center; align-self:center; border-radius:9px; color:var(--violet); background:rgba(139,92,246,.08); font-size:var(--approved-meta-copy); font-weight:900; }
.link-hub-feature-editor > .toggle { margin-bottom:7px; }
.link-hub-publish-bar { display:flex; align-items:center; gap:9px; margin-top:16px; padding:15px; border:1px solid rgba(55,211,154,.17); border-radius:15px; background:rgba(55,211,154,.035); }
.link-hub-publish-bar > div { display:flex; min-width:0; flex:1; align-items:center; gap:10px; }
.link-hub-publish-bar > div > span { display:grid; width:38px; height:38px; flex:0 0 38px; place-items:center; border-radius:11px; color:var(--success); background:rgba(55,211,154,.09); font-weight:900; }
.link-hub-publish-bar strong,.link-hub-publish-bar p { display:block; }
#main-content .link-hub-publish-bar p { margin:3px 0 0; color:var(--muted); font-size:var(--approved-meta-copy); }

@media (min-width:700px) {
  .creator-link-hub-page,.account-link-hub-section,.link-hub-unpublished { --approved-page-copy:16px; --approved-card-copy:14px; --approved-meta-copy:13px; --approved-micro-copy:11px; }
}
@media (max-width:1080px) {
  .link-hub-profile { grid-template-columns:120px minmax(0,1fr); }
  .link-hub-avatar { width:116px; height:116px; }
  .link-hub-profile-actions { grid-column:1 / -1; justify-content:flex-start; }
  .link-hub-social-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .link-hub-editor-summary { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:800px) {
  .creator-link-hub-page { padding:11px; border-radius:22px; }
  .link-hub-cover { height:230px; }
  .link-hub-profile { margin-top:-55px; padding:0 18px 20px; }
  .link-hub-public-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .link-hub-public-stats > span:nth-child(2) { border-right:0; }
  .link-hub-public-stats > span:nth-child(-n+2) { border-bottom:1px solid var(--border); }
  .link-hub-content-grid,.link-hub-service-grid { grid-template-columns:1fr; }
  .link-hub-content-grid article { display:grid; grid-template-columns:180px minmax(0,1fr); }
  .link-hub-content-grid article > div { grid-row:1 / 4; height:100%; min-height:145px; }
  .link-hub-live-card { align-items:flex-start; flex-direction:column; }
  .link-hub-restricted { grid-template-columns:62px minmax(0,1fr); }
  .link-hub-restricted > span { width:58px; height:58px; }
  .link-hub-restricted .btn { grid-column:1 / -1; width:100%; }
  .link-hub-theme-grid { grid-template-columns:1fr; }
  .link-hub-feature-editor { grid-template-columns:32px minmax(0,1fr) 42px; }
  .link-hub-feature-editor > div:nth-of-type(2) { grid-column:2 / -1; }
  .link-hub-publish-bar { align-items:stretch; flex-wrap:wrap; }
  .link-hub-publish-bar > div { flex-basis:100%; }
  .link-hub-publish-bar .btn { flex:1; }
}
@media (max-width:580px) {
  .link-hub-topbar { align-items:flex-start; }
  .link-hub-brand { align-items:flex-start; flex-direction:column; }
  .link-hub-brand span { padding-left:0; border-left:0; }
  .link-hub-cover { height:190px; }
  .link-hub-profile { grid-template-columns:86px minmax(0,1fr); gap:12px; margin-top:-42px; padding:0 14px 17px; }
  .link-hub-avatar { width:84px; height:84px; border-width:4px; border-radius:24px; }
  .link-hub-profile-copy h1 { font-size:31px; }
  .link-hub-profile-copy h2,.link-hub-profile-copy > p:last-child { grid-column:1 / -1; }
  .link-hub-profile-actions { flex-direction:column; }
  .link-hub-profile-actions .btn { width:100%; }
  .link-hub-social-grid,.link-hub-editor-summary { grid-template-columns:1fr; }
  .link-hub-section { padding:16px; border-radius:18px; }
  .link-hub-section-head { align-items:flex-start; flex-direction:column; }
  .link-hub-featured-link { grid-template-columns:42px minmax(0,1fr) 30px; padding:13px; }
  .link-hub-featured-link > span { width:40px; height:40px; }
  .link-hub-content-grid article { display:block; }
  .link-hub-content-grid article > div { height:175px; }
  .link-hub-live-card > div:last-child { width:100%; flex-wrap:wrap; }
  .link-hub-live-card .btn { width:100%; }
  .link-hub-footer { align-items:flex-start; flex-direction:column; }
  .link-hub-editor-row { grid-template-columns:38px minmax(0,1fr); }
  .link-hub-editor-row > div:last-child { grid-column:2; justify-content:space-between; }
  .link-hub-feature-editor { grid-template-columns:32px minmax(0,1fr); }
  .link-hub-feature-editor > div,.link-hub-feature-editor > div:nth-of-type(2) { grid-column:2; }
  .link-hub-feature-editor > .toggle { grid-column:2; }
  .link-hub-publish-bar .btn { flex-basis:100%; }
.link-hub-contact-options { grid-template-columns:1fr; }
}

.bmc-points-page,.account-bmc-points-section,.admin-bmc-section,.bmc-terms-modal {
  --approved-page-copy:16px;
  --approved-card-copy:14px;
  --approved-meta-copy:13px;
  --approved-micro-copy:11px;
}

.bmc-points-page {
  width:min(1440px,100%);
  margin:0 auto;
}

.bmc-points-page .page-header p,
.admin-bmc-section .admin-section-head p,
.account-bmc-points-section p {
  font-size:var(--approved-page-copy);
  line-height:1.6;
}

.bmc-points-page p,
.bmc-points-page .data-table td,
.bmc-rules-card p,
.bmc-admin-request p,
.bmc-terms-modal p {
  font-size:var(--approved-card-copy);
  line-height:1.55;
}

.bmc-points-page small,
.bmc-points-page em,
.account-bmc-points-section small,
.account-bmc-points-section em,
.admin-bmc-section small,
.bmc-terms-modal .modal-summary-row {
  font-size:var(--approved-meta-copy);
}

.bmc-points-page .badge,
.account-bmc-points-section .badge,
.admin-bmc-section .badge {
  font-size:var(--approved-micro-copy);
}

.bmc-points-page .btn,
.account-bmc-points-section .btn,
.admin-bmc-section .btn {
  font-size:var(--approved-card-copy);
}

.bmc-hero {
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  align-items:center;
  gap:22px;
  min-height:260px;
  margin-bottom:18px;
  padding:30px;
  overflow:hidden;
  border:1px solid rgba(139,92,246,.22);
  border-radius:28px;
  background:
    radial-gradient(circle at 10% 0,rgba(139,92,246,.22),transparent 34%),
    radial-gradient(circle at 100% 60%,rgba(34,211,238,.13),transparent 35%),
    rgba(23,23,39,.72);
  box-shadow:0 28px 80px rgba(0,0,0,.24);
}

.bmc-hero h2 {
  margin:9px 0 6px;
  font-size:clamp(40px,6vw,76px);
  line-height:.95;
  letter-spacing:-.06em;
}

.bmc-hero p { max-width:720px; color:var(--muted); }
.bmc-score-orbit {
  position:relative;
  display:grid;
  width:210px;
  height:210px;
  place-items:center;
  justify-self:end;
  border:1px solid rgba(34,211,238,.22);
  border-radius:50%;
  background:radial-gradient(circle,rgba(34,211,238,.14),rgba(139,92,246,.08) 55%,rgba(255,255,255,.025));
}
.bmc-score-orbit strong { font-size:48px; line-height:1; }
.bmc-score-orbit small { margin-top:-48px; color:var(--muted); text-transform:uppercase; letter-spacing:.08em; }
.bmc-score-orbit span { position:absolute; inset:13px; border:1px dashed rgba(255,255,255,.16); border-radius:50%; animation:spin 18s linear infinite; }

@keyframes spin {
  to { transform:rotate(360deg); }
}

.bmc-rules-card {
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  align-items:center;
  gap:15px;
  margin:0 0 18px;
  padding:18px;
  border:1px solid rgba(255,180,84,.22);
  border-radius:20px;
  background:linear-gradient(110deg,rgba(255,180,84,.065),rgba(23,23,39,.74));
}
.bmc-rules-card > span {
  display:grid;
  width:60px;
  height:60px;
  place-items:center;
  border-radius:18px;
  color:#ffd18a;
  background:rgba(255,180,84,.1);
  font-weight:900;
}
.bmc-rules-card strong { display:block; font-size:18px; }
.bmc-rules-card p { margin:4px 0 0; color:var(--muted); }
.bmc-rules-card > small { grid-column:2 / -1; color:var(--muted-2); }

.bmc-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 340px;
  align-items:start;
  gap:16px;
}
.bmc-layout main { display:grid; gap:16px; min-width:0; }
.bmc-score-list,.bmc-content-list { display:grid; gap:10px; }
.bmc-score-list article {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(130px,220px) 64px;
  align-items:center;
  gap:13px;
  padding:13px;
  border:1px solid var(--soft-border);
  border-radius:14px;
  background:rgba(255,255,255,.014);
}
.bmc-score-list strong,.bmc-score-list small { display:block; }
.bmc-score-list small { margin-top:3px; color:var(--muted); }
.bmc-score-list span {
  display:block;
  height:9px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.07);
}
.bmc-score-list i {
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--violet),var(--cyan));
}
.bmc-score-list em { color:var(--cyan); font-style:normal; font-weight:800; text-align:right; }
.bmc-penalty-note {
  display:grid;
  grid-template-columns:44px minmax(0,1fr);
  gap:12px;
  margin-top:14px;
  padding:14px;
  border:1px solid rgba(255,99,127,.19);
  border-radius:15px;
  background:rgba(255,99,127,.045);
}
.bmc-penalty-note > span {
  display:grid;
  width:42px;
  height:42px;
  place-items:center;
  border-radius:13px;
  color:var(--danger);
  background:rgba(255,99,127,.1);
  font-weight:900;
}
.bmc-penalty-note p { margin:4px 0 0; color:var(--muted); }

.bmc-content-list article {
  display:grid;
  grid-template-columns:46px minmax(0,1fr) auto auto;
  align-items:center;
  gap:12px;
  padding:13px;
  border:1px solid var(--soft-border);
  border-radius:15px;
  background:rgba(255,255,255,.014);
}
.bmc-content-list article > span {
  display:grid;
  width:44px;
  height:44px;
  place-items:center;
  border-radius:13px;
  color:var(--cyan);
  background:rgba(34,211,238,.08);
  font-weight:900;
}
.bmc-content-list strong,.bmc-content-list small { display:block; }
.bmc-content-list small { color:var(--muted); }
.bmc-content-list b { color:var(--success); white-space:nowrap; }
.bmc-ledger-table td:first-child small { display:block; margin-top:3px; color:var(--muted); }

.bmc-redeem-card { display:grid; gap:12px; }
.bmc-redeem-amount {
  padding:16px;
  border:1px solid rgba(139,92,246,.18);
  border-radius:16px;
  background:linear-gradient(145deg,rgba(139,92,246,.08),rgba(34,211,238,.035));
}
.bmc-redeem-amount small,.bmc-redeem-amount strong { display:block; }
.bmc-redeem-amount strong { margin-top:6px; font-size:28px; letter-spacing:-.035em; }
.bmc-redeem-amount p { margin:7px 0 0; color:var(--muted); }
.bmc-account-summary strong { font-size:18px; }
.admin-commercial-banner.bmc > span { color:#061119; background:linear-gradient(135deg,var(--violet),var(--cyan)); }
.bmc-admin-request {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:14px;
  margin:16px 0;
  padding:18px;
  border:1px solid rgba(255,180,84,.2);
  border-radius:18px;
  background:rgba(255,180,84,.04);
}
.bmc-admin-request.empty { grid-template-columns:minmax(0,1fr) auto; border-color:var(--soft-border); background:rgba(255,255,255,.014); }
.bmc-admin-request h3 { margin:5px 0 0; font-size:22px; }
.bmc-admin-request p { margin:5px 0; color:var(--muted); }
.bmc-admin-request > div:last-child { display:flex; gap:8px; }
.bmc-admin-weight-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:9px;
}
.bmc-admin-weight-grid span {
  padding:13px;
  border:1px solid var(--soft-border);
  border-radius:13px;
  background:rgba(255,255,255,.014);
}
.bmc-admin-weight-grid small,.bmc-admin-weight-grid strong { display:block; }
.bmc-admin-weight-grid small { color:var(--cyan); font-weight:900; }
.bmc-admin-weight-grid strong { margin-top:5px; }

@media (max-width: 1100px) {
  .bmc-layout { grid-template-columns:1fr; }
  .bmc-layout .wallet-side { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .bmc-admin-weight-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 760px) {
  .bmc-hero { grid-template-columns:1fr; padding:21px; }
  .bmc-score-orbit { width:170px; height:170px; justify-self:start; }
  .bmc-score-list article { grid-template-columns:1fr; }
  .bmc-score-list em { text-align:left; }
  .bmc-content-list article { grid-template-columns:44px minmax(0,1fr); }
  .bmc-content-list b,.bmc-content-list .badge { grid-column:2; width:max-content; }
  .bmc-layout .wallet-side { grid-template-columns:1fr; }
  .bmc-rules-card,.bmc-admin-request,.bmc-admin-request.empty { grid-template-columns:1fr; }
  .bmc-admin-request > div:last-child { flex-direction:column; }
  .bmc-admin-request .btn { width:100%; }
  .bmc-admin-weight-grid { grid-template-columns:1fr; }
}

@media (max-width: 620px) {
  .bmc-points-page,.account-bmc-points-section,.admin-bmc-section,.bmc-terms-modal {
    --approved-page-copy:14px;
    --approved-card-copy:12px;
    --approved-meta-copy:11px;
    --approved-micro-copy:10px;
  }
  .bmc-hero h2 { font-size:36px; }
  .bmc-score-orbit strong { font-size:38px; }
  .bmc-rules-card { padding:15px; }
}
