/* ROASORA_BRAND_V1 -- design system: tokens, typography, shell and components.
   Loaded after every legacy style and after roasora-legacy-dark.css (generated).
   Change colors here through the tokens; avoid new hard-coded hex values. */

/* fonts: ./roasora-fonts.css (imported) */
@import url("./roasora-fonts.css");

/* ---------------------------------------------------------------- tokens */
:root{
  color-scheme:dark;
  --rx-bg-0:#04060f;
  --rx-bg-1:#070b1f;
  --rx-bg-2:#0b1230;
  --rx-surface:rgba(18,27,66,.62);
  --rx-surface-2:rgba(26,37,88,.66);
  --rx-surface-solid:#0c1434;
  --rx-surface-hover:rgba(34,48,112,.72);
  --rx-field:rgba(6,10,30,.72);
  --rx-border:rgba(128,148,255,.17);
  --rx-border-strong:rgba(120,142,255,.38);
  --rx-text:#f3f5ff;
  --rx-text-2:#b3bde0;
  --rx-text-3:#7f8bb4;
  --rx-blue:#3b6cff;
  --rx-blue-bright:#38bdf8;
  --rx-violet:#7c5cff;
  --rx-purple:#a855f7;
  --rx-cyan:#22d3ee;
  --rx-success:#34d399;
  --rx-warning:#fbbf24;
  --rx-danger:#f87171;
  --rx-grad:linear-gradient(135deg,#2f6bff 0%,#5a5cff 55%,#8b4dff 100%);
  --rx-grad-text:linear-gradient(90deg,#8fb4ff 0%,#a78bfa 60%,#c084fc 100%);
  --rx-glow:0 10px 30px -6px rgba(59,108,255,.55),0 0 0 1px rgba(140,160,255,.35);
  --rx-glow-soft:0 0 0 1px rgba(140,160,255,.10),0 18px 40px -18px rgba(0,0,0,.65);
  --rx-edge:inset 0 1px 0 rgba(255,255,255,.07);
  --rx-radius:18px;
  --rx-radius-md:14px;
  --rx-radius-sm:10px;
  --rx-font:"Manrope",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Noto Sans",Arial,sans-serif;
  --rx-font-display:"Unbounded","Manrope",ui-sans-serif,system-ui,sans-serif;
  --rx-ease:cubic-bezier(.2,.7,.2,1);
  /* semantic status: text / background / border */
  --rx-ok-fg:#6ee7b7;   --rx-ok-bg:rgba(16,185,129,.14);  --rx-ok-bd:rgba(52,211,153,.38);
  --rx-info-fg:#7dd3fc; --rx-info-bg:rgba(56,189,248,.12); --rx-info-bd:rgba(56,189,248,.36);
  --rx-ai-fg:#c4b5fd;   --rx-ai-bg:rgba(139,92,246,.16);  --rx-ai-bd:rgba(167,139,250,.40);
  --rx-warn-fg:#fcd34d; --rx-warn-bg:rgba(245,158,11,.13); --rx-warn-bd:rgba(251,191,36,.40);
  --rx-bad-fg:#fca5a5;  --rx-bad-bg:rgba(239,68,68,.13);  --rx-bad-bd:rgba(248,113,113,.40);
  --rx-mute-fg:#a7b2d6; --rx-mute-bg:rgba(100,116,170,.14); --rx-mute-bd:rgba(148,163,210,.28);
  --rx-space-1:4px;--rx-space-2:8px;--rx-space-3:12px;--rx-space-4:16px;--rx-space-5:24px;
}

/* ---------------------------------------------------------------- base & atmosphere */
html{background:var(--rx-bg-0)}
body{
  font-family:var(--rx-font)!important;
  color:var(--rx-text)!important;
  background:
    radial-gradient(1100px 620px at 82% -12%,rgba(59,108,255,.30),transparent 62%),
    radial-gradient(900px 640px at -8% 108%,rgba(124,92,255,.24),transparent 60%),
    radial-gradient(700px 420px at 45% 120%,rgba(56,189,248,.10),transparent 60%),
    linear-gradient(180deg,#070b1f 0%,#04060f 100%)!important;
  background-attachment:fixed!important;
  -webkit-font-smoothing:antialiased;
}
::selection{background:rgba(91,124,255,.45);color:#fff}
a{color:#8fb4ff}
a:hover{color:#b9cdff}
*{scrollbar-color:rgba(120,140,255,.35) transparent;scrollbar-width:thin}
::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:rgba(120,140,255,.28);border-radius:10px;border:2px solid transparent;background-clip:padding-box}
::-webkit-scrollbar-track{background:transparent}
hr{border-color:var(--rx-border)}

/* ---------------------------------------------------------------- logo */
.rx-logo{display:block;height:26px;width:auto;max-width:100%}
.rx-logo-symbol{display:block;width:34px;height:34px}
.sidebar .logo{margin:0 6px 30px!important;padding:2px 0;font-size:0!important;line-height:0;display:flex!important;align-items:center;gap:10px}
.sidebar .logo .rx-logo-symbol{width:36px;height:36px;filter:drop-shadow(0 0 14px rgba(80,110,255,.6))}
.sidebar .logo .rx-logo{height:17px;filter:drop-shadow(0 0 10px rgba(120,140,255,.35))}

/* ---------------------------------------------------------------- app shell */
.sidebar{
  background:linear-gradient(180deg,rgba(13,20,52,.88) 0%,rgba(7,11,30,.92) 100%)!important;
  border-right:1px solid var(--rx-border);
  box-shadow:inset -1px 0 0 rgba(255,255,255,.02),12px 0 40px -20px rgba(0,0,0,.8);
  -webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);
  padding:24px 14px!important;
  z-index:30;
}
.menu-item{
  display:flex;align-items:center;gap:12px;
  padding:11px 14px!important;margin-bottom:4px!important;border-radius:12px!important;
  color:var(--rx-text-2)!important;font-weight:600;font-size:14.5px;letter-spacing:.005em;
  background:transparent!important;border:1px solid transparent;
  transition:background .18s var(--rx-ease),color .18s var(--rx-ease),box-shadow .18s var(--rx-ease),transform .18s var(--rx-ease);
}
.menu-item::before{
  content:"";flex:none;width:18px;height:18px;background:currentColor;opacity:.9;
  -webkit-mask:var(--rx-icon) center/contain no-repeat;mask:var(--rx-icon) center/contain no-repeat;
}
.menu-item:hover{background:rgba(80,100,230,.13)!important;color:#fff!important;border-color:rgba(130,150,255,.12)}
.menu-item.active{
  background:var(--rx-grad)!important;color:#fff!important;
  box-shadow:0 10px 28px -8px rgba(59,108,255,.75),inset 0 1px 0 rgba(255,255,255,.28)!important;
  border-color:rgba(160,180,255,.45);
}
.menu-item.active::before{opacity:1}
/* gates (e.g. the Sales Office) hide items inline -- never override that */
.menu-item[style*="display: none"],.menu-item[style*="display:none"]{display:none!important}
.menu-item[data-side="home"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-6h-6v6H4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E")}
.menu-item[data-side="clients"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='14' rx='3'/%3E%3Cpath d='M3 9h18M8 21h8'/%3E%3C/svg%3E")}
.menu-item[data-side="reports"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round'%3E%3Cpath d='M5 20v-6M10 20V9M15 20v-9M20 20V4'/%3E%3C/svg%3E")}
.menu-item[data-side="sales"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5'/%3E%3Ccircle cx='17.5' cy='9' r='2.6'/%3E%3Cpath d='M17 14.5c2.4.2 4 1.8 4.6 4.5'/%3E%3C/svg%3E")}
.menu-item[data-side="operator"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12a8 8 0 0 1-11.6 7.1L4 20l1-4.6A8 8 0 1 1 21 12z'/%3E%3Cpath d='M9 10h.01M12 10h.01M15 10h.01'/%3E%3Cpath d='M9 14c.8.7 1.8 1 3 1s2.2-.3 3-1'/%3E%3C/svg%3E")}
.menu-item[data-side="ads"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12c0-3.4 1.6-6 3.6-6 3.4 0 5.6 12 9.4 12 2.6 0 4-2.8 4-6s-1.4-6-4-6c-3.8 0-6 12-9.4 12-2 0-3.6-2.6-3.6-6z'/%3E%3C/svg%3E")}
.menu-item[data-side="strategy"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M11 2.5l1.9 5.6 5.6 1.9-5.6 1.9L11 17.5l-1.9-5.6L3.5 10l5.6-1.9zM18.5 14.5l.9 2.6 2.6.9-2.6.9-.9 2.6-.9-2.6-2.6-.9 2.6-.9z'/%3E%3C/svg%3E")}
.menu-item[data-side="pricing"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Ccircle cx='7.5' cy='7.5' r='1.6'/%3E%3C/svg%3E")}
.menu-item[data-side="settings"]{--rx-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z'/%3E%3C/svg%3E")}
.menu-preview-dot{background:var(--rx-blue-bright)!important;box-shadow:0 0 10px var(--rx-blue-bright)}

.sidebar-bottom{
  left:14px!important;right:14px!important;bottom:18px!important;
  color:var(--rx-text-3)!important;font-size:11.5px;
  padding:12px;border-radius:var(--rx-radius-md);
  background:rgba(10,16,44,.6);border:1px solid var(--rx-border);
}
.sidebar-bottom .button{border-radius:9px!important}

.content{background:transparent!important}
.topbar{margin-bottom:24px!important}
.title h1,.app-page>h1,.page-title{
  font-family:var(--rx-font-display)!important;font-weight:600!important;
  font-size:26px!important;letter-spacing:-.01em;color:var(--rx-text)!important;
}
.title p{color:var(--rx-text-2)!important}
h1,h2,h3,h4{color:var(--rx-text)}
h2,h3{letter-spacing:-.005em}

/* ---------------------------------------------------------------- glass cards */
.panel,.client-card,.settings-box,.auth-card,.modal,.monitor-card,.approval-card,.draft-card,
.discovered-card,.report-card,.v4-card,.council-card,.rc-card,.so-card,.card{
  background:linear-gradient(180deg,rgba(24,35,86,.60) 0%,rgba(12,18,48,.64) 100%)!important;
  border:1px solid var(--rx-border)!important;
  border-radius:var(--rx-radius)!important;
  box-shadow:var(--rx-glow-soft),var(--rx-edge)!important;
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
}
.panel:hover,.client-card:hover{border-color:rgba(130,150,255,.26)!important}
.metric,.kpi,.kpi-card,.cabinet-overview-card,.monitor-kpi,.rcb-kpi,.stat-card{
  background:linear-gradient(160deg,rgba(30,44,104,.55) 0%,rgba(13,20,52,.62) 70%)!important;
  border:1px solid rgba(128,148,255,.20)!important;
  border-radius:var(--rx-radius-md)!important;
  box-shadow:var(--rx-edge),0 12px 30px -18px rgba(0,0,0,.8)!important;
}
/* Numbers: Manrope ExtraBold with tabular figures -- the display face is for titles only. */
.metric .value,.kpi .value,.cabinet-overview-card .value,.metric-value,.kpi-value,[class*="value"]{
  font-family:var(--rx-font)!important;font-weight:800!important;letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;color:#fff!important;
}
.cabinet-overview-card .value,.metric .value,.kpi .value{font-size:26px!important;line-height:1.15}

/* hero blocks: deep glass with a blue glow, not a full gradient slab */
.council-hero,.v4-head,.ads-summary-box,.so-hero{
  background:
    radial-gradient(600px 220px at 85% -20%,rgba(91,92,255,.35),transparent 70%),
    linear-gradient(160deg,rgba(32,46,118,.75) 0%,rgba(14,20,56,.85) 70%)!important;
  border:1px solid rgba(140,160,255,.32)!important;border-radius:var(--rx-radius)!important;
  box-shadow:0 20px 50px -24px rgba(59,108,255,.55),var(--rx-edge)!important;color:var(--rx-text)!important;
}
.user-avatar,.onboarding-step-num,.free-empty-icon{box-shadow:0 0 18px -4px rgba(91,108,255,.8)}

/* ---------------------------------------------------------------- buttons */
.button{border-radius:12px!important;font-weight:700!important;letter-spacing:.005em;
  transition:transform .15s var(--rx-ease),box-shadow .2s var(--rx-ease),background .2s var(--rx-ease),border-color .2s}
.button-primary,.button.primary,.rx-btn-primary{
  background:var(--rx-grad)!important;color:#fff!important;border:1px solid rgba(170,185,255,.35)!important;
  box-shadow:var(--rx-glow),inset 0 1px 0 rgba(255,255,255,.25)!important;
}
.button-primary:hover{transform:translateY(-1px);box-shadow:0 14px 34px -8px rgba(80,110,255,.8),0 0 0 1px rgba(170,185,255,.5)!important}
.button-secondary,.mini-button{
  background:rgba(22,32,80,.55)!important;color:var(--rx-text)!important;
  border:1px solid var(--rx-border-strong)!important;
}
.button-secondary:hover,.mini-button:hover{background:var(--rx-surface-hover)!important;border-color:rgba(150,170,255,.55)!important}
.button:disabled,.button[disabled]{opacity:.45!important;transform:none!important;box-shadow:none!important}
button{color:inherit}

/* ---------------------------------------------------------------- forms */
input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),select,textarea{
  background:var(--rx-field)!important;color:var(--rx-text)!important;
  border:1px solid rgba(128,148,255,.24)!important;border-radius:var(--rx-radius-sm)!important;
  transition:border-color .15s,box-shadow .15s;
}
input::placeholder,textarea::placeholder{color:#6f7ba6!important;opacity:1}
input:focus,select:focus,textarea:focus{outline:none!important;border-color:#6d84ff!important;box-shadow:0 0 0 3px rgba(91,124,255,.28)!important}
select option{background:#0c1434;color:var(--rx-text)}
input[type="checkbox"],input[type="radio"]{accent-color:#5b6cff}
input[type="date"]::-webkit-calendar-picker-indicator{filter:invert(.85) hue-rotate(190deg)}
label{color:var(--rx-text-2)}

/* ---------------------------------------------------------------- tables */
table{color:var(--rx-text)}
th{color:var(--rx-text-3)!important;font-weight:700;font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;
  background:transparent!important;border-bottom:1px solid var(--rx-border)!important}
td{border-bottom:1px solid rgba(128,148,255,.09)!important}
tbody tr{transition:background .15s}
tbody tr:hover{background:rgba(80,100,230,.08)!important}

/* ---------------------------------------------------------------- date bar & segmented controls */
.roasora-datebar{background:linear-gradient(180deg,rgba(24,35,86,.55),rgba(12,18,48,.6))!important;
  border:1px solid var(--rx-border)!important;border-radius:var(--rx-radius-md)!important}
.roasora-datebar button:not(.active):not(.apply),.stats-period-btn:not(.active),.report-period-btn:not(.active),
.rcb-filter:not(.active),.rov3-period-btn:not(.active),.rcc-period-btn:not(.active),.plan-switch-btn:not(.active){
  background:rgba(18,27,66,.55)!important;color:var(--rx-text-2)!important;border:1px solid var(--rx-border)!important;border-radius:999px!important}
.roasora-datebar button.active,.roasora-datebar .apply,.stats-period-btn.active,.report-period-btn.active,
.rcb-filter.active,.rov3-period-btn.active,.rcc-period-btn.active,.plan-switch-btn.active{
  color:#fff!important;border-radius:999px!important;box-shadow:0 8px 20px -8px rgba(59,108,255,.85)!important}
.roasora-datebar .apply{border-radius:10px!important}
.roasora-datebar .range-label{color:var(--rx-text)!important}
.roasora-datebar .range-note{color:var(--rx-text-3)!important}

/* chips inside primary buttons (plan price) */
.button-primary span,.client-ad-button span{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}

/* progress tracks */
[data-first-steps] div[style*="height:"][style*="background:#e5e7eb"],
[data-first-steps] span[style*="background:#e5e7eb"],[style*="background:#e5e7eb"]{background:rgba(120,140,255,.16)!important}
[style*="background:#e5e7eb;color:#374151"]{color:var(--rx-text-2)!important}

/* ---------------------------------------------------------------- tabs, chips, pills */
.tab{background:rgba(18,27,66,.55)!important;color:var(--rx-text-2)!important;border:1px solid var(--rx-border)!important;
  border-radius:999px!important;font-weight:600;transition:all .18s var(--rx-ease)}
.tab:hover{color:#fff!important;border-color:rgba(140,160,255,.35)!important}
.tab.active{background:var(--rx-grad)!important;color:#fff!important;border-color:rgba(170,185,255,.5)!important;
  box-shadow:0 8px 22px -8px rgba(59,108,255,.8)!important}
.rpw2-lock{background:rgba(124,92,255,.22)!important;color:#d6ccff!important;border:1px solid rgba(160,140,255,.35)}
.demo-badge,.current-plan-chip{background:rgba(52,211,153,.12)!important;color:#7ff0c4!important;border:1px solid rgba(52,211,153,.3)!important}
.current-plan-chip{background:rgba(124,92,255,.16)!important;color:#cfc4ff!important;border-color:rgba(160,140,255,.35)!important}

/* status words */
.connected,.status-active,.good{color:var(--rx-success)}
.warning{color:var(--rx-warning)}
.error{color:#fecaca!important}

/* ---------------------------------------------------------------- modals */
.modal-overlay,.upgrade-modal,.rmm-overlay{background:rgba(2,4,14,.72)!important;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.modal,.upgrade-modal .modal,.upgrade-card,.so-modal,.rmm-modal{
  background:linear-gradient(180deg,#121b46 0%,#0a1030 100%)!important;color:var(--rx-text)!important;
  border:1px solid var(--rx-border-strong)!important;border-radius:20px!important;
  box-shadow:0 30px 80px -20px rgba(0,0,0,.9),0 0 0 1px rgba(120,140,255,.12),0 0 60px -10px rgba(80,100,255,.35)!important;
}

/* ---------------------------------------------------------------- banners */
.email-verify-banner{background:rgba(251,191,36,.10)!important;border:1px solid rgba(251,191,36,.35)!important;color:#fde68a!important;border-radius:var(--rx-radius-md)!important}
.email-verify-banner button{background:transparent!important;color:#fde68a!important;border:1px solid rgba(251,191,36,.55)!important;border-radius:10px!important}
.safe-box{border-radius:var(--rx-radius-md)!important}

/* ---------------------------------------------------------------- auth */
.auth-shell{
  background:
    radial-gradient(900px 520px at 50% -6%,rgba(59,108,255,.38),transparent 62%),
    radial-gradient(760px 520px at 105% 105%,rgba(139,77,255,.28),transparent 60%),
    radial-gradient(640px 460px at -6% 92%,rgba(56,189,248,.14),transparent 60%),
    linear-gradient(180deg,#070b1f 0%,#03050c 100%)!important;
}
.auth-card{max-width:440px;padding:34px 32px!important;
  box-shadow:0 40px 90px -30px rgba(0,0,0,.95),0 0 0 1px rgba(140,160,255,.18),0 0 80px -20px rgba(70,100,255,.45),var(--rx-edge)!important}
.auth-brand{display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:6px;color:var(--rx-text)!important}
.auth-brand .rx-auth-symbol{width:64px;height:64px;filter:drop-shadow(0 0 22px rgba(80,110,255,.6))}
.auth-brand .rx-logo{height:22px}
.auth-brand [data-beta-pill]{background:rgba(124,92,255,.18)!important;color:#d6ccff!important;border:1px solid rgba(160,140,255,.35)}
.auth-sub{text-align:center;color:var(--rx-text-2)!important}
.auth-tabs{background:rgba(6,10,30,.6)!important;border:1px solid var(--rx-border);border-radius:14px!important;padding:4px!important}
.auth-tab{background:transparent!important;color:var(--rx-text-2)!important;border-radius:10px!important;border:0!important}
.auth-tab.active{background:var(--rx-grad)!important;color:#fff!important;box-shadow:0 8px 20px -8px rgba(59,108,255,.8)}
.auth-form button[type="submit"]{background:var(--rx-grad)!important;color:#fff!important;border:1px solid rgba(170,185,255,.35)!important;
  border-radius:12px!important;box-shadow:var(--rx-glow)!important}
.auth-message.error,.auth-message[data-type="error"]{color:#fca5a5!important}
.auth-forgot-link a{color:#8fb4ff!important}

/* ---------------------------------------------------------------- motion & a11y */
@keyframes rx-rise{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.app-page.active{animation:rx-rise .32s var(--rx-ease) both}
.panel,.client-card,.metric,.kpi,.cabinet-overview-card{transition:border-color .2s,transform .2s var(--rx-ease),box-shadow .2s}
:focus-visible{outline:2px solid #7c93ff!important;outline-offset:2px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}

/* ---------------------------------------------------------------- responsive */
@media (max-width:900px){
  /* compact sticky app bar: symbol + scrolling icon pills */
  .sidebar{padding:9px 12px!important;gap:6px!important;border-right:0;border-bottom:1px solid var(--rx-border);
    box-shadow:0 10px 30px -12px rgba(0,0,0,.85)!important;scrollbar-width:none}
  .sidebar::-webkit-scrollbar{display:none}
  .sidebar .logo{margin:0 6px 0 0!important;flex:0 0 auto}
  .sidebar .logo .rx-logo{display:none}
  .sidebar .logo .rx-logo-symbol{width:32px;height:32px}
  .menu-item{padding:8px 12px!important;margin:0!important;font-size:13px!important;gap:7px;border-radius:999px!important;flex:0 0 auto}
  .menu-item::before{width:16px;height:16px}
  .menu-preview-dot{display:none!important}
  .title h1,.app-page>h1,.page-title{font-size:22px!important}
}

/* ---------------------------------------------------------------- charts (real data only) */
.client-stat-bar{
  background:linear-gradient(180deg,#8b5cf6 0%,#3b6cff 60%,#2563eb 100%)!important;
  border-radius:6px 6px 2px 2px!important;
  box-shadow:0 0 14px -2px rgba(91,108,255,.55)!important;
}
.client-stat-bar:hover{filter:brightness(1.2)}
.trend-grid{stroke:rgba(128,148,255,.12)!important}
.trend-axis{fill:var(--rx-text-3)!important;font-family:var(--rx-font)}
.trend-line{stroke:#6d8bff!important;stroke-width:2.6!important;filter:drop-shadow(0 0 6px rgba(91,124,255,.75))}
.trend-dot{fill:#0b1230!important;stroke:#a78bfa!important;stroke-width:2}
.trend-card,.trend-chart{background:transparent!important}
.stats-no-data,.trend-empty{color:var(--rx-text-3)!important}
.client-stat-bars{justify-content:space-around;gap:8px!important;border-bottom:1px solid var(--rx-border)!important}
.client-stat-bar{max-width:38px;border-radius:8px 8px 2px 2px!important}

/* ROASORA_OVERVIEW_TREND_V1: central chart of the cabinet overview */
.rx-trend-card{margin:16px 0 18px;padding:18px 20px 10px;border-radius:var(--rx-radius);
  background:
    radial-gradient(520px 200px at 20% 0%,rgba(59,108,255,.16),transparent 70%),
    linear-gradient(180deg,rgba(24,35,86,.60) 0%,rgba(12,18,48,.66) 100%);
  border:1px solid var(--rx-border);box-shadow:var(--rx-glow-soft),var(--rx-edge)}
.rx-trend-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px}
.rx-trend-head h3{margin:0;font-size:17px;font-weight:700;color:var(--rx-text)}
.rx-trend-legend{display:flex;gap:16px;color:var(--rx-text-2);font-size:12.5px;font-weight:600}
.rx-trend-legend span{display:inline-flex;align-items:center;gap:7px}
.rx-trend-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}
.rx-dot-spend{background:#4f7bff;box-shadow:0 0 10px #4f7bff}
.rx-dot-clicks{background:#a855f7;box-shadow:0 0 10px #a855f7}
.rx-trend-svg{display:block;width:100%;height:auto;overflow:visible;max-width:100%}
.rx-trend-grid{stroke:rgba(128,148,255,.10);stroke-width:1}
.rx-trend-axis{fill:var(--rx-text-3);font-size:11px;font-family:var(--rx-font)}
.rx-axis-spend{fill:#8ea6ff}
.rx-axis-clicks{fill:#c4a6ff}
.rx-trend-line{fill:none;stroke-width:2.6;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.rx-line-spend{stroke:#4f7bff;filter:drop-shadow(0 0 6px rgba(79,123,255,.85))}
.rx-line-clicks{stroke:#a855f7;filter:drop-shadow(0 0 6px rgba(168,85,247,.75))}
.rx-trend-dot{fill:#0b1230;stroke:#7f9cff;stroke-width:2}
.rx-trend-empty{color:var(--rx-text-3);padding:18px 0 22px;font-size:13px}
@media (max-width:700px){.rx-trend-head{flex-direction:column;align-items:flex-start}.rx-trend-card{padding:14px 12px 8px}}

/* ---------------------------------------------------------------- AI result */
.council-test{
  position:relative;overflow:hidden;
  background:linear-gradient(160deg,rgba(32,46,112,.55) 0%,rgba(13,20,52,.66) 75%)!important;
  border:1px solid rgba(130,150,255,.24)!important;border-radius:var(--rx-radius-md)!important;
  box-shadow:var(--rx-edge),0 16px 34px -22px rgba(59,108,255,.7)!important;
  transition:transform .2s var(--rx-ease),border-color .2s,box-shadow .2s;
}
.council-test::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,#38bdf8,#7c5cff)}
.council-test:hover{transform:translateY(-2px);border-color:rgba(150,170,255,.45)!important;box-shadow:var(--rx-edge),0 20px 40px -18px rgba(91,92,255,.75)!important}
.council-priority{background:var(--rx-grad)!important;color:#fff!important;border:0!important;
  box-shadow:0 0 16px -2px rgba(91,108,255,.9)!important}
.council-confidence-value{font-family:var(--rx-font)!important;font-weight:800!important;
  background:var(--rx-grad-text);-webkit-background-clip:text;background-clip:text;color:transparent!important}
.council-field strong{color:var(--rx-text-3)!important;letter-spacing:.06em;text-transform:uppercase;font-size:11px}
.council-safe{color:#6ee7b7!important}

/* running analysis: a calm pulse, not a light show */
@keyframes rx-pulse{0%,100%{box-shadow:0 0 0 1px rgba(91,124,255,.35),0 0 24px -10px rgba(91,124,255,.6)}50%{box-shadow:0 0 0 1px rgba(124,92,255,.6),0 0 36px -6px rgba(124,92,255,.75)}}
@keyframes rx-sheen{from{background-position:-200% 0}to{background-position:200% 0}}
.analysis-running{
  animation:rx-pulse 2.4s ease-in-out infinite;
  background:linear-gradient(90deg,rgba(47,107,255,.10) 0%,rgba(124,92,255,.22) 50%,rgba(47,107,255,.10) 100%)!important;
  background-size:200% 100%!important;color:#dbe4ff!important;border-color:rgba(124,140,255,.45)!important;
}
.analysis-running::before{content:"";display:inline-block;width:9px;height:9px;margin-right:9px;border-radius:50%;
  background:#7c93ff;box-shadow:0 0 12px #7c93ff;vertical-align:middle;animation:rx-pulse 1.2s ease-in-out infinite}
#runAnalysisButton:disabled{opacity:.8!important;background:linear-gradient(90deg,#2f6bff,#8b4dff,#2f6bff)!important;
  background-size:200% 100%!important;animation:rx-sheen 2.2s linear infinite}

/* first steps: progress path */
[data-first-steps] [data-step]{border-radius:12px;transition:background .2s}
[data-first-steps] span[style*="background:#16a34a"]{background:linear-gradient(135deg,#10b981,#34d399)!important;box-shadow:0 0 12px -2px rgba(52,211,153,.8)}
[data-first-steps] div[style*="background:#4f46e5"]{background:var(--rx-grad)!important;box-shadow:0 0 12px rgba(91,108,255,.8)}


/* ---------------------------------------------------------------- semantic status badges (ROASORA_STATUS_SYSTEM_V1)
   One shape for every status family; color carries meaning and the dot + text carry it too
   (never color alone). success = active, info = connected / in progress, ai = AI / plan,
   warning = attention, danger = error / disconnected, neutral = paused / off. */
.rcb-status,.rcc-status,.ra-ad-status,.rd-status,.monitor-account-status,.status-pill,.so-badge,.cabinet-live,
.rt-health,.demo-badge,.plan-badge,.chart-adaptive-badge,.ra-ads-badge,.rauto-pill,.current-plan-chip,.demo-plan-inline,.rbg-badge{
  display:inline-flex!important;align-items:center;gap:6px;min-height:24px;padding:3px 10px!important;
  border-radius:999px!important;font-size:12px!important;font-weight:700!important;line-height:1.2!important;
  letter-spacing:.005em;white-space:nowrap;border:1px solid transparent!important;box-shadow:none!important;
}
.rcb-status::before,.rcc-status::before,.ra-ad-status::before,.rd-status::before,.monitor-account-status::before,
.status-pill::before,.so-badge::before{
  content:"";flex:none;width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 8px currentColor;
}
.rcb-status.running,.rcc-status.running,.ra-ad-status.running,.rd-status.running,.monitor-account-status.on,
.status-pill.status-active,.so-badge.ok,.cabinet-live:not(.off),.rt-health.good,.demo-badge{
  color:var(--rx-ok-fg)!important;background:var(--rx-ok-bg)!important;border-color:var(--rx-ok-bd)!important}
.so-badge.working,.rt-health.info,.plan-badge,.chart-adaptive-badge,.ra-ads-badge,.rauto-pill,.so-badge.cold{
  color:var(--rx-info-fg)!important;background:var(--rx-info-bg)!important;border-color:var(--rx-info-bd)!important}
.current-plan-chip,.demo-plan-inline{color:var(--rx-ai-fg)!important;background:var(--rx-ai-bg)!important;border-color:var(--rx-ai-bd)!important}
.rcb-status.attention,.rcc-status.attention,.ra-ad-status.enabled,.monitor-account-status.wait,.so-badge.waiting,
.so-badge.warm,.rt-health.warn{color:var(--rx-warn-fg)!important;background:var(--rx-warn-bg)!important;border-color:var(--rx-warn-bd)!important}
.so-badge.error,.so-badge.hot,.rt-health.critical{color:var(--rx-bad-fg)!important;background:var(--rx-bad-bg)!important;border-color:var(--rx-bad-bd)!important}
.rcb-status.off,.rcb-status.unknown,.rcc-status.off,.rcc-status.ended,.ra-ad-status.off,.rd-status.off,.rd-status.other,
.monitor-account-status.off,.status-pill.status-paused,.status-pill.status-ended,.so-badge.idle,.so-badge.no,
.so-badge.unqualified,.cabinet-live.off,.rbg-badge{color:var(--rx-mute-fg)!important;background:var(--rx-mute-bg)!important;border-color:var(--rx-mute-bd)!important}
.status-dot{display:none!important}

/* ---------------------------------------------------------------- KPI cards: kind icons (ROASORA_KPI_KIND_V1) */
[data-rx-kind]:not([data-rx-kind=""]){position:relative;overflow:hidden;border-top-color:color-mix(in srgb,var(--rx-kind) 55%,transparent)!important}
[data-rx-kind]:not([data-rx-kind=""])::after{
  content:"";position:absolute;top:12px;right:12px;width:30px;height:30px;border-radius:10px;
  background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.18),transparent 60%),color-mix(in srgb,var(--rx-kind) 20%,transparent);
  border:1px solid color-mix(in srgb,var(--rx-kind) 45%,transparent);box-shadow:0 0 18px -6px var(--rx-kind);
}
[data-rx-kind]:not([data-rx-kind=""])::before{
  content:"";position:absolute;top:19px;right:19px;width:16px;height:16px;z-index:1;background:var(--rx-kind);
  -webkit-mask:var(--rx-kind-icon) center/contain no-repeat;mask:var(--rx-kind-icon) center/contain no-repeat;
}
[data-rx-kind]:not([data-rx-kind=""]) .label,[data-rx-kind]:not([data-rx-kind=""]) .metric-label{padding-right:40px}
[data-rx-kind="spend"]{--rx-kind:#4f7bff;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='5' width='19' height='14' rx='3'/%3E%3Cpath d='M2.5 10h19M7 15h3'/%3E%3C/svg%3E")}
[data-rx-kind="reach"]{--rx-kind:#22d3ee;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5M16 4.5a3.5 3.5 0 0 1 0 7M18.5 14.5c1.8.6 2.8 2.3 3 5.5'/%3E%3C/svg%3E")}
[data-rx-kind="impressions"]{--rx-kind:#a78bfa;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}
[data-rx-kind="clicks"]{--rx-kind:#60a5fa;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 3v3M3 9h3M4.8 4.8l2 2M12 10l8 3.2-3.4 1.4L15 18z'/%3E%3C/svg%3E")}
[data-rx-kind="ctr"]{--rx-kind:#c084fc;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 5 5 19'/%3E%3Ccircle cx='7' cy='7' r='2.5'/%3E%3Ccircle cx='17' cy='17' r='2.5'/%3E%3C/svg%3E")}
[data-rx-kind="cpc"]{--rx-kind:#38bdf8;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M14.8 9.2c-.5-1-1.6-1.6-2.8-1.6-1.6 0-2.8.9-2.8 2.1 0 2.9 5.6 1.5 5.6 4.4 0 1.2-1.2 2.2-2.8 2.2-1.3 0-2.4-.6-2.9-1.7M12 6v1.6M12 16.4V18'/%3E%3C/svg%3E")}
[data-rx-kind="cpm"]{--rx-kind:#38bdf8;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M14.8 9.2c-.5-1-1.6-1.6-2.8-1.6-1.6 0-2.8.9-2.8 2.1 0 2.9 5.6 1.5 5.6 4.4 0 1.2-1.2 2.2-2.8 2.2-1.3 0-2.4-.6-2.9-1.7M12 6v1.6M12 16.4V18'/%3E%3C/svg%3E")}
[data-rx-kind="campaigns"]{--rx-kind:#34d399;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a1 1 0 0 0 1 1h2l5 4V6L6 10H4a1 1 0 0 0-1 1zM15.5 8.5a5 5 0 0 1 0 7M18.5 5.5a9 9 0 0 1 0 13'/%3E%3C/svg%3E")}
[data-rx-kind="ads"]{--rx-kind:#34d399;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a1 1 0 0 0 1 1h2l5 4V6L6 10H4a1 1 0 0 0-1 1zM15.5 8.5a5 5 0 0 1 0 7M18.5 5.5a9 9 0 0 1 0 13'/%3E%3C/svg%3E")}
[data-rx-kind="cabinets"]{--rx-kind:#34d399;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 11v2a1 1 0 0 0 1 1h2l5 4V6L6 10H4a1 1 0 0 0-1 1zM15.5 8.5a5 5 0 0 1 0 7M18.5 5.5a9 9 0 0 1 0 13'/%3E%3C/svg%3E")}
[data-rx-kind="results"]{--rx-kind:#8b5cf6;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Ccircle cx='12' cy='12' r='1.2'/%3E%3C/svg%3E")}
[data-rx-kind="attention"]{--rx-kind:#fbbf24;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 2 20h20zM12 10v4M12 17h.01'/%3E%3C/svg%3E")}

/* phones: KPI cards two per row */
@media (max-width:700px){
  .cabinet-overview-grid,.overview-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .cabinet-overview-card,.metric{padding:12px!important;min-width:0}
  .cabinet-overview-card .value,.metric .value{font-size:20px!important}
  [data-rx-kind]:not([data-rx-kind=""])::after{width:24px;height:24px;top:10px;right:10px;border-radius:8px}
  [data-rx-kind]:not([data-rx-kind=""])::before{width:13px;height:13px;top:15.5px;right:15.5px}
  [data-rx-kind]:not([data-rx-kind=""]) .label,[data-rx-kind]:not([data-rx-kind=""]) .metric-label{padding-right:30px}
}

/* ---------------------------------------------------------------- cabinet context chips (ROASORA_CONTEXT_CHIPS_V1) */
.cabinet-status-line{display:flex!important;flex-wrap:wrap;align-items:center;gap:6px!important}
#clientStatus{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px!important}
#clientStatus .rx-sep{font-size:0;width:0;overflow:hidden}
.rx-chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 10px;border-radius:999px;
  background:var(--rx-mute-bg);border:1px solid var(--rx-mute-bd);color:var(--rx-text-2);font-weight:600;white-space:nowrap}
.rx-chip-meta{color:var(--rx-info-fg);background:var(--rx-info-bg);border-color:var(--rx-info-bd);gap:6px}
.rx-chip-meta::before{content:"";width:14px;height:14px;background:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12c0-3.4 1.6-6 3.6-6 3.4 0 5.6 12 9.4 12 2.6 0 4-2.8 4-6s-1.4-6-4-6c-3.8 0-6 12-9.4 12-2 0-3.6-2.6-3.6-6z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12c0-3.4 1.6-6 3.6-6 3.4 0 5.6 12 9.4 12 2.6 0 4-2.8 4-6s-1.4-6-4-6c-3.8 0-6 12-9.4 12-2 0-3.6-2.6-3.6-6z'/%3E%3C/svg%3E") center/contain no-repeat}
#clientUpdatedAt{color:var(--rx-text-3)!important;font-size:12px!important}

[data-rx-kind="ads"]{--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='16' rx='3'/%3E%3Ccircle cx='9' cy='10' r='2'/%3E%3Cpath d='M21 16l-5-5-8 9'/%3E%3C/svg%3E")}
[data-rx-kind="cabinets"]{--rx-kind:#60a5fa;--rx-kind-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='13' rx='2.5'/%3E%3Cpath d='M8 21h8M12 17v4'/%3E%3C/svg%3E")}


/* ---------------------------------------------------------------- settings: section icons by meaning */
#settingsList .settings-box>h3{display:flex;align-items:center;gap:10px}
#settingsList .settings-box>h3::before{content:"";flex:none;width:30px;height:30px;border-radius:10px;
  background:radial-gradient(circle at 30% 25%,rgba(255,255,255,.16),transparent 60%),color-mix(in srgb,var(--rx-sec,#60a5fa) 20%,transparent);
  border:1px solid color-mix(in srgb,var(--rx-sec,#60a5fa) 45%,transparent);box-shadow:0 0 16px -6px var(--rx-sec,#60a5fa)}
#settingsList .settings-box>h3::after{content:"";position:absolute;width:16px;height:16px;margin-left:7px;background:var(--rx-sec,#60a5fa);
  -webkit-mask:var(--rx-sec-icon) center/contain no-repeat;mask:var(--rx-sec-icon) center/contain no-repeat}
#settingsList .settings-box>h3{position:relative}
.rx-status-row{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 4px}
#stInstagram .so-inline-form{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 0;border-bottom:1px solid rgba(128,148,255,.09)}
#stInstagram .so-inline-form .button{margin-left:auto}
#stAccount{--rx-sec:#60a5fa;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c1-4 4-6 8-6s7 2 8 6'/%3E%3C/svg%3E")}
#stPassword{--rx-sec:#22d3ee;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='11' rx='2.5'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E")}
#stWorkspace{--rx-sec:#60a5fa;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1.5'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1.5'/%3E%3Crect x='14' y='14' width='7' height='7' rx='1.5'/%3E%3C/svg%3E")}
#stMeta{--rx-sec:#4f7bff;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12c0-3.4 1.6-6 3.6-6 3.4 0 5.6 12 9.4 12 2.6 0 4-2.8 4-6s-1.4-6-4-6c-3.8 0-6 12-9.4 12-2 0-3.6-2.6-3.6-6z'/%3E%3C/svg%3E")}
#stInstagram{--rx-sec:#c084fc;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='18' height='18' rx='5'/%3E%3Ccircle cx='12' cy='12' r='4'/%3E%3Cpath d='M17.5 6.5h.01'/%3E%3C/svg%3E")}
#stPlan{--rx-sec:#a78bfa;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3 13V3h10l7.6 7.6a2 2 0 0 1 0 2.8z'/%3E%3Cpath d='M7.5 7.5h.01'/%3E%3C/svg%3E")}
#stAi{--rx-sec:#a855f7;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 2.5l1.9 5.6 5.6 1.9-5.6 1.9L11 17.5l-1.9-5.6L3.5 10l5.6-1.9z'/%3E%3C/svg%3E")}
#stSales{--rx-sec:#8b5cf6;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3.5'/%3E%3Cpath d='M2.5 20c.8-3.6 3.4-5.5 6.5-5.5s5.7 1.9 6.5 5.5M17 11l2 2 3-3'/%3E%3C/svg%3E")}
#stSecurity{--rx-sec:#22d3ee;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 4 6v6c0 5 3.5 8 8 9 4.5-1 8-4 8-9V6z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E")}
#stSupport{--rx-sec:#93a0c8;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M9.5 9a2.5 2.5 0 1 1 3.5 2.3c-.6.3-1 .9-1 1.6V14M12 17h.01'/%3E%3C/svg%3E")}
#stStatus{--rx-sec:#34d399;--rx-sec-icon:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12h4l3-8 4 16 3-8h4'/%3E%3C/svg%3E")}

/* spacing / wrapping polish */
.email-verify-banner{margin-bottom:20px!important}
#settingsList .form-group,#stAccount{overflow-wrap:anywhere}
.monitor-account-status .monitor-dot{display:none!important}   /* the badge draws one dot */
.rt-grid{align-items:start!important}                          /* cards size to their content */
.client-ad-button{display:inline-flex!important;align-items:center;gap:8px;white-space:nowrap;flex:none}
#clientPage .topbar{align-items:flex-start!important;gap:16px}

/* ---------------------------------------------------------------- destructive actions: restrained danger */
.button.danger,.rfb-btn.danger,.campact-btn.danger,.quick-creative-remove,[data-so-act="reject"],
button[data-on-click*="removeCreativeRow"],button[data-on-click*="roasoraDeleteLead"],button[data-on-click*="removeApproval"]{
  background:var(--rx-bad-bg)!important;color:var(--rx-bad-fg)!important;border:1px solid var(--rx-bad-bd)!important;box-shadow:none!important}
.button.danger:hover,.rfb-btn.danger:hover,.campact-btn.danger:hover,.quick-creative-remove:hover,[data-so-act="reject"]:hover,
button[data-on-click*="removeCreativeRow"]:hover,button[data-on-click*="roasoraDeleteLead"]:hover,button[data-on-click*="removeApproval"]:hover{
  background:rgba(239,68,68,.22)!important;border-color:rgba(248,113,113,.6)!important}
/* consistent busy / disabled look for every button */
button:disabled,button[aria-busy="true"]{cursor:not-allowed}

/* ---------------------------------------------------------------- AI campaign decisions by meaning */
[data-decision="SCALE"]{--rx-dec:#34d399}[data-decision="WATCH"]{--rx-dec:#38bdf8}
[data-decision="INVESTIGATE"]{--rx-dec:#fbbf24}[data-decision="HOLD"]{--rx-dec:#f87171}
.metric[data-decision]{border-top:2px solid var(--rx-dec)!important}
.metric[data-decision] .metric-value{color:var(--rx-dec)!important}
.decision[data-decision]{position:relative;padding:14px 16px 14px 18px!important;margin-top:10px;border-radius:var(--rx-radius-md);
  background:linear-gradient(90deg,color-mix(in srgb,var(--rx-dec) 10%,transparent),rgba(14,21,56,.4) 40%)!important;
  border:1px solid color-mix(in srgb,var(--rx-dec) 30%,transparent)!important}
.decision[data-decision]::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--rx-dec);box-shadow:0 0 10px var(--rx-dec)}
.decision[data-decision] .decision-type{color:#fff}
.decision .so-badge{min-height:20px!important;padding:1px 8px!important;font-size:11px!important;vertical-align:middle}
/* low-end phones: no backdrop blur on cards (no visible difference over the gradient) */
@media (max-width:900px){.panel,.client-card,.settings-box,.monitor-card,.approval-card,.draft-card,.report-card,.card,.modal-overlay,.upgrade-modal,.rmm-overlay{-webkit-backdrop-filter:none!important;backdrop-filter:none!important}}

/* ---------------------------------------------------------------- Meta accounts list (ROASORA_META_ACCOUNTS_ALL_V1) */
.rmm-available-head{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:8px 0 10px;color:var(--rx-text-2);font-size:13px}
.rmm-available-head b{color:#fff}
.rmm-search{flex:1 1 220px;max-width:340px;min-height:36px;padding:8px 12px}
.rmm-available-list{max-height:420px;overflow:auto;padding-right:4px}
.rmm-available-row[hidden],[data-rmm-none][hidden]{display:none!important}
.rmm-account-meta .so-badge{min-height:20px!important;padding:1px 8px!important;font-size:11px!important;vertical-align:middle}
.rmm-access-required{margin-top:6px;padding:8px 10px;border-radius:10px;border:1px solid var(--rx-warn-bd);background:var(--rx-warn-bg);color:var(--rx-warn-fg);font-size:12px;line-height:1.45;max-width:640px}

/* ---------------------------------------------------------------- form errors (ROASORA_FORM_ERRORS_V1) */
.rx-field-invalid{border-color:var(--rx-bad-bd)!important;box-shadow:0 0 0 3px rgba(248,113,113,.18)!important}
.rx-field-error{margin-top:6px;color:var(--rx-bad-fg);font-size:12px;line-height:1.4}
.rx-notice-overlay{position:fixed;inset:0;z-index:9500;display:flex;align-items:center;justify-content:center;padding:16px;
  background:rgba(2,4,14,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.rx-notice{width:min(460px,100%);padding:22px 22px 18px;border-radius:20px;border:1px solid var(--rx-border-strong);
  background:linear-gradient(180deg,#121b46 0%,#0a1030 100%);color:var(--rx-text);
  box-shadow:0 30px 80px -20px rgba(0,0,0,.9),0 0 60px -10px rgba(80,100,255,.35)}
.rx-notice h3{margin:0 0 8px;font-size:17px;padding-left:28px;position:relative}
.rx-notice h3::before{content:"!";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;display:flex;
  align-items:center;justify-content:center;font-size:13px;font-weight:800;color:#0a1030;background:var(--rx-bad-fg)}
.rx-notice.info h3::before{content:"i";background:var(--rx-info-fg)}
.rx-notice p{margin:0 0 10px;color:var(--rx-text-2);font-size:14px;line-height:1.55}
.rx-notice ul{margin:6px 0 14px;padding-left:18px;color:var(--rx-text-2);font-size:14px;line-height:1.6}
.rx-notice .button{width:100%;margin-top:4px}
.rx-notice-actions{display:flex;gap:10px;margin-top:6px}
.rx-notice-actions .button{flex:1;width:auto}
/* ROASORA_SERVER_DRAFTS_V1 -- saved draft cards */
.launch-draft-card{margin-bottom:10px}
.ldc-row{display:flex;gap:12px;align-items:flex-start}
.ldc-thumb{flex:0 0 56px;width:56px;height:56px;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;
  background:rgba(120,140,255,.12);border:1px solid var(--rx-border);color:var(--rx-text-2);font-weight:700}
.ldc-thumb img{width:100%;height:100%;object-fit:cover}
.ldc-body{min-width:0;flex:1}
.ldc-body .draft-card-meta{overflow-wrap:anywhere}
.ldc-missing{margin-top:6px;font-size:12px;line-height:1.5;color:var(--rx-warn-fg,#fbbf24)}
.draft-local-head{margin:12px 0 6px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--rx-text-2)}
.rx-editing-draft{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0 0 8px;font-size:13px;color:var(--rx-text-2)}
.rx-editing-draft[hidden]{display:none}
.rx-editing-draft b{color:var(--rx-text)}
.rx-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);z-index:9600;max-width:min(560px,calc(100% - 32px));
  padding:12px 16px;border-radius:14px;font-size:14px;line-height:1.45;color:var(--rx-ok-fg);background:#0c1434;
  border:1px solid var(--rx-ok-bd);box-shadow:0 18px 40px -16px rgba(0,0,0,.9);transition:opacity .4s,transform .4s}
.rx-toast.out{opacity:0;transform:translate(-50%,8px)}
