
:root{
  --black:#121211;--cream:#f5efe5;--purple:#d291f1;--purple-deep:#8a4fb0;--orange:#dd733f;
  --lime:#aedf1a;--white:#fff;--muted:#6f6b65;--line:#ded8ce;--red:#bb3a3a;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:#f7f5f0;color:var(--black)}
button,input,select,textarea{font:inherit}.app{display:grid;grid-template-columns:230px 1fr;min-height:100vh}
.sidebar{background:var(--black);color:white;padding:24px 16px;display:flex;flex-direction:column;gap:24px;position:sticky;top:0;height:100vh}
.brand{font-weight:900;letter-spacing:.06em}.brand span{color:var(--purple)}
nav{display:flex;flex-direction:column;gap:8px}nav button{border:0;background:transparent;color:#ddd;text-align:left;padding:11px 12px;border-radius:10px;cursor:pointer}
nav button:hover,nav button.active{background:#2a2927;color:white}.sidebar-foot{margin-top:auto;color:#999}
main{padding:24px 30px}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:24px}
.topbar h1{margin:0;font-family:Georgia,serif;font-size:34px}.topbar p{margin:5px 0 0;color:var(--muted)}
.top-actions{display:flex;gap:10px}.primary,.ghost,.danger{border:0;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700}
.primary{background:var(--black);color:#fff}.ghost{background:white;border:1px solid var(--line)}.danger{background:#fff0f0;color:var(--red);border:1px solid #efc7c7}
.view{display:none}.view.active{display:block}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:16px}
.metric{background:white;border:1px solid var(--line);border-radius:16px;padding:18px}.metric .label{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.metric .value{font-size:30px;font-weight:900;margin-top:6px}.metric .sub{font-size:12px;color:var(--muted);margin-top:4px}
.grid.two{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:18px}
.card-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px}.card-head h3{margin:0}.card-head span{color:var(--muted);font-size:12px}
.progress-row{display:grid;grid-template-columns:150px 1fr 40px;gap:10px;align-items:center;margin:10px 0}.bar{height:9px;background:#eee7dd;border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:var(--purple-deep)}
.item{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #eee}.item:last-child{border-bottom:0}.muted{color:var(--muted);font-size:12px}
.intake-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;align-content:flex-start;gap:6px;flex-shrink:0}.intake-actions .small-btn{white-space:nowrap}
#intake-dialog{width:min(760px,96vw);max-height:90vh;overflow:auto}#intake-dialog form{padding:24px}#intake-dialog .dialog-head{gap:16px;align-items:flex-start}#intake-dialog .form-grid textarea{min-height:70px}#intake-dialog .intake-question-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:18px 0 10px}#intake-dialog .intake-question-head h3{margin:0}#intake-dialog .intake-question{padding:14px;margin:10px 0;border:1px solid var(--line);border-radius:12px;background:#faf9f8}#intake-dialog .intake-question-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px}#intake-dialog .intake-question-grid{display:grid;grid-template-columns:2fr 1fr;gap:10px}#intake-dialog .intake-question label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}#intake-dialog .intake-question input:not([type=checkbox]),#intake-dialog .intake-question select{width:100%;padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}#intake-dialog .intake-question .intake-options{margin-top:10px}#intake-dialog .intake-question .intake-required{flex-direction:row;align-items:center;margin-top:10px}#intake-dialog .intake-active-label{display:flex;align-items:center;gap:8px;margin-top:16px;font-size:14px;font-weight:700}@media(max-width:600px){#intake-dialog .intake-question-grid{grid-template-columns:1fr}#intake-dialog form{padding:16px}}
.toolbar{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}.toolbar input{min-width:280px;flex:1}.toolbar input,.toolbar select,.form-grid input,.form-grid select,.form-grid textarea,.settings-grid input{padding:10px;border:1px solid var(--line);border-radius:9px;background:white}
.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:14px}table{border-collapse:collapse;width:100%;min-width:1000px}th,td{padding:11px 12px;border-bottom:1px solid #eee;text-align:left;font-size:13px}
th{background:#fbfaf7;font-size:11px;text-transform:uppercase;color:#666;position:sticky;top:0}.stage-pill{display:inline-block;padding:5px 8px;border-radius:999px;background:#eee;font-size:11px}
.kanban{display:flex;gap:12px;overflow:auto;padding-bottom:12px}.lane{min-width:250px;max-width:250px;background:#eeece7;border-radius:14px;padding:10px;border:1px solid #ded8ce}.lane-head{display:flex;justify-content:space-between;font-weight:800;margin-bottom:10px}
.lead-card{background:white;border:1px solid #ddd3c8;border-radius:12px;padding:12px;margin-bottom:9px;cursor:grab}.lead-card h4{margin:0 0 5px}.lead-card small{color:var(--muted)}
.hint{color:var(--muted)}.funnel-step{display:flex;align-items:center;gap:12px;margin:11px 0}.funnel-step .name{width:190px}.funnel-step .fbar{height:26px;background:var(--purple);border-radius:7px;min-width:5px}.funnel-step b{width:50px}
.settings-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.settings-grid label,.form-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.notice{background:#fff7e9;border:1px solid #ecd6ab;padding:12px;border-radius:10px;margin:16px 0}
dialog{border:0;border-radius:18px;width:min(900px,94vw);padding:0;box-shadow:0 24px 80px #0004}dialog::backdrop{background:#0008}#lead-form{padding:20px}.dialog-head{display:flex;justify-content:space-between;align-items:start}
.dialog-head h2{margin:0}.dialog-head p{color:var(--muted);margin:4px 0 14px}.icon{border:0;background:transparent;font-size:26px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.wide{grid-column:1/-1}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.metrics,.grid.two,.settings-grid{grid-template-columns:1fr 1fr}.sidebar nav{display:grid;grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){main{padding:18px}.metrics,.grid.two,.settings-grid,.form-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-direction:column}.wide{grid-column:auto}}
.module-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:14px;padding-bottom:4px}.module-tabs button{white-space:nowrap;border:1px solid var(--line);background:white;border-radius:999px;padding:9px 12px;cursor:pointer}.module-tabs button.active{background:var(--black);color:white}.ops-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.ops-card{border:1px solid var(--line);border-radius:13px;padding:14px;background:#fbfaf7}.ops-card h4{margin:7px 0}.ops-card p{white-space:pre-wrap;font-size:13px;min-height:38px}.ops-actions{display:flex;justify-content:space-between;gap:8px;margin-top:12px}.integration-note{background:#f1ecf5;border:1px solid #ddcce9;border-radius:10px;padding:11px;font-size:12px}@media(max-width:1000px){.ops-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.ops-grid{grid-template-columns:1fr}}
.agency-layout{display:grid;grid-template-columns:300px 1fr;gap:16px}.tenant-panel{align-self:start}.tenant-row{display:block;width:100%;text-align:left;border:1px solid var(--line);background:white;border-radius:11px;padding:12px;margin:8px 0;cursor:pointer}.tenant-row.selected{border-color:var(--purple-deep);box-shadow:0 0 0 2px #d291f133}.tenant-row b,.tenant-row span{display:block}.tenant-row span{font-size:11px;color:var(--muted);margin-top:4px}.tenant-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.tenant-summary>div{border:1px solid var(--line);border-radius:11px;padding:12px}.tenant-summary b{display:block;font-size:20px}.site-card{border:1px solid var(--line);border-radius:13px;padding:14px;margin:10px 0}.site-card-head{display:flex;justify-content:space-between;gap:12px}.audit-list{max-height:280px;overflow:auto}.code-note{font-family:ui-monospace,monospace;font-size:11px;background:#f4f2ed;border-radius:8px;padding:8px;word-break:break-all}@media(max-width:950px){.agency-layout{grid-template-columns:1fr}.tenant-summary{grid-template-columns:repeat(2,1fr)}}
.growth-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px;border-radius:18px;background:linear-gradient(125deg,#171615,#35223f);color:white;margin-bottom:14px}.growth-hero h2{font-size:30px;margin:5px 0}.growth-hero p{margin:0;color:#ddd}.eyebrow{font-size:11px;letter-spacing:.12em;color:var(--purple);font-weight:900}.growth-module-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0}.growth-module-card{background:white;border:1px solid var(--line);border-radius:13px;padding:14px;cursor:pointer;text-align:left}.growth-module-card:hover{border-color:var(--purple-deep)}.growth-module-card b,.growth-module-card span{display:block}.growth-module-card .count{font-size:24px;margin-top:8px}.empty-guide{border:1px dashed #ccb9d8;background:#fcf9ff;border-radius:12px;padding:16px;margin:12px 0}.empty-guide h4{margin:0 0 5px}details.wide{border:1px solid var(--line);border-radius:10px;padding:12px}details.wide summary{font-weight:800;cursor:pointer}@media(max-width:1000px){.growth-module-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.growth-module-grid{grid-template-columns:1fr}.growth-hero{align-items:flex-start;flex-direction:column}}


.auth-shell{min-height:100vh;display:grid;place-items:center;background:#f5efe5;padding:24px}
.auth-card{width:min(460px,94vw);background:white;border:1px solid #ded8ce;border-radius:18px;padding:28px;box-shadow:0 20px 60px #0001}
.auth-card h1{font-family:Georgia,serif;margin-bottom:6px}.auth-card p{color:#6f6b65}
.auth-card label{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:12px;font-weight:700}
.auth-card input,.settings-grid select{padding:11px;border:1px solid #ded8ce;border-radius:9px}
.brand.big{font-size:22px;margin-bottom:22px}.error{color:#bb3a3a;margin-top:12px;font-size:13px}
.sidebar-logout{margin-top:10px;background:transparent;color:#ccc;border:1px solid #444;border-radius:8px;padding:8px 10px;cursor:pointer}
.settings-grid.one{grid-template-columns:1fr}.admin-hidden{display:none!important}

[hidden]{display:none!important}
.link-btn{border:0;background:transparent;color:var(--purple-deep);padding:10px 0;cursor:pointer;font-weight:700;display:block}
.success{color:#2d6a2d;margin-top:12px;font-size:13px}.inline-message{margin-top:12px;font-size:13px}.security-warning{background:#fff7e9;border:1px solid #ecd6ab;padding:12px;border-radius:10px;margin-bottom:14px}.team-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.small-btn{padding:7px 9px;font-size:12px}

.client-layout{display:grid;grid-template-columns:280px 1fr;gap:16px}.client-list-card{align-self:start}.client-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}.client-row{border:1px solid var(--line);background:#fff;border-radius:10px;padding:11px;text-align:left;cursor:pointer}.client-row.selected{border-color:var(--purple-deep);box-shadow:0 0 0 2px #d291f133}.client-row b,.client-row span{display:block}.client-row span{font-size:11px;color:var(--muted);margin-top:4px}.workspace-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:14px;margin-bottom:16px}.workspace-head h2{margin:0}.workspace-head p{margin:4px 0;color:var(--muted)}.workspace-actions{display:flex;gap:8px;flex-wrap:wrap}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.content-card{border:1px solid var(--line);border-radius:14px;padding:14px;background:#fbfaf7}.content-card-top{display:flex;justify-content:space-between;gap:12px}.content-card h3{margin:8px 0 2px}.meta-line{font-size:12px;margin:5px 0}.file-list{display:flex;flex-direction:column;gap:6px;margin-top:12px}.file-list a{display:flex;justify-content:space-between;gap:10px;padding:8px;border-radius:8px;background:white;border:1px solid var(--line);text-decoration:none;color:var(--black);font-size:12px}.mini-upload{display:inline-block;margin-top:10px;font-size:12px;font-weight:800;cursor:pointer;color:var(--purple-deep)}.mini-upload input{display:none}.empty-state{text-align:center;padding:50px 20px;color:var(--muted)}.check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.check{flex-direction:row!important;align-items:center;padding:9px;border:1px solid var(--line);border-radius:9px;background:#fff}.upload-body{background:var(--cream)}.upload-shell{width:min(760px,94vw);margin:40px auto}.upload-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.dropzone{border:2px dashed var(--line);padding:22px;border-radius:12px;background:#fbfaf7}.dropzone input{margin-top:10px}.padded{padding:12px}@media(max-width:900px){.client-layout{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr}}@media(max-width:600px){.workspace-head{flex-direction:column}.check-grid{grid-template-columns:1fr}}

/* V3.3 Revenue & Deal Tracking */
.deal-panel{border:1px solid #d7c7e8;background:#fbf7ff;border-radius:12px;padding:14px}.deal-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.deal-panel-head span{font-size:11px;color:var(--muted)}.deal-grid{margin:0}.revenue-note{font-size:11px;color:var(--muted);margin-top:4px}.lead-card .deal-tag{display:inline-block;margin-top:8px;font-size:11px;font-weight:800}.metric .value.small-value{font-size:24px}

#metrics{grid-template-columns:repeat(3,1fr)}
@media(max-width:900px){#metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){#metrics{grid-template-columns:1fr}}

/* V3.7 Prospect Import modal scrolling */
#import-prospects-dialog {
  width: min(960px, 94vw);
  max-height: 88vh;
  overflow-y: auto;
  overflow-x: hidden;
}

#import-prospects-dialog form {
  max-height: none;
}

#import-prospects-preview {
  max-height: 320px;
  overflow: auto;
}

/* Lovestone in-call panel */
.call-panel{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:9999;
  width:min(520px,calc(100vw - 32px));
  background:#121211;
  color:white;
  border-radius:18px;
  padding:20px;
  box-shadow:0 18px 55px rgba(0,0,0,.28);
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:18px;
}

.call-panel[hidden]{
  display:none;
}

.call-panel-info{
  min-width:0;
}

.call-status{
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  opacity:.7;
  margin-bottom:5px;
}

.call-name{
  font-size:18px;
  font-weight:800;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.call-number{
  font-size:13px;
  opacity:.72;
  margin-top:2px;
}

.call-timer{
  font-size:14px;
  font-variant-numeric:tabular-nums;
  margin-top:8px;
  font-weight:700;
}

.call-intelligence{
  margin-top:16px;
  padding:14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  background:rgba(255,255,255,.06);
}

.call-intelligence[hidden]{
  display:none;
}

.call-intelligence-title{
  font-size:13px;
  font-weight:800;
  margin-bottom:10px;
}

.call-intelligence-row,
.call-intelligence-block{
  font-size:13px;
  line-height:1.45;
}

.call-intelligence-block{
  margin-top:10px;
}

.call-intelligence-label{
  display:block;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  opacity:.65;
  margin-bottom:3px;
}

#call-suggested-pitch{
  font-weight:700;
}


.call-hangup{
  border:0;
  border-radius:999px;
  padding:12px 17px;
  background:#c62828;
  color:white;
  font-weight:800;
  cursor:pointer;
  flex-shrink:0;
}

.call-hangup:hover{
  filter:brightness(1.08);
}

@media(max-width:600px){
  .call-panel{
    right:16px;
    left:16px;
    bottom:16px;
    width:auto;
    grid-template-columns:1fr;
  }

  .call-hangup{
    width:100%;
  }
}

/* Lovestone post-call outcome panel */
.call-outcome-panel{
  position:fixed;
  right:24px;
  bottom:24px;
  z-index:10000;
  width:min(390px,calc(100vw - 32px));
  background:#fff;
  color:#121211;
  border-radius:18px;
  padding:22px;
  box-shadow:0 18px 55px rgba(0,0,0,.28);
}

.call-outcome-panel[hidden]{
  display:none;
}

.call-outcome-header{
  margin-bottom:18px;
}

.call-outcome-panel label{
  display:block;
  font-size:13px;
  font-weight:800;
  margin:14px 0 6px;
}

.call-outcome-panel select,
.call-outcome-panel textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid rgba(18,18,17,.18);
  border-radius:10px;
  padding:11px 12px;
  font:inherit;
  background:#fff;
}

.call-outcome-panel textarea{
  resize:vertical;
}

.call-outcome-actions{
  display:flex;
  justify-content:flex-end;
  margin-top:18px;
}

@media(max-width:600px){
  .call-outcome-panel{
    right:16px;
    left:16px;
    bottom:16px;
    width:auto;
  }
}

/* Prospect Call History */
.call-history-section{
  margin-top:8px;
  padding-top:18px;
  border-top:1px solid #e5e5e5;
}

.call-history-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:12px;
}

.call-history-head b{
  display:block;
  font-size:16px;
}

.call-history-head span{
  display:block;
  margin-top:3px;
  font-size:12px;
  opacity:.65;
}

.call-history-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  max-height:280px;
  overflow-y:auto;
}

.call-history-item{
  padding:12px 14px;
  border:1px solid #e7e7e7;
  border-radius:10px;
  background:#fafafa;
}

.call-history-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}

.call-history-notes{
  margin-top:8px;
  line-height:1.45;
  white-space:pre-wrap;
}


/* Prospect Quick Research */
.prospect-research-links{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:8px;
}

.prospect-research-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 9px;
  font-size:11px;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}

@media(max-width:600px){
  .prospect-research-links{
    gap:5px;
  }

  .prospect-research-links a{
    padding:7px 9px;
  }
}
.prospect-audit{padding:16px;border:1px solid #dce5ef;border-radius:12px;background:#f8fafc}
.prospect-audit .deal-panel-head{margin-bottom:6px}
.prospect-audit ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px 16px;list-style:none;padding:0;margin:12px 0}
.prospect-audit li{font-size:.9rem}
.audit-ready{color:#176344}
.audit-missing{color:#6b7280}
.audit-count{font-weight:700;color:#174d69}

/* V6.2 navigation and workspace polish */
.app{grid-template-columns:252px minmax(0,1fr)}
.app main{min-width:0;max-width:1700px;width:100%;margin:0 auto;padding:28px clamp(20px,3vw,48px)}
.sidebar{gap:14px;padding:24px 14px 18px;overflow:hidden;background:#191821}
.sidebar-brand{display:flex;align-items:center;justify-content:space-between;padding:2px 10px 16px;border-bottom:1px solid #ffffff1c}
.sidebar .brand{font-size:16px}
.nav-search-label{font-size:11px;font-weight:700;color:#bbb5c4;padding:0 10px}
.nav-search{width:100%;border:1px solid #ffffff2b;background:#ffffff0d;color:white;border-radius:10px;padding:10px 12px;outline:none}
.nav-search::placeholder{color:#aaa4b0}
.nav-search:focus{border-color:var(--purple);box-shadow:0 0 0 2px #d291f126}
#nav{display:flex;flex-direction:column;gap:2px;overflow-y:auto;min-height:0;padding:0 3px 16px}
#nav button{width:100%;font-size:13px;font-weight:650;padding:10px 12px;border-radius:9px;color:#d5d0d8}
#nav button:hover{background:#ffffff18}
#nav button.active{background:#d291f126;color:#f1d4ff;box-shadow:inset 3px 0 var(--purple)}
.nav-group-label{color:#938d9a;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;padding:18px 12px 7px}
.sidebar-foot{border-top:1px solid #ffffff1c;padding:12px 10px 0;font-size:12px}
.topbar{border-bottom:1px solid var(--line);padding-bottom:22px}
.topbar h1{font-size:clamp(28px,3vw,38px)}
.topbar p{font-size:13px;line-height:1.45}
.top-actions{align-items:center;flex-wrap:wrap;justify-content:flex-end}
.jump-label{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap}
.jump-label select{max-width:170px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:white;color:var(--black)}
.dashboard-intro{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;margin-bottom:18px;border-radius:18px;background:linear-gradient(115deg,#221c2b,#4b315a);color:white}
.dashboard-intro h2{font-family:Georgia,serif;font-size:clamp(24px,2.5vw,34px);margin:6px 0}
.dashboard-intro p{color:#e8ddec;margin:0;font-size:13px}
.dashboard-shortcuts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:370px}
.dashboard-shortcuts button{border:1px solid #ffffff61;background:#ffffff15;color:white;border-radius:999px;padding:9px 12px;white-space:nowrap;font-weight:700;cursor:pointer}
.dashboard-shortcuts button:hover{background:#ffffff2b}
.card{box-shadow:0 6px 20px #241a3108}
.card-head{gap:12px;flex-wrap:wrap;align-items:center}
.card-head h3{font-size:17px}
button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--purple-deep);outline-offset:2px}
#prospect-table tbody tr:hover{background:#fbf8ff}
.mobile-nav-open,.mobile-nav-close,.nav-backdrop{display:none}
@media(max-width:900px){
  .app{display:block}
  .sidebar{position:fixed;z-index:1100;top:0;left:0;width:min(300px,88vw);height:100dvh;transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 50px #0003}
  body.nav-open .sidebar{transform:translateX(0)}
  .sidebar #nav{display:flex;grid-template-columns:none}
  .mobile-nav-open,.mobile-nav-close{display:inline-flex;align-items:center;justify-content:center}
  .mobile-nav-close{border:0;background:transparent;color:white;font-size:28px;cursor:pointer}
  .nav-backdrop:not([hidden]){display:block;position:fixed;z-index:1090;inset:0;width:100%;border:0;background:#12121199}
  .app main{padding:18px 20px}
  .mobile-nav-open{margin-bottom:12px}
}
@media(max-width:700px){
  .dashboard-intro{align-items:flex-start;flex-direction:column;padding:22px}
  .dashboard-shortcuts{justify-content:flex-start}
  .topbar{align-items:flex-start;flex-direction:column}
  .top-actions{width:100%;justify-content:space-between}
  .jump-label{flex:1}
  .jump-label select{flex:1;max-width:none}
  #add-lead-btn{white-space:nowrap}
}
@media(max-width:420px){.top-actions{align-items:stretch;flex-direction:column}.top-actions .primary{width:100%}}
@media(max-width:700px){
  #prospect-table{min-width:0;display:block}
  #prospect-table thead{display:none}
  #prospect-table tbody{display:grid;gap:12px;padding:10px}
  #prospect-table tr{display:block;border:1px solid var(--line);border-radius:12px;padding:9px 12px;background:white}
  #prospect-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:7px 0;border:0;text-align:right;overflow-wrap:anywhere}
  #prospect-table td::before{content:attr(data-label);font-size:11px;text-transform:uppercase;font-weight:800;letter-spacing:.04em;color:var(--muted);text-align:left;flex:0 0 90px}
  #prospect-table td:first-child{display:block;text-align:left;font-size:15px;padding-bottom:12px;border-bottom:1px solid var(--line)}
  #prospect-table td:first-child::before{display:none}
  #prospect-table td.row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;padding-top:12px;border-top:1px solid var(--line)}
  #prospect-table td.row-actions::before{display:none}
}
@media(prefers-reduced-motion:reduce){.sidebar{transition:none}}

/* Contracts and invoices workspace */
.doc-toolbar{margin-top:20px}.doc-toolbar label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;min-width:190px}.doc-toolbar input{min-width:min(300px,70vw)}
.doc-list-item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 4px;border-bottom:1px solid var(--line)}.doc-list-item:last-child{border:0}.doc-list-details h4{margin:8px 0 4px;font-size:16px}.doc-list-details p{margin:0 0 6px;color:var(--muted)}.doc-kind{font-size:12px;color:var(--muted);margin-left:8px}.doc-list-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;justify-content:flex-end}.doc-list-actions button,.doc-list-actions a{white-space:nowrap}
#sales-doc-dialog{width:min(760px,96vw);max-height:92vh;overflow-y:auto}#sales-doc-form{padding:24px}.doc-form-section{padding:19px 0;border-top:1px solid var(--line)}.doc-form-section h3{margin:0 0 12px;font-size:16px}.doc-form-section p{color:var(--muted);margin:0 0 12px}.doc-form-section[hidden]{display:none}.doc-item-row{display:grid;grid-template-columns:minmax(150px,2fr) 95px 110px auto;align-items:end;gap:8px;margin:10px 0}.doc-item-row label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700}.doc-item-row input{width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:9px}.doc-total{font-weight:800;font-size:19px;text-align:right;margin-top:16px!important;color:var(--black)!important}#sd-error:not(:empty){margin-top:12px}#sales-doc-feedback:not(:empty){padding:10px;margin:12px 0;border-radius:9px}
@media(max-width:700px){.doc-list-item{align-items:stretch;flex-direction:column}.doc-list-actions{justify-content:flex-start}.doc-item-row{grid-template-columns:1fr 1fr}.doc-item-row label:first-child{grid-column:1/-1}#sales-doc-form{padding:18px}}

/* In-app client document preview */
#sales-doc-preview{width:min(800px,96vw);max-height:94vh;overflow-y:auto}.doc-preview-shell{padding:22px}.doc-paper{background:white;border:1px solid var(--line);border-radius:14px;padding:clamp(18px,4vw,42px);margin:16px 0;box-shadow:0 8px 28px #1d1b1610}.doc-paper-brand{font-weight:900;letter-spacing:.06em;padding-bottom:18px;border-bottom:1px solid var(--line)}.doc-paper-brand span{color:var(--purple-deep)}.doc-paper-meta{text-transform:uppercase;letter-spacing:.08em;font-size:11px;color:var(--muted);margin-top:24px}.doc-paper h2{font-family:Georgia,serif;font-size:28px}.doc-paper p{line-height:1.6}.doc-paper-content{white-space:pre-wrap;line-height:1.65;margin:28px 0}.doc-paper-items{border-top:1px solid var(--line);padding-top:8px}.doc-paper-items>div{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.doc-paper-items .doc-paper-total{font-size:19px;font-weight:800;border-top:2px solid var(--black)}.crm-version{color:#aaa;font-size:11px}

.sms-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:20px;margin-top:16px}.sms-threads{border-right:1px solid #e3e5eb;padding-right:16px;max-height:660px;overflow:auto}.sms-threads input{width:100%}.sms-thread button{display:block;width:100%;padding:12px;text-align:left;background:transparent;border:0;border-bottom:1px solid #e3e5eb;cursor:pointer;color:inherit}.sms-thread button:hover{background:#f4f1fc}.sms-thread button small{display:block;color:#777;margin-top:4px}.sms-conversation{min-width:0}.sms-messages{min-height:200px;max-height:360px;overflow:auto;display:flex;flex-direction:column;gap:10px;padding:16px;background:#f7f7fa;border-radius:12px}.sms-bubble{max-width:80%;border-radius:14px;background:white;padding:10px 14px;white-space:pre-wrap;overflow-wrap:anywhere}.sms-bubble.outbound{align-self:flex-end;background:#eee5fb}.sms-bubble small{display:block;color:#666;margin-top:5px}.sms-compose{display:flex;gap:12px;align-items:end;margin-top:14px}.sms-compose label{flex:1}.sms-compose textarea{width:100%}#sms-consent-box{margin-top:14px}#sms-feedback{color:#695474}@media(max-width:700px){.sms-layout{grid-template-columns:1fr}.sms-threads{border-right:0;border-bottom:1px solid #e3e5eb;padding:0 0 12px;max-height:220px}.sms-compose{display:block}.sms-compose button{margin-top:8px}}
