/* ViralPay Web UI/UX Production Polish v5.0.1
   Presentation-only layer. Applies after System UI v4 / public site CSS.
   No pricing, settlement, attribution, research, campaign, payout or authorization logic. */
:root{
  --vp5-navy-950:#07101f;
  --vp5-navy-900:#101828;
  --vp5-navy-800:#1d2939;
  --vp5-ink:#182230;
  --vp5-text:#344054;
  --vp5-muted:#667085;
  --vp5-subtle:#98a2b3;
  --vp5-line:#e4e7ec;
  --vp5-line-strong:#d0d5dd;
  --vp5-canvas:#f7f8fb;
  --vp5-surface:#ffffff;
  --vp5-purple:#6938ef;
  --vp5-magenta:#c50073;
  --vp5-orange:#f47b20;
  --vp5-green:#067647;
  --vp5-blue:#175cd3;
  --vp5-red:#b42318;
  --vp5-amber:#b54708;
  --vp5-gradient:linear-gradient(110deg,#6938ef 0%,#c50073 50%,#f47b20 100%);
  --vp5-shadow-xs:0 1px 2px rgba(16,24,40,.05);
  --vp5-shadow-sm:0 2px 8px rgba(16,24,40,.06),0 1px 2px rgba(16,24,40,.04);
  --vp5-shadow-md:0 12px 32px rgba(16,24,40,.08),0 2px 6px rgba(16,24,40,.04);
  --vp5-radius-sm:10px;
  --vp5-radius:14px;
  --vp5-radius-lg:18px;
  --vp5-focus:0 0 0 3px rgba(105,56,239,.20);
}

/* ============================================================
   AUTHENTICATED PORTALS
   ============================================================ */
html:has(body.vp3-system){background:var(--vp5-canvas)}
body.vp3-system.vp5-ready{
  background:var(--vp5-canvas)!important;
  color:var(--vp5-text)!important;
  font-size:15px!important;
  line-height:1.55!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.vp3-system.vp5-ready .vp3-app{min-height:100dvh}
body.vp3-system.vp5-ready .vp3-sidebar{
  background:linear-gradient(180deg,#08111f 0%,#101828 58%,#171126 100%)!important;
  border-right-color:rgba(255,255,255,.075)!important;
}
body.vp3-system.vp5-ready .vp3-brand{height:86px!important;padding:17px 18px 13px!important}
body.vp3-system.vp5-ready .vp3-brand-logo{width:42px!important;height:42px!important;border-radius:11px!important;padding:4px!important}
body.vp3-system.vp5-ready .vp3-brand-copy strong{font-size:18px!important;letter-spacing:-.35px!important}
body.vp3-system.vp5-ready .vp3-brand-copy small{font-size:10.5px!important;color:#b8c1ce!important}
body.vp3-system.vp5-ready .vp3-user-card{
  margin:14px 14px 12px!important;
  padding:12px!important;
  border-color:rgba(255,255,255,.09)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.055)!important;
}
body.vp3-system.vp5-ready .vp3-avatar{box-shadow:inset 0 0 0 1px rgba(255,255,255,.15),0 5px 16px rgba(105,56,239,.16)}
body.vp3-system.vp5-ready .vp3-nav-search{min-height:44px!important;margin-bottom:12px!important;border-radius:11px!important;background:#151f31!important}
body.vp3-system.vp5-ready .vp3-nav-search input{font-size:12px!important}
body.vp3-system.vp5-ready .vp3-nav-scroll{padding-inline:10px!important}
body.vp3-system.vp5-ready .vp3-nav-group+.vp3-nav-group{margin-top:16px!important}
body.vp3-system.vp5-ready .vp3-nav-group-title{padding:0 9px 7px!important;color:#98a2b3!important;font-size:9.5px!important;letter-spacing:.10em!important}
body.vp3-system.vp5-ready .vp3-nav{gap:4px!important}
body.vp3-system.vp5-ready .vp3-nav-link{min-height:48px!important;padding:8px 10px!important;border-radius:11px!important}
body.vp3-system.vp5-ready .vp3-nav-link:hover{background:rgba(255,255,255,.075)!important;transform:none!important}
body.vp3-system.vp5-ready .vp3-nav-link.is-active{
  background:linear-gradient(90deg,rgba(105,56,239,.48),rgba(197,0,115,.22))!important;
  box-shadow:inset 3px 0 0 var(--vp5-orange)!important;
}
body.vp3-system.vp5-ready .vp3-nav-icon{width:29px!important;height:29px!important;flex-basis:29px!important}
body.vp3-system.vp5-ready .vp3-nav-text strong{font-size:12px!important;font-weight:750!important}
body.vp3-system.vp5-ready .vp3-nav-text small{font-size:9px!important;line-height:1.25!important;color:#8995a6!important}
body.vp3-system.vp5-ready .vp3-nav-link.is-active .vp3-nav-text small{color:#ddd6fe!important}
body.vp3-system.vp5-ready .vp3-sidebar-footer{padding:10px 10px 12px!important}
body.vp3-system.vp5-ready .vp3-version{padding:2px 9px 0!important;font-size:9px!important;color:#8995a6!important}

body.vp3-system.vp5-ready .vp3-topbar{
  min-height:78px!important;
  padding:11px 26px!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid var(--vp5-line)!important;
  box-shadow:0 1px 0 rgba(16,24,40,.01)!important;
  backdrop-filter:blur(16px)!important;
}
body.vp3-system.vp5-ready .vp3-eyebrow{font-size:9.5px!important;letter-spacing:.10em!important;color:var(--vp5-purple)!important}
body.vp3-system.vp5-ready .vp3-page-heading h1{font-size:20px!important;line-height:1.2!important;letter-spacing:-.45px!important;color:var(--vp5-ink)!important}
body.vp3-system.vp5-ready .vp3-page-heading p{font-size:11.5px!important;line-height:1.35!important;color:var(--vp5-muted)!important;max-width:760px!important}
body.vp3-system.vp5-ready .vp3-system-status{
  padding:7px 10px!important;border-radius:999px!important;background:#ecfdf3!important;border:1px solid #abefc6!important;color:#067647!important;font-size:10px!important;font-weight:750!important
}
body.vp3-system.vp5-ready .vp3-profile-trigger{min-height:46px!important;min-width:200px!important;border-radius:12px!important;background:#fff!important}
body.vp3-system.vp5-ready .vp3-profile-trigger:hover{border-color:#c7ccd4!important;background:#fcfcfd!important}
body.vp3-system.vp5-ready .vp3-profile-menu{width:270px!important;border-radius:14px!important;border-color:var(--vp5-line)!important;box-shadow:var(--vp5-shadow-md)!important}
body.vp3-system.vp5-ready .vp3-content{padding:24px 26px 48px!important}
body.vp3-system.vp5-ready .vp3-page{width:100%!important;max-width:1580px!important;margin-inline:auto!important}

/* Page hierarchy */
body.vp3-system.vp5-ready .vp3-page :is(.vp-page-title,.head,.section-head,.vp-section-header,.vp-panel-head,.section-heading){
  min-width:0;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-page-title,.head){margin-bottom:18px!important}
body.vp3-system.vp5-ready .vp3-page :is(.vp-page-title,.head) h1,
body.vp3-system.vp5-ready .vp3-page :is(.vp-page-title,.head) h2{
  margin:0!important;
  color:var(--vp5-ink)!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-page-title,.head) p{margin:6px 0 0!important;color:var(--vp5-muted)!important;max-width:860px!important}
body.vp3-system.vp5-ready .vp3-page h1{font-size:clamp(26px,2vw,34px)!important;line-height:1.15!important;letter-spacing:-.035em!important;color:var(--vp5-ink)!important}
body.vp3-system.vp5-ready .vp3-page h2{font-size:clamp(20px,1.4vw,24px)!important;line-height:1.24!important;letter-spacing:-.025em!important;color:var(--vp5-ink)!important}
body.vp3-system.vp5-ready .vp3-page h3{font-size:17px!important;line-height:1.3!important;letter-spacing:-.012em!important;color:var(--vp5-ink)!important}
body.vp3-system.vp5-ready .vp3-page h4{font-size:15px!important;line-height:1.35!important;color:var(--vp5-ink)!important}
body.vp3-system.vp5-ready .vp3-page :is(p,li,dd){font-size:14px!important;line-height:1.55!important}
body.vp3-system.vp5-ready .vp3-page :is(.muted,[class*="muted"],.description,.hint){color:var(--vp5-muted)!important}
body.vp3-system.vp5-ready .vp3-page small{font-size:12px!important;line-height:1.45!important}

/* Surfaces: override legacy page-local visual drift without changing markup */
body.vp3-system.vp5-ready .vp3-page :is(.vp-card,.vp-panel,.card,.panel,.section,.box,.widget,.dashboard-card,.summary-card,.r-card,.a360-card,.p360-card,.sc-card,.trace-card,.report-card,.co-panel-card,.vp-inf-panel){
  border:1px solid var(--vp5-line)!important;
  border-radius:var(--vp5-radius)!important;
  background:var(--vp5-surface)!important;
  box-shadow:var(--vp5-shadow-xs)!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-card,.vp-panel,.card,.panel,.section,.dashboard-card,.summary-card,.r-card,.a360-card,.p360-card,.report-card){padding:18px!important}
body.vp3-system.vp5-ready .vp3-page :is(.vp-panel-head,.section-head,.vp-section-header){
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:14px!important;padding-bottom:12px!important;margin-bottom:14px!important;border-bottom:1px solid #eef0f3!important
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-grid,.grid,.grid-2,.grid-3,.grid-4,.vp-two,.stats,.metrics,.kpi-grid,.summary-grid,.dashboard-grid,.cards,.card-grid,.vp-kpis){gap:16px!important}

/* KPI / statistic cards */
body.vp3-system.vp5-ready .vp3-page :is(.vp-kpi,.stat,.metric,.vp-stat,.ag360-kpi,.vpud-kpi,.vpui-kpi,.vpa-kpi,.sc-stat){
  min-height:112px!important;
  padding:16px 17px!important;
  border:1px solid var(--vp5-line)!important;
  border-radius:var(--vp5-radius)!important;
  background:#fff!important;
  box-shadow:var(--vp5-shadow-xs)!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-kpi-label,.stat span,.metric span,[class*="kpi-label"]){font-size:11px!important;font-weight:750!important;letter-spacing:.025em!important;color:var(--vp5-muted)!important;text-transform:none!important}
body.vp3-system.vp5-ready .vp3-page :is(.vp-kpi-value,.stat strong,.metric strong,[class*="kpi-value"]){font-size:clamp(23px,2vw,30px)!important;line-height:1.12!important;letter-spacing:-.035em!important;color:var(--vp5-ink)!important;font-variant-numeric:tabular-nums!important}
body.vp3-system.vp5-ready .vp3-page :is(.money,.vp-money,.ag360-money,[class*="money"]){font-variant-numeric:tabular-nums!important}

/* Forms */
body.vp3-system.vp5-ready .vp3-page form{min-width:0}
body.vp3-system.vp5-ready .vp3-page :is(.field,.vp-field,[class$="-field"],.form-group){min-width:0!important}
body.vp3-system.vp5-ready .vp3-page label{display:inline-block;font-size:12.5px!important;line-height:1.35!important;font-weight:750!important;color:var(--vp5-text)!important;margin-bottom:6px}
body.vp3-system.vp5-ready .vp3-page :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea,.form-control,.form-select,[class$="-input"],[class*="-input "]){
  width:100%;min-height:44px!important;padding:10px 12px!important;border:1px solid var(--vp5-line-strong)!important;border-radius:10px!important;background:#fff!important;color:var(--vp5-ink)!important;font-size:13.5px!important;line-height:1.35!important;box-shadow:var(--vp5-shadow-xs)!important;outline:none!important
}
body.vp3-system.vp5-ready .vp3-page textarea{min-height:112px!important;resize:vertical!important}
body.vp3-system.vp5-ready .vp3-page :is(input,select,textarea)::placeholder{color:#98a2b3!important;opacity:1!important}
body.vp3-system.vp5-ready .vp3-page :is(input,select,textarea):focus{border-color:#8b5cf6!important;box-shadow:var(--vp5-focus)!important}
body.vp3-system.vp5-ready .vp3-page :is(input,select,textarea)[aria-invalid="true"],
body.vp3-system.vp5-ready .vp3-page :is(input,select,textarea).is-invalid{border-color:#f04438!important;box-shadow:0 0 0 3px rgba(240,68,56,.12)!important}
body.vp3-system.vp5-ready .vp3-page :is(input,select,textarea):disabled{background:#f9fafb!important;color:#667085!important;cursor:not-allowed!important;opacity:1!important}
body.vp3-system.vp5-ready .vp3-page input[type="checkbox"],
body.vp3-system.vp5-ready .vp3-page input[type="radio"]{width:18px!important;height:18px!important;accent-color:var(--vp5-purple)!important}
body.vp3-system.vp5-ready .vp3-page :is(.form-grid,.fields,.field-grid,.filter-grid,.onboarding-form-grid){gap:16px!important}
body.vp3-system.vp5-ready .vp3-page :is(.help,.hint,.form-text,.description){font-size:11.5px!important;color:var(--vp5-muted)!important}

/* Buttons and actions */
body.vp3-system.vp5-ready .vp3-page :is(.btn,.vp-btn,.button,button:not(.vp3-menu):not(.vp3-profile-trigger):not(.vp3-overlay),input[type="submit"],input[type="button"],[role="button"]){
  appearance:none!important;min-height:42px!important;min-width:42px;border-radius:10px!important;padding:9px 13px!important;font-size:12px!important;font-weight:750!important;line-height:1.15!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;text-decoration:none!important;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease,transform .15s ease!important
}
body.vp3-system.vp5-ready .vp3-page :is(.btn,.vp-btn,.button):hover{transform:translateY(-1px)!important}
body.vp3-system.vp5-ready .vp3-page :is(.primary,.btn-primary,.vp-btn-primary,.button-gradient,[class*="btn-primary"]),
body.vp3-system.vp5-ready .vp3-page button[type="submit"]:not(.danger):not(.btn-danger){background:var(--vp5-gradient)!important;border-color:transparent!important;color:#fff!important;box-shadow:0 1px 2px rgba(16,24,40,.10)!important}
body.vp3-system.vp5-ready .vp3-page :is(.btn-light,.vp-btn-light,.vp-btn-secondary,.button-outline){background:#fff!important;border:1px solid var(--vp5-line-strong)!important;color:var(--vp5-text)!important}
body.vp3-system.vp5-ready .vp3-page :is(.danger,.btn-danger,[class*="btn-danger"]){background:#fff!important;border:1px solid #fda29b!important;color:var(--vp5-red)!important}
body.vp3-system.vp5-ready .vp3-page :is(.actions,.vp-actions,[class*="actions"]){display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:9px!important;flex-wrap:wrap!important}
body.vp3-system.vp5-ready :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid transparent!important;box-shadow:var(--vp5-focus)!important}

/* Filters */
body.vp3-system.vp5-ready .vp3-page :is(.filters,.filter-bar,[class*="filters"]){
  display:flex!important;align-items:flex-end!important;gap:10px!important;flex-wrap:wrap!important;padding:14px!important;border:1px solid var(--vp5-line)!important;border-radius:var(--vp5-radius)!important;background:#fff!important;box-shadow:var(--vp5-shadow-xs)!important
}

/* Tables */
body.vp3-system.vp5-ready .vp5-table-frame,
body.vp3-system.vp5-ready .vp3-table-scroll,
body.vp3-system.vp5-ready .table-wrap,
body.vp3-system.vp5-ready [class*="table-wrap"]{
  max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--vp5-line)!important;border-radius:var(--vp5-radius)!important;background:#fff!important;box-shadow:var(--vp5-shadow-xs)!important
}
body.vp3-system.vp5-ready .vp3-page table{width:100%!important;border-collapse:separate!important;border-spacing:0!important;background:#fff!important;font-size:12.5px!important}
body.vp3-system.vp5-ready .vp3-page table thead th{
  position:sticky;top:0;z-index:2;padding:12px 12px!important;border-bottom:1px solid var(--vp5-line)!important;background:#f9fafb!important;color:#475467!important;font-size:10.5px!important;font-weight:800!important;letter-spacing:.05em!important;text-transform:uppercase!important;white-space:nowrap!important
}
body.vp3-system.vp5-ready .vp3-page table tbody td{padding:12px!important;border-bottom:1px solid #eef0f3!important;background:#fff!important;color:var(--vp5-text)!important;font-size:12.5px!important;line-height:1.4!important;vertical-align:middle!important}
body.vp3-system.vp5-ready .vp3-page table tbody tr:hover td{background:#fcfcfd!important}
body.vp3-system.vp5-ready .vp3-page table tbody tr:last-child td{border-bottom:0!important}
body.vp3-system.vp5-ready .vp5-table-frame:focus-visible{outline:2px solid transparent;box-shadow:var(--vp5-focus)!important}

/* Status and feedback */
body.vp3-system.vp5-ready .vp3-page :is(.badge,.status,.vp-status,.pill,.chip,[class$="-badge"],[class*="badge-"],[class$="-status"],[class*="status-badge"]){
  display:inline-flex!important;align-items:center!important;width:max-content;max-width:100%;gap:5px!important;padding:5px 8px!important;border-radius:999px!important;border:1px solid var(--vp5-line)!important;background:#f9fafb!important;color:#475467!important;font-size:10.5px!important;font-weight:750!important;line-height:1.15!important;white-space:nowrap!important;text-transform:none!important
}
body.vp3-system.vp5-ready .vp3-page :is(.success,.approved,.active,.good){background:#ecfdf3!important;border-color:#abefc6!important;color:#067647!important}
body.vp3-system.vp5-ready .vp3-page :is(.warning,.pending,.held){background:#fffaeb!important;border-color:#fedf89!important;color:#b54708!important}
body.vp3-system.vp5-ready .vp3-page :is(.rejected,.failed,.red,.danger){border-color:#fecdca!important;color:#b42318!important}
body.vp3-system.vp5-ready .vp3-page :is(.info,.blue){background:#eff8ff!important;border-color:#b2ddff!important;color:#175cd3!important}
body.vp3-system.vp5-ready :is(.vp3-alert,.vp3-page .alert,.vp3-page .notice,.vp3-page [class*="alert"]){padding:12px 14px!important;border-radius:11px!important;font-size:12.5px!important;box-shadow:none!important}
body.vp3-system.vp5-ready .vp3-page :is(.empty,.vp-empty,.empty-state,.no-results,[class*="empty"]){min-height:150px!important;padding:28px 20px!important;border:1px dashed var(--vp5-line-strong)!important;border-radius:var(--vp5-radius)!important;background:#fcfcfd!important;color:var(--vp5-muted)!important;text-align:center!important}

/* Managed advertiser context is operationally important and must stay obvious. */
body.vp3-system.vp5-ready .vp3-managed-context{
  max-width:1580px!important;margin:0 auto 16px!important;padding:13px 15px!important;border:1px solid #d6bbfb!important;border-left:4px solid var(--vp5-purple)!important;border-radius:12px!important;background:linear-gradient(100deg,#f9f5ff 0%,#fff 58%,#fff7ed 100%)!important;box-shadow:var(--vp5-shadow-xs)!important
}
body.vp3-system.vp5-ready .vp3-managed-context-label{font-size:9px!important}
body.vp3-system.vp5-ready .vp3-managed-context-title{font-size:11.5px!important}
body.vp3-system.vp5-ready .vp3-managed-context-title strong{font-size:13px!important}
body.vp3-system.vp5-ready .vp3-managed-return{min-height:40px!important;padding:9px 12px!important;border-radius:10px!important;font-size:11px!important}

/* Tabs and pagination */
body.vp3-system.vp5-ready .vp3-page :is(.tabs,.vp-tabs,[class*="tabs"]){gap:4px!important;overflow:auto!important;border-bottom:1px solid var(--vp5-line)!important;scrollbar-width:thin}
body.vp3-system.vp5-ready .vp3-page :is(.tab,.vp-tab,[class*="tab"]){min-height:40px!important;padding:9px 12px!important;border-radius:9px 9px 0 0!important;font-size:12px!important;font-weight:700!important;white-space:nowrap!important}
body.vp3-system.vp5-ready .vp3-page .pagination{gap:6px!important;margin-top:16px!important}
body.vp3-system.vp5-ready .vp3-page .pagination :is(a,span){min-width:36px!important;height:36px!important;border-radius:9px!important;font-size:11px!important}

/* Dialogs */
body.vp3-system.vp5-ready .vp3-page :is(dialog,.modal,.vp-dialog,[class*="dialog"]){border:1px solid var(--vp5-line)!important;border-radius:16px!important;background:#fff!important;color:var(--vp5-text)!important;box-shadow:0 28px 80px rgba(16,24,40,.20)!important}
body.vp3-system.vp5-ready .vp3-page dialog::backdrop{background:rgba(16,24,40,.52)!important;backdrop-filter:blur(2px)}

/* Charts/media */
body.vp3-system.vp5-ready .vp3-page :is(canvas,svg,img){max-width:100%}
body.vp3-system.vp5-ready .vp3-page :is(.chart,.chart-card,[class*="chart"]){min-width:0}

/* ============================================================
   PUBLIC WEBSITE / AUTH / ONBOARDING
   ============================================================ */
body.vp5-public-ready{
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
body.vp5-public-ready .shell{width:min(1240px,calc(100% - 44px))}
body.vp5-public-ready .site-header{height:80px;background:rgba(7,13,25,.92);border-bottom-color:rgba(255,255,255,.09)}
body.vp5-public-ready .brand img{width:178px;height:58px}
body.vp5-public-ready .main-nav{gap:15px;font-size:12px}
body.vp5-public-ready .main-nav>a{min-height:40px;display:inline-flex;align-items:center}
body.vp5-public-ready .main-nav .nav-join,
body.vp5-public-ready .main-nav .nav-signin{padding:9px 13px;border-radius:10px}
body.vp5-public-ready .hero{padding-block:88px 82px}
body.vp5-public-ready :is(.hero h1,.page-hero h1){font-size:clamp(46px,5.4vw,72px);line-height:1.02;letter-spacing:-.055em}
body.vp5-public-ready :is(.hero-copy>p,.page-hero p){font-size:16px;line-height:1.65;color:#b2bccb}
body.vp5-public-ready .button{min-height:46px;padding:12px 18px;border-radius:11px;font-size:13px}
body.vp5-public-ready .button:focus-visible,
body.vp5-public-ready .main-nav a:focus-visible,
body.vp5-public-ready :is(input,select,textarea,button):focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px rgba(245,0,136,.28)}
body.vp5-public-ready :is(.onboarding-role-card,.onboarding-form-card,.audience-card,.app-showcase-card,.public-how-card,.trust-card){box-shadow:0 18px 46px rgba(0,0,0,.16)}
body.vp5-public-ready .onboarding-form-grid :is(input:not([type="checkbox"]),select,textarea){min-height:46px;font-size:14px;padding:11px 13px}
body.vp5-public-ready .onboarding-form-grid label{font-size:12px;line-height:1.4}
body.vp5-public-ready .site-footer{border-top:1px solid rgba(255,255,255,.08)}
body.vp5-public-ready .site-footer a{min-height:30px;display:flex;align-items:center}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1240px){
  body.vp3-system.vp5-ready .vp3-content{padding:20px!important}
  body.vp3-system.vp5-ready .vp3-page :is(.grid-4,.vp-kpis,.stats,.metrics,.kpi-grid,.summary-grid){grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.vp5-public-ready .main-nav{gap:11px;font-size:11.5px}
}
@media(max-width:1040px){
  body.vp5-public-ready .nav-toggle{display:block;min-width:44px;min-height:44px;border-radius:10px}
  body.vp5-public-ready .main-nav{position:absolute;top:80px;left:22px;right:22px;display:none;flex-direction:column;align-items:stretch;gap:3px;padding:14px;border:1px solid rgba(255,255,255,.11);border-radius:16px;background:#0b1425;box-shadow:0 24px 70px rgba(0,0,0,.35)}
  body.vp5-public-ready .main-nav.open{display:flex}
  body.vp5-public-ready .main-nav>a{min-height:44px;padding:8px 10px;border-radius:9px}
  body.vp5-public-ready .main-nav>a:hover{background:rgba(255,255,255,.05)}
}
@media(max-width:920px){
  body.vp3-system.vp5-ready .vp3-topbar{min-height:70px!important;padding:9px 14px!important}
  body.vp3-system.vp5-ready .vp3-menu{width:44px!important;height:44px!important}
  body.vp3-system.vp5-ready .vp3-content{padding:16px 14px 34px!important}
  body.vp3-system.vp5-ready .vp3-page :is(.grid-3,.grid-4){grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){
  body.vp3-system.vp5-ready .vp3-topbar{align-items:center!important;min-height:66px!important}
  body.vp3-system.vp5-ready .vp3-page-heading h1{font-size:16px!important;max-width:58vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.vp3-system.vp5-ready .vp3-page-heading p{display:none!important}
  body.vp3-system.vp5-ready .vp3-profile-trigger{min-width:auto!important;border:0!important;padding:0!important}
  body.vp3-system.vp5-ready .vp3-profile-copy{display:none!important}
  body.vp3-system.vp5-ready .vp3-content{padding:12px 10px 30px!important}
  body.vp3-system.vp5-ready .vp3-page :is(.grid,.grid-2,.grid-3,.grid-4,.vp-two,.vp-grid,.vp-kpis,.stats,.metrics,.kpi-grid,.summary-grid,.dashboard-grid,.cards,.card-grid){grid-template-columns:1fr!important}
  body.vp3-system.vp5-ready .vp3-page :is(.vp-card,.vp-panel,.card,.panel,.section,.dashboard-card,.summary-card,.r-card,.a360-card,.p360-card,.report-card){padding:15px!important}
  body.vp3-system.vp5-ready .vp3-page :is(.actions,.vp-actions,[class*="actions"]){justify-content:stretch!important}
  body.vp3-system.vp5-ready .vp3-page :is(.actions,.vp-actions,[class*="actions"]) > :is(a,button,.btn,.vp-btn,.button){flex:1 1 145px!important}
  body.vp3-system.vp5-ready .vp3-managed-context{align-items:stretch!important;flex-direction:column!important}
  body.vp3-system.vp5-ready .vp3-managed-context-action,
  body.vp3-system.vp5-ready .vp3-managed-return{width:100%!important}
  body.vp3-system.vp5-ready .vp5-card-table thead{display:none!important}
  body.vp3-system.vp5-ready .vp5-card-table,
  body.vp3-system.vp5-ready .vp5-card-table tbody,
  body.vp3-system.vp5-ready .vp5-card-table tr,
  body.vp3-system.vp5-ready .vp5-card-table td{display:block!important;width:100%!important;min-width:0!important}
  body.vp3-system.vp5-ready .vp5-card-table{min-width:0!important;background:transparent!important}
  body.vp3-system.vp5-ready .vp5-card-table tbody{display:grid!important;gap:10px!important;padding:1px!important}
  body.vp3-system.vp5-ready .vp5-card-table tr{overflow:hidden!important;border:1px solid var(--vp5-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--vp5-shadow-xs)!important}
  body.vp3-system.vp5-ready .vp5-card-table td{display:grid!important;grid-template-columns:minmax(105px,38%) 1fr!important;gap:10px!important;align-items:start!important;padding:10px 12px!important;border-bottom:1px solid #eef0f3!important;text-align:left!important;white-space:normal!important;overflow-wrap:anywhere!important}
  body.vp3-system.vp5-ready .vp5-card-table td::before{content:attr(data-vp5-label);color:var(--vp5-muted);font-size:10px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
  body.vp3-system.vp5-ready .vp5-card-table td:last-child{border-bottom:0!important}
  body.vp3-system.vp5-ready .vp5-card-table td[colspan]{display:block!important;text-align:center!important}
  body.vp3-system.vp5-ready .vp5-card-table td[colspan]::before{display:none!important}
  body.vp5-public-ready .shell{width:min(100% - 28px,1240px)}
  body.vp5-public-ready .hero{padding-block:66px 58px}
  body.vp5-public-ready :is(.hero h1,.page-hero h1){font-size:clamp(38px,12vw,52px)}
  body.vp5-public-ready :is(.hero-copy>p,.page-hero p){font-size:15px}
  body.vp5-public-ready .hero-actions{align-items:stretch}
  body.vp5-public-ready .hero-actions .button{flex:1 1 100%}
}
@media(max-width:420px){
  body.vp3-system.vp5-ready .vp3-page :is(.vp-kpi-value,.stat strong,.metric strong,[class*="kpi-value"]){font-size:24px!important}
  body.vp3-system.vp5-ready .vp3-page :is(.actions,.vp-actions,[class*="actions"]) > :is(a,button,.btn,.vp-btn,.button){flex-basis:100%!important}
  body.vp3-system.vp5-ready .vp5-card-table td{grid-template-columns:1fr!important;gap:4px!important}
}

/* Motion / printing / high contrast */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media print{
  body.vp3-system.vp5-ready .vp3-sidebar,
  body.vp3-system.vp5-ready .vp3-topbar,
  body.vp3-system.vp5-ready .vp3-overlay,
  body.vp3-system.vp5-ready .vp5-skip-link{display:none!important}
  body.vp3-system.vp5-ready .vp3-app{display:block!important}
  body.vp3-system.vp5-ready .vp3-content{padding:0!important}
  body.vp3-system.vp5-ready .vp3-page{max-width:none!important}
  body.vp3-system.vp5-ready .vp3-page :is(.vp-card,.vp-panel,.card,.panel,.section){box-shadow:none!important;break-inside:avoid}
}

/* ============================================================
   STANDALONE USER-FACING FLOWS
   Invitation, login, public survey/viewer and creator registration pages
   ============================================================ */
body.vp5-standalone-ready{
  margin:0!important;
  min-height:100dvh!important;
  background:
    radial-gradient(circle at 8% 8%,rgba(105,56,239,.10),transparent 26%),
    radial-gradient(circle at 94% 92%,rgba(244,123,32,.10),transparent 28%),
    #f6f7fb!important;
  color:var(--vp5-text)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.vp5-standalone-ready :is(.card,.login-shell,.form-card,.survey-card,.viewer-card,.page-card){
  border-color:var(--vp5-line)!important;
  border-radius:18px!important;
  box-shadow:var(--vp5-shadow-md)!important;
}
body.vp5-standalone-ready :is(.brand,.logo,.brand-copy strong){letter-spacing:-.025em!important}
body.vp5-standalone-ready :is(h1,h2,h3){color:var(--vp5-ink);letter-spacing:-.025em}
body.vp5-standalone-ready :is(.muted,.intro p,.description,.hint){color:var(--vp5-muted)!important}
body.vp5-standalone-ready label{font-size:13px!important;font-weight:750!important;color:var(--vp5-text)!important}
body.vp5-standalone-ready :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea){
  min-height:46px!important;border:1px solid var(--vp5-line-strong)!important;border-radius:10px!important;background:#fff!important;color:var(--vp5-ink)!important;font-size:14px!important;padding:11px 13px!important;outline:none!important
}
body.vp5-standalone-ready textarea{min-height:112px!important;resize:vertical!important}
body.vp5-standalone-ready :is(input,select,textarea):focus{border-color:#8b5cf6!important;box-shadow:var(--vp5-focus)!important}
body.vp5-standalone-ready :is(button,.btn,.button,[role="button"]){min-height:46px!important;border-radius:10px!important;font-size:13px!important;font-weight:800!important}
body.vp5-standalone-ready button[type="submit"],
body.vp5-standalone-ready .btn:not(.secondary):not(.danger){background:var(--vp5-gradient)!important;border-color:transparent!important;color:#fff!important}
body.vp5-standalone-ready :is(.error,.errors,.alert.error,.alert-danger){border:1px solid #fecdca!important;border-radius:10px!important;background:#fef3f2!important;color:#b42318!important}
body.vp5-standalone-ready :is(.info,.alert.info){border:1px solid #b2ddff!important;border-radius:10px!important;background:#eff8ff!important;color:#175cd3!important}
body.vp5-standalone-ready :is(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid transparent!important;box-shadow:var(--vp5-focus)!important}
body.vp5-standalone-ready .vp5-standalone-brand{
  position:fixed;left:18px;top:16px;z-index:1000;display:inline-flex;align-items:center;gap:8px;padding:7px 10px;border:1px solid rgba(16,24,40,.08);border-radius:10px;background:rgba(255,255,255,.92);box-shadow:var(--vp5-shadow-xs);color:var(--vp5-ink);font-size:12px;font-weight:800;text-decoration:none;backdrop-filter:blur(12px)
}
body.vp5-standalone-ready .vp5-standalone-brand::before{content:"V";width:24px;height:24px;display:grid;place-items:center;border-radius:7px;background:var(--vp5-gradient);color:#fff;font-size:11px;font-weight:900}
@media(max-width:800px){
  body.vp5-standalone-ready{padding-inline:0!important}
  body.vp5-standalone-ready :is(.page-shell,.wrap){width:min(100% - 24px,960px)!important;padding-inline:0!important}
  body.vp5-standalone-ready .login-shell{grid-template-columns:1fr!important;width:min(100% - 24px,640px)!important}
  body.vp5-standalone-ready .login-shell :is(.intro,.form-side){padding:28px!important}
  body.vp5-standalone-ready .intro h1{margin-top:26px!important}
  body.vp5-standalone-ready .vp5-standalone-brand{position:absolute;left:12px;top:10px}
}

/* ============================================================
   v5.0.1 VISUAL REPAIR
   Fixes v3 substring-selector leakage and restores clean hierarchy.
   ============================================================ */
body.vp3-system.vp5-ready{
  --vp5-canvas:#f5f7fb;
}
body.vp3-system.vp5-ready .vp3-app{
  grid-template-columns:258px minmax(0,1fr);
}
body.vp3-system.vp5-ready .vp3-topbar{
  min-height:68px!important;
  padding:9px 22px!important;
}
body.vp3-system.vp5-ready .vp3-page-heading h1{
  font-size:17px!important;
}
body.vp3-system.vp5-ready .vp3-page-heading p{
  font-size:11px!important;
}
body.vp3-system.vp5-ready .vp3-content{
  padding:22px 24px 42px!important;
}
body.vp3-system.vp5-ready .vp3-page{
  max-width:1460px!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp2-page-header,.vp-inf-heading,.vp-page-title,.head){
  margin-bottom:16px!important;
}
body.vp3-system.vp5-ready .vp3-page .vp5-heading-deduped{
  min-height:42px;
  align-items:center!important;
  justify-content:flex-end!important;
  margin-bottom:12px!important;
}
body.vp3-system.vp5-ready .vp3-page .vp5-heading-deduped > :first-child{
  display:none!important;
}

/* v2-era dashboard components rendered inside the v3 shell */
body.vp3-system.vp5-ready .vp3-page .vp2-command-kpis{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:14px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.vp3-system.vp5-ready .vp3-page .vp2-stat{
  position:relative!important;
  min-height:104px!important;
  padding:16px 17px!important;
  overflow:hidden!important;
  border:1px solid #e3e7ee!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(16,24,40,.055)!important;
}
body.vp3-system.vp5-ready .vp3-page .vp2-stat::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg,#6938ef 0%,#c50073 55%,#f47b20 100%);
  opacity:.82;
}
body.vp3-system.vp5-ready .vp3-page .vp2-stat-label{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#667085!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.045em!important;
  text-transform:uppercase!important;
}
body.vp3-system.vp5-ready .vp3-page .vp2-stat-value{
  margin:8px 0 0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#182230!important;
  font-size:clamp(22px,1.7vw,28px)!important;
  font-weight:850!important;
  line-height:1.1!important;
  letter-spacing:-.035em!important;
}
body.vp3-system.vp5-ready .vp3-page .vp2-stat .vp2-help{
  margin-top:7px!important;
  color:#667085!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}

/* Creator/influencer KPI cards */
body.vp3-system.vp5-ready .vp3-page .vp-inf-stats{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  gap:14px!important;
}
body.vp3-system.vp5-ready .vp3-page .vp-inf-stat{
  min-height:116px!important;
  padding:17px 18px!important;
  border:1px solid #e3e7ee!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 3px 12px rgba(16,24,40,.05)!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-inf-stat-label,.vp-inf-stat-value,.vp-inf-stat-note){
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  min-height:0!important;
}
body.vp3-system.vp5-ready .vp3-page .vp-inf-stat-label{
  color:#667085!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.045em!important;
}
body.vp3-system.vp5-ready .vp3-page .vp-inf-stat-value{
  margin-top:8px!important;
  color:#182230!important;
  font-size:27px!important;
  line-height:1.1!important;
}
body.vp3-system.vp5-ready .vp3-page .vp-inf-stat-note{
  margin-top:7px!important;
  color:#667085!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
body.vp3-system.vp5-ready .vp3-page .vp-inf-stat-accent{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  min-height:0!important;
}

/* Explicitly keep layout containers visually neutral. */
body.vp3-system.vp5-ready .vp3-page :is(
  [class$="-kpis"],
  [class$="-stats"],
  [class$="-metrics"],
  [class*="kpi-grid"],
  [class*="stat-grid"],
  [class*="metric-grid"]
){
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}

/* Status messages are messages, not pill badges. */
body.vp3-system.vp5-ready .vp3-page .vp-status-message{
  display:block!important;
  width:auto!important;
  padding:10px 12px!important;
  border-radius:10px!important;
  white-space:normal!important;
}

/* Cleaner data density */
body.vp3-system.vp5-ready .vp3-page table thead th{
  padding:11px 12px!important;
}
body.vp3-system.vp5-ready .vp3-page table tbody td{
  padding:11px 12px!important;
}
body.vp3-system.vp5-ready .vp3-page :is(.vp-card,.vp-panel,.card,.panel,.section,.dashboard-card,.summary-card,.r-card,.a360-card,.p360-card,.report-card){
  box-shadow:0 2px 10px rgba(16,24,40,.045)!important;
}
@media(max-width:1320px){
  body.vp3-system.vp5-ready .vp3-page .vp2-command-kpis{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:920px){
  body.vp3-system.vp5-ready .vp3-app{
    display:block!important;
  }
  body.vp3-system.vp5-ready .vp3-page .vp2-command-kpis{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:620px){
  body.vp3-system.vp5-ready .vp3-page .vp2-command-kpis{
    grid-template-columns:1fr!important;
  }
}
