:root{
  --bg:#fbf9f5;--panel:#ffffff;--text:#1c2430;--muted:#76808f;--line:#ece6dc;
  --accent:#a8742b;--accent2:#f5ecdd;--accent3:#d6b275;--green:#16a34a;--red:#d84a4a;
  --shadow:0 12px 32px rgba(48,42,31,.07)
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}
.sidebar{background:var(--panel);border-right:1px solid var(--line);padding:22px 16px;position:sticky;top:0;height:100vh}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;margin:2px 8px 24px}
.logo{width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,var(--accent3),var(--accent));display:grid;place-items:center;color:white;font-weight:900}
.nav{display:flex;flex-direction:column;gap:6px}
.nav button{border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:10px;color:#526078}
.nav button.active,.nav button:hover{background:var(--accent2);color:var(--accent);font-weight:700}
.sidebar-bottom{position:absolute;bottom:18px;left:16px;right:16px;border-top:1px solid var(--line);padding-top:14px}
.user{display:flex;gap:10px;align-items:center}.avatar{width:35px;height:35px;border-radius:50%;background:var(--accent2);display:grid;place-items:center;font-weight:700;color:var(--accent)}
main{padding:28px 32px 50px}
.top{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:24px}
.title h1{margin:0;font-size:28px}.title p{margin:7px 0 0;color:var(--muted)}
.status{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--line);padding:9px 12px;border-radius:999px;font-size:13px;box-shadow:var(--shadow)}
.dot{width:8px;height:8px;border-radius:50%;background:var(--green)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}
.metric-label{font-size:13px;color:var(--muted)}.metric-value{font-size:29px;font-weight:800;margin-top:7px}.metric-sub{font-size:12px;color:var(--muted);margin-top:5px}
.workspace{display:grid;grid-template-columns:1.5fr .85fr;gap:18px}
.section-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.section-head h2{margin:0;font-size:17px}
.link{color:var(--accent);font-size:13px;cursor:pointer}
.badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:700}
.hot{background:#fff2e8;color:#b96500}.good{background:#e9f8ee;color:#237d46}.mid{background:#eef2f8;color:#68748b}.bad{background:#fff1f1;color:#c43b3b}
.primary{border:0;background:var(--accent);color:white;padding:10px 14px;border-radius:10px;font-weight:700}
.secondary{border:1px solid var(--line);background:var(--panel);color:var(--text);padding:10px 14px;border-radius:10px;font-weight:600}
.danger{border:1px solid #ffd6d6;background:#fff7f7;color:#c63a3a;padding:8px 11px;border-radius:9px}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:15px}
input,select,textarea{padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);outline:none}
.toolbar input{min-width:220px;flex:1}
.formgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.formgrid .full{grid-column:1/-1}
label{display:block;font-size:12px;color:var(--muted);margin-bottom:6px}.formgrid input,.formgrid select,.formgrid textarea{width:100%}
table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-size:12px;color:var(--muted)}
.hidden{display:none}.empty{padding:30px;text-align:center;color:var(--muted)}
.notice{padding:12px 14px;background:var(--accent2);border:1px solid var(--line);border-radius:12px;color:var(--text);font-size:13px}
.progress{height:8px;background:#edf1f6;border-radius:999px;overflow:hidden;margin-top:7px}.progress>span{display:block;height:100%;background:var(--accent)}
.match{border:1px solid var(--line);background:var(--panel);border-radius:14px;padding:14px;margin-bottom:10px}.match-top{display:flex;justify-content:space-between}.score{font-size:22px;font-weight:900;color:var(--accent)}
.chart-wrap{height:285px;position:relative}.chart{width:100%;height:100%}.chart text{fill:var(--muted);font-size:11px}.chart .gridline{stroke:var(--line);stroke-width:1}.chart .line{stroke:var(--accent);stroke-width:3;fill:none}.chart .area{fill:var(--accent2);opacity:.9}.chart .point{fill:var(--accent)}
.settings-layout{display:grid;grid-template-columns:230px 1fr;gap:18px}
.settings-nav{display:flex;flex-direction:column;gap:6px}.settings-nav button{border:0;background:transparent;text-align:left;padding:11px 12px;border-radius:10px;color:#5b6270}
.settings-nav button.active,.settings-nav button:hover{background:var(--accent2);color:var(--accent);font-weight:700}
.setting-section{display:none}.setting-section.active{display:block}
.setting-row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}.setting-row:last-child{border-bottom:0}.setting-row strong{display:block;margin-bottom:4px}.setting-row span{font-size:12px;color:var(--muted)}
.field-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.field-grid .full{grid-column:1/-1}
.toggle{width:42px;height:24px;border-radius:999px;background:#dfe3ea;position:relative}.toggle.on{background:var(--accent)}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:white;transition:.2s}.toggle.on:after{left:21px}
.theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.theme{border:1px solid var(--line);border-radius:14px;padding:14px}.theme.active{border:2px solid var(--accent);background:var(--accent2)}.swatch{height:54px;border-radius:10px;margin-bottom:10px}
.dropzone{border:1.5px dashed var(--line);border-radius:14px;padding:24px;text-align:center;background:var(--panel)}.dropzone input{display:none}.dropzone label{cursor:pointer;color:var(--accent);font-weight:700}
.toast{position:fixed;right:24px;bottom:24px;background:#172033;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:var(--shadow);opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}
.build-badge{position:fixed;left:8px;top:8px;z-index:99999;background:rgba(20,16,8,.88);color:#fff;font-size:10px;font-weight:800;letter-spacing:.02em;padding:4px 9px;border-radius:7px;pointer-events:none;font-family:monospace;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.small{font-size:12px;color:var(--muted)}.row-actions{display:flex;gap:7px;justify-content:flex-end}
body[data-theme="dark"]{--bg:#111418;--panel:#181c21;--text:#f3f4f6;--muted:#a0a7b2;--line:#2c3239;--accent:#d5a94e;--accent2:#2a251b;--accent3:#b78327;--shadow:0 12px 32px rgba(0,0,0,.22)}
body[data-theme="emerald"]{--bg:#f5fbf8;--panel:#fff;--text:#17271f;--muted:#718078;--line:#e0ece5;--accent:#11845e;--accent2:#e5f5ee;--accent3:#43b88c;--shadow:0 12px 32px rgba(20,70,50,.07)}
body[data-theme="graphite"]{--bg:#f3f5f7;--panel:#fff;--text:#22262c;--muted:#747b84;--line:#e0e3e7;--accent:#606872;--accent2:#eceff2;--accent3:#8b929a;--shadow:0 12px 32px rgba(30,35,40,.07)}
@media(max-width:1050px){.app{grid-template-columns:1fr}.sidebar{display:none}.grid4{grid-template-columns:repeat(2,1fr)}.workspace,.settings-layout{grid-template-columns:1fr}.theme-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){main{padding:18px}.grid4,.formgrid,.field-grid,.theme-grid{grid-template-columns:1fr}.formgrid .full,.field-grid .full{grid-column:auto}.top{align-items:flex-start;flex-direction:column}.card{overflow:auto}}

.auth-overlay{
  position:fixed;inset:0;z-index:99999;
  display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(18,20,24,.42);backdrop-filter:blur(8px)
}
.auth-overlay.hidden{display:none}
.auth-card{
  width:min(430px,100%);padding:28px;border-radius:22px;
  background:var(--panel);border:1px solid var(--line);
  box-shadow:0 28px 80px rgba(0,0,0,.22)
}
.auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.auth-brand .logo{width:42px;height:42px;flex:0 0 42px}
.auth-card h2{margin:0;font-size:24px}
.auth-card p{margin:7px 0 22px;color:var(--muted);font-size:13px;line-height:1.5}
.auth-field{margin-bottom:13px}
.auth-field label{display:block;margin-bottom:6px;font-size:12px;color:var(--muted)}
.auth-field input{width:100%;padding:12px 13px}
.auth-card .primary{width:100%;padding:12px}
.auth-error{display:none;margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff1f1;color:#b53636;font-size:12px}
.auth-error.show{display:block}
.auth-info{margin-top:14px;text-align:center;font-size:11px;color:var(--muted)}


.auth-forgot{
  display:block;
  margin:-2px 0 14px;
  text-align:right;
  font-size:12px;
  color:var(--accent);
  text-decoration:none;
  cursor:pointer;
}
.auth-forgot:hover{text-decoration:underline}
.auth-success{
  display:none;
  margin-top:12px;
  padding:10px 12px;
  border-radius:10px;
  background:#e9f8ee;
  color:#237d46;
  font-size:12px
}
.auth-success.show{display:block}


.recovery-overlay{
  position:fixed;inset:0;z-index:100000;
  display:flex;align-items:center;justify-content:center;
  padding:20px;background:rgba(18,20,24,.48);backdrop-filter:blur(8px)
}
.recovery-overlay.hidden{display:none}
.recovery-card{
  width:min(430px,100%);padding:28px;border-radius:22px;
  background:var(--panel);border:1px solid var(--line);
  box-shadow:0 28px 80px rgba(0,0,0,.24)
}
.recovery-card h2{margin:0 0 7px;font-size:24px}
.recovery-card p{margin:0 0 22px;color:var(--muted);font-size:13px;line-height:1.5}
.recovery-field{margin-bottom:13px}
.recovery-field label{display:block;margin-bottom:6px;font-size:12px;color:var(--muted)}
.recovery-field input{width:100%;padding:12px 13px}
.recovery-card .primary{width:100%;padding:12px}
.recovery-error{display:none;margin-top:12px;padding:10px 12px;border-radius:10px;background:#fff1f1;color:#b53636;font-size:12px}
.recovery-error.show{display:block}
.recovery-success{display:none;margin-top:12px;padding:10px 12px;border-radius:10px;background:#e9f8ee;color:#237d46;font-size:12px}
.recovery-success.show{display:block}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.property-link-wrap{position:relative;display:inline-block}
.property-link-trigger{cursor:pointer;text-decoration:none;border-bottom:1px dashed currentColor;font-weight:700}
.property-link-trigger:hover{opacity:.72}
.property-popover{position:fixed;z-index:99999;min-width:230px;max-width:300px;padding:10px;border-radius:16px;background:rgba(18,18,20,.96);color:#fff;box-shadow:0 18px 55px rgba(0,0,0,.28);backdrop-filter:blur(18px);display:none}
.property-popover.open{display:block}
.property-popover .pop-title{font-size:12px;opacity:.7;padding:5px 8px 8px}
.property-popover a,.property-popover button{display:flex;width:100%;align-items:center;gap:9px;padding:10px 11px;border:0;border-radius:10px;background:transparent;color:#fff;text-decoration:none;text-align:left;font:inherit;cursor:pointer}
.property-popover a:hover,.property-popover button:hover{background:rgba(255,255,255,.10)}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.role-hidden{display:none!important}
.role-lock{opacity:.48;pointer-events:none;filter:grayscale(.2)}
#roleAccessBadge{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;background:var(--accent2);color:var(--accent);margin-left:8px}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

:root{
  --bg:#f4f5f7;
  --panel:#ffffff;
  --text:#15181e;
  --muted:#747b86;
  --line:#e7e9ed;
  --accent:#1769e0;
  --accent2:#edf4ff;
  --accent3:#79aaf2;
  --green:#19a463;
  --red:#d84a4a;
  --graphite:#1c2028;
  --graphite2:#2a303a;
  --shadow:0 10px 30px rgba(17,24,39,.055);
}
body{
  background:
    radial-gradient(circle at 78% -10%,rgba(23,105,224,.07),transparent 27%),
    linear-gradient(180deg,#f8f9fb 0,#f4f5f7 38%,#f4f5f7 100%);
  letter-spacing:-.005em;
}
.app{grid-template-columns:238px minmax(0,1fr)}
.sidebar{
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(18px);
  border-right:1px solid #e8eaee;
  padding:20px 14px;
}
.brand{
  font-size:18px;
  letter-spacing:-.035em;
  margin:3px 8px 26px;
}
.logo{
  width:38px;height:38px;border-radius:12px;
  background:linear-gradient(145deg,#10141b,#333a46);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 7px 18px rgba(17,24,39,.16)
}
.nav{gap:3px}
.nav button{
  position:relative;
  padding:10px 11px 10px 13px;
  border-radius:9px;
  color:#5f6876;
  font-size:13px;
  transition:.16s ease;
}
.nav button.active{
  color:#1769e0;
  background:#edf4ff;
  font-weight:750;
}
.nav button.active:before{
  content:"";
  position:absolute;left:-4px;top:8px;bottom:8px;width:3px;
  background:#1769e0;border-radius:99px;
}
.nav button:hover{background:#f4f6f9;color:#202631}
.sidebar-bottom{
  background:#f8f9fb;border:1px solid #e7e9ed;border-radius:14px;
  padding:11px;bottom:14px;left:14px;right:14px
}
.sidebar-bottom{border-top:1px solid #e7e9ed}
.sidebar-bottom .secondary{background:white}
.avatar{background:#eaf2ff;color:#1769e0}
main{
  width:min(1600px,100%);
  margin:0 auto;
  padding:26px clamp(22px,3vw,46px) 56px;
}
.page>.top{
  min-height:64px;
  margin-bottom:19px;
  border-bottom:1px solid var(--line);
  padding-bottom:17px;
}
.title h1{
  font-size:clamp(25px,2.3vw,34px);
  line-height:1;
  letter-spacing:-.045em;
  font-weight:830
}
.title p{font-size:13px;max-width:780px}
.status{
  box-shadow:none;
  padding:8px 11px;
  background:#fff;
  border-color:#e7e9ed
}
.card{
  border-radius:14px;
  border:1px solid #e6e9ee;
  box-shadow:var(--shadow);
  padding:18px;
}
.grid4{gap:12px}
.grid4>.card{
  min-height:118px;
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,var(--graphite),var(--graphite2));
  border-color:#303744;
  box-shadow:0 12px 26px rgba(17,24,39,.12);
}
.grid4>.card:after{
  content:"";
  position:absolute;width:95px;height:95px;border-radius:50%;
  right:-38px;top:-42px;background:rgba(255,255,255,.055)
}
.grid4>.card .metric-label,
.grid4>.card .metric-sub{color:#aeb7c5}
.grid4>.card .metric-value{color:#fff;font-size:31px;letter-spacing:-.045em}
#dashboard .grid4>.card:nth-child(4),
#intentions .grid4>.card:nth-child(4),
#trades .grid4>.card:nth-child(3){
  background:linear-gradient(145deg,#162a4b,#184d8e);
  border-color:#245b9e
}
.section-head h2{
  font-size:16px;letter-spacing:-.025em;font-weight:800
}
.section-head{border-bottom:1px solid #eff0f2;padding-bottom:12px}
.link{font-weight:700;color:#1769e0}
.primary{
  background:#1769e0;
  border-radius:9px;
  box-shadow:0 4px 12px rgba(23,105,224,.18)
}
.primary:hover{filter:brightness(.96)}
.secondary{border-radius:9px;background:#fff}
.notice{
  border-radius:10px;
  background:#f5f8fc;
  border-color:#e4ebf5;
  color:#465163
}
#roleWelcome{
  background:transparent;border:0;padding:0 0 14px;
  color:#89919c;font-size:11px
}
.workspace{grid-template-columns:minmax(0,1.6fr) minmax(310px,.75fr);gap:14px}
.portal-hero{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);
  gap:14px;
  margin-bottom:14px
}
.portal-feature{
  position:relative;
  min-height:230px;
  border-radius:18px;
  padding:26px;
  overflow:hidden;
  color:#fff;
  background:
   radial-gradient(circle at 78% 23%,rgba(74,143,244,.55),transparent 20%),
   radial-gradient(circle at 100% 100%,rgba(255,255,255,.1),transparent 34%),
   linear-gradient(128deg,#151a24 0%,#202a3c 52%,#173d74 100%);
  box-shadow:0 15px 35px rgba(17,24,39,.15)
}
.portal-feature:after{
  content:"";
  position:absolute;inset:auto -30px -80px auto;
  width:270px;height:270px;border:1px solid rgba(255,255,255,.13);
  border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.02)
}
.portal-eyebrow{
  position:relative;z-index:1;
  font-size:10px;font-weight:850;letter-spacing:.16em;text-transform:uppercase;
  color:#8fc0ff;margin-bottom:15px
}
.portal-feature h2{
  position:relative;z-index:1;
  max-width:670px;margin:0 0 11px;font-size:29px;line-height:1.06;
  letter-spacing:-.045em
}
.portal-feature p{
  position:relative;z-index:1;
  max-width:620px;margin:0;color:#c2cbd8;font-size:13px;line-height:1.6
}
.portal-actions{position:relative;z-index:1;display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}
.portal-actions button{border:0;padding:9px 12px;border-radius:9px;font-weight:750}
.portal-actions .light{background:#fff;color:#151a24}
.portal-actions .ghost{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.12)}
.portal-side{
  display:grid;gap:10px
}
.portal-side-card{
  border:1px solid #e5e8ed;background:#fff;border-radius:14px;
  padding:16px;box-shadow:var(--shadow);
  display:flex;flex-direction:column;justify-content:space-between;min-height:108px
}
.portal-side-card .kicker{font-size:10px;font-weight:850;letter-spacing:.1em;color:#1769e0;text-transform:uppercase}
.portal-side-card strong{font-size:16px;line-height:1.15;letter-spacing:-.025em}
.portal-side-card span{font-size:11px;color:#848c98}
.chart-card{
  margin-bottom:14px!important;
  border-radius:16px;
}
.chart-wrap{height:245px}
.chart .line{stroke:#1769e0;stroke-width:2.5}
.chart .area{fill:#eaf2ff;opacity:.82}
.chart .point{fill:#1769e0}
.toolbar{
  padding:10px;
  background:#fff;border:1px solid #e6e9ee;border-radius:12px;
  box-shadow:0 5px 18px rgba(17,24,39,.035)
}
input,select,textarea{
  border-radius:9px;
  border-color:#e1e5ea;
  background:#fff;
}
input:focus,select:focus,textarea:focus{
  border-color:#8cb8f5;
  box-shadow:0 0 0 3px rgba(23,105,224,.08)
}
table{font-size:12.5px}
th{
  color:#7d8591;font-size:10px;
  text-transform:uppercase;letter-spacing:.055em;
  background:#fafbfc
}
th,td{padding:11px 10px}
tbody tr:hover{background:#fafcff}
.badge{padding:5px 8px}
.good{background:#eef9f3;color:#177347}
.hot{background:#fff2e7;color:#b45c00}
.mid{background:#f1f4f8;color:#687385}
.settings-layout{gap:14px}
.settings-nav{
  background:#fff;border:1px solid #e6e9ee;border-radius:14px;padding:8px;
  height:max-content
}
.theme{background:#fff}
.property-popover{border:1px solid rgba(255,255,255,.08)}
@media(max-width:1050px){
  .portal-hero{grid-template-columns:1fr}
  .portal-side{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:700px){
  main{padding:16px}
  .portal-feature{min-height:250px;padding:20px}
  .portal-feature h2{font-size:24px}
  .portal-side{grid-template-columns:1fr}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid4>.card{min-height:106px;padding:14px}
  .grid4>.card .metric-value{font-size:26px}
  .workspace{grid-template-columns:1fr}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

:root{
  --bg:#f7f4ee;
  --panel:#fffdf9;
  --panel-2:#fbf7ef;
  --text:#162033;
  --muted:#6f7784;
  --line:#e9e2d7;
  --gold:#b98221;
  --gold-2:#d5ad63;
  --gold-soft:#f5ead5;
  --blue:#1769e0;
  --green:#16a765;
  --red:#d94a4a;
  --graphite:#17202d;
  --graphite-2:#243246;
  --shadow:0 12px 35px rgba(31,37,48,.065);
}
*{box-sizing:border-box}
body{
  background:linear-gradient(180deg,#fbfaf7 0,#f6f3ed 100%);
  color:var(--text);
}
.app{grid-template-columns:220px minmax(0,1fr)}
.sidebar{
  background:rgba(255,253,249,.97);
  border-right:1px solid var(--line);
  backdrop-filter:blur(18px);
  padding:16px 12px;
}
.brand{margin:4px 7px 22px;font-weight:850;letter-spacing:-.035em}
.logo{
  width:42px;height:42px;border-radius:50%;
  color:var(--gold);background:#fffaf1;border:1px solid #d9b878;
  box-shadow:0 6px 16px rgba(185,130,33,.08)
}
.nav{gap:2px}
.nav button{
  position:relative;
  border-radius:8px;
  padding:9px 10px 9px 12px;
  color:#526071;font-size:12.5px;
}
.nav button:hover{background:#faf6ee;color:#1f2b3b}
.nav button.active{
  background:#f5ecdc;color:#8f651c;font-weight:800;
}
.nav button.active:before{
  content:"";position:absolute;left:-2px;top:7px;bottom:7px;width:3px;
  border-radius:99px;background:var(--gold)
}
.sidebar-bottom{
  border:1px solid var(--line);
  background:#fffaf3;border-radius:12px;
  padding:10px;left:12px;right:12px;bottom:12px
}
.avatar{background:#f2e7d2;color:#9b6c1a}
main{
  width:min(1700px,100%);
  margin:0 auto;
  padding:14px clamp(16px,2.2vw,34px) 38px;
}
.page>.top{
  min-height:46px;
  margin-bottom:10px;padding-bottom:8px;
  border-bottom:0;
}
.title h1{font-size:26px;letter-spacing:-.04em}
.title p{font-size:12px;color:var(--muted)}
.status{padding:7px 10px;background:white;border:1px solid var(--line);border-radius:9px;box-shadow:none}
.card{
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:12px;
  box-shadow:var(--shadow);
  padding:15px;
}
.primary{
  background:linear-gradient(180deg,#c4902e,#ad7415);
  border:0;color:white;border-radius:8px;
  box-shadow:0 5px 12px rgba(185,130,33,.16)
}
.secondary{
  background:white;border:1px solid var(--line);border-radius:8px;color:#29364a
}
.section-head{padding-bottom:9px;border-bottom:1px solid #f0ebe2}
.section-head h2{font-size:15px;letter-spacing:-.025em}
.grid4{gap:10px}
.grid4>.card{
  background:#fff;
  border-color:#e9e3da;
  min-height:100px;
  box-shadow:0 7px 20px rgba(31,37,48,.04)
}
.grid4>.card:first-child{
  background:linear-gradient(145deg,var(--graphite),var(--graphite-2));
  border-color:#263345
}
.grid4>.card:first-child .metric-label,
.grid4>.card:first-child .metric-sub{color:#bbc4cf}
.grid4>.card:first-child .metric-value{color:#fff}
.metric-label{font-size:10px;text-transform:uppercase;letter-spacing:.045em}
.metric-value{font-size:28px;letter-spacing:-.045em}
.metric-sub{font-size:10.5px}

/* Approved tall top banner */
.portal-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) 300px;
  gap:12px;
  align-items:stretch;
  margin:0 0 12px;
}
.portal-feature{
  min-height:275px;
  border-radius:13px;
  position:relative;overflow:hidden;
  padding:26px 28px;
  color:#172235;
  background:
    linear-gradient(90deg,rgba(255,249,238,.96) 0%,rgba(255,249,238,.80) 35%,rgba(255,249,238,.08) 67%,rgba(255,249,238,0) 100%),
    url('https://images.unsplash.com/photo-1543059080-f9b1272213d5?auto=format&fit=crop&w=1800&q=80') center/cover no-repeat;
  box-shadow:0 10px 28px rgba(44,40,32,.08)
}
.portal-feature:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(150,92,0,.06));
  pointer-events:none
}
.portal-eyebrow{
  position:relative;z-index:1;
  color:#6c7280;font-size:12px;letter-spacing:.12em;text-transform:uppercase;
  margin-bottom:8px
}
.portal-feature h2{
  position:relative;z-index:1;
  max-width:520px;margin:0 0 10px;
  font-size:32px;line-height:1.1;letter-spacing:.02em;font-weight:700;
  text-transform:uppercase
}
.portal-feature h2 strong{color:var(--gold);font-size:38px}
.portal-feature p{
  position:relative;z-index:1;
  max-width:470px;font-size:12.5px;line-height:1.5;color:#485160
}
.portal-actions{
  position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap;margin-top:18px
}
.portal-actions button{padding:9px 12px;border-radius:8px;font-weight:750}
.portal-actions .light{background:var(--gold);color:white;border:0}
.portal-actions .ghost{background:rgba(255,255,255,.88);border:1px solid rgba(185,130,33,.22);color:#303c4b}

/* Right panel in approved layout */
.portal-side{
  display:grid;grid-template-columns:1fr;gap:8px
}
.portal-side-card{
  min-height:62px;border-radius:11px;padding:12px 13px;
  border:1px solid var(--line);background:#fff;
  box-shadow:0 7px 18px rgba(31,37,48,.04)
}
.portal-side-card .kicker{
  color:var(--gold);font-size:9px;letter-spacing:.1em;text-transform:uppercase;font-weight:850
}
.portal-side-card strong{font-size:13px}
.portal-side-card span{font-size:10px;color:#7c8490}

/* KPI row sits directly below hero */
#dashboard .grid4{margin-top:0;margin-bottom:12px}
#dashboard .grid4>.card{min-height:96px;padding:13px}

/* Approved operational strip */
.toolbar{
  background:#fff;border:1px solid var(--line);border-radius:10px;
  padding:9px;box-shadow:0 5px 15px rgba(31,37,48,.03)
}
input,select,textarea{
  border:1px solid #e4ded4;border-radius:8px;background:#fff
}
input:focus,select:focus,textarea:focus{
  border-color:#d1a854;box-shadow:0 0 0 3px rgba(185,130,33,.07)
}

/* Opportunity cards/table */
table{font-size:12px}
th{
  background:#fbf8f2;color:#767d87;
  font-size:9.5px;text-transform:uppercase;letter-spacing:.055em
}
th,td{padding:10px 9px}
tbody tr:hover{background:#fffaf3}
.badge{padding:4px 7px;border-radius:999px}
.good{background:#eef9f3;color:#147849}
.hot{background:#fff0e3;color:#b65700}
.mid{background:#eef3fa;color:#54637a}

/* Graph closer to approved reference */
.chart-card{margin-top:12px;border-radius:12px}
.chart-wrap{height:210px}
.chart .line{stroke:var(--blue);stroke-width:2.2}
.chart .area{fill:#edf4ff;opacity:.7}
.chart .point{fill:var(--blue)}

/* Role-specific right rail panels */
.role-panel{
  border:1px solid var(--line);background:#fffdf9;border-radius:12px;
  box-shadow:var(--shadow);padding:14px;margin-bottom:10px
}
.role-panel h3{margin:0 0 10px;font-size:14px}
.role-panel .role-line{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #f0ebe3;font-size:11px}
.role-panel .role-line:last-child{border-bottom:0}
.role-panel .role-ok{color:var(--green);font-weight:800}
.role-panel .role-gold{color:var(--gold);font-weight:800}

/* settings and responsive */
.settings-layout{gap:12px}
.settings-nav{background:#fff;border:1px solid var(--line);border-radius:11px;padding:7px;height:max-content}
.theme{background:white;border-radius:10px}
@media(max-width:1180px){
  .portal-hero{grid-template-columns:1fr}
  .portal-side{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:760px){
  .app{grid-template-columns:1fr}
  .sidebar{position:relative;width:auto;height:auto}
  main{padding:12px}
  .portal-feature{min-height:250px;padding:20px}
  .portal-feature h2{font-size:24px}.portal-feature h2 strong{font-size:29px}
  .portal-side{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

:root{
  --bg:#f7f5f0;
  --panel:#fffdfa;
  --text:#152033;
  --muted:#747d89;
  --line:#ebe5da;
  --gold:#b98520;
  --gold-dark:#9e6a0d;
  --gold-soft:#f6eddd;
  --blue:#1769e0;
  --green:#16a765;
  --graphite:#182333;
  --shadow:0 8px 24px rgba(31,37,48,.055);
}
body{background:#f8f6f2}
.app{grid-template-columns:220px minmax(0,1fr)}
.sidebar{
  background:#fffdf9;border-right:1px solid var(--line);padding:14px 12px
}
.brand{margin:4px 8px 18px;font-size:18px}
.logo{width:44px;height:44px;border-radius:50%;background:#fff9ef;color:var(--gold);border:1px solid #d8b46d}
.nav{gap:2px}
.nav button{padding:9px 11px;border-radius:8px;color:#566273;font-size:12.5px}
.nav button.active{background:#f5ecdb;color:#896018;font-weight:800}
.nav button.active:before{background:var(--gold)}
.sidebar-bottom{background:#fffaf2;border:1px solid var(--line);border-radius:12px;left:12px;right:12px;bottom:12px;padding:10px}
main{width:min(1650px,100%);padding:12px 18px 34px;margin:0 auto}
.page>.top{
  min-height:44px;margin-bottom:8px;padding:0;border:0;
  display:flex;align-items:center;justify-content:space-between
}
.title h1{font-size:25px;letter-spacing:-.035em}
.title p{font-size:11.5px}
.status{background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px 10px}
.card{border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);background:#fff;padding:14px}

/* HERO APPROVED: wide and high, no side feature stack */
.portal-hero{
  display:block!important;
  margin:0 0 10px!important;
}
.portal-feature{
  min-height:285px!important;
  width:100%!important;
  border-radius:13px!important;
  padding:29px 32px!important;
  background:
    linear-gradient(90deg,rgba(255,250,242,.97) 0%,rgba(255,250,242,.82) 35%,rgba(255,250,242,.12) 66%,rgba(255,250,242,0) 100%),
    linear-gradient(135deg,#f0e3ca 0%,#d9b36b 28%,#677b8a 68%,#364b5a 100%)!important;
  box-shadow:0 10px 28px rgba(56,47,34,.08)!important;
  overflow:hidden!important;
  position:relative!important;
}
.portal-feature:before{
  content:"";
  position:absolute;right:0;top:0;bottom:0;width:58%;
  background:
    radial-gradient(circle at 72% 26%,rgba(255,207,111,.72),transparent 19%),
    linear-gradient(150deg,transparent 0 25%,rgba(255,255,255,.18) 25.5% 26%,transparent 26.5% 38%,rgba(255,255,255,.12) 38.5% 39%,transparent 39.5%),
    linear-gradient(90deg,transparent 0 18%,rgba(34,49,61,.45) 18.5% 21%,transparent 21.5% 31%,rgba(34,49,61,.55) 31.5% 35%,transparent 35.5% 48%,rgba(34,49,61,.45) 48.5% 52%,transparent 52.5%);
  opacity:.75;
  pointer-events:none;
}
.portal-eyebrow{font-size:12px;color:#616a76;letter-spacing:.13em;text-transform:uppercase;position:relative;z-index:2}
.portal-feature h2{
  font-size:31px!important;line-height:1.11!important;text-transform:uppercase!important;
  letter-spacing:.015em!important;max-width:580px!important;position:relative;z-index:2
}
.portal-feature h2 strong{color:var(--gold)!important;font-size:38px!important}
.portal-feature p{max-width:520px;font-size:12.5px;line-height:1.55;position:relative;z-index:2;color:#4b5564}
.portal-actions{margin-top:18px;position:relative;z-index:2}
.portal-actions .light{background:linear-gradient(180deg,#c9952d,#ae7412)!important;color:white!important}
.portal-actions .ghost{background:rgba(255,255,255,.9)!important;border:1px solid rgba(185,133,32,.22)!important;color:#253247!important}

/* Remove side feature cards from visual flow */
.portal-side{display:none!important}

/* Role summary compact, not a giant panel */
#roleSpecificPanel{
  margin:0 0 10px!important;
  padding:9px 12px!important;
  border-radius:10px!important;
  box-shadow:none!important;
  background:#fff!important;
}
#roleSpecificPanel h3{
  margin:0 0 5px!important;font-size:12px!important;color:#6c7480!important
}
#rolePanelBody{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:7px!important
}
#rolePanelBody .role-line{
  display:block!important;padding:7px 9px!important;border:1px solid #eee7dc!important;
  border-radius:8px!important;background:#fffaf3!important;font-size:10.5px!important
}
#rolePanelBody .role-line span{display:block!important}
#rolePanelBody .role-line span:last-child{margin-top:3px!important}

/* KPI row directly after banner */
#dashboard .grid4{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;margin-bottom:10px!important
}
#dashboard .grid4>.card{
  min-height:96px!important;background:#fff!important;border:1px solid var(--line)!important;
  box-shadow:0 6px 17px rgba(31,37,48,.035)!important;padding:12px!important
}
#dashboard .grid4>.card:first-child{
  background:linear-gradient(145deg,#172233,#223247)!important;border-color:#24364a!important
}
#dashboard .grid4>.card:first-child .metric-label,
#dashboard .grid4>.card:first-child .metric-sub{color:#b8c1cc!important}
#dashboard .grid4>.card:first-child .metric-value{color:#fff!important}
.metric-value{font-size:27px!important}
.metric-label{font-size:9.5px!important}

/* Opportunity / activity area */
.workspace{
  grid-template-columns:minmax(0,1.55fr) minmax(315px,.72fr)!important;
  gap:10px!important
}
.section-head h2{font-size:14px!important}
table{font-size:11.5px!important}
th,td{padding:9px 8px!important}

/* Real graph visible and low, as reference */
.chart-card{
  margin-top:10px!important;margin-bottom:10px!important;
  border-radius:11px!important
}
.chart-wrap{height:205px!important}
.chart .line{stroke:var(--blue)!important;stroke-width:2.1!important}
.chart .area{fill:#edf4ff!important;opacity:.72!important}
.chart .point{fill:var(--blue)!important}

/* Settings page visual consistency */
.settings-layout{gap:10px!important}
.settings-nav{border-radius:10px!important;background:#fff!important;border:1px solid var(--line)!important;padding:7px!important}
.primary{background:linear-gradient(180deg,#c9952d,#ae7412)!important;border-radius:8px!important}
.secondary{border-radius:8px!important}
.toolbar{border-radius:9px!important;background:#fff!important;border-color:var(--line)!important}
input,select,textarea{border-radius:8px!important;border-color:#e5dfd5!important}

/* Green only for actual system/status states */
.dot{background:var(--green)!important}
.good{background:#edf8f2!important;color:#15764a!important}
.hot{background:#fff0e1!important;color:#ad5800!important}

/* Responsive */
@media(max-width:1180px){
  #dashboard .grid4{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  #rolePanelBody{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .workspace{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  main{padding:10px!important}
  .portal-feature{min-height:255px!important;padding:20px!important}
  .portal-feature h2{font-size:24px!important}.portal-feature h2 strong{font-size:29px!important}
  #dashboard .grid4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

:root{
  --cream:#fbf8f2;--white:#fff;--ink:#172033;--muted:#747d89;--line:#e9e2d6;
  --gold:#b88018;--gold2:#d3a44a;--blue:#1769e0;--green:#18a45f;--graphite:#182333;
  --shadow:0 8px 26px rgba(26,32,44,.055)
}
#dashboard{padding-top:0!important}
#dashboard .top,#dashboard #roleWelcome,#dashboard #roleSpecificPanel,#dashboard .portal-hero,#dashboard>.grid4,#dashboard>.workspace{display:none!important}

.dash-header{
  height:56px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;
  margin-bottom:10px
}
.dash-brand-center{grid-column:2;display:flex;align-items:center;gap:10px}
.dash-radar-mark{
  display:grid;place-items:center;width:40px;height:40px;border:2px solid var(--gold);border-radius:50%;
  color:var(--gold);font-size:28px;line-height:1
}
.dash-brand-center strong{display:block;font-size:22px;letter-spacing:-.035em}
.dash-brand-center span:last-child{display:block;font-size:10px;letter-spacing:.16em;color:#7a7f86;text-transform:uppercase}
.dash-header-actions{grid-column:3;justify-self:end;display:flex;gap:10px;align-items:center}
.dash-config-btn,.dash-online{height:39px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 13px;color:#263245}
.dash-config-btn{cursor:pointer;font-weight:700}
.dash-online{display:flex;align-items:center;gap:8px}
.dash-online strong{display:block;font-size:11px}.dash-online small{display:block;font-size:9px;color:#8a9098}
.dash-online .dot{width:9px;height:9px;border-radius:50%;background:var(--green)}

.dash-spotlight{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.2fr);gap:12px;align-items:stretch;margin-bottom:12px}
.dash-spotlight-copy,.dash-top3-grid{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.dash-spotlight-copy{padding:24px 24px 20px;background:linear-gradient(135deg,#fff8ed 0%,#fffdf8 100%)}
.dash-eyebrow{font-size:11px;letter-spacing:.12em;color:#626a76}
.dash-spotlight-copy h1{margin:10px 0 10px;font-size:29px;line-height:1.13;letter-spacing:.01em;color:#1b2638}
.dash-spotlight-copy p{font-size:12px;line-height:1.6;color:#536071;max-width:520px;margin:0}
.dash-hero-buttons{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.dash-hero-buttons button{border:1px solid #e5ded2;background:rgba(255,255,255,.92);padding:9px 13px;border-radius:8px;font-weight:750;cursor:pointer}
.dash-hero-buttons .dash-gold{background:linear-gradient(#c79127,#ad7414);border-color:#ad7414;color:#fff}
.dash-top3-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:12px;background:linear-gradient(180deg,#fff 0%,#fbfaf7 100%)}
.dash-top-card{border:1px solid #eee5d8;border-radius:11px;padding:12px;background:#fff;display:flex;flex-direction:column;gap:9px;min-height:218px}
.dash-top-card.rank-1{border-color:#e3c07b;box-shadow:0 8px 24px rgba(191,140,31,.10)}
.dash-top-card.rank-2{border-color:#d8dde5}.dash-top-card.rank-3{border-color:#eadfce}
.dash-top-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.dash-top-rank{font-size:10px;font-weight:800;padding:5px 8px;border-radius:999px;background:#fff1d9;color:#9b690d}
.dash-top-score{font-size:10px;color:#6f7782;font-weight:700}
.dash-top-card h3{margin:0;font-size:14px;line-height:1.35;color:#172033}
.dash-top-meta{font-size:10px;color:#7a828e;min-height:28px}
.dash-top-price{font-size:18px;font-weight:850;color:#172033}
.dash-top-tags{display:flex;gap:5px;flex-wrap:wrap}
.dash-top-tags span{font-size:9px;padding:4px 6px;border-radius:6px;background:#f5f7fa;color:#5f6875}
.dash-top-actions{margin-top:auto;display:flex;gap:6px;flex-wrap:wrap}
.dash-top-actions a{display:inline-block;border:1px solid #e4ded5;background:#fff;border-radius:7px;padding:7px 8px;font-size:10px;color:#263345;text-decoration:none;cursor:pointer}

.dash-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:12px}
.dash-kpi{
  min-height:103px;background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px;
  display:flex;gap:11px;align-items:flex-start;box-shadow:0 5px 18px rgba(26,32,44,.035)
}
.kpi-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;font-weight:900;flex:none}
.kpi-icon.ok{background:#e7f7ef;color:#16935a}.kpi-icon.plus{border:2px solid #78a5e6;color:#1769e0}
.kpi-icon.fire{background:#fff0df;color:#e46c00}.kpi-icon.user{background:#fff3d8;color:#c59322}.kpi-icon.score{border:2px solid #d2a748;color:#b88018}
.dash-kpi small{display:block;font-size:10.5px;font-weight:750;color:#4d596a}
.dash-kpi strong{display:block;font-size:27px;line-height:1.1;margin:7px 0 3px;color:#172033}
.dash-kpi em{font-style:normal;font-size:9.5px;color:#959ba3}

.dash-filters{
  display:grid;grid-template-columns:auto minmax(220px,330px) 165px 1fr;gap:10px;align-items:center;
  padding:9px;background:#fff;border:1px solid var(--line);border-radius:10px;margin-bottom:12px
}
.dash-segment{display:flex}
.dash-segment button{border:0;border-right:1px solid #eee8de;background:#fff;padding:9px 18px;cursor:pointer;color:#5f6773}
.dash-segment button:first-child{border-radius:7px 0 0 7px}.dash-segment button:last-child{border-radius:0 7px 7px 0;border-right:0}
.dash-segment button.active{background:#f5ebd8;color:#956816;font-weight:800}
.dash-filters select{height:37px;border:1px solid #e6dfd4;border-radius:8px;background:#fff;padding:0 10px}
.dash-filter-btn{justify-self:end;height:37px;border:1px solid #e6dfd4;background:#fff;border-radius:8px;padding:0 12px;cursor:pointer}

.dash-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.72fr);gap:12px;margin-bottom:12px}
.dash-opportunities,.dash-widget{background:#fff;border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow)}
.dash-opportunities{padding:14px}
.dash-section-title,.dash-widget-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}
.dash-section-title>div{display:flex;align-items:center;gap:9px}
.dash-section-title h2,.dash-widget-title h3{font-size:14px;margin:0}
.dash-section-title span{font-size:9px;background:#f5f3ef;padding:4px 7px;border-radius:6px;color:#747b85}
.dash-section-title button{border:0;background:transparent;color:#1769e0;font-size:10px;cursor:pointer}

.dash-owner-card{
  display:grid;grid-template-columns:90px minmax(0,1fr) 145px;gap:12px;align-items:center;
  padding:11px 0;border-top:1px solid #eee8df
}
.dash-owner-card:first-child{border-top:0}
.dash-owner-thumb{
  height:72px;border-radius:9px;background:linear-gradient(135deg,#e8ddcb,#b9a17d);
  display:grid;place-items:center;color:#7b684b;font-weight:800;font-size:11px;overflow:hidden
}
.dash-owner-title{font-size:14px;font-weight:800;color:#1e2939;margin-bottom:3px}
.dash-owner-meta{font-size:10px;color:#7a828e;margin-bottom:6px}
.dash-owner-tags{display:flex;gap:5px;flex-wrap:wrap}
.dash-owner-tags span{font-size:9px;padding:4px 6px;border-radius:6px;background:#f4f6f8;color:#5f6875}
.dash-owner-tags .direct{background:#e9f8ef;color:#167748}
.dash-owner-tags .source{background:#fff2dc;color:#996515}
.dash-owner-actions{text-align:right}
.dash-owner-price{font-size:15px;font-weight:850;margin-bottom:8px}
.dash-owner-actions a,.dash-owner-actions button{
  display:inline-block;border:1px solid #e4ded5;background:#fff;border-radius:7px;padding:7px 8px;
  font-size:10px;color:#263345;text-decoration:none;cursor:pointer
}

.dash-right-column{display:grid;gap:10px;align-content:start}
.dash-widget{padding:13px}
.dash-activity{display:grid;grid-template-columns:28px 1fr auto;gap:8px;align-items:start;padding:8px 0;border-top:1px solid #f0ebe3}
.dash-activity:first-child{border-top:0}
.dash-activity-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#edf6ff;color:#1769e0;font-size:11px}
.dash-activity strong{display:block;font-size:10.5px}.dash-activity span,.dash-activity time{font-size:9px;color:#858c96}
.dash-performance{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.dash-performance div{border:1px solid #eee8df;border-radius:8px;padding:10px}
.dash-performance small{display:block;font-size:9px;color:#7d8490}.dash-performance strong{display:block;font-size:19px;margin-top:5px}
.dash-region{display:grid;grid-template-columns:120px 1fr 34px;gap:8px;align-items:center;margin:8px 0}
.dash-region label,.dash-region span{font-size:9px}.dash-region-track{height:6px;border-radius:99px;background:#eeeae3;overflow:hidden}
.dash-region-track i{display:block;height:100%;background:#b88018;border-radius:99px}

.dash-chart-card{margin-bottom:15px}
.dash-chart-card .chart-wrap{height:205px}
#dashboard .chart .line{stroke:#1769e0;stroke-width:2.1}
#dashboard .chart .area{fill:#eaf2ff;opacity:.75}

@media(max-width:1100px){
  .dash-kpis{grid-template-columns:repeat(3,1fr)}
  .dash-main-grid{grid-template-columns:1fr}
  .dash-filters{grid-template-columns:1fr 1fr}
  .dash-filter-btn{justify-self:stretch}
}
@media(max-width:720px){
  .dash-header{grid-template-columns:1fr auto}.dash-brand-center{grid-column:1}.dash-header-actions{grid-column:2}
  .dash-brand-center span:last-child{display:none}.dash-config-btn{display:none}
  .dash-spotlight{grid-template-columns:1fr}.dash-top3-grid{grid-template-columns:1fr}.dash-spotlight-copy h1{font-size:23px}
  .dash-kpis{grid-template-columns:repeat(2,1fr)}
  .dash-filters{grid-template-columns:1fr}.dash-segment{width:100%}.dash-segment button{flex:1}
  .dash-owner-card{grid-template-columns:1fr}.dash-owner-thumb{display:none}.dash-owner-actions{text-align:left}
}

/* v22.10 — busca registral automática */
.registry-search-button{min-width:210px;min-height:44px}
.registry-search-button:disabled{cursor:wait;opacity:.72}
.registry-lookup-result{margin-top:12px;padding:14px;border:1px solid #dbe4ee;border-radius:12px;background:#fff;color:#182334}
.registry-lookup-result.hidden{display:none}
.registry-lookup-result>strong,.registry-lookup-result>span{display:block}
.registry-lookup-result>span{margin-top:4px;color:#677487;font-size:11px}
.registry-lookup-loading{background:#f7f9fc}
.registry-lookup-error{background:#fff6f4;border-color:#efc9c1;color:#8f2f24}
.registry-lookup-error span{color:#8f2f24}
.registry-lookup-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.registry-lookup-head>div{display:flex;flex-direction:column;gap:3px}
.registry-lookup-head strong{font-size:13px}
.registry-lookup-head small{font-size:10px;color:#627081}
.registry-lookup-check{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e6f4ff;color:#1264a3;font-size:17px;font-weight:900}
.registry-lookup-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:8px}
.registry-lookup-grid>div{min-width:0;padding:10px;border:1px solid #e4eaf1;border-radius:9px;background:#f9fbfd}
.registry-lookup-grid>div:first-child,.registry-lookup-grid>div:last-child{grid-column:span 2}
.registry-lookup-grid span,.registry-lookup-grid b{display:block}
.registry-lookup-grid span{margin-bottom:4px;color:#6b7787;font-size:9px;text-transform:uppercase;letter-spacing:.04em}
.registry-lookup-grid b{font-size:10.5px;line-height:1.4;overflow-wrap:anywhere}
.registry-pending{color:#966300}
.registry-lookup-warning{margin-top:10px;padding:10px 11px;border-radius:9px;background:#fff8e8;color:#76560e;font-size:10px;line-height:1.45}
.registry-lookup-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.registry-lookup-actions button{min-height:40px}
body[data-theme] .registry-lookup-result{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}
body[data-theme] .registry-lookup-loading{background:var(--surface-soft)!important}
body[data-theme] .registry-lookup-error{background:var(--surface-soft)!important;color:var(--text)!important}
body[data-theme] .registry-lookup-error span,body[data-theme] .registry-lookup-head small,body[data-theme] .registry-lookup-grid span{color:var(--muted)!important}
body[data-theme] .registry-lookup-grid>div{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important}
body[data-theme] .registry-lookup-check{background:var(--surface-soft)!important;color:var(--accent)!important}
body[data-theme] .registry-lookup-warning{background:var(--surface-soft)!important;color:var(--text)!important;border:1px solid var(--line)!important}
body[data-theme] .registry-lookup-actions button{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}

@media(max-width:720px){
  .registry-actions-row button,.registry-lookup-actions button{min-height:44px;font-size:13px!important}
  .registry-search-button{width:100%;min-width:0}
  .registry-lookup-result{padding:12px}
  .registry-lookup-grid{grid-template-columns:1fr}
  .registry-lookup-grid>div:first-child,.registry-lookup-grid>div:last-child{grid-column:auto}
  .registry-lookup-actions{display:grid;grid-template-columns:1fr}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

/* Banner: imagem não é mais esticada. Ela ocupa somente a faixa direita. */
.dash-hero:before{
  content:"";
  position:absolute;
  top:0;right:0;bottom:0;
  width:59%;
  background:
    linear-gradient(90deg,rgba(255,248,237,.98) 0%,rgba(255,248,237,.45) 13%,rgba(255,248,237,0) 31%),
    url('banner-cidade-exata.jpg') right center/auto 100% no-repeat;
  z-index:0;
}
.dash-hero:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(255,248,237,1) 0%,rgba(255,248,237,.96) 32%,rgba(255,248,237,.18) 59%,rgba(255,248,237,0) 76%);
  z-index:1;pointer-events:none
}
.dash-hero-copy{z-index:2!important}
@media(max-width:850px){
  .dash-hero:before{width:100%;opacity:.38}
  .dash-hero:after{background:rgba(255,248,237,.82)}
}

/* Link original sempre visível + botão de mais ações (popover único, sem :hover empilhável) */
.property-link-wrap{position:relative;display:inline-block;max-width:100%}
.property-link-trigger{
  color:#135fc7!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-underline-offset:2px!important;
  font-weight:800!important;
}
.property-link-trigger:hover{color:#0d4fa9!important;opacity:1!important}
.property-more-btn{
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;margin-left:5px;vertical-align:middle;
  border:1px solid #dfd8ce;background:#fff;border-radius:6px;
  cursor:pointer;font-size:13px;line-height:1;color:#4b5665
}
.property-more-btn:hover{background:#f7f3ec}
.source-action{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:98px;padding:7px 9px;border-radius:7px;
  border:1px solid #dfd8cc;background:#fff;color:#253246!important;
  text-decoration:none!important;font-size:10.5px;font-weight:750
}
.source-action:hover{background:#f7f2e9}
.source-missing{font-size:10px;color:#9aa0a8}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.owners-pro-table th:last-child,.owners-pro-table td:last-child{width:70px}
.owners-pro-table td{vertical-align:middle}
.owner-status{
  display:inline-flex;align-items:center;white-space:nowrap;
  padding:5px 8px;border-radius:999px;font-size:10px;font-weight:800
}
.status-approved{background:#e8f7ef;color:#147747}
.status-review{background:#fff4dc;color:#9a6814}
.status-hot{background:#fff0e2;color:#b65700}
.status-pending{background:#eef3f8;color:#607084}
.status-rejected{background:#fff0f0;color:#b64c4c}
.status-qa{background:#f1eefb;color:#6654a4}
.owner-actions{display:flex;align-items:center;gap:6px;white-space:nowrap}
.owner-more{
  width:32px;height:32px;border:1px solid #dfd8ce;background:#fff;border-radius:8px;
  cursor:pointer;font-size:18px;line-height:1;color:#4b5665
}
.owner-more:hover{background:#f7f3ec}
.owner-delete{opacity:.72}
.owner-delete:hover{opacity:1}
.owners-pro-table .property-link-trigger{
  color:#1769e0!important;text-decoration:underline!important;text-underline-offset:2px!important
}
.owners-pro-table .small{color:#9298a1}
@media(max-width:980px){
  .owners-pro-table{min-width:1060px}
  #ownersTable{overflow-x:auto}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.match-real-head{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:2px 2px 14px;margin-bottom:2px;border-bottom:1px solid #eee8de
}
.match-real-head strong{display:block;font-size:14px;color:#1d2939}
.match-real-head span:not(.match-live-dot){display:block;margin-top:3px;font-size:10px;color:#858c96}
.match-live-dot{display:flex!important;align-items:center;gap:6px!important;margin:0!important;font-size:10px!important;color:#5c6877!important}
.match-live-dot i{width:8px;height:8px;border-radius:50%;background:#18a45f}
.match-real-table td{vertical-align:middle}
.match-score{display:inline-flex;white-space:nowrap;padding:6px 9px;border-radius:999px;font-weight:850;font-size:11px}
.match-hot{background:#fff0e2;color:#ae5600}
.match-high{background:#eaf7f0;color:#137548}
.match-mid{background:#eef3fa;color:#53667e}
.match-source-actions{display:flex;flex-direction:column;gap:5px;min-width:115px}
.match-source-actions a{
  display:inline-flex;align-items:center;justify-content:center;
  padding:7px 8px;border:1px solid #dfd8cd;border-radius:7px;background:#fff;
  color:#1769e0;text-decoration:none;font-size:10px;font-weight:750
}
.match-source-actions a:hover{background:#f8f4ed}
.match-source-actions span{font-size:9px;color:#969ca4}
@media(max-width:980px){
  .match-real-table{min-width:1050px}
  #matchesTable{overflow-x:auto}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

#reports .grid4>.card:nth-child(n+2){background:#fff!important}
#reports .metric-sub{color:#8e95a0}
.auth-success.show{display:block}
#ljiForgotPassword{cursor:pointer}
.import-admin-note{font-size:11px;color:#7a828d}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

/* ---------- PERFIS ---------- */
.role-console{
  display:none;
  margin:0 0 12px;
  padding:11px 13px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--panel);
  box-shadow:var(--shadow);
  align-items:center;
  justify-content:space-between;
  gap:14px
}
body[data-user-role="super_admin"] .role-console-ceo{display:flex}
body[data-user-role="gestor"] .role-console-manager{display:flex}
.role-console-title span{display:block;font-size:12px;font-weight:850;color:var(--text)}
.role-console-title small{display:block;margin-top:2px;font-size:9.5px;color:var(--muted)}
.role-console-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.role-console-actions button{
  border:1px solid var(--line);background:var(--panel);color:var(--text);
  border-radius:8px;padding:7px 9px;font-size:9.5px;font-weight:750;cursor:pointer
}
.role-console-actions button:hover{border-color:var(--accent);color:var(--accent)}

/* ---------- RELATÓRIOS ---------- */
#reports .grid4 .card{background:var(--panel)!important}
#reports .grid4 .card:first-child{background:linear-gradient(145deg,#172233,#223247)!important}
#reports .grid4 .card:first-child .metric-label{color:#bac4cf!important}
#reports .grid4 .card:first-child .metric-value{color:#fff!important}
#reports .grid4 .card:not(:first-child) .metric-label{color:var(--muted)!important}
#reports .grid4 .card:not(:first-child) .metric-value{color:var(--text)!important}
.report-funnel-link{
  width:100%;display:grid;grid-template-columns:1fr auto 12px;align-items:center;gap:9px;
  border:0;border-top:1px solid var(--line);background:transparent;color:var(--text);
  padding:13px 3px;text-align:left;cursor:pointer
}
.report-funnel-link:first-child{border-top:0}
.report-funnel-link:hover{background:var(--accent2)}
.report-funnel-link strong{display:block;font-size:12px}
.report-funnel-link small{display:block;margin-top:2px;font-size:8.5px;color:var(--muted)}
.report-funnel-count{
  display:grid;place-items:center;min-width:28px;height:28px;padding:0 7px;
  border-radius:999px;background:#eaf7f0;color:#15764a;font-size:10px;font-weight:850
}
.report-funnel-link b{font-size:19px;color:var(--muted)}

/* ---------- TEMA REAL ---------- */
body{
  background:var(--bg)!important;
  color:var(--text)!important;
  transition:background .18s ease,color .18s ease
}
.sidebar, .dash-opportunities,.dash-widget,.card,.toolbar,.dash-filters,
.settings-nav,.role-console,.dash-kpi{
  background:var(--panel)!important;
  border-color:var(--line)!important;
  color:var(--text)!important
}
.nav button,.title p,.small,.metric-sub,.dash-kpi em,.dash-kpi small{color:var(--muted)!important}
.nav button.active{background:var(--accent2)!important;color:var(--accent)!important}
.primary,.dash-gold{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}
.dash-segment button.active{background:var(--accent2)!important;color:var(--accent)!important}
a,.property-link-trigger{color:var(--accent)!important}
input,select,textarea{background:var(--panel)!important;color:var(--text)!important;border-color:var(--line)!important}
.setting-row,.dash-owner-card,.dash-activity,.report-funnel-link{border-color:var(--line)!important}

/* Champagne */
html[data-theme="champagne"],body[data-theme="champagne"]{
  --bg:#f8f6f2;--panel:#fffdfa;--text:#172033;--muted:#747d89;--line:#e9e2d6;
  --accent:#b88018;--accent2:#f5ebd8;--accent3:#d3a44a;--shadow:0 8px 26px rgba(26,32,44,.055)
}
/* Esmeralda */
html[data-theme="emerald"],body[data-theme="emerald"]{
  --bg:#f1f8f5;--panel:#ffffff;--text:#173229;--muted:#6d8179;--line:#dbeae3;
  --accent:#11845e;--accent2:#e4f4ed;--accent3:#43b88c;--shadow:0 8px 26px rgba(20,70,50,.07)
}
body[data-theme="emerald"] .dash-hero{background:#f2fbf7!important}
body[data-theme="emerald"] .dash-hero:after{background:linear-gradient(90deg,rgba(242,251,247,1) 0%,rgba(242,251,247,.96) 32%,rgba(242,251,247,.18) 59%,rgba(242,251,247,0) 76%)!important}

/* Grafite */
html[data-theme="graphite"],body[data-theme="graphite"]{
  --bg:#eef1f4;--panel:#ffffff;--text:#242a31;--muted:#747c86;--line:#dce1e6;
  --accent:#59636f;--accent2:#e7ebef;--accent3:#8b929a;--shadow:0 8px 24px rgba(35,42,50,.07)
}
body[data-theme="graphite"] .dash-hero{background:#eef1f4!important}
body[data-theme="graphite"] .dash-hero:after{background:linear-gradient(90deg,rgba(238,241,244,1) 0%,rgba(238,241,244,.96) 32%,rgba(238,241,244,.16) 59%,rgba(238,241,244,0) 76%)!important}

/* Dark Mode */
html[data-theme="dark"],body[data-theme="dark"]{
  --bg:#0f1318;--panel:#171c22;--text:#f2f4f7;--muted:#9aa4af;--line:#2a3139;
  --accent:#d1a64a;--accent2:#282318;--accent3:#b78327;--shadow:0 10px 28px rgba(0,0,0,.25)
}
body[data-theme="dark"] main{background:#0f1318!important}
body[data-theme="dark"] .sidebar{background:#13181e!important}
body[data-theme="dark"] .dash-hero{background:#171c22!important}
body[data-theme="dark"] .dash-hero:after{background:linear-gradient(90deg,rgba(23,28,34,1) 0%,rgba(23,28,34,.96) 33%,rgba(23,28,34,.38) 60%,rgba(23,28,34,.08) 78%)!important}
body[data-theme="dark"] .dash-hero h1,body[data-theme="dark"] .dash-hero p,body[data-theme="dark"] .dash-eyebrow{color:#f2f4f7!important}
body[data-theme="dark"] .dash-kpi strong,body[data-theme="dark"] .dash-section-title h2,
body[data-theme="dark"] .dash-widget-title h3,body[data-theme="dark"] table,
body[data-theme="dark"] th,body[data-theme="dark"] td{color:#f2f4f7!important}
body[data-theme="dark"] th{background:#1d232a!important}
body[data-theme="dark"] .source-action,body[data-theme="dark"] .owner-more,body[data-theme="dark"] .property-more-btn,
body[data-theme="dark"] .dash-owner-actions a,body[data-theme="dark"] .dash-owner-actions button{
  background:#1c2229!important;color:#f2f4f7!important;border-color:#343c45!important
}
body[data-theme="dark"] .report-funnel-count{background:#18352a;color:#71d5a5}
body[data-theme="dark"] .notice{background:#201d16!important;color:#d8c79e!important;border-color:#3d3422!important}

/* theme cards clearly show selected state */
.theme{cursor:pointer}
.theme.active{outline:2px solid var(--accent)!important;box-shadow:0 0 0 4px var(--accent2)!important}

@media(max-width:1000px){
  .role-console{align-items:flex-start;flex-direction:column}
  .role-console-actions{justify-content:flex-start}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.lj-radar-logo{display:inline-grid;place-items:center;width:42px;height:42px;flex:none}
.lj-radar-logo svg{width:100%;height:100%;overflow:visible}
.lj-radar-logo circle,.lj-radar-logo path{fill:none;stroke:var(--accent,#b88018);stroke-width:1.8}
.lj-radar-logo .radar-dot{fill:var(--accent,#b88018);stroke:none}
.brand-radar{display:flex!important;align-items:center!important;gap:9px!important;font-size:16px!important}
.brand-radar .lj-radar-logo{width:39px;height:39px}
.auth-brand .lj-radar-logo{width:44px;height:44px}
.dash-brand-center .lj-radar-logo{width:42px;height:42px}

.handler-select{
  min-width:150px;max-width:190px;height:34px;padding:0 8px;
  border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);font-size:10px
}
.handler-readonly{font-size:10px;color:var(--muted)}
.handler-date{margin-top:3px;font-size:8.5px;color:var(--muted)}
.admin-users-table td{vertical-align:middle}
.member-role-select{min-width:145px;height:35px}
.member-status{
  border:0;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:800;cursor:pointer
}
.member-status.active{background:#e8f7ef;color:#147747}
.member-status.inactive{background:#fff0f0;color:#a94646}
.member-status:disabled,.member-role-select:disabled{opacity:.65;cursor:not-allowed}
.history-kpis{margin-bottom:16px}
.history-event{
  display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start;
  padding:10px 0;border-top:1px solid var(--line)
}
.history-event:first-child{border-top:0}
.history-event strong{display:block;font-size:11px}
.history-event span{display:block;margin-top:2px;font-size:9px;color:var(--muted)}
.history-event time{font-size:9px;color:var(--muted);white-space:nowrap}
.report-funnel-link{cursor:pointer!important;position:relative}
.report-funnel-link:hover strong{color:var(--accent)!important}
.report-funnel-link b{font-size:22px!important;color:var(--accent)!important}
#users-admin .top,#history .top{margin-bottom:12px}
#ownersTable{overflow-x:auto}
.owners-pro-table{min-width:1280px}
@media(max-width:980px){
  .handler-select{min-width:135px}
  .admin-users-table{min-width:760px}
  #adminUsersBody{overflow-x:auto}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

/* Match Engine KPI cards: previously values were white on white */
#matches .grid4>.card{background:var(--panel)!important;border-color:var(--line)!important}
#matches .grid4>.card .metric-value{color:var(--text)!important}
#matches .grid4>.card .metric-label,#matches .grid4>.card .metric-sub{color:var(--muted)!important}
#matches .grid4>.card:first-child{background:linear-gradient(145deg,#172233,#223247)!important;border-color:#263345!important}
#matches .grid4>.card:first-child .metric-value{color:#fff!important}
#matches .grid4>.card:first-child .metric-label,#matches .grid4>.card:first-child .metric-sub{color:#bac4cf!important}

/* Discarded / not approved */
.nav-count{display:inline-grid;place-items:center;min-width:20px;height:20px;margin-left:auto;padding:0 5px;border-radius:999px;background:#f5ead7;color:#986814;font-size:9px;font-weight:850}
.discarded-toolbar{margin-bottom:14px}
.discarded-kpis .card:not(:first-child){background:var(--panel)!important}
.discarded-kpis .card:not(:first-child) .metric-value{color:var(--text)!important}
.discarded-table{min-width:1280px}
#discardedTable{overflow-x:auto}
.discarded-table td{vertical-align:middle}
.discarded-category{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}
.cat-rejected{background:#fff0f0;color:#a84a4a}
.cat-review{background:#fff3dc;color:#956511}
.discarded-reason{max-width:310px;font-size:9.5px;color:var(--muted)}
#discarded .source-action{white-space:nowrap}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

/* KPI values must remain visible on every theme */
#intentions .grid4>.card,#matches .grid4>.card{
  background:var(--panel)!important;border-color:var(--line)!important
}
#intentions #iTotal,#intentions #iHot,#intentions #iEnriched,#intentions #iMatches,
#matches #mtotal,#matches #mhot,#matches #mhigh,#matches #mmid{
  display:block!important;visibility:visible!important;opacity:1!important;
  color:var(--text)!important;font-size:28px!important;font-weight:900!important;line-height:1.05!important
}
#intentions .metric-label,#intentions .metric-sub,#matches .metric-label,#matches .metric-sub{
  color:var(--muted)!important;opacity:1!important
}
#intentions .grid4>.card:first-child,#matches .grid4>.card:first-child{
  background:linear-gradient(145deg,#172233,#223247)!important;border-color:#263345!important
}
#intentions .grid4>.card:first-child #iTotal,#matches .grid4>.card:first-child #mtotal{color:#fff!important}
#intentions .grid4>.card:first-child .metric-label,#intentions .grid4>.card:first-child .metric-sub,
#matches .grid4>.card:first-child .metric-label,#matches .grid4>.card:first-child .metric-sub{color:#bec8d3!important}

/* Real property photos */
.dash-owner-thumb{position:relative;background:linear-gradient(135deg,#e8ddcb,#b9a17d)!important}
.dash-owner-thumb.has-image{display:block!important}
.dash-owner-thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:9px}
.dash-owner-tx{
  position:absolute;left:7px;top:7px;padding:4px 6px;border-radius:6px;
  background:rgba(20,27,36,.78);color:#fff;font-size:8px;font-weight:850;letter-spacing:.03em
}
.dash-owner-thumb:not(.has-image) .dash-owner-tx{display:none}

.match-property-card{display:grid;grid-template-columns:72px minmax(170px,1fr);gap:9px;align-items:center;min-width:260px}
.match-property-card.compact{grid-template-columns:60px minmax(160px,1fr)}
.match-property-image{width:72px;height:56px;border-radius:8px;overflow:hidden;background:#eee8dd;display:grid;place-items:center;color:#8b8172;font-size:9px}
.match-property-card.compact .match-property-image{width:60px;height:48px}
.match-property-image img{width:100%;height:100%;object-fit:cover;display:block}
.match-property-image.image-missing:after{content:'Sem foto';font-size:8px;color:#8b8172}
.match-property-card strong{display:block;font-size:10.5px;line-height:1.25}
.match-property-card span{display:block;margin-top:3px;font-size:9px;color:var(--muted);line-height:1.3}

@media(max-width:720px){
  .dash-owner-thumb{display:block!important;height:150px!important}
  .match-property-card{grid-template-columns:56px minmax(150px,1fr)}
  .match-property-image{width:56px;height:46px}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.ops-dashboard-card{margin:12px 0!important;padding:13px 15px!important}.ops-chart-head{margin-bottom:4px!important}.ops-chart-head>div:first-child h2{margin:0}
.ops-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.8fr);gap:12px;align-items:stretch}
.ops-dashboard-left{min-width:0}
.ops-dashboard-side{display:block}
.ops-side-card{height:100%;border:1px solid #eee5d8;border-radius:12px;padding:12px;background:linear-gradient(180deg,#fffaf1 0%,#ffffff 100%)}
.ops-side-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}
.ops-side-head strong{font-size:13px;color:#1c2738}.ops-side-head span{font-size:10px;color:#7b828d}
.ops-side-kpis{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}
.ops-side-kpis div{border:1px solid #ece3d5;border-radius:10px;padding:10px;background:#fff}
.ops-side-kpis small{display:block;font-size:9px;color:#7d8490}.ops-side-kpis strong{display:block;font-size:20px;margin-top:4px;color:#172033}
.ops-side-insight{border:1px solid #ece3d5;border-radius:10px;background:#fff;padding:10px;margin-bottom:10px}
.ops-side-insight strong{display:block;font-size:11px;color:#172033;margin-bottom:3px}.ops-side-insight span{font-size:10px;color:#616b78}
.ops-side-list{display:grid;gap:8px}.ops-side-item{border-top:1px solid #efe7db;padding-top:8px}.ops-side-item:first-child{border-top:0;padding-top:0}
.ops-side-item b{display:block;font-size:10.5px;color:#172033;margin-bottom:2px}.ops-side-item span{font-size:10px;color:#616b78;line-height:1.45}
.ops-side-cta{margin-top:12px;width:100%;height:38px;border:1px solid #dec79d;background:#b88018;color:#fff;border-radius:9px;font-weight:800;cursor:pointer}
.ops-chart-compact .ops-chart-body{height:124px;gap:8px}.ops-chart-compact .ops-bar b{font-size:10px}
.ops-chart-empty{min-height:170px;display:grid;place-items:center;color:var(--muted)}
.ops-legend{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin:5px 0 10px;font-size:9px;color:var(--muted)}.ops-legend span{display:inline-flex;align-items:center;gap:5px}.ops-legend i{width:9px;height:9px;border-radius:3px;display:inline-block}
.ops-chart-body{height:150px;display:grid;grid-template-columns:repeat(var(--ops-days),minmax(42px,1fr));gap:9px;align-items:end;padding:5px 3px 0;border-bottom:1px solid var(--line)}
.ops-day{height:100%;display:grid;grid-template-rows:1fr 22px;gap:5px;min-width:0}.ops-day>span{text-align:center;font-size:8.5px;color:var(--muted);white-space:nowrap}.ops-bars{display:flex;align-items:flex-end;justify-content:center;gap:4px;height:100%;border-bottom:1px dashed var(--line)}
.ops-bar{position:relative;width:min(18px,28%);min-height:0;border-radius:5px 5px 2px 2px;transition:height .18s ease}.ops-bar b{position:absolute;left:50%;transform:translateX(-50%);top:-15px;font-size:8px;color:var(--text);font-weight:850}
.series-intentions{background:#b88018!important}.series-results{background:#496f9c!important}.series-opportunities{background:#2e8b63!important}.series-runs{background:#7b668e!important}
.ops-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}.ops-kpis .card{padding:14px!important;background:var(--panel)!important}.ops-kpis .metric-value{color:var(--text)!important}
.ops-chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ops-chart-grid .ops-chart-empty{min-height:245px}.ops-chart-grid .ops-chart-body{height:215px}
.ops-daily-table td,.ops-daily-table th{text-align:right}.ops-daily-table td:first-child,.ops-daily-table th:first-child{text-align:left}.charts-shortcut{margin-left:auto;white-space:nowrap}
@media(max-width:1100px){.ops-kpis{grid-template-columns:repeat(3,1fr)}.ops-chart-grid{grid-template-columns:1fr}.dash-spotlight{grid-template-columns:1fr}.dash-top3-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.ops-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:720px){.ops-kpis{grid-template-columns:repeat(2,1fr)}.ops-chart-body{overflow-x:auto;grid-auto-columns:58px;grid-template-columns:none;grid-auto-flow:column}.ops-dashboard-card{padding:11px!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

html,body{max-width:100%;overflow-x:hidden}

@media(max-width:720px){
  .app{display:block!important;width:100%!important;max-width:100vw!important;overflow-x:hidden!important}
  .sidebar{display:none!important}
  main{
    width:100%!important;max-width:100vw!important;min-width:0!important;
    margin:0!important;padding:12px!important;box-sizing:border-box!important;overflow-x:hidden!important
  }
  .page{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}

  /* Cabeçalho */
  .dash-header{
    width:100%!important;height:auto!important;min-height:54px!important;
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:8px!important;margin:0 0 10px!important
  }
  .dash-brand-center{
    grid-column:auto!important;min-width:0!important;gap:7px!important;flex:1 1 auto!important
  }
  .dash-brand-center .lj-radar-logo{width:36px!important;height:36px!important;flex:0 0 36px!important}
  .dash-brand-center>div{min-width:0!important}
  .dash-brand-center strong{
    font-size:17px!important;line-height:1.05!important;white-space:nowrap!important;
    overflow:hidden!important;text-overflow:ellipsis!important
  }
  .dash-brand-center span:last-child{display:none!important}
  .dash-header-actions{grid-column:auto!important;flex:0 0 auto!important;min-width:0!important}
  .dash-config-btn{display:none!important}
  .dash-online{
    height:auto!important;min-height:36px!important;max-width:138px!important;
    padding:6px 8px!important;gap:6px!important;box-sizing:border-box!important
  }
  .dash-online strong{font-size:9.5px!important;line-height:1.1!important}
  .dash-online small{font-size:7.5px!important;line-height:1.15!important}
  .dash-online .dot{width:7px!important;height:7px!important;flex:0 0 7px!important}

  /* Hero */
  .dash-hero{
    width:100%!important;height:auto!important;min-height:330px!important;
    margin:0 0 10px!important;border-radius:12px!important;overflow:hidden!important
  }
  .dash-hero:before{
    width:100%!important;height:100%!important;opacity:.24!important;
    background:
      linear-gradient(90deg,rgba(255,248,237,.96),rgba(255,248,237,.72)),
      url('banner-cidade-exata.jpg') right center/cover no-repeat!important
  }
  .dash-hero:after{background:rgba(255,248,237,.58)!important}
  .dash-hero-copy{
    position:relative!important;left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;max-width:none!important;padding:25px 22px 22px!important;box-sizing:border-box!important
  }
  .dash-eyebrow{font-size:10px!important;letter-spacing:.11em!important}
  .dash-hero h1{
    margin:10px 0 12px!important;font-size:26px!important;line-height:1.08!important;
    letter-spacing:0!important;overflow-wrap:anywhere!important;word-break:normal!important
  }
  .dash-hero h1 b{font-size:29px!important;line-height:1.05!important}
  .dash-hero p{font-size:12px!important;line-height:1.5!important;max-width:none!important;margin:0!important}
  .dash-hero-buttons{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:14px!important}
  .dash-hero-buttons button{width:100%!important;padding:9px 7px!important;font-size:10px!important}
  .dash-hero-buttons button:first-child{grid-column:1/-1!important}

  /* Central do CEO / gestão */
  .role-console{
    width:100%!important;max-width:100%!important;box-sizing:border-box!important;
    padding:12px!important;gap:10px!important;margin-bottom:10px!important
  }
  .role-console-title{width:100%!important}
  .role-console-title span{font-size:13px!important}
  .role-console-title small{font-size:9px!important;line-height:1.35!important}
  .role-console-actions{
    width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;
    gap:7px!important;justify-content:stretch!important
  }
  .role-console-actions button{
    width:100%!important;min-width:0!important;padding:9px 7px!important;
    font-size:9.5px!important;white-space:normal!important
  }

  /* KPIs */
  .dash-kpis{
    width:100%!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;margin-bottom:10px!important
  }
  .dash-kpi{
    min-width:0!important;min-height:112px!important;padding:11px!important;gap:8px!important;
    box-sizing:border-box!important
  }
  .kpi-icon{width:25px!important;height:25px!important;flex:0 0 25px!important}
  .dash-kpi>div{min-width:0!important}
  .dash-kpi small{font-size:9px!important;line-height:1.2!important}
  .dash-kpi strong{font-size:24px!important;margin:6px 0 2px!important}
  .dash-kpi em{font-size:8px!important;line-height:1.2!important}

  /* Demais blocos */
  .ops-dashboard-card,.dash-filters,.dash-main-grid,.dash-opportunities,.dash-widget{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important
  }
  .dash-filters{grid-template-columns:1fr!important}
  .dash-main-grid{grid-template-columns:1fr!important}
  .dash-owner-card{grid-template-columns:1fr!important}
  .dash-owner-thumb{height:170px!important}
  .ops-chart-body{max-width:100%!important}
}

@media(max-width:390px){
  main{padding:9px!important}
  .dash-brand-center strong{font-size:15px!important}
  .dash-online{max-width:124px!important}
  .dash-hero-copy{padding:22px 18px 20px!important}
  .dash-hero h1{font-size:23px!important}
  .dash-hero h1 b{font-size:26px!important}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.password-input-wrap{position:relative;width:100%}.password-input-wrap input{width:100%!important;padding-right:74px!important;box-sizing:border-box!important}
.password-visibility{position:absolute;right:7px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#8b651e;font-size:10px;font-weight:800;cursor:pointer;padding:7px}
.dash-kpi-link{font-family:inherit;text-align:left;color:inherit;cursor:pointer;width:100%;border:1px solid var(--line)!important;position:relative}
.dash-kpi-link:hover{transform:translateY(-1px);border-color:var(--accent)!important;box-shadow:0 8px 24px rgba(26,32,44,.08)!important}
.kpi-open{display:block;margin-top:5px;font-size:8.5px;font-weight:850;color:var(--accent)}
.status-history{background:#eef1f4;color:#65707c}.owner-archived-row{background:rgba(245,246,247,.42)}.owner-archived-row strong{color:#596572}
.intent-history-status{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}.intent-history-status.active{background:#e8f7ef;color:#147747}.intent-history-status.archived{background:#eef1f4;color:#68727d}
.owners-toolbar{grid-template-columns:minmax(280px,1fr) 180px 260px!important}
@media(max-width:900px){.owners-toolbar{grid-template-columns:1fr!important}.owners-toolbar input,.owners-toolbar select{width:100%!important}.dash-kpi-link{min-width:0!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.top-actions{display:flex;gap:8px;align-items:center}.source-coverage{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.source-card{background:var(--panel);border:1px solid var(--line);border-radius:11px;padding:12px;box-shadow:var(--shadow)}.source-card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.source-card>strong{display:block;font-size:25px;margin:10px 0 1px}.source-card>span{font-size:9px;color:var(--muted)}.source-card>small{display:block;font-size:8.5px;color:var(--muted);margin-top:6px;line-height:1.35}.source-state{font-size:8px;font-weight:800;border-radius:999px;padding:4px 6px}.source-state.on{background:#e7f7ef;color:#157548}.source-state.off{background:#f3f3f3;color:#777}
.source-badge{display:inline-flex;align-items:center;gap:4px;padding:5px 7px;border-radius:999px;font-size:9px;font-weight:850;text-decoration:none!important;white-space:nowrap}.source-olx{background:#f1edff;color:#5e33b8!important}.source-facebook{background:#eaf2ff;color:#2168c8!important}.source-direct{background:#fff1d7;color:#9a6814!important}.source-imovelweb{background:#eaf7f0;color:#16744a!important}.source-other{background:#eef1f4;color:#596573!important}.direct-owner-flag{display:block;margin-top:5px;font-size:8px;color:#147747;font-weight:800}.deep-toolbar{grid-template-columns:minmax(240px,1fr) 165px 180px 145px 180px!important}.deep-table{min-width:1240px}.contact-btn{display:inline-flex;padding:5px 7px;border-radius:7px;text-decoration:none!important;font-size:9px;font-weight:800;margin:0 4px 4px 0}.contact-btn.whatsapp{background:#e7f8ef;color:#137649!important}.contact-btn.phone{background:#eaf2ff;color:#255f9f!important}.contact-method{display:inline-block;font-size:9px;font-weight:700;color:var(--text)}.contact-note{font-size:8px;color:var(--muted);line-height:1.3;margin-top:4px;max-width:220px}
.excel-import-card input[type=file]{width:100%;padding:12px;border:1px dashed var(--line);border-radius:9px;background:var(--panel)}.excel-preview{margin-top:12px}.excel-preview-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:10px}.excel-preview-row strong{max-width:65%}.excel-preview-row span{color:var(--muted)}.import-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.user-permission-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.user-permission-card{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--panel);color:var(--text);padding:12px;border-radius:11px;cursor:pointer}.user-permission-card:hover{border-color:var(--accent);box-shadow:var(--shadow)}.user-permission-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--accent2);color:var(--accent);font-weight:900}.user-permission-main strong,.user-permission-main span,.user-permission-main small{display:block}.user-permission-main span{font-size:9px;color:var(--muted);margin-top:2px}.user-permission-main small{font-size:8.5px;color:var(--muted);margin-top:4px}.user-permission-action{font-size:9px;font-weight:800;color:var(--accent);white-space:nowrap}.permission-editor{position:fixed;inset:0;background:rgba(15,20,27,.38);z-index:200;display:grid;place-items:center;padding:18px}.permission-editor.hidden{display:none}.permission-panel{width:min(720px,96vw);max-height:90vh;overflow:auto;background:var(--panel);border-radius:15px;padding:18px;border:1px solid var(--line);box-shadow:0 18px 50px rgba(0,0,0,.22)}.permission-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:14px}.permission-head h2{margin:0}.permission-head span{font-size:10px;color:var(--muted)}.permission-close{border:0;background:transparent;font-size:25px;color:var(--muted);cursor:pointer}.permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.permission-grid label{display:flex;align-items:center;gap:8px;padding:10px;border:1px solid var(--line);border-radius:9px;font-size:10px;cursor:pointer}.permission-grid input{width:16px;height:16px}.permission-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}
@media(max-width:1000px){.source-coverage{grid-template-columns:repeat(2,1fr)}.deep-toolbar{grid-template-columns:1fr 1fr!important}.user-permission-list{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.top-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.top-actions button{width:100%}.source-coverage{grid-template-columns:1fr 1fr}.deep-toolbar{grid-template-columns:1fr!important}.deep-toolbar>*{width:100%!important}.deep-table{min-width:1080px}.user-permission-list{grid-template-columns:1fr}.permission-grid{grid-template-columns:1fr}.excel-preview-row{display:block}.excel-preview-row strong{max-width:none;display:block}.excel-preview-row span{display:block;margin-top:3px}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.intent-kpis .intent-kpi-link{font:inherit;text-align:left;cursor:pointer;border:1px solid var(--line)!important;color:var(--text)!important;position:relative}
.intent-kpis .intent-kpi-link:hover{border-color:var(--accent)!important;transform:translateY(-1px)}
.intent-kpis .intent-kpi-link>span{display:block;margin-top:7px;font-size:8px;font-weight:850;color:var(--accent)}
.intent-toolbar{grid-template-columns:minmax(220px,1.2fr) 160px 220px 150px!important}
.intent-list-meta{display:flex;align-items:center;gap:7px;padding:8px 2px 11px;color:var(--muted);font-size:9px}
.intent-list-meta strong{color:var(--text);font-size:11px}.intent-list-meta button{border:1px solid var(--line);background:var(--accent2);color:var(--accent);border-radius:999px;padding:4px 7px;font-size:8px;cursor:pointer}
.intent-compact-list{display:grid;gap:7px}
.intent-compact-card{display:grid;grid-template-columns:minmax(185px,1.25fr) minmax(135px,.8fr) minmax(170px,1fr) 105px 115px 62px 105px;gap:10px;align-items:center;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.intent-compact-card:hover{border-color:#d5c7ad;box-shadow:0 5px 18px rgba(26,32,44,.045)}
.intent-person{display:grid;grid-template-columns:34px 1fr;gap:8px;align-items:center;min-width:0}.intent-avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--accent2);color:var(--accent);font-weight:900;font-size:13px}.intent-person strong,.intent-wants strong,.intent-location strong,.intent-budget strong{display:block;font-size:10px;line-height:1.25}.intent-person span,.intent-wants span,.intent-contact span{display:block;margin-top:3px;font-size:8.5px;color:var(--muted);line-height:1.3}.intent-location small,.intent-budget small,.intent-contact small{display:block;font-size:7.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:3px}.intent-location,.intent-wants{min-width:0}.intent-location strong{white-space:normal}.intent-contact strong{font-size:9px}.intent-whatsapp{display:inline-flex;padding:6px 8px;border-radius:7px;background:#e8f7ef;color:#137548!important;font-size:9px;font-weight:850;text-decoration:none}.intent-score{text-align:center}.intent-score small{display:block;margin-top:4px;font-size:7.5px;color:var(--muted)}.intent-action .source-action{white-space:nowrap;text-align:center}
.intent-match-list{display:grid;gap:7px}.intent-match-card{display:grid;grid-template-columns:60px minmax(160px,.8fr) minmax(300px,1.5fr) 110px;gap:10px;align-items:center;border:1px solid var(--line);border-radius:10px;padding:10px 12px}.intent-match-card>div:nth-child(2)>strong{display:block;font-size:10px}.intent-match-card>div:nth-child(2)>span{display:block;font-size:8.5px;color:var(--muted);margin-top:3px}.intent-match-actions{display:grid;gap:5px}.intent-match-actions a{padding:6px 7px;border:1px solid var(--line);border-radius:7px;text-align:center;text-decoration:none;font-size:8.5px;font-weight:800;color:var(--accent)!important}
.collector-v2-live{display:flex;align-items:center;gap:9px;margin:0 0 11px;padding:9px 11px;border:1px solid #dceae3;border-radius:10px;background:#f5fbf8}.collector-live-dot{width:9px;height:9px;border-radius:50%;background:#14a563;box-shadow:0 0 0 4px rgba(20,165,99,.10)}.collector-v2-live div{flex:1;min-width:0}.collector-v2-live strong{display:block;font-size:10px;color:#1a4f3b}.collector-v2-live small{display:block;margin-top:2px;font-size:8.5px;color:#668075}.collector-frequency{font-size:8px;font-weight:850;color:#147747;background:#e7f6ee;padding:5px 7px;border-radius:999px;white-space:nowrap}
@media(max-width:1100px){.intent-toolbar{grid-template-columns:1fr 1fr!important}.intent-compact-card{grid-template-columns:1.2fr .8fr 1fr .7fr}.intent-contact,.intent-score,.intent-action{grid-column:auto}.intent-match-card{grid-template-columns:55px 1fr 1.5fr}.intent-match-actions{grid-column:2/-1;display:flex}}
@media(max-width:720px){.intent-toolbar{grid-template-columns:1fr!important}.intent-compact-card{grid-template-columns:1fr 1fr!important;gap:9px;padding:11px}.intent-person{grid-column:1/-1}.intent-wants{grid-column:1/-1}.intent-location{grid-column:1/-1}.intent-contact{grid-column:1/2}.intent-score{grid-column:2/3;text-align:right}.intent-action{grid-column:1/-1}.intent-action .source-action{width:100%;box-sizing:border-box;justify-content:center}.intent-match-card{grid-template-columns:1fr!important}.intent-match-actions{grid-column:1;display:grid;grid-template-columns:1fr 1fr}.collector-v2-live{align-items:flex-start}.collector-frequency{margin-left:auto}.intent-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.export-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.export-actions .secondary{padding:9px 11px}
.nav-count-green{background:#e6f7ee!important;color:#137649!important}
.whatsapp-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 220px!important}
.wa-ready{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border-radius:8px;background:#e5f7ed;color:#117345!important;text-decoration:none!important;font-weight:850;font-size:10px;white-space:nowrap}
.wa-ready:before{content:'◉';font-size:9px}.wa-phone{font-size:10px;font-weight:800}.wa-source{font-size:8px;color:var(--muted);margin-top:3px;display:block}
.match-groups{display:grid;gap:12px}.match-group{border:1px solid var(--line);border-radius:14px;background:var(--panel);overflow:hidden}.match-group-head{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1fr) auto;gap:14px;align-items:center;padding:14px 15px;background:linear-gradient(90deg,var(--accent2),transparent)}
.match-person{display:flex;gap:9px;align-items:center}.match-person-avatar{width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:var(--panel);border:1px solid var(--line);font-weight:900;color:var(--accent)}.match-person strong{display:block;font-size:12px}.match-person span,.match-demand span{display:block;color:var(--muted);font-size:9px;margin-top:3px}.match-demand strong{display:block;font-size:10px}.match-group-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.match-group-actions a{padding:6px 8px;border:1px solid var(--line);border-radius:7px;text-decoration:none!important;font-size:8.5px;font-weight:800;color:var(--accent)!important;background:var(--panel)}.match-group-actions a.wa-ready{border:0;color:#117345!important;background:#e5f7ed}
.match-property-list{display:grid}.match-property-row{display:grid;grid-template-columns:70px minmax(240px,1.4fr) 125px 115px 115px;gap:10px;align-items:center;padding:11px 15px;border-top:1px solid var(--line)}.match-property-row:first-child{border-top:0}.match-property-row .match-score{justify-self:start}.match-property-info strong{display:block;font-size:10px}.match-property-info span{display:block;font-size:8.5px;color:var(--muted);margin-top:3px}.match-property-row>a{font-size:8.5px;font-weight:800;color:var(--accent)!important;text-decoration:none}.match-count{display:inline-flex;padding:4px 7px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:8px;color:var(--muted);margin-left:5px}
.match-real-head{margin-bottom:11px}.match-compact .match-group-head{grid-template-columns:minmax(170px,1fr) minmax(170px,1fr) auto}.match-compact .match-property-row{grid-template-columns:60px minmax(220px,1fr) 105px 95px}
.contact-verified-no-number{display:inline-flex;padding:5px 7px;border-radius:7px;background:#eef2f7;color:#667386;font-size:8.5px;font-weight:750}
@media(max-width:1100px){.match-group-head{grid-template-columns:1fr 1fr}.match-group-actions{grid-column:1/-1;justify-content:flex-start}.match-property-row{grid-template-columns:65px minmax(220px,1fr) 110px 95px}.match-property-row .match-fit{display:none}}
@media(max-width:720px){.export-actions{width:100%;justify-content:flex-start}.export-actions .secondary,.export-actions .primary{flex:1 1 auto}.whatsapp-toolbar{grid-template-columns:1fr!important}.match-group-head{grid-template-columns:1fr!important}.match-group-actions{grid-column:1}.match-property-row{grid-template-columns:56px 1fr!important;gap:7px}.match-property-row .match-price,.match-property-row .match-fit,.match-property-row>a{grid-column:2}.whatsapp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

#contact-check .grid4>.card{background:var(--panel)!important;border-color:var(--line)!important}
#contact-check .metric-value{color:var(--text)!important}
#contactCheckTable details summary{cursor:pointer}
#contactCheckTable .card{box-shadow:0 5px 18px rgba(31,37,48,.035)}
.match-group-head{align-items:center}
.match-person>div:last-child>span{max-width:460px}
@media(max-width:760px){#contact-check .grid4{grid-template-columns:repeat(2,minmax(0,1fr))!important}.match-group-actions{width:100%;justify-content:flex-start}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.match-policy{display:flex;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;border:1px solid #dce9e1;border-radius:10px;background:#f6fbf8;color:#42594c}
.match-policy span{display:inline-flex;padding:5px 8px;border-radius:999px;background:#e3f5ea;color:#137647;font-size:9px;font-weight:900;white-space:nowrap}
.match-policy strong{font-size:9.5px}
.match-toolbar{grid-template-columns:260px 1fr!important;margin-bottom:12px}
.match-origin-line{display:block!important;margin-top:4px!important;font-size:8px!important;color:var(--muted)!important}
.match-origin-line b{color:var(--accent)!important;font-weight:850!important}
@media(max-width:720px){
  .match-policy{align-items:flex-start;flex-direction:column;gap:6px}
  .match-toolbar{grid-template-columns:1fr!important}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.source-policy-mini{font-size:9px;line-height:1.35;color:var(--muted);padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface)}
.source-policy-mini b{color:var(--text)}
@media(max-width:720px){.source-policy-mini{width:100%;box-sizing:border-box}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.publication-date{font-size:9px;font-weight:750;color:var(--text);white-space:nowrap}
#whatsappLeadsTable{overflow-x:auto}
#whatsappLeadsTable table{min-width:1450px}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

#whatsapp-leads .whatsapp-kpis>.card{background:var(--panel)!important;border-color:var(--line)!important}
#whatsapp-leads .whatsapp-kpis .metric-value{display:block!important;visibility:visible!important;opacity:1!important;color:var(--text)!important;font-size:28px!important;font-weight:900!important;line-height:1.05!important}
#whatsapp-leads .whatsapp-kpis .metric-label,#whatsapp-leads .whatsapp-kpis .metric-sub{color:var(--muted)!important;opacity:1!important}
#whatsapp-leads .whatsapp-kpis>.card:first-child{background:linear-gradient(145deg,#172233,#223247)!important;border-color:#263345!important}
#whatsapp-leads .whatsapp-kpis>.card:first-child .metric-value{color:#fff!important}
#whatsapp-leads .whatsapp-kpis>.card:first-child .metric-label,#whatsapp-leads .whatsapp-kpis>.card:first-child .metric-sub{color:#bec8d3!important}
.whatsapp-toolbar{grid-template-columns:minmax(260px,1fr) 220px 230px!important}
.qa-pill{display:inline-flex;padding:5px 7px;border-radius:999px;font-size:8.5px;font-weight:850;white-space:nowrap}
.qa-outside{background:#e7f7ee;color:#147548}.qa-found{background:#fff0f0;color:#a54444}.qa-review{background:#fff3dc;color:#956511}.qa-pending{background:#eef2f7;color:#607080}.qa-na{background:#f3f3f3;color:#7b7b7b}
.qa-link{display:block;margin-top:4px;font-size:8px;font-weight:800;color:var(--accent)!important;text-decoration:none;white-space:nowrap}
#whatsappLeadsTable table{min-width:1580px!important}.deep-table{min-width:1480px!important}
@media(max-width:720px){.whatsapp-toolbar{grid-template-columns:1fr!important}.whatsapp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}#whatsapp-leads .whatsapp-kpis .metric-value{font-size:24px!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.intent-toolbar{grid-template-columns:minmax(210px,1.2fr) 155px 205px 205px 135px!important}
.seller-intent-tag{display:inline-flex;padding:2px 5px;border-radius:999px;background:#eaf5ee;color:#176e47;font-size:7.5px;font-weight:900}
.intent-compact-card:has(.seller-intent-tag){border-left:3px solid #2d8a5f}
@media(max-width:1100px){.intent-toolbar{grid-template-columns:1fr 1fr!important}}
@media(max-width:720px){.intent-toolbar{grid-template-columns:1fr!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.strict-contact-banner{
  display:flex;align-items:center;gap:10px;margin:0 0 11px;padding:9px 11px;
  border:1px solid #dce9e1;border-radius:10px;background:#f6fbf8;color:#42594c
}
.strict-contact-banner span{
  display:inline-flex;padding:5px 8px;border-radius:999px;background:#e3f5ea;
  color:#137647;font-size:8.5px;font-weight:900;white-space:nowrap
}
.strict-contact-banner strong{font-size:9px;line-height:1.35}
@media(max-width:720px){
  .strict-contact-banner{align-items:flex-start;flex-direction:column;gap:6px}
}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.qa-unproven{display:block;margin-top:4px;font-size:7.8px;font-weight:750;color:var(--muted);white-space:nowrap}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.collector-v2-live.collector-error{background:#fff7f2;border-color:#efd6c5}
.collector-v2-live.collector-error .collector-live-dot{background:#c96b33;box-shadow:0 0 0 4px rgba(201,107,51,.10)}
.collector-v2-live.collector-error strong{color:#8d431e}
.collector-v2-live.collector-ok .collector-live-dot{background:#14a563}
.collector-v2-live.collector-neutral .collector-live-dot{background:#8a949e;box-shadow:0 0 0 4px rgba(120,130,140,.10)}
.contact-hidden-olx{display:inline-flex;padding:5px 7px;border-radius:7px;background:#fff3dc;color:#8a6117;font-size:8.5px;font-weight:850;line-height:1.25}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.contact-check-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:8px 0}
.contact-confirm-btn{border:1px solid #b9dec9;background:#edf9f2;color:#146b43;border-radius:8px;padding:7px 9px;font-size:8.5px;font-weight:900}
.contact-needs-review{display:inline-flex;padding:5px 7px;border-radius:7px;background:#fff3dc;color:#875e13;font-size:8.5px;font-weight:850}
.manual-verified{font-size:8px;color:#147548;font-weight:850}
.whatsapp-toolbar{grid-template-columns:minmax(220px,1fr) 185px 185px 220px!important}
@media(max-width:950px){.whatsapp-toolbar{grid-template-columns:1fr 1fr!important}}
@media(max-width:650px){.whatsapp-toolbar{grid-template-columns:1fr!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.historical-contact-row{opacity:.78;background:#fafafa}
.historical-only-label{display:inline-flex;padding:5px 8px;border-radius:7px;background:#eef1f4;color:#5f6874;font-weight:800;font-size:8.5px}
.whatsapp-toolbar{grid-template-columns:minmax(220px,1fr) 170px 190px 185px 220px!important}
@media(max-width:1100px){.whatsapp-toolbar{grid-template-columns:1fr 1fr 1fr!important}}
@media(max-width:700px){.whatsapp-toolbar{grid-template-columns:1fr!important}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.wa-history-ready{display:inline-flex;align-items:center;padding:6px 9px;border-radius:8px;border:1px solid #138a52;background:#25b96f;color:#ffffff;font-size:8.5px;font-weight:900;text-decoration:none;box-shadow:0 1px 2px rgba(20,117,72,.18)}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.contact-capture-panel{margin:12px 0 14px;padding:13px 14px;border:1px solid #d7e5ff;background:#f8fbff;border-radius:12px;display:grid;grid-template-columns:minmax(240px,1fr) minmax(520px,1.8fr);gap:12px 18px;align-items:center}
.contact-capture-copy{display:flex;flex-direction:column;gap:4px}
.contact-capture-copy strong{font-size:12px;color:#173a70}
.contact-capture-copy span{font-size:9.5px;line-height:1.45;color:#5f6f85}
.contact-capture-controls{display:grid;grid-template-columns:minmax(150px,1.3fr) 58px 100px 120px 140px;gap:7px;align-items:center}
.contact-capture-controls input,.contact-capture-controls select{min-width:0}
.contact-capture-status{grid-column:1/-1;border-top:1px solid #e4ecf8;padding-top:8px;font-size:9.5px;font-weight:700;color:#58708f}
@media(max-width:1150px){.contact-capture-panel{grid-template-columns:1fr}.contact-capture-controls{grid-template-columns:1fr 70px 1fr 1fr 150px}}
@media(max-width:760px){.contact-capture-controls{grid-template-columns:1fr 70px}.contact-capture-controls button{grid-column:1/-1}}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.auto-refresh-status{display:inline-flex;align-items:center;margin-left:8px;padding:4px 7px;border-radius:999px;background:#eef5ff;color:#315f9e;font-size:8px;font-weight:800;white-space:nowrap}
.auto-refresh-status.auto-refresh-error{background:#fff0f0;color:#a53f3f}

/* ---- consolidated from v21.x + v22 responsive layer ---- */

.mobile-bottom-nav,.mobile-more-sheet{display:none}
@media(max-width:1050px){
 body{padding-bottom:76px}.sidebar{display:none!important}.app{display:block!important}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:9000;background:rgba(255,255,255,.97);backdrop-filter:blur(18px);border-top:1px solid #e3e7ec;padding:6px max(6px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));box-shadow:0 -8px 24px rgba(30,40,55,.08)}
 .mobile-bottom-nav button{border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:52px;color:#566173;font-size:16px}.mobile-bottom-nav button b{font-size:9px}.mobile-bottom-nav .mobile-wa span{color:#169b5e;font-weight:900}
 .mobile-more-sheet{position:fixed;inset:0;z-index:9100;background:rgba(20,28,40,.35);align-items:flex-end}.mobile-more-sheet:not(.hidden){display:flex}.mobile-more-panel{width:100%;max-height:72vh;overflow:auto;background:#fff;border-radius:18px 18px 0 0;padding:14px 14px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -14px 40px rgba(0,0,0,.18)}.mobile-more-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.mobile-more-head strong{font-size:18px}.mobile-more-head button{border:0;background:#f1f3f6;border-radius:10px;width:36px;height:36px;font-size:22px}.mobile-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.mobile-menu-grid button{border:1px solid #e2e6eb;background:#fff;border-radius:12px;padding:13px;text-align:left;font-weight:800;color:#344054}
 main{padding-bottom:26px!important}
}
@media(max-width:720px){
 main{padding:12px!important;padding-bottom:28px!important}.top-actions{width:100%;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.top-actions button{width:100%}.toolbar,.deep-toolbar,.owners-toolbar,.intent-toolbar,.contact-capture-controls{grid-template-columns:1fr!important}.card{border-radius:12px!important}.whatsapp-kpis,.grid4,.dash-kpis,.ops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 #whatsappLeadsTable table,.deep-table,#owners table,#matches table,#tradeIntentsTable table,#tradeMatchesTable table,#companiesTable table,#companyMatchesTable table{min-width:0!important;width:100%!important;display:block!important}
 #whatsappLeadsTable thead,.deep-table thead,#owners thead,#matches thead,#tradeIntentsTable thead,#tradeMatchesTable thead,#companiesTable thead,#companyMatchesTable thead{display:none!important}
 #whatsappLeadsTable tbody,.deep-table tbody,#owners tbody,#matches tbody,#tradeIntentsTable tbody,#tradeMatchesTable tbody,#companiesTable tbody,#companyMatchesTable tbody{display:grid!important;gap:10px!important}
 #whatsappLeadsTable tr,.deep-table tr,#owners tr,#matches tr,#tradeIntentsTable tr,#tradeMatchesTable tr,#companiesTable tr,#companyMatchesTable tr{display:block!important;background:#fff;border:1px solid #e4e8ed;border-radius:12px;padding:10px;box-shadow:0 4px 14px rgba(20,30,40,.04)}
 #whatsappLeadsTable td,.deep-table td,#owners td,#matches td,#tradeIntentsTable td,#tradeMatchesTable td,#companiesTable td,#companyMatchesTable td{display:block!important;width:auto!important;max-width:none!important;border:0!important;border-bottom:1px solid #f0f2f5!important;padding:7px 2px!important;white-space:normal!important;overflow-wrap:anywhere!important}
 #whatsappLeadsTable td:last-child,.deep-table td:last-child,#owners td:last-child,#matches td:last-child,#tradeIntentsTable td:last-child,#tradeMatchesTable td:last-child,#companiesTable td:last-child,#companyMatchesTable td:last-child{border-bottom:0!important}
 #whatsappLeadsTable .wa-ready,#whatsappLeadsTable .wa-history-ready,#whatsappLeadsTable .contact-btn{display:flex!important;width:100%!important;min-height:42px!important;justify-content:center!important;align-items:center!important;font-size:12px!important}
 .source-action{display:inline-flex!important;min-height:36px;align-items:center}.contact-capture-panel{padding:10px!important}.contact-capture-controls{display:grid!important}.contact-capture-controls>*{width:100%!important}
}

/* v22.1 — status operacional explícito */
.dash-online > div{display:flex;flex-direction:column;gap:1px}
.dash-online #autoRefreshStatus{font-size:8px;opacity:.78}
.dash-online.state-error .dot{background:#d64b4b!important;box-shadow:0 0 0 4px rgba(214,75,75,.10)}
.dash-online.state-error strong{color:#a82f2f}
.dash-online.state-warning .dot{background:#d89a22!important;box-shadow:0 0 0 4px rgba(216,154,34,.10)}
.dash-online.state-warning strong{color:#8a641c}
.dash-online.state-ok .dot{background:#1ba56b!important}


/* v22.2 dashboard premium */
@media(max-width:900px){
  .dash-spotlight{grid-template-columns:1fr!important}
  .dash-top3-grid{grid-template-columns:1fr!important}
  .ops-dashboard-grid{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  .dash-spotlight-copy{padding:18px!important}
  .dash-hero-buttons{display:grid!important;grid-template-columns:1fr 1fr!important}
  .dash-hero-buttons button:first-child{grid-column:1/-1!important}
}


/* v22.3 — Pesquisa Registral / Titularidade */
.registry-top .title{max-width:780px}
.registry-trust-banner{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px 16px;margin-bottom:14px;border:1px solid #d8e8df;border-radius:12px;background:linear-gradient(90deg,#f3fbf7,#fff)}
.registry-trust-banner>div{display:flex;flex-direction:column;gap:4px}.registry-trust-banner strong{font-size:12px;color:#174c36}.registry-trust-banner span{font-size:10px;color:#5f6d66;line-height:1.5}
.registry-official-badge{padding:7px 9px;border-radius:999px;background:#e3f6eb;color:#147548!important;font-weight:800;white-space:nowrap}
.registry-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.7fr);gap:12px;margin-bottom:14px}
.registry-search-card,.registry-howto,.registry-results-card{border-radius:13px!important}
.registry-formgrid{grid-template-columns:2fr 1fr 80px 130px;gap:10px}.registry-address{grid-column:span 2}.registry-notes{grid-column:span 2}
.registry-address-wrap{position:relative}
.registry-address-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;background:#fff;border:1px solid #e5ddd0;border-radius:10px;box-shadow:0 10px 24px rgba(20,20,20,.12);max-height:260px;overflow-y:auto;padding:5px}
.registry-address-suggestions.hidden{display:none}
.registry-address-suggestion{display:flex;flex-direction:column;gap:1px;padding:8px 10px;border-radius:7px;cursor:pointer}
.registry-address-suggestion strong{font-size:11px;color:#263345}
.registry-address-suggestion span{font-size:9.5px;color:#7a828e}
.registry-address-suggestion:hover,.registry-address-suggestion.active{background:#f3fbf7}
.registry-address-suggestion-empty{padding:8px 10px;font-size:10px;color:#8a919b}
.registry-actions-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.registry-source-hint{margin-top:11px;padding:10px;border-radius:9px;background:#f7f9fc;color:#5f6875;font-size:10px;line-height:1.5}
.registry-howto ol{padding-left:20px;margin:0 0 14px}.registry-howto li{font-size:10.5px;color:#596473;line-height:1.55;margin:7px 0}
.registry-source-stack{display:grid;gap:8px}.registry-source-stack button{text-align:left;border:1px solid #ece4d8;background:#fff;border-radius:10px;padding:10px;cursor:pointer}.registry-source-stack strong,.registry-source-stack span{display:block}.registry-source-stack strong{font-size:11px}.registry-source-stack span{font-size:9.5px;color:#7a828e;margin-top:2px}
.registry-toolbar{grid-template-columns:minmax(260px,1fr) 220px}
.registry-list{display:grid;gap:9px}.registry-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:12px;border:1px solid #eee7dc;border-radius:11px;background:#fff}.registry-row-main{display:flex;flex-direction:column;gap:4px}.registry-row-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.registry-row-title strong{font-size:12.5px}.registry-row-main>span,.registry-row-main>small{font-size:9.5px;color:#757e89}.registry-owner-confirmed{margin-top:5px;padding:8px 9px;border-radius:8px;background:#eaf8f0;color:#176b47;font-size:10px}.registry-owner-confirmed small{display:block;margin-top:3px;color:#5d7a6c}.registry-row-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.registry-row-actions a,.registry-row-actions button,.owner-registry{border:1px solid #e5ddd0;background:#fff;border-radius:7px;padding:7px 8px;font-size:9.5px;color:#263345;text-decoration:none;cursor:pointer}.registry-row-actions .registry-confirm{background:#177a50;border-color:#177a50;color:#fff}.owner-registry{white-space:nowrap}
@media(max-width:1000px){.registry-grid{grid-template-columns:1fr}.registry-formgrid{grid-template-columns:1fr 1fr}.registry-address,.registry-notes{grid-column:span 2}.registry-row{grid-template-columns:1fr}.registry-row-actions{justify-content:flex-start}}
@media(max-width:720px){.registry-trust-banner{align-items:flex-start;flex-direction:column}.registry-official-badge{white-space:normal}.registry-formgrid{grid-template-columns:1fr}.registry-address,.registry-notes{grid-column:auto}.registry-actions-row{display:grid;grid-template-columns:1fr}.registry-actions-row button{width:100%}.registry-toolbar{grid-template-columns:1fr!important}.registry-row-actions{display:grid;grid-template-columns:1fr 1fr}.registry-row-actions>*{text-align:center}.owner-registry{width:100%}}


/* ==========================================================
   LJ Radar Imob v22.4 — dashboard moderno aprovado
   ========================================================== */
#dashboard{background:#fbfaf7!important}
.dash-header,.dash-spotlight{display:none!important}
.dash-modern-topbar{display:flex;align-items:center;justify-content:flex-end;gap:18px;min-height:58px;margin-bottom:8px}
.dash-global-search{margin:0 auto;width:min(520px,48vw);height:42px;border:1px solid #e7e2da;background:#fff;border-radius:12px;display:flex;align-items:center;gap:9px;padding:0 12px;box-shadow:0 5px 18px rgba(30,38,55,.025)}
.dash-global-search input{border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;flex:1;min-width:0;font-size:11px}
.dash-search-icon{font-size:22px;color:#7d8490}.dash-global-search kbd{font-size:8px;border:1px solid #ece7df;background:#f8f6f2;border-radius:6px;padding:4px 6px;color:#8b9199}
.dash-top-actions-modern{display:flex;align-items:center;gap:8px}.dash-icon-btn{width:38px;height:38px;border:1px solid #e7e2da;border-radius:50%;background:#fff;cursor:pointer;color:#263245}
.dash-top-user{height:44px;display:flex;align-items:center;gap:9px;padding:3px 9px 3px 4px;border-radius:12px;cursor:pointer}.dash-top-user:hover{background:#f5f2ec}
.dash-top-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#c58b20,#f0d394);color:#fff;font-size:11px;font-weight:900}
.dash-top-user strong{display:block;font-size:10.5px;color:#182235}.dash-top-user small{display:block;font-size:8.5px;color:#8a9098;margin-top:1px}.dash-top-user>span{font-size:10px;color:#7e8792}
.dash-greeting-row{display:flex;justify-content:space-between;align-items:flex-end;gap:18px;margin:8px 4px 14px}.dash-greeting-row h1{font-size:21px;line-height:1.15;margin:0 0 4px;color:#111d31;letter-spacing:-.02em}.dash-greeting-row p{margin:0;color:#737d89;font-size:10.5px}.dash-wave{font-size:18px}
.dash-date-pill{display:flex;align-items:center;gap:8px;border:1px solid #e7e2da;border-radius:10px;background:#fff;padding:10px 13px;color:#273447;font-size:10px;white-space:nowrap}
.dash-kpis-modern{margin-bottom:14px!important;border:1px solid #ebe5db;border-radius:14px;padding:7px;background:#fff;box-shadow:0 8px 28px rgba(31,39,56,.045);gap:0!important}
.dash-kpis-modern .dash-kpi{border:0!important;border-right:1px solid #eee8df!important;border-radius:0!important;box-shadow:none!important;min-height:92px!important;background:#fff!important;padding:14px 16px!important}.dash-kpis-modern .dash-kpi:last-child{border-right:0!important}
.dash-kpis-modern .kpi-open{display:none!important}.dash-kpis-modern .dash-kpi strong{font-size:25px!important;margin-top:5px!important}
.dash-top-opportunities-section{background:#fff;border:1px solid #e9e2d8;border-radius:15px;padding:12px;margin-bottom:14px;box-shadow:0 10px 32px rgba(31,39,56,.05)}
.dash-modern-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.dash-modern-section-head>div{display:flex;align-items:center;gap:10px}.dash-section-star{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:#fff0d4;color:#c48716;font-size:15px}.dash-modern-section-head h2{margin:0;font-size:15px;color:#172033}.dash-modern-section-head p{margin:2px 0 0;font-size:9.5px;color:#808792}.dash-modern-section-head>button{border:1px solid #e6d7bd;background:#fffaf2;color:#a76e0f;border-radius:9px;padding:8px 12px;font-size:9.5px;font-weight:800;cursor:pointer}
.dash-top3-grid-modern{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dash-top-card-modern{overflow:hidden;border:1px solid #ece5dc;border-radius:13px;background:#fff;box-shadow:0 7px 24px rgba(26,34,49,.05)}.dash-top-card-modern.rank-1{border-color:#e6c77e}
.dash-top-media{height:158px;position:relative;overflow:hidden;background:linear-gradient(135deg,#f4eee4,#e6dfd4)}.dash-top-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:opacity .35s ease}.dash-top-image-placeholder{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:5px;color:#9c8c73;font-size:9px}.dash-top-image-placeholder span{font-size:28px}.dash-top-image-placeholder b{font-weight:700}.dash-top-number{position:absolute;left:0;top:0;background:#c58a16;color:#fff;padding:8px 10px;font-size:10px;font-weight:900;border-radius:0 0 8px 0}.dash-image-dots{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);display:flex;gap:5px;z-index:3}.dash-image-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);border:1px solid rgba(0,0,0,.12)}.dash-image-dot.active{background:#fff;transform:scale(1.15)}
.dash-top-content{padding:11px 12px 12px}.dash-top-title-row{display:grid;grid-template-columns:minmax(0,1fr) 50px;gap:8px;align-items:start}.dash-top-title-row h3{margin:0;font-size:13px;line-height:1.35;color:#142037}.dash-top-location{font-size:9.5px;color:#7b8490;margin:3px 0 7px}.dash-top-specs{display:flex;gap:8px;flex-wrap:wrap;font-size:9px;color:#6f7986}.dash-top-price{font-size:18px!important;font-weight:900;margin:8px 0 5px;color:#101b30}.dash-top-source{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:8.5px;color:#8a9199}.dash-top-source b{font-size:8px;padding:4px 6px;background:#f7f3ec;border-radius:6px;color:#87631f}
.dash-score-ring{--score:0;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#16a05d calc(var(--score)*1%),#e7f2eb 0);position:relative}.dash-score-ring:after{content:"";position:absolute;inset:5px;background:#fff;border-radius:50%}.dash-score-ring strong,.dash-score-ring small{position:absolute;z-index:2}.dash-score-ring strong{font-size:12px;color:#158c55;top:10px}.dash-score-ring small{font-size:6px;color:#7e8791;bottom:8px}
.dash-top-actions-modern{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:10px}.dash-top-actions-modern a,.dash-top-actions-modern button{height:34px;border-radius:8px;display:grid;place-items:center;text-decoration:none;font-size:9.5px;font-weight:800;cursor:pointer}.dash-top-actions-modern .details{border:1px solid #e5d6bc;background:#fff;color:#9e6b12}.dash-top-actions-modern .contact{border:1px solid #b67e13;background:#bd8415;color:#fff}.dash-top-actions-modern .contact.muted{background:#f4f2ed;color:#7d8490;border-color:#e7e1d8}.dash-top-actions-modern button:disabled{opacity:.6;cursor:not-allowed}
.dash-analytics-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(220px,.56fr) minmax(255px,.72fr);gap:12px;margin-bottom:14px}.ops-dashboard-modern,.dash-insight-card,.dash-hot-card{background:#fff;border:1px solid #e9e2d8;border-radius:14px;box-shadow:0 8px 28px rgba(31,39,56,.045)}.ops-dashboard-modern{padding:13px!important;margin:0!important}.ops-dashboard-modern #dashboardOpsChart .ops-chart-body{height:142px!important}.dash-insight-card,.dash-hot-card{padding:13px}.dash-insight-title{display:flex;gap:8px;align-items:center;margin-bottom:11px}.dash-insight-title>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff2da;color:#b67a12}.dash-insight-title strong{display:block;font-size:11.5px;color:#172033}.dash-insight-title small{display:block;font-size:8.5px;color:#8b929b;margin-top:2px}
#dashboardOpsHighlights{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dash-summary-metric{padding:9px;border:1px solid #ece6de;border-radius:9px}.dash-summary-metric span{display:block;font-size:8px;color:#858c96}.dash-summary-metric strong{display:block;font-size:19px;margin-top:3px;color:#152137}.dash-summary-line{grid-column:1/-1;border-top:1px solid #eee8df;padding-top:8px}.dash-summary-line b{display:block;font-size:8.5px;color:#384658}.dash-summary-line span{display:block;font-size:8.5px;color:#7d8590;margin-top:2px;line-height:1.35}
.dash-hot-list{display:grid;gap:2px}.dash-hot-row{display:grid;grid-template-columns:30px minmax(0,1fr) 26px;gap:8px;align-items:center;padding:7px 0;border-top:1px solid #f0ebe4}.dash-hot-row:first-child{border-top:0}.dash-hot-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#ebe6ff;color:#6950b8;font-size:8px;font-weight:900}.dash-hot-row strong{display:block;font-size:9.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-hot-row span{display:block;font-size:8px;color:#89909a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-hot-row>a{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;text-decoration:none;color:#18a05f;background:#ecf8f1}.dash-hot-more{width:100%;margin-top:8px;border:0;background:transparent;color:#aa7315;font-size:8.5px;font-weight:800;cursor:pointer;text-align:right}
.role-console{margin-top:0!important}
@media(max-width:1250px){.dash-analytics-row{grid-template-columns:1fr 1fr}.ops-dashboard-modern{grid-column:1/-1}.dash-top3-grid-modern{gap:9px}.dash-top-media{height:140px}}
@media(max-width:1050px){.dash-modern-topbar{justify-content:space-between}.dash-global-search{margin:0;width:min(480px,55vw)}.dash-top3-grid-modern{grid-template-columns:repeat(3,minmax(0,1fr))}.dash-analytics-row{grid-template-columns:1fr 1fr}.dash-kpis-modern{overflow-x:auto;display:flex!important}.dash-kpis-modern .dash-kpi{min-width:180px}}
@media(max-width:760px){
  #dashboard{padding:8px 8px 90px!important}.dash-modern-topbar{display:grid;grid-template-columns:1fr auto;gap:8px}.dash-global-search{grid-column:1/-1;grid-row:2;width:100%;order:2}.dash-top-actions-modern{grid-column:2;grid-row:1}.dash-top-user>div:not(.dash-top-avatar){display:none}.dash-top-user>span{display:none}.dash-top-user{padding:2px}
  .dash-greeting-row{align-items:flex-start;margin:10px 2px 12px}.dash-greeting-row h1{font-size:22px}.dash-date-pill{font-size:8px;padding:8px}.dash-greeting-row p{font-size:10px}
  .dash-kpis-modern{border:0;padding:0;background:transparent;box-shadow:none;gap:8px!important}.dash-kpis-modern .dash-kpi{min-width:150px!important;border:1px solid #ebe5db!important;border-radius:13px!important;min-height:120px!important;padding:13px!important}.dash-kpis-modern .dash-kpi strong{font-size:26px!important}
  .dash-top-opportunities-section{padding:10px}.dash-modern-section-head>button{background:transparent;border:0;padding:6px;font-size:9px}.dash-modern-section-head p{display:none}.dash-top3-grid-modern{grid-template-columns:1fr!important;gap:10px}.dash-top-card-modern{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.dash-top-media{height:100%;min-height:185px}.dash-top-content{padding:12px}.dash-top-title-row{grid-template-columns:1fr 45px}.dash-top-specs{display:none}.dash-top-price{font-size:18px!important}.dash-top-actions-modern{grid-template-columns:1fr}.dash-top-actions-modern a,.dash-top-actions-modern button{height:32px}
  .dash-analytics-row{grid-template-columns:1fr!important}.ops-dashboard-modern,.dash-insight-card,.dash-hot-card{grid-column:auto!important}.ops-dashboard-modern #dashboardOpsChart .ops-chart-body{height:132px!important;overflow-x:auto}.dash-insight-card{display:none}.dash-hot-card{min-height:190px}
}
@media(max-width:480px){.dash-date-pill{display:none}.dash-top-card-modern{grid-template-columns:1fr}.dash-top-media{height:205px}.dash-modern-section-head h2{font-size:14px}.dash-global-search kbd{display:none}}

/* v22.5 — Top 3 sempre baseado na base atual */
.dash-top3-grid-modern>.empty{grid-column:1/-1;min-height:220px}


/* ==========================================================
   LJ Radar Imob v22.7 — topo alinhado + mobile app
   ========================================================== */
#dashboard{padding-top:14px!important}
.dash-command-header{
  display:grid!important;
  grid-template-columns:minmax(270px,.85fr) minmax(380px,1.25fr) auto;
  align-items:center;
  gap:18px;
  margin:0 4px 16px;
  min-height:62px;
}
.dash-command-greeting{min-width:0}
.dash-command-greeting h1{font-size:21px;line-height:1.15;margin:0 0 4px;color:#111d31;letter-spacing:-.02em}
.dash-command-greeting p{margin:0;color:#737d89;font-size:10.5px}
.dash-mobile-brand{display:none}
.dash-global-search{margin:0!important;width:100%!important;max-width:none!important;height:44px!important}
.dash-command-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:max-content}
.dash-connected-pill{height:38px;display:flex;align-items:center;gap:7px;padding:0 11px;border:1px solid #e7e2da;border-radius:11px;background:#fff;color:#263245;box-shadow:0 3px 12px rgba(30,38,55,.025)}
.dash-connected-pill strong{font-size:10px}.dash-connected-dot{width:8px;height:8px;border-radius:50%;background:#19a667;box-shadow:0 0 0 3px rgba(25,166,103,.09)}
.dash-connected-pill.state-warning .dash-connected-dot{background:#d99a20;box-shadow:0 0 0 3px rgba(217,154,32,.10)}
.dash-connected-pill.state-error .dash-connected-dot{background:#d34a4a;box-shadow:0 0 0 3px rgba(211,74,74,.10)}
.dash-date-pill{height:38px!important;padding:0 10px!important;font-size:9px!important}
.dash-modern-topbar,.dash-greeting-row{display:none!important}

@media(max-width:1180px){
  .dash-command-header{grid-template-columns:minmax(235px,.8fr) minmax(300px,1fr) auto;gap:10px}
  .dash-command-right .dash-date-pill{display:none}
}

@media(max-width:760px){
  body{padding-bottom:88px!important}
  #dashboard{padding:10px 10px 96px!important;background:#fbfaf7!important}
  .dash-command-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand connected"
      "greeting greeting"
      "search search";
    gap:10px 9px!important;
    margin:0 0 12px!important;
    min-height:0!important;
  }
  .dash-mobile-brand{grid-area:brand;display:flex!important;align-items:center;gap:9px;color:#172033;min-width:0}
  .dash-mobile-logo{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:2px solid #c28718;color:#b57a12;font-size:22px;font-weight:900;background:#fff8eb}
  .dash-mobile-brand strong{font-size:18px;letter-spacing:-.02em;white-space:nowrap}
  .dash-command-greeting{grid-area:greeting;padding:4px 2px 0}
  .dash-command-greeting h1{font-size:23px!important;line-height:1.08!important;margin-bottom:5px!important}
  .dash-command-greeting p{font-size:10.5px!important}
  .dash-global-search{grid-area:search!important;height:44px!important;border-radius:12px!important;box-shadow:0 5px 18px rgba(30,38,55,.035)!important}
  .dash-global-search kbd{display:none!important}
  .dash-command-right{grid-area:connected;display:flex!important;justify-content:flex-end!important}
  .dash-command-right .dash-icon-btn,.dash-command-right .dash-date-pill{display:none!important}
  .dash-connected-pill{height:36px!important;padding:0 10px!important;background:#fff!important}
  .dash-connected-pill strong{font-size:9.5px!important}

  /* CEO controls remain accessible under Settings / More, but do not consume the mobile home. */
  #dashboard .role-console{display:none!important}

  /* KPI strip: app-like horizontal carousel instead of giant 2-column cards. */
  .dash-kpis-modern{
    display:flex!important;overflow-x:auto!important;scroll-snap-type:x mandatory;
    gap:8px!important;padding:2px 0 7px!important;margin:0 0 12px!important;
    border:0!important;background:transparent!important;box-shadow:none!important;
    scrollbar-width:none;
  }
  .dash-kpis-modern::-webkit-scrollbar{display:none}
  .dash-kpis-modern .dash-kpi{
    flex:0 0 132px!important;min-width:132px!important;min-height:92px!important;
    padding:10px!important;border:1px solid #e9e2d8!important;border-radius:13px!important;
    background:#fff!important;box-shadow:0 6px 20px rgba(31,39,56,.035)!important;
    scroll-snap-align:start;gap:8px!important;
  }
  .dash-kpis-modern .kpi-icon{width:25px!important;height:25px!important;font-size:14px!important}
  .dash-kpis-modern .dash-kpi small{font-size:8.5px!important}
  .dash-kpis-modern .dash-kpi strong{font-size:22px!important;margin:3px 0 1px!important}
  .dash-kpis-modern .dash-kpi em{font-size:7.5px!important;line-height:1.25!important}

  /* Top 3 appears immediately and stays visual. */
  .dash-top-opportunities-section{padding:10px!important;border-radius:14px!important;margin-bottom:12px!important}
  .dash-modern-section-head{align-items:flex-start!important;margin-bottom:9px!important}
  .dash-modern-section-head h2{font-size:15px!important}.dash-modern-section-head p{display:block!important;font-size:8.5px!important}
  .dash-modern-section-head>button{padding:5px!important;font-size:8.5px!important;white-space:nowrap}
  .dash-section-star{width:28px!important;height:28px!important}
  .dash-top3-grid-modern{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .dash-top-card-modern{
    display:grid!important;grid-template-columns:minmax(0,44%) minmax(0,56%)!important;
    min-height:164px!important;border-radius:12px!important;overflow:hidden!important;
  }
  .dash-top-media{height:100%!important;min-height:164px!important;border-radius:0!important}
  .dash-top-content{padding:10px!important;min-width:0!important}
  .dash-top-title-row{grid-template-columns:minmax(0,1fr) 40px!important;gap:5px!important}
  .dash-top-title-row h3{font-size:11.5px!important;line-height:1.28!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .dash-score-ring{width:38px!important;height:38px!important}.dash-score-ring:after{inset:4px!important}.dash-score-ring strong{font-size:10px!important;top:8px!important}.dash-score-ring small{font-size:5px!important;bottom:6px!important}
  .dash-top-location{font-size:8px!important;margin:3px 0 5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .dash-top-specs{display:none!important}.dash-top-price{font-size:16px!important;margin:5px 0 3px!important}.dash-top-source{font-size:7px!important}
  .dash-top-actions-modern{grid-template-columns:1fr 1fr!important;gap:5px!important;margin-top:7px!important}.dash-top-actions-modern a,.dash-top-actions-modern button{height:28px!important;font-size:7.8px!important}

  /* Analytics: compact chart + actionable leads. */
  .dash-analytics-row{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;margin-bottom:12px!important}
  .ops-dashboard-modern{padding:11px!important}.ops-dashboard-modern #dashboardOpsChart .ops-chart-body{height:112px!important;overflow-x:auto!important}
  .ops-chart-head>div span{display:none!important}.ops-chart-head h2{font-size:13px!important}.ops-chart-head button{font-size:8px!important;padding:7px!important}
  .dash-insight-card{display:none!important}.dash-hot-card{min-height:0!important;padding:11px!important}
  .dash-hot-row{padding:6px 0!important}

  /* Less important desktop sections move after action blocks. */
  .dash-filters{display:none!important}
  .dash-main-grid{display:block!important}.dash-right-column{display:none!important}.dash-opportunities{margin-top:9px!important}

  /* App bottom nav */
  .mobile-bottom-nav{
    height:70px;grid-template-columns:repeat(5,1fr)!important;align-items:end!important;
    padding:5px 8px calc(6px + env(safe-area-inset-bottom))!important;
    background:rgba(255,255,255,.97)!important;backdrop-filter:blur(18px)!important;
    border-top:1px solid #e8e2d8!important;box-shadow:0 -8px 28px rgba(24,32,47,.10)!important;
  }
  .mobile-bottom-nav button{min-height:54px!important;font-size:18px!important;color:#536071!important}
  .mobile-bottom-nav button b{font-size:8.5px!important;font-weight:750!important}
  .mobile-bottom-nav .mobile-nav-home{color:#b57a12!important}
  .mobile-bottom-nav .mobile-nav-capture{position:relative;transform:translateY(-10px)!important;overflow:visible!important}
  .mobile-bottom-nav .mobile-nav-capture span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#d59a22,#ae7010);color:#fff;font-size:28px;box-shadow:0 8px 18px rgba(181,122,18,.28)}
  .mobile-bottom-nav .mobile-nav-capture b{margin-top:2px;color:#a66e12}
  .mobile-bottom-nav .mobile-wa span{color:#159b5d!important}
}

@media(max-width:430px){
  .dash-mobile-brand strong{font-size:16px!important}.dash-mobile-logo{width:33px;height:33px;font-size:20px}
  .dash-command-greeting h1{font-size:21px!important}
  .dash-top-card-modern{grid-template-columns:42% 58%!important;min-height:154px!important}.dash-top-media{min-height:154px!important}
  .dash-top-source b{display:none!important}
  .dash-top-actions-modern{grid-template-columns:1fr!important}.dash-top-actions-modern .details{display:none!important}
}


/* ==========================================================
   v22.8 — DASHBOARD MOBILE DEFINITIVO
   Esta camada fica POR ÚLTIMO para impedir CSS legado de
   reconstruir o dashboard institucional antigo no telefone.
   ========================================================== */
@media screen and (max-width: 760px){
  html,body{width:100%!important;max-width:100%!important;overflow-x:hidden!important;background:#f8f6f1!important}
  .app{display:block!important;width:100%!important;min-width:0!important}
  .sidebar{display:none!important}
  main{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
  #dashboard.page{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:12px 12px 96px!important}

  /* Mata qualquer hero/console antigo que tenha sobrevivido por regra legada */
  #dashboard .portal-hero,
  #dashboard .dash-spotlight,
  #dashboard .hero,
  #dashboard .role-console,
  #dashboard #ceoControlStrip{display:none!important}

  /* Cabeçalho app */
  #dashboard .dash-command-header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:"brand connected" "greeting greeting" "search search"!important;
    gap:11px 8px!important;
    width:100%!important;
    margin:0 0 13px!important;
    padding:0!important;
  }
  #dashboard .dash-mobile-brand{grid-area:brand!important;display:flex!important;align-items:center!important;gap:9px!important}
  #dashboard .dash-mobile-logo{width:38px!important;height:38px!important;display:grid!important;place-items:center!important;border:2px solid #bf8218!important;border-radius:50%!important;background:#fff9ed!important;color:#b7780e!important;font-size:23px!important}
  #dashboard .dash-mobile-brand strong{font-size:19px!important;color:#142036!important}
  #dashboard .dash-command-right{grid-area:connected!important;display:flex!important;align-items:center!important}
  #dashboard .dash-connected-pill{display:flex!important;height:37px!important;padding:0 10px!important;border-radius:12px!important;background:#fff!important}
  #dashboard .dash-command-right .dash-icon-btn,
  #dashboard .dash-command-right .dash-date-pill{display:none!important}
  #dashboard .dash-command-greeting{grid-area:greeting!important;padding:4px 1px 0!important}
  #dashboard .dash-command-greeting h1{font-size:24px!important;margin:0 0 4px!important;line-height:1.08!important}
  #dashboard .dash-command-greeting p{font-size:11px!important;margin:0!important}
  #dashboard .dash-global-search{grid-area:search!important;display:flex!important;width:100%!important;height:46px!important;margin:0!important;border-radius:13px!important;background:#fff!important}
  #dashboard .dash-global-search input{font-size:12px!important}
  #dashboard .dash-global-search kbd{display:none!important}

  /* KPIs: uma faixa pequena, nunca cartões gigantes */
  #dashboard .dash-kpis-modern{
    display:flex!important;
    width:calc(100% + 12px)!important;
    margin:0 -12px 13px 0!important;
    padding:1px 12px 8px 0!important;
    gap:8px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scroll-snap-type:x mandatory!important;
    border:0!important;background:transparent!important;box-shadow:none!important;
  }
  #dashboard .dash-kpis-modern .dash-kpi{
    flex:0 0 128px!important;min-width:128px!important;width:128px!important;
    min-height:88px!important;height:auto!important;padding:10px!important;
    display:grid!important;grid-template-columns:27px 1fr!important;
    border:1px solid #e8e1d6!important;border-radius:14px!important;background:#fff!important;
    scroll-snap-align:start!important;
  }
  #dashboard .dash-kpis-modern .dash-kpi strong{font-size:23px!important}
  #dashboard .dash-kpis-modern .dash-kpi em{font-size:7.5px!important}

  /* Top 3: protagonista do dashboard mobile */
  #dashboard .dash-top-opportunities-section{
    display:block!important;width:100%!important;margin:0 0 12px!important;
    padding:11px!important;border:1px solid #e8e1d6!important;border-radius:16px!important;
    background:#fff!important;box-shadow:0 8px 24px rgba(25,33,47,.045)!important;
  }
  #dashboard .dash-modern-section-head{display:flex!important;justify-content:space-between!important;gap:7px!important}
  #dashboard .dash-modern-section-head h2{font-size:16px!important}
  #dashboard .dash-modern-section-head p{font-size:9px!important}
  #dashboard .dash-top3-grid-modern{display:flex!important;overflow-x:auto!important;gap:10px!important;scroll-snap-type:x mandatory!important;padding-bottom:3px!important}
  #dashboard .dash-top3-grid-modern .dash-top-card-modern{
    flex:0 0 88%!important;min-width:88%!important;width:88%!important;
    display:block!important;min-height:0!important;border-radius:14px!important;
    scroll-snap-align:center!important;background:#fff!important;
  }
  #dashboard .dash-top-media{display:block!important;width:100%!important;height:185px!important;min-height:185px!important}
  #dashboard .dash-top-content{display:block!important;padding:11px!important}
  #dashboard .dash-top-title-row h3{font-size:13px!important;-webkit-line-clamp:2!important}
  #dashboard .dash-top-location{font-size:9px!important}
  #dashboard .dash-top-specs{display:flex!important;font-size:8px!important;gap:8px!important}
  #dashboard .dash-top-price{font-size:19px!important}
  #dashboard .dash-top-actions-modern{display:grid!important;grid-template-columns:1fr 1fr!important}
  #dashboard .dash-top-actions-modern a,
  #dashboard .dash-top-actions-modern button{height:34px!important;font-size:9px!important}

  /* Analytics fica abaixo e compacta */
  #dashboard .dash-analytics-row{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  #dashboard .ops-dashboard-modern{display:block!important;padding:12px!important}
  #dashboard .ops-dashboard-modern #dashboardOpsChart .ops-chart-body{height:120px!important}
  #dashboard .dash-insight-card{display:none!important}
  #dashboard .dash-hot-card{display:block!important;padding:12px!important;min-height:0!important}

  /* O restante não disputa a primeira tela */
  #dashboard .dash-filters{display:none!important}
  #dashboard .dash-main-grid{margin-top:10px!important}
  #dashboard .dash-right-column{display:none!important}

  /* Bottom nav de app */
  .mobile-bottom-nav{
    display:grid!important;position:fixed!important;left:0!important;right:0!important;bottom:0!important;
    z-index:99999!important;height:72px!important;grid-template-columns:repeat(5,1fr)!important;
    background:rgba(255,255,255,.98)!important;border-top:1px solid #e7e0d5!important;
  }
}
@media screen and (max-width:430px){
  #dashboard.page{padding-left:10px!important;padding-right:10px!important}
  #dashboard .dash-mobile-brand strong{font-size:17px!important}
  #dashboard .dash-command-greeting h1{font-size:22px!important}
  #dashboard .dash-connected-pill{padding:0 8px!important}
  #dashboard .dash-top3-grid-modern .dash-top-card-modern{flex-basis:91%!important;min-width:91%!important;width:91%!important}
}

/* ==========================================================
   LJ Radar Imob v22.9 — temas globais, contraste e mobile
   Camada final: mantém o dashboard v22.8 e elimina cores fixas.
   ========================================================== */
body[data-theme="champagne"]{
  --bg:#f8f6f2;--panel:#fffdfa;--text:#172033;--muted:#697482;--line:#e3dacb;
  --accent:#9a650b;--accent2:#f5ebd8;--accent3:#c68c24;--surface-soft:#fbf5e9;
  --surface-hover:#f7eddb;--button-on-accent:#fff;--shadow:0 8px 26px rgba(26,32,44,.065)
}
body[data-theme="emerald"]{
  --bg:#f1f8f5;--panel:#fff;--text:#173229;--muted:#61776e;--line:#d6e6de;
  --accent:#0b6f4d;--accent2:#e4f4ed;--accent3:#329b73;--surface-soft:#eff9f4;
  --surface-hover:#e4f4ed;--button-on-accent:#fff;--shadow:0 8px 26px rgba(20,70,50,.08)
}
body[data-theme="graphite"]{
  --bg:#eef1f4;--panel:#fff;--text:#242a31;--muted:#68727d;--line:#d7dde3;
  --accent:#4d5864;--accent2:#e7ebef;--accent3:#737d87;--surface-soft:#f3f5f7;
  --surface-hover:#e7ebef;--button-on-accent:#fff;--shadow:0 8px 24px rgba(35,42,50,.08)
}
body[data-theme="dark"]{
  --bg:#0f1318;--panel:#171c22;--text:#f2f4f7;--muted:#aab2bc;--line:#303842;
  --accent:#d1a64a;--accent2:#282318;--accent3:#b78327;--surface-soft:#1c2229;
  --surface-hover:#242b33;--button-on-accent:#111418;--shadow:0 10px 28px rgba(0,0,0,.28)
}

html[data-theme]{background:var(--bg)}
body[data-theme]{--surface:var(--panel);background:var(--bg)!important;color:var(--text)!important}
body[data-theme] main,
body[data-theme] #dashboard{background:var(--bg)!important;color:var(--text)!important}
body[data-theme] .sidebar,
body[data-theme] .sidebar-bottom,
body[data-theme] .status,
body[data-theme] .card,
body[data-theme] .match,
body[data-theme] .settings-nav,
body[data-theme] .theme,
body[data-theme] .dropzone,
body[data-theme] .role-console,
body[data-theme] .source-card,
body[data-theme] .permission-panel,
body[data-theme] .user-permission-card,
body[data-theme] .intent-compact-card,
body[data-theme] .intent-match-card,
body[data-theme] .match-group{
  background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important
}
body[data-theme] .sidebar{border-right-color:var(--line)!important}
body[data-theme] .sidebar-bottom{background:var(--surface-soft)!important}
body[data-theme] .nav button,
body[data-theme] .settings-nav button{color:var(--muted)!important}
body[data-theme] .nav button:hover,
body[data-theme] .nav button.active,
body[data-theme] .settings-nav button:hover,
body[data-theme] .settings-nav button.active{background:var(--accent2)!important;color:var(--accent)!important}
body[data-theme] .nav button.active:before{background:var(--accent)!important}
body[data-theme] .avatar{background:var(--accent2)!important;color:var(--accent)!important}

body[data-theme] input,
body[data-theme] select,
body[data-theme] textarea{
  background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important
}
body[data-theme] input::placeholder,
body[data-theme] textarea::placeholder{color:var(--muted)!important;opacity:.9}
body[data-theme] .primary,
body[data-theme] .dash-gold,
body[data-theme] .ops-side-cta{
  background:var(--accent)!important;border-color:var(--accent)!important;color:var(--button-on-accent)!important
}
body[data-theme] .secondary,
body[data-theme] .source-action,
body[data-theme] .owner-more,
body[data-theme] .dash-owner-actions a,
body[data-theme] .dash-owner-actions button,
body[data-theme] .role-console-actions button{
  background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important
}
body[data-theme] .notice,
body[data-theme] .source-policy-mini{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important}
body[data-theme] :focus-visible{outline:3px solid var(--accent)!important;outline-offset:2px!important}

/* Dashboard moderno */
body[data-theme] .dash-global-search,
body[data-theme] .dash-icon-btn,
body[data-theme] .dash-date-pill,
body[data-theme] .dash-connected-pill,
body[data-theme] .dash-kpis-modern,
body[data-theme] .dash-kpis-modern .dash-kpi,
body[data-theme] .dash-top-opportunities-section,
body[data-theme] .dash-top-card-modern,
body[data-theme] .ops-dashboard-modern,
body[data-theme] .dash-insight-card,
body[data-theme] .dash-hot-card,
body[data-theme] .dash-summary-metric,
body[data-theme] .ops-side-card,
body[data-theme] .ops-side-kpis div,
body[data-theme] .ops-side-insight{
  background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important
}
body[data-theme] .dash-top-user:hover,
body[data-theme] .dash-modern-section-head>button,
body[data-theme] .dash-section-star,
body[data-theme] .dash-insight-title>span,
body[data-theme] .dash-top-source b{background:var(--surface-soft)!important;color:var(--accent)!important;border-color:var(--line)!important}
body[data-theme] .dash-top-title-row h3,
body[data-theme] .dash-top-price,
body[data-theme] .dash-top-user strong,
body[data-theme] .dash-greeting-row h1,
body[data-theme] .dash-command-greeting h1,
body[data-theme] .dash-mobile-brand,
body[data-theme] .dash-mobile-brand strong,
body[data-theme] .dash-modern-section-head h2,
body[data-theme] .dash-insight-title strong,
body[data-theme] .dash-summary-metric strong,
body[data-theme] .dash-summary-line b,
body[data-theme] .ops-side-head strong,
body[data-theme] .ops-side-kpis strong,
body[data-theme] .ops-side-insight strong,
body[data-theme] .ops-side-item b{color:var(--text)!important}
body[data-theme] .dash-top-location,
body[data-theme] .dash-top-specs,
body[data-theme] .dash-top-source,
body[data-theme] .dash-top-user small,
body[data-theme] .dash-top-user>span,
body[data-theme] .dash-greeting-row p,
body[data-theme] .dash-command-greeting p,
body[data-theme] .dash-modern-section-head p,
body[data-theme] .dash-insight-title small,
body[data-theme] .dash-summary-metric span,
body[data-theme] .dash-summary-line span,
body[data-theme] .ops-side-head span,
body[data-theme] .ops-side-kpis small,
body[data-theme] .ops-side-insight span,
body[data-theme] .ops-side-item span{color:var(--muted)!important}
body[data-theme] .dash-kpis-modern .dash-kpi{border-right-color:var(--line)!important}
body[data-theme] .dash-hot-row,
body[data-theme] .dash-summary-line{border-color:var(--line)!important}
body[data-theme] .dash-score-ring:after{background:var(--panel)!important}
body[data-theme] .dash-top-media{background:linear-gradient(135deg,var(--surface-soft),var(--accent2))!important}
body[data-theme] .dash-top-image-placeholder{color:var(--muted)!important}
body[data-theme] .dash-top-actions-modern .details{background:var(--panel)!important;border-color:var(--accent)!important;color:var(--accent)!important}
body[data-theme] .dash-top-actions-modern .contact{background:var(--accent)!important;border-color:var(--accent)!important;color:var(--button-on-accent)!important}
body[data-theme] .dash-top-actions-modern .contact.muted{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--muted)!important}
body[data-theme] .dash-hot-more{color:var(--accent)!important}
body[data-theme] .dash-mobile-logo{background:var(--accent2)!important;border-color:var(--accent)!important;color:var(--accent)!important}

/* KPIs das demais áreas seguem o tema sem texto invisível. */
body[data-theme] #reports .grid4>.card:first-child,
body[data-theme] #matches .grid4>.card:first-child,
body[data-theme] #intentions .grid4>.card:first-child,
body[data-theme] #whatsapp-leads .whatsapp-kpis>.card:first-child,
body[data-theme] #contact-check .grid4>.card:first-child,
body[data-theme] .discarded-kpis>.card:first-child{
  background:var(--surface-soft)!important;border-color:var(--line)!important
}
body[data-theme] #reports .grid4>.card:first-child .metric-label,
body[data-theme] #reports .grid4>.card:first-child .metric-sub,
body[data-theme] #matches .grid4>.card:first-child .metric-label,
body[data-theme] #matches .grid4>.card:first-child .metric-sub,
body[data-theme] #intentions .grid4>.card:first-child .metric-label,
body[data-theme] #intentions .grid4>.card:first-child .metric-sub,
body[data-theme] #whatsapp-leads .whatsapp-kpis>.card:first-child .metric-label,
body[data-theme] #whatsapp-leads .whatsapp-kpis>.card:first-child .metric-sub{color:var(--muted)!important}
body[data-theme] #reports .grid4>.card:first-child .metric-value,
body[data-theme] #matches .grid4>.card:first-child .metric-value,
body[data-theme] #matches .grid4>.card:first-child #mtotal,
body[data-theme] #intentions .grid4>.card:first-child .metric-value,
body[data-theme] #intentions .grid4>.card:first-child #iTotal,
body[data-theme] #whatsapp-leads .whatsapp-kpis>.card:first-child .metric-value{color:var(--text)!important}

/* Pesquisa registral e captura de contato */
body[data-theme] .registry-trust-banner,
body[data-theme] .contact-capture-panel,
body[data-theme] .collector-v2-live,
body[data-theme] .match-policy{background:var(--surface-soft)!important;border-color:var(--line)!important;color:var(--text)!important}
body[data-theme] .registry-trust-banner strong,
body[data-theme] .contact-capture-copy strong,
body[data-theme] .collector-v2-live strong{color:var(--text)!important}
body[data-theme] .registry-trust-banner span,
body[data-theme] .contact-capture-copy span,
body[data-theme] .contact-capture-status,
body[data-theme] .collector-v2-live small{color:var(--muted)!important}
body[data-theme] .registry-source-hint,
body[data-theme] .registry-source-stack button,
body[data-theme] .registry-row,
body[data-theme] .registry-row-actions a,
body[data-theme] .registry-row-actions button,
body[data-theme] .owner-registry{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}
body[data-theme] .registry-howto li,
body[data-theme] .registry-source-stack span,
body[data-theme] .registry-row-main>span,
body[data-theme] .registry-row-main>small{color:var(--muted)!important}
body[data-theme] .registry-row-actions .registry-confirm{background:#177a50!important;border-color:#177a50!important;color:#fff!important}

/* Navegação móvel e menu Mais */
@media(max-width:1050px){
  body[data-theme] .mobile-bottom-nav{
    background:var(--panel)!important;
    background:color-mix(in srgb,var(--panel) 94%,transparent)!important;
    border-top-color:var(--line)!important;color:var(--text)!important
  }
  body[data-theme] .mobile-bottom-nav button{color:var(--muted)!important}
  body[data-theme] .mobile-bottom-nav .mobile-nav-home{color:var(--accent)!important}
  body[data-theme] .mobile-bottom-nav .mobile-nav-capture span{background:linear-gradient(135deg,var(--accent3),var(--accent))!important;color:var(--button-on-accent)!important}
  body[data-theme] .mobile-bottom-nav .mobile-nav-capture b{color:var(--accent)!important}
  body[data-theme] .mobile-more-panel{background:var(--panel)!important;color:var(--text)!important}
  body[data-theme] .mobile-more-head button{background:var(--surface-soft)!important;color:var(--text)!important}
  body[data-theme] .mobile-menu-grid button{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}
}

@media(max-width:720px){
  html[data-theme],body[data-theme]{background:var(--bg)!important}
  body[data-theme] #dashboard.page{background:var(--bg)!important}
  body[data-theme] #dashboard .dash-connected-pill,
  body[data-theme] #dashboard .dash-global-search,
  body[data-theme] #dashboard .dash-kpis-modern .dash-kpi,
  body[data-theme] #dashboard .dash-top-opportunities-section,
  body[data-theme] #dashboard .dash-top3-grid-modern .dash-top-card-modern,
  body[data-theme] #dashboard .ops-dashboard-modern,
  body[data-theme] #dashboard .dash-hot-card{background:var(--panel)!important;border-color:var(--line)!important}
  body[data-theme] #whatsappLeadsTable tr,
  body[data-theme] .deep-table tr,
  body[data-theme] #owners tr,
  body[data-theme] #matches tr,
  body[data-theme] #tradeIntentsTable tr,
  body[data-theme] #tradeMatchesTable tr,
  body[data-theme] #companiesTable tr,
  body[data-theme] #companyMatchesTable tr{background:var(--panel)!important;border-color:var(--line)!important;color:var(--text)!important}
  body[data-theme] #whatsappLeadsTable td,
  body[data-theme] .deep-table td,
  body[data-theme] #owners td,
  body[data-theme] #matches td,
  body[data-theme] #tradeIntentsTable td,
  body[data-theme] #tradeMatchesTable td,
  body[data-theme] #companiesTable td,
  body[data-theme] #companyMatchesTable td{border-bottom-color:var(--line)!important;color:var(--text)!important}
}

/* ==========================================================
   LJ Radar Imob v22.11 — prioridade comercial e leitura clara
   ========================================================== */
.nav .nav-priority{
  border:1px solid var(--line);
  background:var(--surface-soft);
  color:var(--text);
  font-weight:800;
  padding-left:15px;
}
.nav button{display:flex;align-items:center;gap:7px;width:100%}
.nav .nav-priority:before{
  content:"";
  position:absolute;
  left:5px;
  top:50%;
  width:4px;
  height:14px;
  border-radius:999px;
  background:var(--accent);
  transform:translateY(-50%);
}
.nav .nav-priority.active:before{left:5px;top:50%;bottom:auto;height:18px}
body[data-theme] .nav .nav-priority{
  background:var(--surface-soft)!important;
  border-color:var(--line)!important;
  color:var(--text)!important;
}
body[data-theme] .nav .nav-priority:hover,
body[data-theme] .nav .nav-priority.active{
  background:var(--accent2)!important;
  border-color:var(--accent)!important;
  color:var(--accent)!important;
}
.nav .nav-count{display:inline-grid!important;visibility:visible!important;opacity:1!important}

.module-alias,.module-kicker{
  display:inline-flex;
  align-items:center;
  width:max-content;
  border:1px solid var(--line);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--accent);
  padding:4px 8px;
  font-size:10px;
  line-height:1;
  font-weight:850;
  letter-spacing:.02em;
}
.deep-purpose-card,.buyer-purpose-card{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
  gap:18px;
  align-items:center;
  margin:0 0 14px;
  padding:17px 18px;
  border:1px solid var(--line);
  border-left:4px solid var(--accent);
  border-radius:14px;
  background:var(--panel);
  box-shadow:var(--shadow);
}
.deep-purpose-copy h2,.buyer-purpose-card h2{margin:8px 0 5px;font-size:17px;letter-spacing:-.02em}
.deep-purpose-copy p,.buyer-purpose-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.55}
.deep-purpose-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.deep-purpose-steps>div{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:58px;
  padding:9px;
  border:1px solid var(--line);
  border-radius:11px;
  background:var(--surface-soft);
}
.deep-purpose-steps b{display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--button-on-accent);font-size:11px}
.deep-purpose-steps span,.deep-purpose-steps strong,.deep-purpose-steps small{display:block}
.deep-purpose-steps strong{font-size:11px;color:var(--text)}
.deep-purpose-steps small{margin-top:2px;font-size:9px;color:var(--muted)}

.buyer-purpose-card{grid-template-columns:minmax(0,1fr) auto}
.buyer-purpose-card .secondary{white-space:nowrap}
.buyer-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:14px}
.buyer-kpis .card{padding:14px}
.buyer-kpis .metric-value{display:block!important;visibility:visible!important;opacity:1!important;color:var(--text)!important}

#trades .grid4 .metric-value,
#whatsapp-leads .whatsapp-kpis .metric-value{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  color:var(--text)!important;
  min-height:31px;
}
#trades .grid4>.card{
  background:var(--panel)!important;
  border-color:var(--line)!important;
}
#trades .grid4>.card .metric-label,
#trades .grid4>.card .metric-sub{color:var(--muted)!important}
body[data-theme] #trades .grid4 .metric-value,
body[data-theme] #whatsapp-leads .whatsapp-kpis .metric-value{color:var(--text)!important}

.ops-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.ops-kpis .ops-kpi-featured{background:var(--surface-soft)!important;border-color:var(--accent)!important}
.ops-kpis .ops-kpi-featured .metric-value{color:var(--accent)!important}

@media(max-width:1150px){
  .deep-purpose-card{grid-template-columns:1fr}
  .buyer-purpose-card{grid-template-columns:1fr}
  .buyer-purpose-card .secondary{width:max-content}
}
@media(max-width:720px){
  .deep-purpose-card,.buyer-purpose-card{padding:13px;border-left-width:3px}
  .deep-purpose-steps{grid-template-columns:1fr}
  .deep-purpose-steps>div{min-height:48px}
  .buyer-kpis,.ops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .mobile-bottom-nav .mobile-nav-match span{color:var(--accent)!important;font-weight:900}
  .mobile-menu-grid .mobile-menu-priority{background:var(--surface-soft)!important;border-color:var(--accent)!important;color:var(--accent)!important}
}

/* === Fusão v21.x -> v22.19: Para o Quinto Andar, sino de alertas, navegação mobile, painel de config === */
.nav-count-gold{background:#b88018!important;color:#fff!important}
.para-qa-banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:#fff1d7;color:#8a5a10;font-weight:800;font-size:13px;margin-bottom:14px}
.para-qa-banner.is-empty{background:var(--panel);color:var(--muted);font-weight:700}
.para-qa-priority{border-left:3px solid #b88018!important}

.app-right{display:flex;flex-direction:column;min-height:100vh}
.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:14px 32px;background:var(--panel);border-bottom:1px solid var(--line)}
.topbar-brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:19px;justify-self:center}
.topbar-brand-text{display:flex;flex-direction:column;line-height:1.15}
.topbar-brand-text small{font-size:11px;font-weight:650;color:var(--muted);letter-spacing:.02em}
.topbar-actions{display:flex;align-items:center;gap:10px;justify-self:end}
.topbar-settings{display:flex;align-items:center;gap:6px;border-radius:999px!important;padding:9px 16px!important}
.status-pill{display:flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-size:12.5px;font-weight:700;color:#1c7a45;white-space:nowrap}
.status-pill i{width:8px;height:8px;border-radius:50%;background:var(--green,#1c8a52);display:block}
.alerts-bell{position:relative;width:40px;height:40px;flex:none;border-radius:50%;border:1px solid var(--line);background:var(--panel);cursor:pointer;font-size:16px;display:grid;place-items:center;padding:0}
.alerts-bell:hover{background:var(--accent2)}
.alerts-bell-count{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;font-size:9px;padding:0 4px;margin:0}
.sidebar-user{display:flex;align-items:center;gap:10px;width:100%;border:0;background:transparent;text-align:left;padding:9px 8px;border-radius:12px;margin-bottom:16px;cursor:pointer}
.sidebar-user:hover{background:var(--accent2)}
.sidebar-user .avatar{width:40px;height:40px;border-radius:50%;background:var(--accent2);display:grid;place-items:center;font-weight:800;color:var(--accent);flex:none;font-size:14px}
.sidebar-user-meta{display:flex;flex-direction:column;min-width:0}
.sidebar-user-meta strong{font-size:13.5px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sidebar-user-meta .small{font-size:11px;color:var(--muted)}
.sidebar-user-status{display:flex;align-items:center;gap:5px;font-size:10.5px;color:#1c7a45;font-weight:700;margin-top:2px}
.sidebar-user-status i{width:6px;height:6px;border-radius:50%;background:var(--green,#1c8a52);display:block}
.sidebar-version{font-size:9.5px;color:var(--muted);text-align:center;margin-top:10px}
.nav-ic{width:17px;height:17px;flex:none;opacity:.75}
.nav button.active .nav-ic,.nav button:hover .nav-ic{opacity:1}

.alerts-popover{position:fixed;z-index:99999;width:360px;max-height:70vh;overflow-y:auto;padding:0;border-radius:16px;background:rgba(18,18,20,.97);color:#fff;box-shadow:0 18px 55px rgba(0,0,0,.3);backdrop-filter:blur(18px);display:none}
.alerts-popover.open{display:block}
.alerts-popover-head{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;background:rgba(18,18,20,.98);border-bottom:1px solid rgba(255,255,255,.08)}
.alerts-popover-head button{background:none;border:1px solid rgba(255,255,255,.25);color:#fff;border-radius:8px;padding:4px 8px;font-size:11px;cursor:pointer}
.alerts-popover-list{padding:6px}
.alert-row{padding:10px;border-radius:10px;margin:4px 0}
.alert-row.is-new{background:rgba(184,128,24,.18)}
.alert-row-top{display:flex;align-items:center;gap:6px;margin-bottom:4px}
.alert-new-tag{font-size:10px;font-weight:800;color:#e8b04a}
.alert-row-body{font-size:12.5px;line-height:1.4;color:#e8e8ea}
.alert-row-body .small{color:#b8b8bd;margin-top:2px}
.alert-row-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.alert-row-actions a,.alert-row-actions button{font-size:11px;padding:4px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.2);color:#fff;background:none;text-decoration:none;cursor:pointer}
.alert-row-actions button.danger{border-color:rgba(255,90,90,.4);color:#ff9a9a}

.settings-overlay{position:fixed;inset:0;background:rgba(28,20,8,.35);z-index:9000;opacity:0;pointer-events:none;transition:opacity .2s ease}
.settings-overlay.open{opacity:1;pointer-events:auto}
.settings-panel{position:fixed;top:0;right:0;height:100vh;width:min(560px,94vw);background:var(--bg);box-shadow:-24px 0 60px rgba(0,0,0,.2);z-index:9001;transform:translateX(100%);transition:transform .25s ease;overflow-y:auto;padding:24px 26px 40px;margin:0}
.settings-panel.open{transform:translateX(0)}
.settings-panel .settings-layout{grid-template-columns:1fr}
.settings-panel .settings-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;padding:8px}
.settings-panel .settings-nav button{padding:8px 11px;font-size:12px}
.settings-close{border:1px solid var(--line);background:var(--panel);width:34px;height:34px;border-radius:50%;font-size:15px;cursor:pointer;flex:none}
.settings-close:hover{background:var(--accent2);color:var(--accent)}

.mobile-tabbar{display:none}
.more-sheet{display:none}
@media(max-width:1050px){
  .mobile-tabbar{
    display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:8500;
    background:var(--panel);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(26,32,44,.06);
    padding:6px 2px calc(6px + env(safe-area-inset-bottom));
  }
  .mobile-tabbar button{
    display:flex;flex-direction:column;align-items:center;gap:3px;border:0;background:transparent;
    color:#7a828e;font-size:9.5px;font-weight:700;padding:6px 2px;border-radius:10px;position:relative
  }
  .mobile-tabbar button svg{width:21px;height:21px}
  .mobile-tabbar button.active{color:var(--accent)}
  .mt-badge{position:absolute;top:2px;right:calc(50% - 20px);min-width:15px;height:15px;border-radius:999px;background:#b88018;color:#fff;font-size:8.5px;font-style:normal;font-weight:800;display:none;align-items:center;justify-content:center;padding:0 3px}
  .mt-badge.show{display:flex}
  main{padding-bottom:78px}
  .topbar{padding:12px 16px}
  .topbar-brand-text small{display:none}
  .status-pill strong{display:none}
  .status-pill{padding:8px 10px}
  .sidebar{display:none}
}
.more-sheet{
  position:fixed;left:0;right:0;bottom:0;z-index:9001;background:var(--bg);border-radius:18px 18px 0 0;
  box-shadow:0 -20px 60px rgba(0,0,0,.2);max-height:78vh;overflow-y:auto;padding:8px 20px calc(20px + env(safe-area-inset-bottom));
  transform:translateY(100%);transition:transform .25s ease
}
.more-sheet.open{display:block;transform:translateY(0)}
.more-sheet-handle{width:38px;height:4px;border-radius:99px;background:var(--line);margin:6px auto 10px}
.more-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}
.more-sheet-grid button{display:flex;align-items:center;gap:9px;text-align:left;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:#3a4454;font-size:12.5px;font-weight:700}
.more-sheet-grid button svg{width:18px;height:18px;flex:none;opacity:.8}
.more-sheet-grid button.active{background:var(--accent2);color:var(--accent);border-color:var(--accent3)}

@keyframes pageIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.page:not(.hidden){animation:pageIn .18s ease}
@media(prefers-reduced-motion:reduce){.page:not(.hidden){animation:none}}

/* ==========================================================
   LJ Radar Imob v22.26 — MOBILE UX UPGRADE
   Camada final: todas as páginas, bottom nav, tabelas, touch.
   ========================================================== */

/* ---- Base mobile shell (≤1050px) ---- */
@media (max-width: 1050px) {
  html, body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
  }

  .app {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  .sidebar {
    display: none !important;
  }

  main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 12px 12px calc(88px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .page {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
  }

  .page:not(.hidden) {
    padding-bottom: 8px;
  }

  /* Bottom nav — polished */
  .mobile-bottom-nav {
    display: grid !important;
    position: fixed !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 99990 !important;
    height: auto !important;
    min-height: 64px !important;
    grid-template-columns: repeat(5, 1fr) !important;
    align-items: stretch !important;
    background: rgba(255, 253, 250, 0.97) !important;
    backdrop-filter: blur(20px) saturate(1.2) !important;
    -webkit-backdrop-filter: blur(20px) saturate(1.2) !important;
    border-top: 1px solid var(--line, #e7e0d5) !important;
    box-shadow: 0 -10px 32px rgba(24, 32, 47, 0.10) !important;
    padding: 4px 4px calc(4px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .mobile-bottom-nav button {
    border: 0 !important;
    background: transparent !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 2px !important;
    min-height: 56px !important;
    padding: 6px 2px !important;
    color: var(--muted, #697482) !important;
    font-size: 17px !important;
    border-radius: 12px !important;
    position: relative !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: color 0.15s ease, background 0.15s ease !important;
  }

  .mobile-bottom-nav button:active {
    background: var(--surface-soft, #f5ebd8) !important;
  }

  .mobile-bottom-nav button b {
    font-size: 9px !important;
    font-weight: 750 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.1 !important;
  }

  .mobile-bottom-nav button.is-active,
  .mobile-bottom-nav button.active {
    color: var(--accent, #9a650b) !important;
  }

  .mobile-bottom-nav button.is-active b,
  .mobile-bottom-nav button.active b {
    font-weight: 850 !important;
  }

  .mobile-bottom-nav .mobile-wa span {
    color: #159b5d !important;
  }

  .mobile-bottom-nav .mobile-nav-match.is-active span,
  .mobile-bottom-nav .mobile-nav-match.active span {
    color: var(--accent, #9a650b) !important;
    font-weight: 900 !important;
  }

  /* More sheet — bottom sheet moderno */
  .mobile-more-sheet {
    position: fixed !important;
    inset: 0 !important;
    z-index: 99995 !important;
    background: rgba(16, 22, 32, 0.42) !important;
    align-items: flex-end !important;
    justify-content: stretch !important;
    padding: 0 !important;
  }

  .mobile-more-sheet:not(.hidden) {
    display: flex !important;
  }

  .mobile-more-panel {
    width: 100% !important;
    max-height: min(78vh, 640px) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background: var(--panel, #fff) !important;
    border-radius: 20px 20px 0 0 !important;
    padding: 10px 16px calc(20px + env(safe-area-inset-bottom, 0px)) !important;
    box-shadow: 0 -16px 48px rgba(0, 0, 0, 0.18) !important;
    color: var(--text, #172033) !important;
  }

  .mobile-more-panel::before {
    content: "";
    display: block;
    width: 40px;
    height: 4px;
    border-radius: 99px;
    background: var(--line, #e3dacb);
    margin: 4px auto 12px;
  }

  .mobile-more-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 14px !important;
  }

  .mobile-more-head strong {
    font-size: 18px !important;
    font-weight: 850 !important;
  }

  .mobile-more-head button {
    border: 0 !important;
    background: var(--surface-soft, #f5ebd8) !important;
    color: var(--text) !important;
    border-radius: 10px !important;
    width: 36px !important;
    height: 36px !important;
    font-size: 20px !important;
    display: grid !important;
    place-items: center !important;
  }

  .mobile-menu-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .mobile-menu-grid button {
    border: 1px solid var(--line, #e3dacb) !important;
    background: var(--panel, #fff) !important;
    border-radius: 14px !important;
    padding: 14px 12px !important;
    text-align: left !important;
    font-weight: 800 !important;
    font-size: 12.5px !important;
    color: var(--text, #344054) !important;
    min-height: 52px !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  .mobile-menu-grid button:active {
    background: var(--surface-soft, #f5ebd8) !important;
  }

  .mobile-menu-grid .mobile-menu-priority {
    background: var(--surface-soft, #f5ebd8) !important;
    border-color: var(--accent, #9a650b) !important;
    color: var(--accent, #9a650b) !important;
  }

  /* Toast acima da bottom nav */
  .toast {
    bottom: calc(80px + env(safe-area-inset-bottom, 0px)) !important;
    right: 12px !important;
    left: 12px !important;
    max-width: none !important;
    text-align: center !important;
  }

  /* Build badge menos invasivo no mobile */
  .build-badge {
    top: auto !important;
    bottom: calc(76px + env(safe-area-inset-bottom, 0px)) !important;
    left: 8px !important;
    font-size: 9px !important;
    opacity: 0.7 !important;
    padding: 3px 7px !important;
  }

  /* Headers e toolbars */
  .top {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .top-actions {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .top-actions button,
  .top-actions .primary,
  .top-actions .secondary {
    width: 100% !important;
    min-height: 42px !important;
  }

  .toolbar,
  .owners-toolbar,
  .deep-toolbar,
  .whatsapp-toolbar,
  .intent-toolbar,
  .match-toolbar,
  .discarded-toolbar,
  .registry-toolbar {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .toolbar input,
  .toolbar select,
  .owners-toolbar input,
  .owners-toolbar select,
  .deep-toolbar input,
  .deep-toolbar select,
  .whatsapp-toolbar input,
  .whatsapp-toolbar select,
  .intent-toolbar input,
  .intent-toolbar select,
  .match-toolbar select,
  .registry-toolbar input,
  .registry-toolbar select {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 42px !important;
    font-size: 15px !important;
  }

  /* Cards e grids */
  .grid4,
  .formgrid,
  .field-grid,
  .theme-grid,
  .buyer-kpis,
  .ops-kpis,
  .whatsapp-kpis {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }

  .card {
    overflow: hidden !important;
    min-width: 0 !important;
  }

  /* Tabelas: scroll horizontal suave + indicação */
  .card:has(table),
  .table-wrap,
  [class*="-table"] {
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  table,
  .deep-table,
  .owners-pro-table,
  .match-real-table,
  .ops-daily-table {
    min-width: 640px !important;
    font-size: 12px !important;
  }

  table th,
  table td {
    padding: 8px 10px !important;
    white-space: nowrap !important;
  }

  /* Botões touch-friendly */
  button,
  .primary,
  .secondary,
  .contact-btn,
  a.contact,
  a.wa-ready {
    min-height: 40px !important;
  }

  .contact-btn,
  .source-action {
    padding: 8px 10px !important;
    font-size: 11px !important;
  }

  /* Settings panel mobile */
  .settings-panel.open,
  #settings.open {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 0 !important;
  }

  .settings-layout {
    grid-template-columns: 1fr !important;
  }

  /* Back button mais visível */
  .back-shortcut {
    min-height: 40px !important;
    font-weight: 800 !important;
  }

  /* Purpose cards */
  .deep-purpose-card,
  .buyer-purpose-card {
    grid-template-columns: 1fr !important;
    padding: 14px !important;
  }

  .deep-purpose-steps {
    grid-template-columns: 1fr !important;
  }

  /* Auth em mobile */
  .auth-card,
  .recovery-card {
    width: 100% !important;
    max-width: 100% !important;
    border-radius: 18px !important;
    margin: 0 !important;
  }

  .auth-overlay,
  .recovery-overlay {
    padding: 12px !important;
    align-items: flex-end !important;
  }

  @media (min-height: 640px) {
    .auth-overlay,
    .recovery-overlay {
      align-items: center !important;
    }
  }
}

/* ---- Telas estreitas (≤720px) ---- */
@media (max-width: 720px) {
  main {
    padding: 10px 10px calc(90px + env(safe-area-inset-bottom, 0px)) !important;
  }

  .grid4,
  .buyer-kpis,
  .ops-kpis,
  .whatsapp-kpis {
    grid-template-columns: 1fr 1fr !important;
  }

  .grid4 > .card .metric-value,
  .buyer-kpis .metric-value,
  .ops-kpis .metric-value {
    font-size: 20px !important;
  }

  .top h1,
  .top h2,
  .section-head h2 {
    font-size: 18px !important;
  }

  .title h1 {
    font-size: 22px !important;
  }

  /* Stack top-actions em 1 coluna quando muito apertado */
  .top-actions {
    grid-template-columns: 1fr !important;
  }

  /* Match / intent cards */
  .intent-compact-card,
  .intent-match-card,
  .match-group {
    min-width: 0 !important;
  }

  .match-source-actions {
    min-width: 0 !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
  }

  /* User permission cards */
  .user-permission-list {
    grid-template-columns: 1fr !important;
  }

  /* Source coverage */
  .source-coverage {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Registry */
  .registry-lookup-grid {
    grid-template-columns: 1fr !important;
  }

  .registry-search-button {
    width: 100% !important;
    min-width: 0 !important;
  }
}

/* ---- iPhone SE / muito estreito (≤390px) ---- */
@media (max-width: 390px) {
  main {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  .mobile-bottom-nav button b {
    font-size: 8px !important;
  }

  .mobile-bottom-nav button {
    font-size: 15px !important;
    min-height: 52px !important;
  }

  .grid4,
  .buyer-kpis,
  .ops-kpis {
    gap: 6px !important;
  }

  .card {
    padding: 10px !important;
  }
}

/* ---- Tema dark / accent no mobile nav ---- */
@media (max-width: 1050px) {
  body[data-theme] .mobile-bottom-nav {
    background: color-mix(in srgb, var(--panel) 92%, transparent) !important;
    border-top-color: var(--line) !important;
  }

  body[data-theme="dark"] .mobile-bottom-nav {
    background: rgba(23, 28, 34, 0.96) !important;
  }

  body[data-theme] .mobile-bottom-nav button {
    color: var(--muted) !important;
  }

  body[data-theme] .mobile-bottom-nav button.is-active,
  body[data-theme] .mobile-bottom-nav button.active {
    color: var(--accent) !important;
  }

  body[data-theme] .mobile-more-panel {
    background: var(--panel) !important;
    color: var(--text) !important;
  }

  body[data-theme] .mobile-menu-grid button {
    background: var(--panel) !important;
    border-color: var(--line) !important;
    color: var(--text) !important;
  }

  body[data-theme] .mobile-menu-grid .mobile-menu-priority {
    background: var(--surface-soft) !important;
    border-color: var(--accent) !important;
    color: var(--accent) !important;
  }
}

/* ---- Dashboard mobile refinements (não quebra v22.8) ---- */
@media screen and (max-width: 760px) {
  #dashboard.page {
    padding: 12px 12px calc(96px + env(safe-area-inset-bottom, 0px)) !important;
  }

  #dashboard .dash-command-header {
    margin-bottom: 12px !important;
  }

  /* KPIs legíveis */
  #dashboard .dash-kpis-modern,
  #dashboard .ops-kpis {
    gap: 8px !important;
  }

  /* Top 3 scroll horizontal suave */
  #dashboard .dash-top3-grid-modern {
    display: flex !important;
    overflow-x: auto !important;
    gap: 10px !important;
    scroll-snap-type: x mandatory !important;
    -webkit-overflow-scrolling: touch !important;
    padding-bottom: 4px !important;
  }

  #dashboard .dash-top3-grid-modern .dash-top-card-modern {
    flex: 0 0 86% !important;
    min-width: 86% !important;
    scroll-snap-align: start !important;
  }
}

/* ---- Evitar zoom indesejado em inputs iOS ---- */
@media (max-width: 1050px) {
  input,
  select,
  textarea {
    font-size: 16px !important;
  }
}

/* ---- Active page highlight helper (JS adiciona .is-active) ---- */
.mobile-bottom-nav button.is-active::after {
  content: "";
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  width: 18px;
  height: 3px;
  border-radius: 99px;
  background: var(--accent, #9a650b);
}


/* ==========================================================
   LJ Radar Imob v22.27 — MOBILE CARD LISTS
   Tabelas viram cards no telefone; desktop mantém tabela.
   ========================================================== */

.mobile-card-list{display:none}
.desktop-table-wrap{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}

@media (max-width: 1050px) {
  .desktop-table-wrap{display:none!important}
  .mobile-card-list{
    display:flex!important;
    flex-direction:column;
    gap:10px;
    width:100%;
  }

  .m-card{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:14px;
    border:1px solid var(--line,#e3dacb);
    border-radius:14px;
    background:var(--panel,#fff);
    box-shadow:0 4px 14px rgba(26,32,44,.05);
    min-width:0;
  }

  .m-card-muted{
    opacity:.82;
    background:var(--surface-soft,#fbf5e9);
  }

  .m-card-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
  }

  .m-card-top strong{
    font-size:14.5px;
    line-height:1.25;
    color:var(--text,#172033);
    flex:1;
    min-width:0;
    word-break:break-word;
  }

  .m-card-meta{
    font-size:12.5px;
    color:var(--muted,#697482);
    line-height:1.35;
  }

  .m-card-price{
    font-size:18px;
    font-weight:850;
    color:var(--accent,#9a650b);
    letter-spacing:-.02em;
  }

  .m-card-specs{
    font-size:12px;
    color:var(--text,#344054);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
  }

  .m-card-row{
    font-size:12.5px;
    color:var(--text);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:6px;
  }

  .m-card-handler select,
  .m-card-handler .handler-select{
    width:100%;
    min-height:40px;
    font-size:14px!important;
  }

  .m-card-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:4px;
    padding-top:8px;
    border-top:1px solid var(--line,#ece6dc);
  }

  .m-card-actions-primary{
    border-top:0;
    padding-top:2px;
  }

  .m-card-actions .wa-ready,
  .m-card-actions .wa-history-ready,
  .m-card-actions .contact-btn,
  .m-card-actions .source-action,
  .m-card-actions .owner-registry,
  .m-card-actions .owner-more,
  .m-card-actions .primary,
  .m-card-actions .secondary,
  .m-card-actions .danger{
    flex:1 1 auto;
    min-height:42px!important;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    padding:10px 12px!important;
    font-size:13px!important;
    font-weight:800!important;
    border-radius:10px!important;
    text-decoration:none!important;
  }

  .m-card-actions .wa-ready,
  .m-card-actions .wa-history-ready{
    background:#e7f8ef!important;
    color:#137649!important;
    border:1px solid #b6e6c9!important;
    flex:1 1 100%;
  }

  .m-card-actions .owner-more{
    flex:0 0 48px;
  }

  /* Intent cards já existem — reforço mobile */
  .intent-compact-list{
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
  }

  .intent-compact-card{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    padding:14px!important;
    border-radius:14px!important;
  }

  .intent-compact-card .intent-action a,
  .intent-compact-card .intent-whatsapp{
    min-height:40px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 12px;
  }

  /* Match groups */
  .match-group{
    padding:12px!important;
    border-radius:14px!important;
  }

  .match-group-actions{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  .match-group-actions a{
    flex:1 1 auto;
    min-height:40px;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
  }
}

@media (max-width: 720px) {
  .m-card{padding:12px}
  .m-card-price{font-size:17px}
  .m-card-actions .wa-ready,
  .m-card-actions .wa-history-ready{
    font-size:14px!important;
  }
}

/* Tema dark nos cards */
body[data-theme] .m-card{
  background:var(--panel)!important;
  border-color:var(--line)!important;
  color:var(--text)!important;
}
body[data-theme] .m-card-muted{
  background:var(--surface-soft)!important;
}
body[data-theme] .m-card-top strong,
body[data-theme] .m-card-price{color:var(--text)!important}
body[data-theme] .m-card-price{color:var(--accent)!important}
body[data-theme] .m-card-meta{color:var(--muted)!important}
body[data-theme] .m-card-actions{
  border-top-color:var(--line)!important;
}


/* v22.28 — cards Descartados / Empresas / Histórico */
.m-stat{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:5px 9px;
  border-radius:8px;
  background:var(--surface-soft,#f5ebd8);
  font-size:11px;
  color:var(--muted,#697482);
}
.m-stat b{color:var(--text,#172033);font-weight:850;font-size:13px}

.history-card-list{
  display:flex!important;
  flex-direction:column;
  gap:8px;
  width:100%;
}
.history-event-card time{
  font-size:11px;
  color:var(--muted);
  white-space:nowrap;
}
.history-event-card .m-card-top{
  align-items:center;
}

@media (max-width:1050px){
  .discarded-reason{
    font-size:12px;
    line-height:1.4;
    color:var(--muted);
  }
}



/* ==========================================================
   LJ Radar Imob v22.29 — alinhamento final de tema
   Mantém o layout v22.28; remove os últimos acentos fixos.
   ========================================================== */
body[data-theme] .nav-count-gold{
  background:var(--accent)!important;
  color:var(--button-on-accent)!important;
}
body[data-theme] .para-qa-banner{
  background:var(--accent2)!important;
  color:var(--accent)!important;
  border:1px solid var(--line)!important;
}
body[data-theme] .para-qa-priority{
  border-left-color:var(--accent)!important;
}

/* ==========================================================
   v22.35 — FIX MOBILE MENU CLICKS (somente mobile)
   Garante que o sheet fechado NÃO bloqueie a bottom nav
   e que os botões recebam toque.
   ========================================================== */
@media (max-width: 1050px) {
  /* Sheet fechado: some de verdade e não captura toque */
  .mobile-more-sheet.hidden {
    display: none !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }

  .mobile-more-sheet:not(.hidden) {
    display: flex !important;
    pointer-events: auto !important;
    visibility: visible !important;
    z-index: 100000 !important;
  }

  /* Bottom nav sempre clicável acima do conteúdo */
  .mobile-bottom-nav {
    z-index: 99990 !important;
    pointer-events: auto !important;
  }

  .mobile-bottom-nav button {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 1 !important;
  }

  .mobile-bottom-nav button span,
  .mobile-bottom-nav button b {
    pointer-events: none !important; /* toque vai para o botão */
  }

  /* Botões do menu Mais */
  .mobile-menu-grid button {
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .mobile-more-panel {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 2 !important;
  }

  /* Badge de versão não pode roubar toque */
  .build-badge {
    pointer-events: none !important;
    z-index: 99980 !important;
  }

  /* Toast não bloqueia nav */
  .toast {
    pointer-events: none !important;
    z-index: 99985 !important;
  }
}


/* ==========================================================
   LJ Radar Imob v22.37 — Central de Ação / Next Best Action
   ========================================================== */
.dash-action-center-banner{
  width:100%;margin:0 0 22px;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));
  background:linear-gradient(110deg,var(--accent2),var(--panel));color:var(--text);border-radius:18px;
  padding:15px 18px;display:flex;align-items:center;gap:14px;text-align:left;box-shadow:var(--shadow)
}
.dash-action-center-banner:hover{transform:translateY(-1px);border-color:var(--accent)}
.dash-action-icon{width:42px;height:42px;border-radius:13px;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:20px;flex:0 0 42px}
.dash-action-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.dash-action-copy strong{font-size:15px}.dash-action-copy strong b{font-size:20px;color:var(--accent)}.dash-action-copy small{color:var(--muted)}
.dash-action-open{font-size:12px;font-weight:800;color:var(--accent);white-space:nowrap}
.action-center-top{margin-bottom:18px}
.action-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.action-kpi{padding:16px 18px}.action-kpi>span{display:block;color:var(--muted);font-size:12px;font-weight:700}.action-kpi>strong{display:block;margin:6px 0 1px;font-size:30px}.action-kpi>small{color:var(--muted);font-size:11px}.action-kpi-urgent{border-color:color-mix(in srgb,#d84a4a 38%,var(--line));background:linear-gradient(140deg,color-mix(in srgb,#fff1f1 70%,var(--panel)),var(--panel))}.action-kpi-urgent>strong{color:#c43b3b}
.action-principle{margin-bottom:16px;padding:14px 16px;border-radius:16px;border:1px solid var(--line);background:var(--panel);display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:var(--shadow)}
.action-principle>div{display:flex;align-items:center;gap:12px}.action-principle-icon{width:38px;height:38px;border-radius:12px;background:var(--accent2);color:var(--accent);display:grid;place-items:center;font-weight:900}.action-principle strong,.action-principle small{display:block}.action-principle small{margin-top:3px;color:var(--muted)}
.action-toolbar{margin:0 0 14px}.action-toolbar input{min-width:280px}
.action-list-card{padding:16px}.action-list{display:flex;flex-direction:column;gap:10px}
.action-row{display:grid;grid-template-columns:68px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:15px;background:var(--panel);position:relative;overflow:hidden}
.action-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--line)}.action-row.action-urgent:before{background:#d84a4a}.action-row.action-high:before{background:var(--accent)}.action-row.action-normal:before{background:#8c96a5}
.action-score{width:58px;height:58px;border-radius:50%;border:5px solid var(--accent2);display:flex;flex-direction:column;align-items:center;justify-content:center}.action-score strong{font-size:18px;line-height:1}.action-score span{font-size:9px;text-transform:uppercase;color:var(--muted);margin-top:2px}
.action-main{min-width:0}.action-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.action-title-line strong{font-size:15px}.action-priority{display:inline-flex;padding:4px 7px;border-radius:999px;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.action-priority.urgent{background:#fff1f1;color:#c43b3b}.action-priority.high{background:var(--accent2);color:var(--accent)}.action-priority.normal{background:#eef2f8;color:#68748b}
.action-subtitle{margin-top:4px;font-size:13px;color:var(--text)}.action-reason{margin-top:6px;font-size:12px;color:var(--muted);line-height:1.45}.action-reason b{color:var(--text)}.action-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:7px}.action-meta span{font-size:10px;padding:4px 7px;border:1px solid var(--line);border-radius:999px;color:var(--muted);background:var(--bg)}
.action-actions{display:flex;flex-direction:column;gap:7px;min-width:178px}.action-primary,.action-secondary{border-radius:10px;padding:9px 11px;font-size:12px;font-weight:800;text-decoration:none;text-align:center}.action-primary{border:0;background:var(--accent);color:#fff}.action-secondary{border:1px solid var(--line);background:var(--panel);color:var(--text)}
@media(max-width:1050px){.action-kpis{grid-template-columns:repeat(2,1fr)}.action-row{grid-template-columns:58px minmax(0,1fr)}.action-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;min-width:0}.dash-action-center-banner{margin-bottom:16px}}
@media(max-width:700px){.action-kpis{grid-template-columns:1fr 1fr;gap:9px}.action-kpi{padding:13px}.action-kpi>strong{font-size:25px}.action-principle{align-items:flex-start;flex-direction:column}.action-principle>button{width:100%}.action-toolbar input{min-width:100%}.action-row{grid-template-columns:52px minmax(0,1fr);padding:12px;gap:10px}.action-score{width:48px;height:48px;border-width:4px}.action-score strong{font-size:16px}.action-actions{grid-template-columns:1fr}.dash-action-center-banner{align-items:flex-start;flex-wrap:wrap}.dash-action-open{width:100%;padding-left:56px}}


/* =========================================================
   LJ Radar Imob v22.38 — Pipeline Comercial
   ========================================================= */
.pipeline-top{margin-bottom:18px}
.pipeline-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:14px}
.pipeline-kpi{padding:16px 18px;display:flex;flex-direction:column;gap:3px}
.pipeline-kpi>span{font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.pipeline-kpi>strong{font-size:30px;line-height:1;color:var(--text)}
.pipeline-kpi>small{color:var(--muted)}
.pipeline-kpi-win{border-color:color-mix(in srgb,var(--accent) 45%,var(--line))}
.pipeline-notice{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--card);margin-bottom:14px}
.pipeline-notice>div{display:flex;flex-direction:column;gap:3px}.pipeline-notice span{font-size:12px;color:var(--muted)}
.pipeline-toolbar{margin-bottom:14px}.pipeline-toolbar input{min-width:260px;flex:1}
.pipeline-board-wrap{overflow-x:auto;padding-bottom:12px;overscroll-behavior-inline:contain}
.pipeline-board{display:grid;grid-template-columns:repeat(11,280px);gap:12px;min-width:max-content;align-items:start}
.pipeline-column{border:1px solid var(--line);background:color-mix(in srgb,var(--card) 84%,var(--bg));border-radius:18px;min-height:540px;overflow:hidden}
.pipeline-column-head{padding:13px 14px;border-bottom:1px solid var(--line);background:var(--card)}
.pipeline-column-head>div{display:flex;align-items:center;justify-content:space-between;gap:8px}.pipeline-column-head strong{font-size:13px}.pipeline-column-head span{display:inline-flex;min-width:24px;height:24px;align-items:center;justify-content:center;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-weight:800;font-size:12px}.pipeline-column-head small{display:block;color:var(--muted);margin-top:3px}
.pipeline-column-body{padding:10px;display:flex;flex-direction:column;gap:9px;min-height:485px}
.pipeline-empty{padding:22px 10px;text-align:center;color:var(--muted);font-size:12px;border:1px dashed var(--line);border-radius:12px}
.pipeline-card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:0 7px 18px rgba(17,24,39,.05);display:flex;flex-direction:column;gap:8px}
.pipeline-card-won{border-color:color-mix(in srgb,#2f9d62 45%,var(--line))}.pipeline-card-lost{opacity:.78}
.pipeline-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.pipeline-type{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.pipeline-score{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:24px;padding:0 7px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:11px;font-weight:900}
.pipeline-card-title{font-size:14px;line-height:1.25}.pipeline-card-sub{font-size:12px;color:var(--muted);line-height:1.3}
.pipeline-card-meta{display:flex;flex-wrap:wrap;gap:5px}.pipeline-card-meta span{font-size:10px;padding:4px 6px;border:1px solid var(--line);border-radius:7px;color:var(--muted)}
.pipeline-owner{font-size:11px;font-weight:700;color:var(--text);padding-top:2px}
.pipeline-stage-change{display:flex;flex-direction:column;gap:4px}.pipeline-stage-change select{width:100%;font-size:12px;font-weight:700}.pipeline-stage-change small{font-size:10px;color:var(--muted)}
.pipeline-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px}.pipeline-card-actions a,.pipeline-card-actions button{display:flex;align-items:center;justify-content:center;min-height:34px;border-radius:9px;font-size:11px;font-weight:800;text-decoration:none}.pipeline-contact{background:var(--accent);color:#fff;border:1px solid var(--accent)}.pipeline-context{background:transparent;color:var(--text);border:1px solid var(--line)}.pipeline-no-contact{grid-column:1/-1;font-size:10px;color:var(--muted);padding:4px 0}
.pipeline-loss{font-size:11px;line-height:1.35;padding:7px 8px;border-radius:9px;background:color-mix(in srgb,#a33 7%,var(--card));border:1px solid color-mix(in srgb,#a33 24%,var(--line))}
.pipeline-stage-won .pipeline-column-head{box-shadow:inset 0 3px 0 #2f9d62}.pipeline-stage-lost .pipeline-column-head{box-shadow:inset 0 3px 0 #9a6b6b}.pipeline-stage-negotiation .pipeline-column-head,.pipeline-stage-proposal .pipeline-column-head{box-shadow:inset 0 3px 0 var(--accent)}
@media(max-width:1050px){.pipeline-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pipeline-board{grid-template-columns:repeat(11,260px)}}
@media(max-width:700px){.pipeline-kpis{grid-template-columns:1fr 1fr;gap:8px}.pipeline-kpi{padding:12px}.pipeline-kpi>strong{font-size:25px}.pipeline-notice{align-items:flex-start;flex-direction:column}.pipeline-toolbar input,.pipeline-toolbar select{width:100%;min-width:100%}.pipeline-board{grid-template-columns:repeat(11,86vw);gap:9px}.pipeline-column{min-height:500px}.pipeline-card-actions{grid-template-columns:1fr}}

/* v22.39 — LJ Sales Intelligence */
.pipeline-intel{padding:9px;border:1px solid var(--line);border-radius:10px;background:color-mix(in srgb,var(--accent-soft) 45%,var(--card));display:flex;flex-direction:column;gap:5px}
.pipeline-intel-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.pipeline-intel-head b{font-size:10px;text-transform:uppercase;letter-spacing:.04em}.pipeline-intel-head span{font-size:10px;font-weight:900;color:var(--accent)}
.pipeline-intel-action{font-size:11px;line-height:1.35;color:var(--text)}.pipeline-intel-reason{font-size:10px;line-height:1.3;color:var(--muted)}
.pipeline-priority-high{box-shadow:inset 3px 0 0 var(--accent)}
@media(max-width:1200px){.pipeline-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v22.40 — LJ SALES LEAD 360 + MEMORIA COMERCIAL */
.sales360-modal{position:fixed;inset:0;z-index:100000;background:rgba(10,16,24,.62);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:24px}.sales360-modal.hidden{display:none}.sales360-shell{position:relative;width:min(1120px,96vw);max-height:92vh;overflow:auto;background:var(--bg);border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 90px rgba(0,0,0,.32);padding:24px}.sales360-close{position:sticky;float:right;top:0;z-index:2;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--card);color:var(--text);font-size:24px;line-height:1}.sales360-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.85fr);gap:20px;clear:both}.sales360-grid>section{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}.sales360-hero span{font-size:10px;font-weight:900;text-transform:uppercase;color:var(--accent)}.sales360-hero h2{margin:5px 0 4px;font-size:24px}.sales360-hero p{margin:0 0 16px;color:var(--muted)}.sales360-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:12px}.sales360-facts div{padding:10px;border:1px solid var(--line);border-radius:11px;display:flex;flex-direction:column;gap:3px}.sales360-facts span{font-size:10px;color:var(--muted);text-transform:uppercase;font-weight:800}.sales360-facts b{font-size:13px}.sales360-compose{margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.sales360-compose textarea{width:100%;min-height:110px;resize:vertical;margin-bottom:8px}.sales360-compose>div{display:flex;gap:8px}.sales360-compose select{flex:1}.sales360-timeline{display:flex;flex-direction:column;gap:9px;max-height:600px;overflow:auto}.sales360-event{padding:11px 12px;border:1px solid var(--line);border-radius:12px}.sales360-event>div{display:flex;justify-content:space-between;gap:10px}.sales360-event b{font-size:12px}.sales360-event span,.sales360-event small{font-size:10px;color:var(--muted)}.sales360-event p{font-size:12px;line-height:1.45;margin:7px 0;white-space:pre-wrap}.pipeline-card-actions{grid-template-columns:1fr 1fr}
@media(max-width:800px){.sales360-modal{padding:8px}.sales360-shell{width:100%;max-height:96vh;padding:14px;border-radius:16px}.sales360-grid{grid-template-columns:1fr}.sales360-facts{grid-template-columns:1fr 1fr}.sales360-compose>div{flex-direction:column}}
\n/* v22.41 — Follow-up inteligente */
.pipeline-followup{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.pipeline-followup div{display:flex;flex-direction:column;gap:3px}.pipeline-followup b{font-size:12px}.pipeline-followup small{font-size:10px;color:var(--muted)}
.pipeline-followup button{border:1px solid var(--line);background:var(--panel);border-radius:9px;padding:7px 9px;font-size:10px;cursor:pointer;white-space:nowrap}
.pipeline-followup-due,.pipeline-followup-critical{border-left:3px solid var(--accent)}.pipeline-followup-ok{opacity:.72}
@media(max-width:700px){.pipeline-followup{align-items:flex-start;flex-direction:column}.pipeline-followup button{width:100%}}

/* v22.42 — Fila de execução comercial com aprovação humana */
.sales-queue-card{margin:0 0 16px;padding:16px}.sales-queue-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:8px 0 12px}.sales-queue-controls label{font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.sales-queue-controls input{width:105px}.sales-action-queue{display:flex;flex-direction:column;gap:8px}.sales-queue-row{display:grid;grid-template-columns:90px minmax(180px,1fr) minmax(260px,1.5fr) auto;gap:12px;align-items:center;padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.sales-queue-row strong,.sales-queue-row span,.sales-queue-row small{display:block}.sales-queue-row small{color:var(--muted);font-size:10px;margin-top:2px}.sales-queue-status{font-size:10px;font-weight:900;text-transform:uppercase;color:var(--accent)}.sales-queue-message{font-size:11px;line-height:1.4}.sales-queue-actions{display:flex;gap:6px}.sales-queue-actions button{font-size:10px;padding:7px 9px}.sales-queue-foot{font-size:10px;color:var(--muted);margin-top:10px}.sales-queue-approved{border-left:3px solid var(--accent)}.sales-queue-completed{opacity:.68}.sales-queue-cancelled{opacity:.5}
@media(max-width:800px){.sales-queue-row{grid-template-columns:1fr}.sales-queue-actions{display:grid;grid-template-columns:1fr 1fr}.sales-queue-actions button{width:100%}}

/* v22.43 — Agente Comercial contextual */
.sales-agent-card{margin:0 0 16px;padding:16px}.sales-agent-controls{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(180px,.8fr) auto;gap:9px;margin:10px 0 12px}.sales-agent-context{border:1px solid var(--line);border-radius:13px;padding:12px;background:var(--panel)}.sales-agent-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sales-agent-facts div{padding:9px;border:1px solid var(--line);border-radius:10px;display:flex;flex-direction:column;gap:3px}.sales-agent-facts span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800}.sales-agent-facts b{font-size:12px}.sales-agent-read{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.sales-agent-read b{font-size:11px}.sales-agent-read p{font-size:12px;margin:5px 0}.sales-agent-read small{display:block;color:var(--muted);line-height:1.4}.sales-agent-read span{display:inline-block;margin-top:7px;padding:4px 7px;border-radius:7px;background:var(--accent-soft);color:var(--accent);font-size:10px;font-weight:800}.sales-agent-result{margin-top:10px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:13px;padding:12px}.sales-agent-result.hidden{display:none}.sales-agent-result-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.sales-agent-result-head span{font-size:10px;color:var(--accent);font-weight:800}.sales-agent-result textarea{width:100%;min-height:105px;resize:vertical}.sales-agent-actions{display:flex;gap:7px;margin:8px 0}.sales-agent-result>small{display:block;color:var(--muted);font-size:9px;line-height:1.45}
@media(max-width:800px){.sales-agent-controls{grid-template-columns:1fr}.sales-agent-facts{grid-template-columns:1fr 1fr}.sales-agent-actions{display:grid;grid-template-columns:1fr}.sales-agent-actions button{width:100%}}

/* v22.45 Inbox Comercial */
.sales-inbox-layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:16px}.sales-inbox-threads{display:flex;flex-direction:column;gap:8px;max-height:650px;overflow:auto}.sales-inbox-thread{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--text);gap:4px}.sales-inbox-thread.active{outline:2px solid var(--accent)}.sales-inbox-thread span,.sales-inbox-thread small{color:var(--muted);font-size:12px}.sales-inbox-messages{display:flex;flex-direction:column;gap:9px;min-height:320px;max-height:520px;overflow:auto;padding:8px}.sales-inbox-message{max-width:78%;padding:10px 12px;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;gap:5px}.sales-inbox-message.inbound{align-self:flex-start}.sales-inbox-message.outbound{align-self:flex-end;background:var(--accent2)}.sales-inbox-message small{font-size:10px;color:var(--muted)}.sales-inbox-composer{border-top:1px solid var(--line);padding-top:12px}.sales-inbox-composer textarea{width:100%;min-height:100px;margin-bottom:8px}.sales-inbox-composer>div{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:850px){.sales-inbox-layout{grid-template-columns:1fr}.sales-inbox-message{max-width:92%}}

/* v22.46 — Inbox inteligente */
.sales-inbox-thread-top{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%}.inbox-unread-pill{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--button-on-accent,#fff);font-size:10px;display:inline-flex;align-items:center;justify-content:center}.sales-inbox-intelligence{margin:0 0 8px;padding:12px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--accent2) 45%,var(--panel))}.inbox-intel-state{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.inbox-intel-state>div{display:flex;flex-direction:column;gap:3px}.inbox-intel-state b{font-size:13px}.inbox-intel-state span{font-size:10px;color:var(--muted)}.inbox-intel-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px}.inbox-intel-grid div{padding:8px;border:1px solid var(--line);border-radius:9px;background:var(--panel);display:flex;flex-direction:column;gap:3px}.inbox-intel-grid span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:800}.inbox-intel-grid b{font-size:11px}.inbox-intel-action{margin-top:9px;padding-top:9px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.inbox-intel-action b{font-size:10px;text-transform:uppercase}.inbox-intel-action span{font-size:11px;line-height:1.4}.sales-inbox-linkbar{display:grid!important;grid-template-columns:minmax(220px,1fr) auto auto;gap:7px!important;margin-bottom:8px}.sales-inbox-linkbar select{min-width:0}
@media(max-width:700px){.inbox-intel-grid{grid-template-columns:1fr 1fr}.sales-inbox-linkbar{grid-template-columns:1fr!important}.sales-inbox-linkbar button{width:100%}}

/* v22.47 — Match Comercial Automático */
.sales-inbox-linkbar{grid-template-columns:minmax(220px,1fr) auto auto auto!important}
.inbox-match-profile{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.inbox-match-profile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}
.inbox-match-profile-head>div{display:flex;flex-direction:column;gap:3px}.inbox-match-profile-head b{font-size:11px;text-transform:uppercase}.inbox-match-profile-head span{font-size:10px;color:var(--muted)}
.inbox-match-criteria{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:9px}.inbox-match-criteria span{padding:5px 8px;border:1px solid var(--line);border-radius:999px;background:var(--panel);font-size:10px;font-weight:700}
.inbox-auto-matches{display:grid;gap:7px}.inbox-auto-match{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.inbox-auto-match-score{min-width:42px;text-align:center;font-size:12px;font-weight:900}.inbox-auto-match>div:nth-child(2){display:flex;flex-direction:column;gap:2px;min-width:0}.inbox-auto-match strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-auto-match small{font-size:9px;color:var(--muted)}.inbox-auto-match a{font-size:10px;font-weight:800;text-decoration:none}
@media(max-width:700px){.sales-inbox-linkbar{grid-template-columns:1fr!important}.inbox-auto-match{grid-template-columns:auto minmax(0,1fr)}.inbox-auto-match a{grid-column:1/-1;text-align:right}}

/* ==========================================================================
   Correções v22.47.1
   ========================================================================== */

/* Os números dos indicadores de "Leads 5ºAndar" ficavam invisíveis: a regra
   `.grid4>.card .metric-value{color:#fff}` pinta de branco TODOS os cards do
   grid (não só o card destacado), e aqui o fundo dos quatro é claro — branco
   no branco. Outras telas (#reports, #matches, #whatsapp-leads) já tinham a
   correção; esta seção tinha ficado de fora. */
#para-quinto-andar .whatsapp-kpis .metric-value{
  color:var(--text)!important;
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
}
#para-quinto-andar .whatsapp-kpis .metric-label,
#para-quinto-andar .whatsapp-kpis .metric-sub{color:var(--muted)!important}

/* Contadores do menu lateral sem valor apareciam como uma bolinha colorida
   vazia, porque .nav-count tem fundo, altura e largura mínima fixos e o JS
   apenas esvazia o texto. Sem conteúdo, o contador não deve ocupar espaço. */
.nav .nav-count:empty{display:none!important}

/* Cards de indicador que funcionam como filtro. */
.kpi-clickable{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}
.kpi-clickable:hover{transform:translateY(-1px);box-shadow:0 6px 18px rgba(0,0,0,.10)}
.kpi-clickable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.kpi-clickable.is-active{border-color:var(--accent)!important;box-shadow:0 0 0 2px rgba(184,128,24,.28)}

/* Barra de ações do topo: manter os botões numa única linha alinhada à
   direita, com quebra só quando faltar espaço de verdade. */
.top-actions.export-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px}

/* ==========================================================================
   Captura manual de link (v22.48)
   ========================================================================== */
.manual-capture{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px;margin-bottom:16px;box-shadow:var(--shadow)}
.manual-capture-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:10px}
.manual-capture-head strong{font-size:13.5px}
.manual-capture-head span{font-size:10.5px;color:var(--muted)}
.manual-capture-row{display:grid;grid-template-columns:minmax(220px,1fr) 190px auto;gap:8px;align-items:center}
.manual-capture-row input,.manual-capture-row select{width:100%}
.manual-capture-result{margin-top:11px;padding:11px 12px;border-radius:10px;font-size:12.5px;line-height:1.5;border:1px solid var(--line);background:var(--bg)}
.manual-capture-result.tone-working{border-color:#c9d4e4;background:#f2f6fb;color:#2b3d55}
.manual-capture-result.tone-ok{border-color:#bfe6d1;background:#eefaf3;color:#12603f}
.manual-capture-result.tone-warn{border-color:#f0dfae;background:#fdf8ec;color:#6d5312}
.manual-capture-result.tone-error{border-color:#f2c9c9;background:#fdf0f0;color:#8a2727}
.mc-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}
.mc-chip{font-size:10.5px;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:3px 9px;color:var(--text)}
.mc-chip b{font-weight:800}
.mc-wa{display:inline-block;margin-top:10px;font-size:11.5px;font-weight:800;color:#137649;text-decoration:none;border:1px solid #bfe6d1;background:#eefaf3;border-radius:999px;padding:6px 12px}
.mc-wa:hover{text-decoration:underline}
@media(max-width:720px){
  .manual-capture-row{grid-template-columns:1fr}
  .manual-capture-row button{width:100%}
}

/* Botão de descarte de lead (v22.49) */
.lead-discard{font-size:10.5px;font-weight:700;padding:5px 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:var(--muted);cursor:pointer;white-space:nowrap}
.lead-discard:hover{border-color:#e0b4b4;background:#fdf3f3;color:#8a2727}
.lead-discard:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:720px){.lead-discard{width:100%;padding:9px 10px;font-size:12px}}

/* Seleção múltipla de leads (v22.49) */
.sel-col{width:34px;text-align:center}
.sel-col input[type="checkbox"]{width:16px;height:16px;cursor:pointer;accent-color:var(--accent)}
.sel-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;
  padding:10px 13px;margin-bottom:10px;border:1px solid var(--accent);border-radius:10px;
  background:#fdf8ec;position:sticky;top:0;z-index:5}
.sel-bar strong{font-size:12.5px;color:var(--text)}
.sel-bar-actions{display:flex;gap:8px;flex-wrap:wrap}
.lead-discard-bulk{border-color:#e0b4b4;background:#fdf0f0;color:#8a2727;font-weight:800}
.lead-discard-bulk:hover{background:#f8e0e0}
.m-card-select{display:flex;align-items:center;justify-content:space-between;gap:10px}
.sel-label{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);cursor:pointer}
.sel-label input[type="checkbox"]{width:17px;height:17px;accent-color:var(--accent)}
@media(max-width:720px){
  .sel-bar{flex-direction:column;align-items:stretch}
  .sel-bar-actions{width:100%}
  .sel-bar-actions button{flex:1}
}

/* Contenção de texto longo nas tabelas (v22.50).
   Post inteiro de rede social estourava a largura da coluna. */
.cell-clamp{display:block;max-width:420px;overflow:hidden;text-overflow:ellipsis;
  display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;line-height:1.45}
.cell-clamp-name{max-width:260px;-webkit-line-clamp:3}
td .source-action{display:inline-block;margin:2px 3px 2px 0}
/* Muitas origens no mesmo lead: vira lista rolável em vez de esticar a linha. */
td:has(> .source-action){max-width:180px}
@media(max-width:900px){.cell-clamp{max-width:260px}.cell-clamp-name{max-width:180px}}
