/* Live Stars 5.9 · production presentation layer. No demo data or API overrides. */
:root {
  --studio-bg: #101216; --studio-surface: #191c22; --studio-raised: #25282f;
  --studio-ink: #eeedea; --studio-muted: #9b9ea8; --studio-line: #ffffff10;
  --studio-accent: #ddc49b; --studio-mint: #98cab5; --studio-blue: #a5b0c7;
}
:is(html[data-route="site"],html[data-route="app"]) {
  --experience-bg: var(--studio-bg); --experience-panel: var(--studio-surface);
  --experience-line: var(--studio-line); --experience-text: var(--studio-ink);
  --experience-muted: var(--studio-muted); --experience-pink: var(--studio-accent);
  --experience-blue: var(--studio-accent);
}
html[data-route="admin"] {
  --cms-bg: var(--studio-bg); --cms-surface: var(--studio-surface);
  --cms-raised: var(--studio-raised); --cms-line: var(--studio-line);
  --cms-text: var(--studio-ink); --cms-muted: var(--studio-muted);
  --cms-accent: var(--studio-accent); color-scheme: dark;
  --bg: var(--studio-bg); --panel: var(--studio-surface); --panel-2: var(--studio-raised);
  --text: var(--studio-ink); --dim: var(--studio-muted); --line: var(--studio-line);
  --pink: var(--studio-accent); --violet: var(--studio-blue); --ok: var(--studio-mint);
  --dark-bg: var(--studio-bg); --dark-bg-deep: #0d0f13; --dark-panel: var(--studio-surface);
  --dark-panel-raised: var(--studio-raised); --dark-panel-soft: #20242c;
  --dark-text: var(--studio-ink); --dark-muted: var(--studio-muted); --dark-subtle: #8c94a4;
  --dark-pink: var(--studio-accent); --dark-violet: var(--studio-blue); --dark-cyan: var(--studio-blue);
  --dark-green: var(--studio-mint); --dark-coral: #c2aa87;
  --dark-gradient: linear-gradient(115deg,#ead6b3,#d2b58a);
  --dark-gradient-warm: linear-gradient(115deg,#ead6b3,#d2b58a);
}
html[data-route="admin"] #adminView {
  max-width: 1760px; padding: 20px 28px 36px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  -webkit-font-smoothing: antialiased; font-variant-numeric: tabular-nums;
}
html[data-route="admin"] #adminView > .topbar {
  min-height: 60px; margin-bottom: 24px; border-color: #ffffff0a;
  background: #101216f5; box-shadow: none;
}
#adminView :is(h2,h3,.cms-nav-link) { font-family: inherit; }
#adminView :is(.admin-title h2,.overview-head h2,.chat-page-head h2) {
  font-size: clamp(25px, 2.5vw, 30px); font-weight: 500; letter-spacing: -.9px;
}
#adminView .brand-name { font-size: 20px; font-weight: 550; }
html[data-route="admin"] #adminView .mark-img { animation: none; filter: none; width: 40px; height: 40px; }
#adminView .brand-suffix { color: #a5977f; font-size: 8px; letter-spacing: 2px; }
html[data-route="admin"] #adminView .brand-suffix { color: #a5977f; background: none; -webkit-text-fill-color: currentColor; text-shadow: none; }
html[data-route="admin"] #adminView .admin-top-logout { color: #c5c9d2; background: #ffffff03; border: 1px solid #ffffff12; border-radius: 9px; box-shadow: none; }
html[data-route="admin"] #adminView .admin-top-logout::before, html[data-route="admin"] #adminView .admin-top-logout::after { display: none; }
#adminView .eyebrow { color: #a5977f; font-size: 9px; letter-spacing: 1.5px; font-weight: 500; }
#adminView .btn { min-height: 39px; font-size: 12px; border-radius: 9px; font-weight: 500; }
#adminView .btn.primary, #adminView #chatSend {
  color: #26221d; background: linear-gradient(115deg,#ead6b3,#d2b58a);
  border: 1px solid #f8e9ce40; box-shadow: inset 0 1px 0 #fff3,0 3px 12px #0002;
}
#adminView .btn.ghost { background: #ffffff03; border-color: #ffffff12; color: #c5c9d2; }
#adminView :is(button,a,input,textarea,select,summary):focus-visible { outline: 2px solid var(--cms-accent); outline-offset: 3px; }
#adminView .cms-nav-link { font: 400 12px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; min-height: 42px; gap: 10px; }
#adminView .cms-nav-link.active { color: #e3cfaf; background: linear-gradient(100deg,#ddc49b14,#ddc49b05); border-color: #ddc49b16; }
#adminView .cms-nav-link svg { width: 17px; height: 17px; flex-basis: 17px; stroke-width: 1.5; }
#adminView .cms-nav-caption { color: #7e8594; font-size: 8px; letter-spacing: 1.5px; }
#adminView :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) {
  background: #13161c; color: var(--cms-text); border-color: #ffffff16; border-radius: 9px;
}
#adminView :is(.overview-chart-panel,.overview-project,.autopost-card,.report-card,.site-visit-row,.automation-rule,.campaign-panel,.site-funnel-panel,.cms-preview) {
  background: linear-gradient(135deg,#1d2027,#171a20); border: 1px solid var(--cms-line);
  border-radius: 15px; box-shadow: inset 0 1px 0 #ffffff03,0 4px 18px #0000000b;
}
#adminView .admin-home-page { gap: 18px; }
#adminView .overview-head { margin: 0 0 4px; }
#adminView .overview-head h2 { margin-top: 8px; }
#adminView .overview-head p { font-size: 11px; }
#adminView .overview-summary {
  gap: 0; padding: 17px 0; border: 1px solid var(--cms-line); border-radius: 15px;
  background: linear-gradient(105deg,#1c1f26,#171a20); overflow: hidden;
}
#adminView .overview-summary article, #adminView .overview-summary .overview-online {
  padding: 0 22px; border: 0; border-right: 1px solid var(--cms-line); border-radius: 0;
  background: none; box-shadow: none; grid-template-rows: auto auto; gap: 12px;
}
#adminView .overview-summary article:last-child { border-right: 0; }
#adminView .overview-summary article > span { font-size: 11px; color: #a7aebc; }
#adminView .overview-summary article > strong { font-size: 32px; font-weight: 400; color: var(--cms-text); }
#adminView .overview-summary .overview-online > strong { color: var(--studio-mint); }
#adminView :is(.admin-metrics,.site-metrics) { gap: 10px; margin-bottom: 18px; }
#adminView :is(.admin-metrics,.site-metrics) article { padding: 16px; border-radius: 12px; background: linear-gradient(135deg,#1d2027,#171a20); }
#adminView :is(.admin-metrics,.site-metrics) strong { font-size: 29px; font-weight: 400; }
#adminView :is(.metric-online,.user-card.online) strong { color: var(--studio-mint); }
#adminView .overview-chart-panel { padding: 20px; }
#adminView .overview-chart-head { flex-direction: row; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 18px; }
#adminView .overview-chart-head h3 { margin-top: 6px; font-size: 15px; font-weight: 500; }
#adminView .overview-chart-legend { width: auto; gap: 14px; font-size: 10px; }
#adminView .legend-livestars::before { background: var(--studio-accent); box-shadow: none; }
#adminView .legend-goshow::before { background: var(--studio-blue); box-shadow: none; }
#adminView .overview-line-livestars { stroke: var(--studio-accent); filter: none; }
#adminView .overview-line-goshow { stroke: var(--studio-blue); filter: none; }
#adminView .overview-dot-livestars { fill: var(--studio-accent); }
#adminView .overview-dot-goshow { fill: var(--studio-blue); }
#adminView .overview-grid { stroke: #ffffff08; }
#adminView .overview-axis-label { fill: #8c94a4; }
#adminView .overview-projects { gap: 12px; }
#adminView .overview-project { padding: 20px; }
#adminView .overview-project::before { display: none; }
#adminView .overview-project-name { font-size: 13px; font-weight: 500; }
#adminView .overview-project strong { font-size: 29px; font-weight: 400; color: var(--cms-text); }
#adminView .overview-project small { font-size: 10px; }
#adminView .overview-project i { background: #ffffff03; border: 1px solid #ffffff0e; color: var(--studio-accent); }
#adminView .cms-quick-actions { gap: 12px; }
#adminView .cms-quick-actions h3 { font-size: 15px; font-weight: 500; }
#adminView .cms-quick-actions button { background: #ddc49b03; padding: 16px; border-radius: 12px; }
#adminView .cms-action-symbol { background: #ddc49b09; color: var(--studio-accent); border: 1px solid #ddc49b12; width: 32px; height: 32px; flex-basis: 32px; font-size: 17px; }
#adminView .cms-quick-actions small { margin-top: 4px; font-size: 10px; }
#adminView .user-card { padding: 16px; border-radius: 12px; background: var(--cms-surface); }
#adminView :is(#statsPage,#goshowStatsPage) .user-card-top strong { font-size: 13px; font-weight: 500; }
#adminView :is(#statsPage,#goshowStatsPage) .user-card-top small { font-size: 10px; }
#adminView .user-journey { gap: 9px; margin: 11px 0; }
#adminView .user-first-start { font-size: 10px; }
#adminView .user-journey-chips > span { padding: 4px 7px; border-radius: 6px; font-size: 10px; }
#adminView :is(#statsPage,#goshowStatsPage) .last-seen { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px 12px; background: #ffffff03; border: 1px solid #ffffff08; border-radius: 8px; }
#adminView :is(#statsPage,#goshowStatsPage) .last-seen :is(span,b) { font-size: 10px; font-weight: 400; }
#adminView .chat-user-link { min-height: 32px; padding: 7px 9px; font-size: 10px; margin-top: 10px; }
#adminView .status-badge { box-shadow: none; font-size: 9px; letter-spacing: .4px; }
#adminView .status-badge.online { background: #98cab508; border-color: #98cab526; color: var(--studio-mint); }
#adminView .status-badge.online::before { background: var(--studio-mint); box-shadow: none; }
#adminView .user-card.online { border-color: #98cab526; background: linear-gradient(90deg,#98cab508,transparent),var(--cms-surface); }
#adminView .user-journey-track i { background: linear-gradient(90deg,#a5b0c7,#ddc49b); }
#adminView .site-funnel-panel { padding: 20px; }
#adminView .site-funnel { display: grid; grid-template-columns: 170px minmax(0,1fr); gap: 12px 24px; align-items: center; }
#adminView .cms-conversion { display: grid; justify-items: center; text-align: center; padding: 12px 0; }
#adminView .cms-conversion-ring { width: 132px; height: 132px; position: relative; display: grid; place-items: center; }
#adminView .cms-conversion-ring svg { position: absolute; inset: 0; width: 100%; height: 100%; fill: none; transform: rotate(-90deg); }
#adminView .cms-conversion-ring circle { stroke-width: 3; }
#adminView .ring-base { stroke: #ffffff08; }
#adminView .ring-progress { stroke: var(--studio-accent); stroke-linecap: round; }
#adminView .cms-conversion-ring strong { font-size: 38px; font-weight: 400; letter-spacing: -1.5px; color: #e3cfaf; }
#adminView .cms-conversion-ring strong small { font-size: 18px; color: #a5977f; margin-left: 2px; }
#adminView .cms-conversion > p { font-size: 11px; color: #c5c9d2; margin: 13px 0 0; }
#adminView .cms-conversion > p small { display: block; font-size: 9px; color: #8c94a4; margin-top: 5px; }
#adminView .funnel-journey { gap: 5px; }
#adminView .site-funnel .site-funnel-step { padding: 8px 10px; min-height: 42px; border: 0; background: none; gap: 10px; grid-template-columns: 20px minmax(0,1fr) 58px 36px; }
#adminView .site-funnel .funnel-step-number { width: 20px; height: 20px; background: none; border: 0; color: #8c94a4; font-size: 9px; }
#adminView .site-funnel .funnel-step-body strong { font-size: 12px; font-weight: 400; color: #b9c2d2; }
#adminView .site-funnel .funnel-step-body i { background: #ffffff06; height: 3px; }
#adminView .site-funnel .funnel-step-body u { background: linear-gradient(90deg,#74819a,#a5b0c7); box-shadow: none; }
#adminView .site-funnel-step:last-child .funnel-step-body u { background: var(--studio-accent); }
#adminView .site-funnel .site-funnel-step > b { font-size: 13px; font-weight: 500; color: var(--cms-text); }
#adminView .site-funnel .site-funnel-step > small { color: #8c94a4; font-size: 10px; }
#adminView .funnel-result { grid-column: 1/-1; border-top: 1px solid #ffffff09; border-radius: 0; background: none; padding: 14px 0 0; margin: 4px 0 0; color: #8c94a4; font-size: 10px; }
#adminView .funnel-result b { font-size: 12px; font-weight: 400; color: #c5b08c; }
#adminView :is(.cms-preview,.admin-login,#autopostForm) { border-color: var(--cms-line); background: linear-gradient(135deg,#1d2027,#171a20); border-radius: 16px; }
#adminView .cms-preview-chat { border-color: var(--cms-line); background: #13161c; }
#adminView .cms-message-bubble { background: #20242c; border-color: var(--cms-line); }
#adminView .cms-preview-avatar { background: #ddc49b0d; color: var(--studio-accent); }
#adminView :is(.cms-preview-app-button,.cms-send-summary) { background: #ddc49b08; border-color: #ddc49b12; color: #dfd5c2; }
#adminView :is(.cms-language-tabs button[aria-selected="true"],.user-filter-chips button.active,.analytics-tab.active) { background: #ddc49b0c; color: #e3cfaf; border-color: #ddc49b20; box-shadow: none; }
#adminView :is(.autopost-target label,.autopost-switch label):has(input:checked) { border-color: #ddc49b40; background: #ddc49b09; }
#adminView :is(.support-page button,.chat-user-link) { border-color: #ffffff12; background: #ffffff03; color: #c5c9d2; font-size: 12px; }
#adminView .chat-workspace { background: #171a20; border-color: #ffffff12; border-radius: 15px; }
#adminView :is(.chat-sidebar,.chat-context,.chat-composer,.chat-person-details) { border-color: #ffffff0c; }
#adminView .chat-thread { background: #12151a; }
#adminView .chat-message { background: #20242c; border-color: #ffffff09; }
#adminView .chat-message.from-admin { background: linear-gradient(140deg,#ddc49b10,#ddc49b07); border-color: #ddc49b12; }
#adminView .chat-message.from-admin p { color: #dfd5c2; }
#adminView .chat-message time { color: #9b9ea8; }
#adminView button.chat-ticket.is-selected, #adminView .chat-filters button[aria-pressed="true"] { background: #ddc49b09; border-color: #ddc49b20; }
#adminView .chat-avatar, #adminView .chat-profile-avatar { color: #ddc49b; background: #ddc49b0c; border-color: #ddc49b14; }
#adminView :is(.chat-unread,#chatNavBadge) { background: var(--studio-accent); color: #26221d; }
#adminView :is(.chat-thread-head h3,.chat-placeholder h3) { font-size: 18px; font-weight: 500; }
html[data-route="admin"] #toast { background: #25282f; color: #e3cfaf; border-color: #ddc49b30; }
html[data-route="admin"] .notification-drawer { background: #1b1e25; border-left: 1px solid #ffffff14; padding: max(22px,env(safe-area-inset-top)) 20px max(20px,env(safe-area-inset-bottom)); }
html[data-route="admin"] .notification-drawer-head h2 { font-size: 21px; font-weight: 500; }
html[data-route="admin"] .notification-item { color: var(--cms-text); border: 1px solid #ffffff0d; border-radius: 10px; background: #20242c; box-shadow: none; }
html[data-route="admin"] .notification-item.unread { border-left: 2px solid #ddc49b; background: #ddc49b07; }
html[data-route="admin"] .notification-content { color: #eeedea; }
html[data-route="admin"] .notification-content strong { font-weight: 500; font-size: 12px; }
html[data-route="admin"] .notification-content :is(span,time) { color: #9b9ea8; }

/* Public site, including pre-rendered language routes. */
html[data-route="site"], html[data-route="site"] body { background: var(--studio-bg); color: var(--studio-ink); }
html[data-route="site"] body::before, html[data-route="site"] body::after { display: none; }
#landingView { color: var(--studio-ink); font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; }
#landingView :is(h1,h2,h3,.brand-name) { font-family: inherit; }
#landingView :is(.landing-header,.topbar,.landing-footer) { border-color: #ffffff10; background: transparent; box-shadow: none; }
#landingView .eyebrow { color: var(--studio-accent); letter-spacing: 1.6px; font-weight: 500; }
#landingView .landing-hero h1 { font-weight: 500; letter-spacing: -1.8px; }
#landingView .landing-hero h1 :is(span,em) { color: var(--studio-accent); background: none; -webkit-text-fill-color: currentColor; }
#landingView :is(.lead,.landing-hero p,.landing-section-head > p,.landing-split > div > p) { color: #a7aebc; }
#landingView .btn.primary { background: linear-gradient(115deg,#ead6b3,#d2b58a); color: #26221d; border: 1px solid #f8e9ce40; border-radius: 10px; font-weight: 500; box-shadow: inset 0 1px 0 #fff3; }
#landingView :is(.landing-cta.primary,#landingOpenApp) { background: linear-gradient(115deg,#ead6b3,#d2b58a); color: #26221d; border-color: #f8e9ce40; border-radius: 10px; font-weight: 500; }
#landingView #landingRegister { color: #c5c9d2; background: #ffffff03; border-color: #ffffff16; border-radius: 10px; }
#landingView .btn.ghost { background: #ffffff03; color: #c5c9d2; border: 1px solid #ffffff16; border-radius: 10px; }
#landingView :is(.landing-chips span,.landing-hero-chips span,.landing-trust span) { border-color: #ddc49b16; color: #c5b08c; background: #ddc49b06; }
#landingView .landing-section { border-color: #ffffff10; }
#landingView .landing-section h2 { font-weight: 500; }
#landingView :is(.landing-grid article,.landing-money article,.landing-income-card,.landing-faq details,.landing-support,.landing-format-list article) { background: linear-gradient(135deg,#1d2027,#171a20); border-color: #ffffff10; border-radius: 15px; box-shadow: inset 0 1px 0 #ffffff03; }
#landingView .landing-grid article > strong { color: var(--studio-accent); background: #ddc49b08; border-color: #ddc49b14; border-radius: 9px; font-weight: 500; }
#landingView .landing-grid article h3 { color: var(--studio-ink); font-weight: 500; }
#landingView :is(.landing-grid article p,.landing-format-list p,.landing-income-note,.landing-terms) { color: #9b9ea8; }
#landingView .landing-editorial-visual { border-color: #ffffff10; border-radius: 20px; }
#landingView .landing-editorial-visual::after { background: linear-gradient(transparent,#101216cf); }
#landingView .landing-visual-label { color: #e3cfaf; }
#landingView .landing-kicker, #landingView .landing-inline-link, #landingView .landing-faq summary::after, #landingView .landing-footer .brand span { color: var(--studio-accent); }
#landingView .landing-trust span::before { background: var(--studio-accent); }
#landingView .landing-format-visual, #landingView .landing-money { background: linear-gradient(135deg,#1d2027,#171a20); border-color: #ffffff10; }
#landingView .landing-format-points article { border-color: #ddc49b40; }
#landingView :is(.landing-format-intro,.landing-format-points p,.landing-money span,.landing-money .landing-terms-note,.landing-faq p,.landing-support p) { color: #a7aebc; }
#landingView .landing-money b { color: #e3cfaf; }
#landingView .landing-faq details { border-radius: 0; background: transparent; box-shadow: none; }
#landingView :is(.landing-money strong,.landing-income strong) { color: #e3cfaf; }
#landingView select { background: #191c22; color: var(--studio-ink); border-color: #ffffff14; }
html[data-route="app"], html[data-route="app"] body { background: var(--studio-bg); }
html[data-route="app"] #appView.approved-design-ready:not([hidden]) { background: var(--studio-bg); }

@media (min-width:1000px) {
  html[data-route="admin"] body.admin-authorized #adminView { padding-left: 244px; }
  html[data-route="admin"] body.admin-authorized #adminView > .topbar { width: calc(100% + 216px); margin-left: -216px; }
  #adminView #adminMenu { top: 108px; left: max(22px,calc((100vw - 1760px)/2 + 22px)); width: 184px; max-height: calc(100dvh - 130px); }
  #adminView .admin-home-page { grid-template-columns: minmax(0,2fr) minmax(240px,1fr); align-items: stretch; }
  #adminView :is(.overview-head,.overview-summary,.cms-quick-actions) { grid-column: 1/-1; }
  #adminView .overview-chart-panel { grid-column: 1; grid-row: 3; }
  #adminView .overview-projects { grid-column: 2; grid-row: 3; grid-template-columns: 1fr; }
  #adminView .overview-chart svg { min-height: 220px; max-height: 290px; }
  #adminView :is(#statsPage,#goshowStatsPage) .user-cards { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width:999px) {
  html[data-route="admin"] #adminView { padding: 16px 20px calc(108px + env(safe-area-inset-bottom,0px)); }
  #adminView #adminMenu { background: #12151af5; border-color: #ffffff12; grid-template-columns: repeat(5,minmax(0,1fr)); }
  #adminView .cms-nav-link { min-height: 52px; font-size: 9px; }
  #adminView .cms-nav-secondary { background: #1b1e25; border-color: #ffffff14; }
}
@media (max-width:650px) {
  html[data-route="admin"] #adminView { padding-left: 14px; padding-right: 14px; }
  html[data-route="admin"] #adminView > .topbar { margin-bottom: 20px; }
  #adminView .admin-home-page { gap: 15px; }
  #adminView .overview-summary { padding: 15px 0; }
  #adminView .overview-summary article { padding: 0 12px; gap: 10px; }
  #adminView .overview-summary article > span { font-size: 9px; min-height: 2.8em; }
  #adminView .overview-summary article > strong { font-size: 26px; }
  #adminView .overview-chart-head { align-items: flex-start; flex-direction: column; }
  #adminView :is(.overview-chart-panel,.overview-project,.site-funnel-panel) { padding: 16px; }
  #adminView .site-funnel { grid-template-columns: minmax(0,1fr); gap: 14px; }
  #adminView .cms-conversion { display: flex; gap: 17px; text-align: left; padding: 0 0 12px; border-bottom: 1px solid #ffffff08; }
  #adminView .cms-conversion-ring { width: 92px; height: 92px; flex: 0 0 92px; }
  #adminView .cms-conversion-ring strong { font-size: 29px; }
  #adminView .cms-conversion-ring strong small { font-size: 14px; }
  #adminView .cms-conversion > p { margin: 0; font-size: 11px; }
  #adminView .site-funnel .site-funnel-step { grid-template-columns: 18px minmax(0,1fr) 40px 30px; gap: 6px; padding: 6px 0; }
  #adminView .site-funnel .funnel-step-body strong { font-size: 11px; }
  #adminView .funnel-result { align-items: flex-start; font-size: 9px; }
  #adminView :is(input:not([type="checkbox"]):not([type="radio"]),textarea,select) { font-size: 16px; }
  #adminView .cms-quick-actions { grid-template-columns: 1fr; }
  #adminView .cms-quick-actions button { padding: 14px; }
  #adminView :is(.admin-metrics,.site-metrics) article { padding: 13px; }
  #adminView .chat-thread { padding: 14px; }
  #landingView .landing-hero h1 { letter-spacing: -1px; }
}
@media (hover:hover) {
  #adminView .btn.primary:hover, #adminView #chatSend:hover { background: linear-gradient(115deg,#f4e4ca,#e0c49d); }
  #adminView .cms-nav-link.active:hover { color: #efddbf; background: #ddc49b14; }
  #adminView .overview-project:hover, #adminView .cms-quick-actions button:hover { border-color: #ddc49b30; background: #20232a; transform: none; }
  #landingView :is(.landing-cta.primary,#landingOpenApp):hover { background: linear-gradient(115deg,#f4e4ca,#e0c49d); }
}
@media (prefers-reduced-motion:reduce) {
  #adminView *, #landingView * { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
