/* MoveDone Partner */
.partner-page,.partner-dashboard-page{background:var(--md-cream);min-height:100vh}.partner-topnav,.partner-dashboard-head{margin-left:auto;display:flex;align-items:center;gap:18px}.partner-topnav a:not(.button),.partner-dashboard-head a{color:var(--md-muted);font-size:.86rem;font-weight:800}.partner-header-label{margin-left:auto;color:var(--md-muted);font-weight:800;font-size:.86rem}.partner-kicker{display:inline-flex;color:var(--md-coral-dark);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.partner-hero{padding:74px 0 88px}.partner-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.72fr);gap:70px;align-items:center}.partner-hero h1{margin:16px 0 22px;font-size:clamp(3.4rem,6vw,6rem);line-height:.94;letter-spacing:-.065em}.partner-hero h1 span{color:var(--md-coral)}.partner-hero p{max-width:650px;color:var(--md-muted);font-size:1.05rem;line-height:1.65}.partner-hero-actions{display:flex;gap:12px;margin-top:28px}.partner-proof{display:flex;flex-wrap:wrap;gap:18px;margin-top:26px;color:#52595e;font-size:.84rem;font-weight:800}.partner-proof span::first-letter{color:var(--md-green)}.lead-preview{background:#fff;border:1px solid var(--md-line);border-radius:26px;padding:28px;box-shadow:var(--md-shadow)}.lead-preview-badge,.test-badge,.partner-test-pill{display:inline-flex;padding:6px 9px;border-radius:999px;background:var(--md-coral-soft);color:var(--md-coral-dark);font-size:.68rem;font-weight:900;letter-spacing:.04em}.lead-preview h2{font-size:1.65rem;margin:15px 0 8px;letter-spacing:-.04em}.lead-preview-meta{color:var(--md-muted);font-size:.9rem;margin:4px 0}.lead-preview-tags{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.lead-preview-tags span{padding:7px 9px;border-radius:999px;background:#f5f1ed;color:#656b70;font-size:.73rem;font-weight:700}.lead-value{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.lead-value>div{background:#fffaf6;border:1px solid var(--md-line);border-radius:14px;padding:14px}.lead-value small,.lead-value strong{display:block}.lead-value small{color:var(--md-muted);font-size:.7rem;margin-bottom:4px}.lead-value strong{font-size:1.2rem}.lead-preview .button{width:100%;justify-content:center}.test-note{display:block;color:var(--md-muted);font-size:.69rem;text-align:center;margin-top:10px}.partner-section{padding:76px 0;border-top:1px solid var(--md-line)}.partner-section.alt{background:#fffdf9}.partner-section-title{max-width:820px;font-size:clamp(2.5rem,4.5vw,4.2rem);line-height:1;letter-spacing:-.055em;margin:13px 0 34px}.partner-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.partner-steps article{background:#fff;border:1px solid var(--md-line);border-radius:20px;padding:24px}.partner-steps article>span{color:var(--md-coral);font-weight:900;font-size:.75rem}.partner-steps h3{margin:16px 0 8px}.partner-steps p{color:var(--md-muted);font-size:.88rem;line-height:1.55}.partner-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.partner-service-grid>div{background:white;border:1px solid var(--md-line);border-radius:16px;padding:18px;font-size:1rem}.partner-service-grid strong{margin-left:7px}.partner-bottom-cta{margin-top:34px;border-radius:24px;background:var(--md-coral-soft);padding:28px}.partner-bottom-cta h3{font-size:1.6rem;margin:0 0 6px}.partner-bottom-cta p{color:var(--md-muted);margin:0 0 18px}.partner-footer{border-top:1px solid var(--md-line);padding:28px 0}.partner-footer .shell{display:flex;justify-content:space-between;color:var(--md-muted);font-size:.78rem}
/* Onboarding */
.partner-onboard-main{padding:56px 0 90px;background:radial-gradient(circle at 90% 5%,rgba(255,90,79,.08),transparent 30%),var(--md-cream)}.partner-onboard-shell{width:min(1020px,calc(100% - 32px));margin:auto;display:grid;grid-template-columns:minmax(0,.65fr) minmax(480px,1fr);gap:48px;align-items:start}.partner-onboard-intro{position:sticky;top:125px}.partner-onboard-intro h1{font-size:clamp(3rem,5vw,4.8rem);letter-spacing:-.06em;line-height:.97;margin:15px 0}.partner-onboard-intro>p{color:var(--md-muted);line-height:1.6}.pilot-callout{margin-top:24px;padding:17px;border-radius:16px;background:var(--md-coral-soft);display:flex;flex-direction:column;gap:4px}.pilot-callout strong{color:var(--md-coral-dark);font-size:.84rem}.pilot-callout span{color:var(--md-muted);font-size:.78rem;line-height:1.45}.partner-form-card{background:#fff;border:1px solid var(--md-line);border-radius:26px;padding:30px;box-shadow:var(--md-shadow)}.partner-form-section{padding:8px 0 28px;border-bottom:1px solid var(--md-line);margin-bottom:26px}.partner-form-section:last-of-type{border-bottom:0}.partner-form-section h2{margin:0 0 18px;font-size:1.3rem}.partner-field{margin-bottom:14px}.partner-field-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.partner-field label,.partner-mini-form label{display:block;font-size:.78rem;font-weight:800;color:#4d5358;margin-bottom:6px}.partner-field input,.partner-field select,.partner-mini-form input,.partner-mini-form select{width:100%;min-height:50px;border:1px solid #ddd5ce;border-radius:12px;padding:0 13px;background:#fff;color:var(--md-ink);font:inherit}.partner-field input:focus,.partner-field select:focus,.partner-mini-form input:focus,.partner-mini-form select:focus{outline:0;border-color:var(--md-coral);box-shadow:0 0 0 4px rgba(255,90,79,.08)}.partner-service-select{display:grid;grid-template-columns:1fr 1fr;gap:10px}.partner-service-select button{display:grid;grid-template-columns:34px 1fr 24px;gap:10px;align-items:center;text-align:left;min-height:64px;border:1px solid var(--md-line);background:#fff;border-radius:14px;padding:10px;color:var(--md-ink)}.partner-service-select svg{width:25px;height:25px;color:var(--md-coral)}.partner-service-select b{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#f4efea;color:transparent;font-size:.7rem}.partner-service-select button.selected{background:var(--md-coral-soft);border-color:var(--md-coral)}.partner-service-select button.selected b{background:var(--md-green);color:white}.partner-check{display:flex!important;align-items:center;gap:9px!important;font-weight:700!important}.partner-check input{width:auto;min-height:auto}.partner-message{display:none;padding:11px 13px;margin-bottom:14px;border-radius:11px;background:#fff1ef;color:#a93931;font-size:.8rem;font-weight:700}.partner-message.visible{display:block}.partner-message.success{background:var(--md-green-soft);color:var(--md-green)}.partner-submit{width:100%;min-height:54px;border-radius:13px}.partner-submit:disabled{opacity:.7}
/* Dashboard */
.partner-dashboard-main{padding:52px 0 90px;background:radial-gradient(circle at 92% 8%,rgba(255,90,79,.07),transparent 27%),var(--md-cream)}.partner-dashboard-shell{width:min(1180px,calc(100% - 32px));margin:auto}.partner-test-pill{background:#fff3c7;color:#7d5a00}.partner-dashboard-head strong{font-size:.84rem}.partner-dashboard-loading{padding:120px 0;text-align:center;color:var(--md-muted);font-weight:800}.partner-dash-hero{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.partner-dash-hero h1{font-size:clamp(3.1rem,5.5vw,5.2rem);line-height:.95;letter-spacing:-.06em;margin:14px 0 8px}.partner-dash-hero h1 span{color:var(--md-coral)}.partner-dash-hero p{max-width:650px;color:var(--md-muted);line-height:1.55}.lead-toggle-card{min-width:230px;background:white;border:1px solid var(--md-line);border-radius:18px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:15px}.lead-toggle-card strong,.lead-toggle-card span{display:block}.lead-toggle-card strong{font-size:.86rem}.lead-toggle-card span{color:var(--md-muted);font-size:.72rem;margin-top:3px}.switch input{display:none}.switch span{display:block;width:48px;height:28px;border-radius:999px;background:#ddd5ce;position:relative;cursor:pointer}.switch span:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;background:#fff;left:3px;top:3px;transition:.15s}.switch input:not(:checked)+span{background:var(--md-green)}.switch input:not(:checked)+span:after{left:23px}.partner-stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:26px}.partner-stat-grid article{background:#fff;border:1px solid var(--md-line);border-radius:18px;padding:19px}.partner-stat-grid span,.partner-stat-grid small,.partner-stat-grid strong{display:block}.partner-stat-grid span{color:var(--md-muted);font-size:.73rem;font-weight:750}.partner-stat-grid strong{font-size:1.85rem;margin:8px 0 3px}.partner-stat-grid small{color:var(--md-muted);font-size:.71rem}.partner-dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.partner-dashboard-primary,.partner-side-card{background:#fff;border:1px solid var(--md-line);border-radius:22px;padding:24px;box-shadow:0 12px 38px rgba(45,35,25,.04)}.partner-dashboard-side{display:grid;gap:18px}.partner-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.partner-section-head.compact{align-items:start}.partner-section-head h2{margin:5px 0 0;font-size:1.25rem;letter-spacing:-.03em}.partner-filter-tabs{display:flex;padding:4px;background:#f4efea;border-radius:10px}.partner-filter-tabs button{border:0;background:transparent;border-radius:8px;padding:8px 10px;font-weight:800;font-size:.72rem;color:var(--md-muted)}.partner-filter-tabs button.active{background:#fff;color:var(--md-ink);box-shadow:0 2px 7px rgba(0,0,0,.05)}.lead-list{display:grid;gap:12px}.partner-lead-card{border:1px solid var(--md-line);border-radius:17px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:16px}.partner-lead-card.accepted{border-color:rgba(43,166,106,.3);background:#fbfffd}.partner-lead-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.partner-lead-top strong{font-size:1.04rem}.demo-pill{font-size:.62rem;background:#f4efea;color:#777;padding:4px 6px;border-radius:999px;font-weight:800}.partner-lead-meta{color:var(--md-muted);font-size:.79rem;line-height:1.5}.partner-lead-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.partner-lead-tags span{font-size:.68rem;padding:5px 7px;background:var(--md-coral-soft);border-radius:999px;color:var(--md-coral-dark);font-weight:750}.partner-lead-actions{min-width:180px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:8px}.lead-price{text-align:center}.lead-price small,.lead-price strong{display:block}.lead-price small{font-size:.65rem;color:var(--md-muted)}.lead-price strong{font-size:1.15rem}.partner-lead-actions .button{min-height:40px;padding:0 12px;font-size:.76rem}.lead-contact{margin-top:10px;padding:10px;border-radius:11px;background:var(--md-green-soft);font-size:.75rem;line-height:1.5}.pipeline-select{width:100%;min-height:38px;border:1px solid var(--md-line);border-radius:10px;padding:0 9px;background:#fff;font:inherit;font-size:.75rem}.partner-mini-form{display:grid;gap:12px}.partner-mini-form label{margin:0}.partner-mini-form .button{width:100%;justify-content:center}.partner-mini-form small{color:var(--md-green);font-size:.7rem}.charge-list{display:grid;gap:0}.charge-row{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--md-line)}.charge-row:last-child{border-bottom:0}.charge-row strong,.charge-row span,.charge-row small{display:block}.charge-row strong{font-size:.78rem}.charge-row span{font-size:.8rem;font-weight:850}.charge-row small{color:var(--md-muted);font-size:.66rem}.empty-leads{padding:45px 15px;text-align:center;color:var(--md-muted)}
/* Modal */
.lead-modal[hidden]{display:none}.lead-modal{position:fixed;inset:0;z-index:500;display:grid;place-items:center;padding:20px}.lead-modal-backdrop{position:absolute;inset:0;background:rgba(31,35,40,.42);backdrop-filter:blur(4px)}.lead-modal-card{position:relative;width:min(620px,100%);max-height:85vh;overflow:auto;background:white;border-radius:24px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.25)}.lead-modal-close{position:absolute;right:15px;top:13px;width:34px;height:34px;border:0;border-radius:50%;background:#f4efea;font-size:1.2rem}.modal-kicker{color:var(--md-coral-dark);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.lead-modal-card h2{font-size:2rem;letter-spacing:-.045em;margin:8px 0 6px}.modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.modal-stat{padding:12px;border:1px solid var(--md-line);border-radius:12px}.modal-stat small,.modal-stat strong{display:block}.modal-stat small{color:var(--md-muted);font-size:.68rem}.modal-stat strong{margin-top:4px}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions .button{flex:1;justify-content:center}
@media(max-width:900px){.partner-hero-grid,.partner-onboard-shell,.partner-dashboard-grid{grid-template-columns:1fr}.partner-onboard-intro{position:static}.partner-stat-grid{grid-template-columns:repeat(2,1fr)}.partner-dash-hero{align-items:stretch}.lead-toggle-card{min-width:210px}}@media(max-width:620px){.partner-topnav a:not(.button),.partner-dashboard-head a,.partner-dashboard-head strong{display:none}.partner-hero{padding:45px 0 60px}.partner-hero-grid{gap:32px}.partner-hero h1{font-size:3.5rem}.partner-hero-actions{flex-direction:column}.partner-steps,.partner-service-grid,.partner-field-row,.partner-service-select,.partner-stat-grid{grid-template-columns:1fr}.partner-onboard-shell,.partner-dashboard-shell{width:calc(100% - 22px)}.partner-form-card,.partner-dashboard-primary,.partner-side-card{padding:20px}.partner-dash-hero{flex-direction:column}.partner-lead-card{grid-template-columns:1fr}.partner-lead-actions{min-width:0}.modal-grid{grid-template-columns:1fr}.modal-actions{flex-direction:column}.partner-footer .shell{flex-direction:column;gap:5px}}

/* Update 005 — Safari-friendly partner select heights */
.partner-field select,
.partner-mini-form select {
  -webkit-appearance: none;
  appearance: none;
  height: 56px;
  min-height: 56px;
  padding: 0 44px 0 14px;
  line-height: 56px;
  background-color: #fff;
  background-image:
    linear-gradient(45deg, transparent 50%, #73787d 50%),
    linear-gradient(135deg, #73787d 50%, transparent 50%);
  background-position:
    calc(100% - 20px) 25px,
    calc(100% - 15px) 25px;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

.pipeline-select {
  -webkit-appearance: none;
  appearance: none;
  height: 48px;
  min-height: 48px;
  padding: 0 38px 0 12px;
  line-height: 48px;
  background-color: #fff;
  background-image:
    linear-gradient(45deg, transparent 50%, #73787d 50%),
    linear-gradient(135deg, #73787d 50%, transparent 50%);
  background-position:
    calc(100% - 18px) 21px,
    calc(100% - 13px) 21px;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}

@media(max-width:620px){
  .partner-field select,
  .partner-mini-form select {height:58px;min-height:58px;line-height:58px;background-position:calc(100% - 20px) 26px,calc(100% - 15px) 26px}
}

/* =========================================================
   Update 006 — Partner automatic billing
   ========================================================= */
.billing-card{overflow:hidden}.billing-heading{margin-bottom:16px}.billing-balance-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.billing-balance-row>div{padding:14px;border:1px solid var(--md-line);border-radius:14px;background:#fffaf6}.billing-balance-row small,.billing-balance-row strong{display:block}.billing-balance-row small{color:var(--md-muted);font-size:.67rem;margin-bottom:5px}.billing-balance-row strong{font-size:1.18rem;letter-spacing:-.02em}.billing-next{text-align:right}.billing-policy{padding:13px 14px;border-radius:13px;background:var(--md-coral-soft);display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.billing-policy strong{font-size:.76rem;color:var(--md-coral-dark)}.billing-policy span{font-size:.69rem;line-height:1.45;color:var(--md-muted)}.billing-method{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid var(--md-line);margin-bottom:14px}.billing-method small,.billing-method strong{display:block}.billing-method small{font-size:.65rem;color:var(--md-muted);margin-bottom:3px}.billing-method strong{font-size:.73rem}.billing-phase{flex:0 0 auto;padding:5px 7px;border-radius:999px;background:#f4efea;color:#6c7277;font-size:.61rem;font-weight:850}.billing-subhead{display:flex;justify-content:space-between;align-items:center;margin:0 0 7px}.billing-subhead strong{font-size:.76rem}.billing-subhead span{font-size:.66rem;color:var(--md-muted)}.billing-batch-list{display:grid;gap:0}.billing-batch-row{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid var(--md-line)}.billing-batch-row:last-child{border-bottom:0}.billing-batch-row strong,.billing-batch-row small{display:block}.billing-batch-row strong{font-size:.78rem}.billing-batch-row small{color:var(--md-muted);font-size:.62rem;margin-top:3px;text-transform:capitalize}.billing-batch-row>span{padding:4px 6px;border-radius:999px;background:#fff3c7;color:#7d5a00;font-size:.58rem;font-weight:900}.billing-empty{padding:14px 0;color:var(--md-muted);font-size:.69rem}.billing-simulate{width:100%;justify-content:center;margin-top:12px;min-height:44px}.billing-message{display:block;min-height:16px;margin-top:7px;color:var(--md-green);font-size:.66rem;line-height:1.4}
@media(max-width:620px){.billing-balance-row{grid-template-columns:1fr}.billing-next{text-align:left}.billing-method{align-items:flex-start;flex-direction:column}.billing-phase{align-self:flex-start}}


/* =========================================================
   Update 007 — Stripe partner payments
   ========================================================= */
.stripe-setup-button{width:100%;justify-content:center;min-height:44px;margin:2px 0 9px}.billing-consent{margin:0 0 14px;color:var(--md-muted);font-size:.63rem;line-height:1.5}.billing-batch-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}.billing-batch-actions>span{padding:4px 6px;border-radius:999px;background:#fff3c7;color:#7d5a00;font-size:.58rem;font-weight:900;text-transform:capitalize}.billing-batch-actions button{border:0;border-radius:999px;padding:5px 7px;background:var(--md-coral-soft);color:var(--md-coral-dark);font:inherit;font-size:.58rem;font-weight:900;cursor:pointer}.billing-batch-row.failed{background:#fff9f8}.billing-batch-row.failed .billing-batch-actions>span{background:#ffe6e2;color:#9b332d}.stripe-setup-button:disabled{opacity:.55;cursor:not-allowed}.billing-message{color:var(--md-muted)}

/* =========================================================
   MOVEDONE UPDATE 011 — QUOTE / OFFER ENGINE
   ========================================================= */
.quote-status-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;background:#f3efeb;color:#6d7379;font-size:.69rem;font-weight:900;white-space:nowrap}
.quote-status-pill.submitted{background:#fff0ed;color:var(--md-coral-dark)}.quote-status-pill.viewed{background:#fff4e6;color:#a65d13}.quote-status-pill.accepted{background:var(--md-green-soft);color:var(--md-green)}.quote-status-pill.declined,.quote-status-pill.not_selected{background:#f2f0ed;color:#7b7f82}
.quote-action-button{min-width:150px}.quote-loading{padding:40px;text-align:center;color:var(--md-muted)}
.quote-decision-banner{display:flex;flex-direction:column;gap:4px;margin:18px 0;padding:14px 16px;border-radius:14px;background:var(--md-coral-soft);border:1px solid rgba(255,90,79,.16)}.quote-decision-banner strong{color:var(--md-coral-dark);font-size:.86rem}.quote-decision-banner span{color:var(--md-muted);font-size:.78rem;line-height:1.45}.quote-decision-banner.accepted{background:var(--md-green-soft);border-color:rgba(43,166,106,.18)}.quote-decision-banner.accepted strong{color:var(--md-green)}.quote-decision-banner.not_selected,.quote-decision-banner.declined{background:#f5f2ef;border-color:var(--md-line)}.quote-decision-banner.not_selected strong,.quote-decision-banner.declined strong{color:#6f7479}
.quote-form{display:grid;gap:14px;margin-top:20px}.quote-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.quote-form label{display:grid;gap:7px;color:#454b50;font-size:.78rem;font-weight:800}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid #ded7d0;border-radius:12px;background:#fff;color:var(--md-ink);font:inherit;outline:none}.quote-form input,.quote-form select{height:50px;min-height:50px;padding:0 13px}.quote-form textarea{padding:12px 13px;resize:vertical;line-height:1.45}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--md-coral);box-shadow:0 0 0 4px rgba(255,90,79,.08)}.money-input{position:relative}.money-input span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--md-muted);font-weight:800}.money-input input{padding-left:28px}.quote-submit{width:100%;min-height:52px;border-radius:13px}.quote-form-message{min-height:18px;color:var(--md-green);font-size:.75rem;font-weight:800}
.quote-conversation{margin-top:26px;padding-top:22px;border-top:1px solid var(--md-line)}.quote-conversation-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.quote-conversation-head strong{font-size:.92rem}.quote-conversation-head span{color:var(--md-muted);font-size:.74rem}.quote-message-list{display:grid;gap:8px;max-height:230px;overflow:auto;padding-right:3px}.quote-message{max-width:85%;padding:10px 12px;border-radius:13px;background:#f4f1ed}.quote-message.mine{margin-left:auto;background:var(--md-coral-soft)}.quote-message small{display:block;color:var(--md-muted);font-size:.64rem;margin-bottom:4px}.quote-message p{margin:0;font-size:.78rem;line-height:1.45;white-space:pre-wrap}.quote-message-empty{padding:14px;border-radius:12px;background:#faf8f5;color:var(--md-muted);font-size:.76rem}.quote-message-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.quote-message-form textarea{min-height:48px;padding:11px;border:1px solid var(--md-line);border-radius:11px;font:inherit;resize:vertical}.quote-message-form button{align-self:stretch}
@media(max-width:700px){.quote-form-grid{grid-template-columns:1fr}.quote-message-form{grid-template-columns:1fr}.quote-action-button{width:100%}}

/* =========================================================
   UPDATE 012 — OFFER CALENDAR + MESSAGE ALERTS
   ========================================================= */
.partner-message-alert{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid rgba(255,90,79,.22);border-radius:999px;background:var(--md-coral-soft);color:var(--md-coral-dark);font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}
.partner-message-alert span{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:var(--md-coral);color:#fff;font-size:.68rem;box-shadow:0 5px 13px rgba(255,90,79,.2)}
.message-needs-reply{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:7px 9px;border-radius:11px;background:#fff3e6;color:#a85c12;font-size:.68rem;font-weight:900;line-height:1.25;text-align:center}
.message-needs-reply i{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#ff8a24;box-shadow:0 0 0 4px rgba(255,138,36,.12)}
.quote-action-button.has-unread-message{border-color:#f1b26c;background:#fffaf3;box-shadow:0 0 0 3px rgba(255,138,36,.08)}
.pricing-type-help{display:block;min-height:36px;color:var(--md-muted);font-size:.68rem;font-weight:600;line-height:1.45}
.quote-date-picker{position:relative}
.quote-date-trigger{width:100%;height:50px;min-height:50px;display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:10px;padding:0 13px;border:1px solid #ded7d0;border-radius:12px;background:#fff;color:var(--md-ink);font:inherit;text-align:left;outline:none}
.quote-date-trigger:hover:not(:disabled){border-color:#d2c8c0}
.quote-date-trigger:focus,.quote-date-trigger[aria-expanded="true"]{border-color:var(--md-coral);box-shadow:0 0 0 4px rgba(255,90,79,.08)}
.quote-date-trigger:disabled{opacity:.65;cursor:default}
.quote-date-trigger svg{width:19px;height:19px;color:#686f74}.quote-date-trigger [data-quote-date-label]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;color:#555c62}.quote-date-chevron{color:#8d9296}
.quote-calendar{position:absolute;z-index:920;top:calc(100% + 8px);left:0;width:min(350px,calc(100vw - 38px));padding:17px;border:1px solid var(--md-line);border-radius:19px;background:#fff;box-shadow:0 24px 65px rgba(41,31,23,.2)}
.quote-calendar-header{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.quote-calendar-header>div:first-child{display:flex;flex-direction:column;gap:2px}.quote-calendar-header span{color:var(--md-coral-dark);font-size:.66rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.quote-calendar-header strong{font-size:1.02rem;letter-spacing:-.025em}
.quote-calendar-nav{display:flex;gap:6px}.quote-calendar-nav button{width:35px;height:35px;display:grid;place-items:center;padding:0;border:1px solid var(--md-line);border-radius:10px;background:#fffdf9;color:var(--md-ink);font-size:1.2rem}.quote-calendar-nav button:hover:not(:disabled){background:var(--md-coral-soft);border-color:#d9ccc3}.quote-calendar-nav button:disabled{opacity:.3;cursor:default}
.quote-calendar-weekdays,.quote-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.quote-calendar-weekdays{margin-bottom:5px}.quote-calendar-weekdays span{display:grid;place-items:center;min-height:25px;color:#93989c;font-size:.64rem;font-weight:850;text-transform:uppercase}.quote-calendar-empty,.quote-calendar-day{aspect-ratio:1}.quote-calendar-day{display:grid;place-items:center;padding:0;border:1px solid transparent;border-radius:10px;background:transparent;color:#33383d;font-size:.79rem;font-weight:750}.quote-calendar-day:hover:not(:disabled){background:var(--md-coral-soft);color:var(--md-coral-dark)}.quote-calendar-day.today:not(.selected){border-color:#e6d8cf;background:#fffdf9}.quote-calendar-day.selected{border-color:var(--md-coral);background:var(--md-coral);color:#fff;box-shadow:0 7px 18px rgba(255,90,79,.22)}.quote-calendar-day:disabled{color:#d2d4d5;cursor:default}
.quote-calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:13px;padding-top:12px;border-top:1px solid var(--md-line)}.quote-calendar-footer button{min-height:31px;padding:0 10px;border:0;border-radius:9px;background:var(--md-coral-soft);color:var(--md-coral-dark);font-weight:850}.quote-calendar-footer span{color:#9aa0a4;font-size:.64rem;text-transform:none;letter-spacing:0;font-weight:600}
@media(max-width:700px){.partner-message-alert{font-size:0;width:38px;padding:0;justify-content:center;position:relative}.partner-message-alert::before{content:"●";font-size:.9rem;color:var(--md-coral)}.partner-message-alert span{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;font-size:.58rem}.quote-calendar{position:fixed;top:auto;right:11px;bottom:11px;left:11px;width:auto;max-height:min(560px,calc(100vh - 22px));overflow-y:auto;border-radius:22px}.quote-calendar-day{min-height:38px}}

/* =========================================================
   UPDATE 013 — QUOTE TERMS + INVOICING
   ========================================================= */
.money-input{height:50px;display:flex;align-items:center;gap:7px;padding:0 10px 0 14px;border:1px solid #ded7d0;border-radius:12px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.money-input:focus-within{border-color:var(--md-coral);box-shadow:0 0 0 4px rgba(255,90,79,.08)}.money-input span{position:static;transform:none;display:block;flex:0 0 auto;color:#6f7479;font-weight:900;line-height:1}.money-input input{height:46px!important;min-height:46px!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;font-size:1rem;font-weight:750}.money-input input:focus{border:0!important;box-shadow:none!important}
.quote-deposit-fields{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:13px;border:1px solid rgba(255,90,79,.14);border-radius:13px;background:#fffaf8}.quote-deposit-fields[hidden]{display:none!important}.invoice-next-step{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:16px 17px;border:1px solid rgba(43,166,106,.2);border-radius:15px;background:var(--md-green-soft)}.invoice-next-step>div{display:flex;flex-direction:column;gap:4px}.invoice-next-step strong{color:#176f48;font-size:.84rem}.invoice-next-step span{color:var(--md-muted);font-size:.72rem;line-height:1.45}.partner-invoice-alert{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid rgba(43,166,106,.22);border-radius:999px;background:var(--md-green-soft);color:#176f48;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}.partner-invoice-alert span{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:var(--md-green);color:#fff;font-size:.68rem}.partner-invoice-alert.overdue{border-color:rgba(255,90,79,.25);background:var(--md-coral-soft);color:var(--md-coral-dark)}
@media(max-width:700px){.quote-deposit-fields{grid-template-columns:1fr}.invoice-next-step{align-items:stretch;flex-direction:column}.partner-invoice-alert{font-size:0;width:38px;padding:0;justify-content:center;position:relative}.partner-invoice-alert::before{content:"$";font-size:.8rem}.partner-invoice-alert span{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;font-size:.58rem}}

/* =========================================================
   UPDATE 014 — QUOTE ALIGNMENT + DEPOSITS
   ========================================================= */
.quote-form-grid>label{align-self:start;align-content:start}
.quote-amount-field{align-self:start!important;align-content:start!important}
.money-input,.deposit-value-input{position:relative;display:flex;align-items:center;width:100%}
.money-input>span,.deposit-value-input>span{position:absolute;left:14px;top:50%;transform:translateY(-50%);z-index:2;color:#697076;font-weight:900;line-height:1;pointer-events:none}
.money-input input,.deposit-value-input input{width:100%;padding-left:34px!important}
.deposit-value-input>span{font-size:.9rem}
.partner-deposit-alert{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid rgba(255,174,65,.3);border-radius:999px;background:#fff8ea;color:#8e5b09;font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}
.partner-deposit-alert span{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:#e89b27;color:#fff;font-size:.68rem}
.partner-deposit-alert.attention{border-color:rgba(255,90,79,.25);background:var(--md-coral-soft);color:var(--md-coral-dark)}
.partner-deposit-alert.attention span{background:var(--md-coral)}
.partner-deposit-status{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:20px;padding:16px 17px;border:1px solid #eadfce;border-radius:15px;background:#fffaf0}
.partner-deposit-status>div{display:flex;flex-direction:column;gap:4px}.partner-deposit-status strong{color:#855515;font-size:.85rem}.partner-deposit-status span{color:var(--md-muted);font-size:.73rem;line-height:1.45}
.partner-deposit-status.paid{border-color:rgba(43,166,106,.2);background:var(--md-green-soft)}.partner-deposit-status.paid strong{color:#176f48}
.partner-deposit-status.customer_reported_paid{border-color:rgba(255,90,79,.2);background:var(--md-coral-soft)}.partner-deposit-status.customer_reported_paid strong{color:var(--md-coral-dark)}
.partner-deposit-status.waived{background:#f5f2ef;border-color:var(--md-line)}.partner-deposit-status.waived strong{color:#6f7479}
@media(max-width:700px){.partner-deposit-alert{font-size:0;width:38px;padding:0;justify-content:center;position:relative}.partner-deposit-alert::before{content:"$";font-size:.8rem}.partner-deposit-alert span{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;font-size:.58rem}.partner-deposit-status{align-items:stretch;flex-direction:column}}

/* =========================================================
   UPDATE 016 — PARTNER PAYMENT NOTIFICATIONS
   ========================================================= */
.partner-notification-wrap{position:relative}.partner-notification-alert{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:0 11px;border:1px solid var(--md-line);border-radius:999px;background:#fff;color:var(--md-muted);font:inherit;font-size:.76rem;font-weight:900;cursor:pointer}.partner-notification-alert.has-unread{border-color:rgba(43,166,106,.28);background:var(--md-green-soft);color:#176f48}.partner-notification-alert span{min-width:22px;height:22px;display:grid;place-items:center;padding:0 6px;border-radius:999px;background:var(--md-green);color:#fff;font-size:.66rem}.partner-notification-menu{position:absolute;z-index:950;top:calc(100% + 9px);right:0;width:min(370px,calc(100vw - 26px));max-height:440px;overflow:auto;padding:8px;border:1px solid var(--md-line);border-radius:16px;background:#fff;box-shadow:0 22px 60px rgba(40,30,20,.16)}.partner-notification-menu-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px 11px;border-bottom:1px solid var(--md-line)}.partner-notification-menu-head strong{font-size:.84rem}.partner-notification-menu-head button{border:0;background:transparent;color:var(--md-coral-dark);font-size:.68rem;font-weight:850}.partner-notification-list{display:grid}.partner-notification-item{display:grid;grid-template-columns:10px 1fr;gap:10px;padding:12px 10px;border-bottom:1px solid var(--md-line)}.partner-notification-item:last-child{border-bottom:0}.partner-notification-dot{width:8px;height:8px;margin-top:5px;border-radius:50%;background:#d8d3cf}.partner-notification-item.unread .partner-notification-dot{background:var(--md-green);box-shadow:0 0 0 4px rgba(43,166,106,.1)}.partner-notification-item strong{display:block;margin-bottom:3px;font-size:.78rem}.partner-notification-item p{margin:0 0 4px;color:var(--md-muted);font-size:.72rem;line-height:1.4}.partner-notification-item small{color:#9aa0a4;font-size:.62rem}.partner-notification-empty{padding:20px 12px;color:var(--md-muted);font-size:.74rem;text-align:center}
@media(max-width:700px){.partner-notification-alert{font-size:0;width:38px;padding:0;justify-content:center;position:relative}.partner-notification-alert::before{content:"✓";font-size:.85rem;color:#176f48}.partner-notification-alert span{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;font-size:.58rem}.partner-notification-menu{position:fixed;top:76px;right:11px;left:11px;width:auto;max-height:calc(100vh - 92px)}}


/* =========================================================
   UPDATE 017 — WON / JOB STATUS / DEPOSIT STATUS
   ========================================================= */
.deposit-pill{display:inline-flex;align-items:center;justify-content:center;padding:6px 9px;border-radius:999px;font-size:.68rem;font-weight:900;white-space:nowrap;border:1px solid transparent}.deposit-pill.outstanding{background:#fff7e8;color:#9b6113;border-color:#f2d9ad}.deposit-pill.pending{background:var(--md-coral-soft);color:var(--md-coral-dark);border-color:rgba(255,90,79,.18)}.deposit-pill.paid{background:var(--md-green-soft);color:var(--md-green);border-color:rgba(43,166,106,.18)}.deposit-pill.waived{background:#f3f0ed;color:#74797d;border-color:var(--md-line)}
.quote-status-pill.accepted{background:var(--md-green);color:#fff;letter-spacing:.05em;padding-left:12px;padding-right:12px;box-shadow:0 6px 18px rgba(43,166,106,.16)}
.job-status-control{display:grid;gap:5px;margin:0}.job-status-control>span{font-size:.64rem;color:var(--md-muted);font-weight:850;text-transform:uppercase;letter-spacing:.07em;text-align:left}.job-status-select{border-color:rgba(43,166,106,.28);background:var(--md-green-soft);font-weight:850;color:#176f48;min-height:44px}

/* =========================================================
   Update 018 — Lead inbox visual refinement
   ========================================================= */
.lead-list{gap:16px}
.partner-lead-card{
  position:relative;
  grid-template-columns:minmax(0,1fr) 245px;
  gap:24px;
  padding:22px;
  border-radius:20px;
  background:#fff;
  border:1px solid #e9e2db;
  box-shadow:0 8px 28px rgba(45,35,25,.035);
  overflow:hidden;
}
.partner-lead-card::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  background:transparent;
}
.partner-lead-card.accepted{
  background:linear-gradient(135deg,#fff 0%,#fbfffd 100%);
  border-color:rgba(43,166,106,.24);
}
.partner-lead-card.accepted::before{background:rgba(43,166,106,.72)}
.partner-lead-card.won-lead{
  border-color:rgba(43,166,106,.42);
  box-shadow:0 10px 32px rgba(43,166,106,.07);
}
.lead-card-main{min-width:0}
.lead-card-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.partner-lead-top{margin-bottom:5px}
.partner-lead-top strong{font-size:1.08rem;letter-spacing:-.02em}
.lead-title-dot{color:#aaa19a;font-weight:500}
.partner-lead-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:.78rem}
.lead-meta-separator{color:#bbb3ac}
.partner-lead-tags{margin-top:12px;gap:7px}
.partner-lead-tags span{padding:5px 9px;font-size:.66rem;border:1px solid rgba(255,90,79,.08)}
.lead-result-pill{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:28px;padding:0 11px;border-radius:999px;
  font-size:.67rem;font-weight:900;text-transform:uppercase;letter-spacing:.06em;
}
.lead-result-pill.won{background:var(--md-green);color:#fff;box-shadow:0 5px 14px rgba(43,166,106,.14)}
.lead-contact{
  margin-top:16px;padding:12px 14px;
  display:grid;grid-template-columns:36px 1fr;gap:11px;align-items:center;
  border:1px solid rgba(43,166,106,.09);
  background:rgba(237,249,243,.78);
  border-radius:13px;
}
.lead-contact-avatar{
  width:36px;height:36px;display:grid;place-items:center;border-radius:50%;
  background:#fff;color:var(--md-green);font-size:.78rem;font-weight:900;
  box-shadow:0 2px 8px rgba(43,166,106,.08)
}
.lead-contact strong,.lead-contact span{display:block}
.lead-contact strong{font-size:.78rem;margin-bottom:2px}
.lead-contact span{font-size:.7rem;color:#515b56;line-height:1.4}
.partner-lead-actions{
  min-width:0;
  display:flex;flex-direction:column;justify-content:flex-start;gap:10px;
  padding-left:20px;border-left:1px solid #eee7e1;
}
.lead-money-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:2px}
.lead-price{
  min-height:62px;padding:10px 8px;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;border-radius:12px;background:#faf7f4;
}
.lead-fee-price{background:#fff2ef}
.lead-price small{font-size:.62rem;margin-bottom:3px}
.lead-price strong{font-size:1rem;line-height:1.15}
.lead-fee-price strong{color:var(--md-coral-dark)}
.lead-primary-actions{display:grid;gap:8px}
.lead-state-stack{display:grid;gap:7px}
.lead-status-row{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.quote-status-pill{width:auto!important;display:inline-flex!important;min-height:28px;align-items:center;justify-content:center;padding:0 10px!important;font-size:.64rem!important}
.message-needs-reply{width:100%;border-radius:9px;padding:8px 9px;font-size:.65rem}
.partner-lead-actions .quote-action-button{width:100%;min-height:43px;border-radius:12px;font-size:.75rem;font-weight:850}
.lead-pipeline-control,.job-status-control{display:grid;gap:6px;margin-top:1px}
.lead-pipeline-control>span,.job-status-control>span{
  font-size:.61rem;color:var(--md-muted);font-weight:900;text-transform:uppercase;
  letter-spacing:.08em;text-align:left
}
.pipeline-select,.job-status-select{
  min-height:44px;border-radius:12px;padding:0 36px 0 12px;font-size:.75rem;font-weight:800;
  background-color:#fff
}
.job-status-select{background:var(--md-green-soft);border-color:rgba(43,166,106,.28);color:#176f48}
.pipeline-select:disabled{opacity:.58;background:#f6f3f0}

@media(max-width:900px){
  .partner-lead-card{grid-template-columns:1fr 220px;gap:18px}
  .partner-lead-actions{padding-left:16px}
}
@media(max-width:700px){
  .partner-lead-card{grid-template-columns:1fr;padding:18px}
  .partner-lead-actions{padding-left:0;padding-top:14px;border-left:0;border-top:1px solid #eee7e1}
  .lead-money-grid{grid-template-columns:1fr 1fr}
  .lead-card-heading-row{align-items:center}
}


/* =========================================================
   Update 019 — lead workspace, status, notes and address
   ========================================================= */
.partner-lead-card{grid-template-columns:minmax(0,1fr) 218px;gap:20px}
.partner-lead-actions{padding-left:17px}
.partner-lead-top strong{white-space:nowrap}
.partner-lead-meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
.partner-lead-actions .quote-action-button{white-space:nowrap;font-size:.72rem;padding-left:10px;padding-right:10px}
.lead-workspace{margin-top:12px;padding:13px 14px;border:1px solid rgba(255,90,79,.13);border-radius:13px;background:#fff9f7;display:grid;gap:10px}
.lead-workspace-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.lead-workspace-head>div{display:flex;align-items:center;gap:8px}.lead-workspace-head small{font-size:.62rem;color:var(--md-muted);font-weight:900;text-transform:uppercase;letter-spacing:.07em}
.lead-stage-badge{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:0 10px;border-radius:999px;background:#f2efec;color:#62686c;font-size:.65rem;font-weight:900;white-space:nowrap}.lead-stage-badge.quote-sent{background:var(--md-coral-soft);color:var(--md-coral-dark)}.lead-stage-badge.won,.lead-stage-badge.booked,.lead-stage-badge.scheduled,.lead-stage-badge.in_progress,.lead-stage-badge.completed,.lead-stage-badge.invoiced,.lead-stage-badge.paid{background:var(--md-green-soft);color:#176f48}.lead-stage-badge.lost,.lead-stage-badge.cancelled{background:#f2efec;color:#7b7f82}
.lead-private-notes{display:grid;gap:5px}.lead-private-notes>span{font-size:.66rem;font-weight:900;color:#4e555a}.lead-private-notes textarea{width:100%;min-height:58px;resize:vertical;border:1px solid #e3d8d1;border-radius:10px;background:#fff;padding:9px 10px;font:inherit;font-size:.72rem;line-height:1.45;color:var(--md-ink)}.lead-private-notes textarea:focus{outline:0;border-color:var(--md-coral);box-shadow:0 0 0 3px rgba(255,90,79,.08)}
.lead-notes-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.lead-notes-actions small{font-size:.6rem;color:#92979a}.lead-notes-save{border:0;background:transparent;color:var(--md-coral-dark);font:inherit;font-size:.66rem;font-weight:900;padding:3px 0;white-space:nowrap}.lead-notes-save:disabled{opacity:.65}
.lead-address-privacy,.lead-address-shared{display:grid;gap:3px;padding:9px 10px;border-radius:10px;background:#fff;border:1px solid var(--md-line)}.lead-address-privacy strong,.lead-address-shared strong{font-size:.66rem}.lead-address-privacy span,.lead-address-shared span{font-size:.65rem;line-height:1.42;color:var(--md-muted)}.lead-address-shared{background:var(--md-green-soft);border-color:rgba(43,166,106,.14)}.lead-address-shared strong{color:#176f48}.lead-address-privacy.waiting{background:#fffaf0;border-color:#f1dfc1}
.lead-status-row{display:none!important}
@media(max-width:1020px){.partner-lead-card{grid-template-columns:minmax(0,1fr) 205px}.partner-lead-top strong{white-space:normal}.partner-lead-meta{white-space:normal}}
@media(max-width:700px){.partner-lead-card{grid-template-columns:1fr}.partner-lead-meta{overflow:visible}.lead-workspace-head{align-items:flex-start;flex-direction:column}.lead-notes-actions{align-items:flex-start;flex-direction:column}.partner-lead-actions .quote-action-button{white-space:normal}}


/* =========================================================
   Update 020 — cleaner accepted-lead card layout
   ========================================================= */

/* Shift the divider left and give the commercial column room. */
.partner-lead-card{
  grid-template-columns:minmax(0,1fr) 304px;
  gap:22px;
}
.partner-lead-actions{
  padding-left:18px;
}

/* Keep the value ranges and actions on one line on desktop. */
.lead-money-grid{gap:10px}
.lead-price{min-width:0;padding-left:10px;padding-right:10px}
.lead-price strong{
  white-space:nowrap;
  font-size:.96rem;
  letter-spacing:-.015em;
}
.partner-lead-actions .quote-action-button{
  white-space:nowrap;
}

/* Customer / service details remain together in the green tile. */
.lead-contact{
  grid-template-columns:38px minmax(0,1fr);
  align-items:start;
}
.lead-contact-details{min-width:0}
.lead-contact-address{
  margin-top:9px;
  padding-top:9px;
  border-top:1px solid rgba(43,166,106,.12);
  display:grid;
  gap:2px;
}
.lead-contact-address small{
  color:#176f48;
  font-size:.61rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.lead-contact-address b{
  color:#27322d;
  font-size:.72rem;
  line-height:1.4;
}
.lead-contact-address span{
  color:#56625c;
  font-size:.67rem;
  line-height:1.4;
}
.lead-contact-address.pending span{
  color:#6e7772;
  font-style:italic;
}

/* Nothing beneath the customer tile except private notes. */
.lead-workspace{display:none!important}
.lead-notes-only{
  margin-top:12px;
  padding:12px 13px;
  border:1px solid #eee2dc;
  border-radius:12px;
  background:#fffaf8;
}
.lead-notes-only .lead-private-notes textarea{
  min-height:62px;
}

@media(max-width:1050px){
  .partner-lead-card{grid-template-columns:minmax(0,1fr) 270px}
  .lead-price strong{font-size:.9rem}
}
@media(max-width:850px){
  .partner-lead-card{grid-template-columns:1fr}
  .partner-lead-actions{padding-left:0;padding-top:14px;border-left:0;border-top:1px solid #eee7e1}
  .lead-price strong{font-size:1rem}
}


/* =========================================================
   Update 021 — lead lifecycle, badges, archive/delete
   ========================================================= */

.lead-heading-tools{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.lead-more-wrap{position:relative}
.lead-more-button{
  width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--md-line);
  border-radius:10px;background:#fff;color:#74797c;font:inherit;font-weight:900;letter-spacing:1px;
  cursor:pointer;line-height:1;padding:0 0 5px;
}
.lead-more-button:hover{background:#faf7f4;color:var(--md-ink)}
.lead-more-menu{
  position:absolute;z-index:80;right:0;top:calc(100% + 7px);width:150px;padding:6px;
  border:1px solid var(--md-line);border-radius:12px;background:#fff;
  box-shadow:0 14px 36px rgba(43,34,27,.13)
}
.lead-more-menu button{
  width:100%;min-height:36px;border:0;border-radius:8px;background:transparent;padding:0 10px;
  text-align:left;font:inherit;font-size:.69rem;font-weight:800;color:#464d51;cursor:pointer
}
.lead-more-menu button:hover{background:#f6f2ee}
.lead-more-menu button.danger{color:#b94239}

/* Every lifecycle state gets a visible badge in the same position. */
.lead-result-pill.new{background:#fff1ee;color:var(--md-coral-dark)}
.lead-result-pill.accepted{background:#eef4ff;color:#4268a8}
.lead-result-pill.contacted{background:#fff6df;color:#946a14}
.lead-result-pill.quote-sent{background:var(--md-coral-soft);color:var(--md-coral-dark)}
.lead-result-pill.lost{background:#f1f0ef;color:#73777a}
.lead-result-pill.archived{background:#ecebea;color:#686c6f}
.lead-result-pill.won{background:var(--md-green);color:#fff;box-shadow:0 5px 14px rgba(43,166,106,.14)}
.lead-result-pill.booked{background:#eaf8f1;color:#176f48}
.lead-result-pill.scheduled{background:#e9f5ff;color:#2d6c96}
.lead-result-pill.in_progress{background:#fff3d8;color:#8c6413}
.lead-result-pill.completed{background:#e7f8f4;color:#16715d}
.lead-result-pill.invoiced{background:#f0ecff;color:#654aa8}
.lead-result-pill.paid{background:#dff5e9;color:#116c42}
.lead-result-pill.cancelled{background:#fff0ef;color:#a9453d}

.lead-reinstate-button{
  min-height:36px;border:1px solid #d8d2cc;border-radius:10px;background:#fff;color:#53595d;
  font:inherit;font-size:.68rem;font-weight:900;cursor:pointer
}
.lead-reinstate-button:hover{border-color:var(--md-coral);color:var(--md-coral-dark)}

/* Archived leads are visually quieter without losing context. */
.partner-lead-card:has(.lead-result-pill.archived){background:#faf9f8;border-color:#dedbd8;opacity:.86}

@media(max-width:700px){
  .lead-card-heading-row{align-items:flex-start}
  .lead-heading-tools{gap:6px}
}


/* Update 022 — message centre and action alignment */
.lead-more-button{display:flex!important;align-items:center!important;justify-content:center!important;padding:3px 0 0!important;line-height:.65!important;font-size:15px!important;letter-spacing:1.5px!important}
.partner-message-alert{min-height:38px;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;padding:0 13px;border:1px solid var(--md-line);border-radius:999px;background:#fff;color:#53595d;text-decoration:none;font:inherit;font-size:.72rem;font-weight:850;cursor:pointer}
.partner-message-alert:hover{border-color:#d9d0c8;color:var(--md-ink)}
.partner-message-alert.has-unread{border-color:#ffd0ca;background:#fff6f4;color:var(--md-coral-dark)}
.partner-message-alert span{min-width:19px;height:19px;padding:0 5px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--md-coral);color:#fff;font-size:.61rem;font-weight:950}
.partner-message-alert span[hidden]{display:none!important}
.lead-message-link{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 13px;border:1px solid #ded7d0;border-radius:11px;background:#fff;color:#555c61;text-decoration:none;font-size:.68rem;font-weight:850}
.lead-message-link:hover{border-color:var(--md-coral);color:var(--md-coral-dark)}
.lead-message-link small{color:#8a8f93;font-size:.62rem;font-weight:700}.lead-message-link b{padding:4px 7px;border-radius:999px;background:var(--md-coral);color:#fff;font-size:.58rem;letter-spacing:.01em}.lead-message-link.has-unread{background:#fff7f5;border-color:#ffd0ca;color:var(--md-coral-dark)}


/* =========================================================
   Update 023 — quoted amounts, Google Maps, partner calendar
   ========================================================= */
.lead-price.quoted-amount{background:#f2fbf6;border:1px solid rgba(43,166,106,.12)}
.lead-price.quoted-amount small{color:#38775b}.lead-price.quoted-amount strong{color:#176f48;font-size:1.08rem}

.lead-map-card{position:relative;margin-top:12px;border:1px solid #e7e0da;border-radius:13px;overflow:hidden;background:#f7f5f2;min-height:145px}
.lead-map-card iframe{display:block;width:100%;height:145px;border:0;filter:saturate(.88) contrast(.97)}
.lead-map-link{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.96);border:1px solid #ded6cf;color:#30363a;text-decoration:none;font-size:.62rem;font-weight:850;box-shadow:0 3px 12px rgba(35,30,25,.08)}
.lead-map-card.map-unconfigured{min-height:82px;padding:12px 13px;display:flex;align-items:center;justify-content:space-between;gap:12px}.lead-map-card.map-unconfigured div{min-width:0}.lead-map-card.map-unconfigured strong,.lead-map-card.map-unconfigured span{display:block}.lead-map-card.map-unconfigured strong{font-size:.72rem}.lead-map-card.map-unconfigured span{margin-top:3px;color:var(--md-muted);font-size:.64rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lead-map-card.map-unconfigured a{flex:0 0 auto;color:var(--md-coral-dark);font-size:.64rem;font-weight:850;text-decoration:none}

.lead-schedule-button{width:100%;min-height:40px;border:1px solid #ded6cf;border-radius:11px;background:#fff;color:#454c50;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.lead-schedule-button:hover{border-color:var(--md-coral);color:var(--md-coral-dark)}.lead-schedule-button.has-booking{background:#f1fbf5;border-color:rgba(43,166,106,.24);color:#176f48}

.partner-calendar-card{overflow:hidden}.partner-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px}.partner-calendar-head h2{margin:4px 0 0;font-size:1.15rem;letter-spacing:-.03em}.calendar-nav{display:flex;align-items:center;gap:4px}.calendar-nav button{width:30px;height:30px;border:1px solid var(--md-line);border-radius:9px;background:#fff;color:#666;font-size:1rem;cursor:pointer}.calendar-title{font-size:.72rem;font-weight:850;color:#50575b;min-width:92px;text-align:center}
.calendar-weekdays,.partner-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.calendar-weekdays{margin-bottom:4px}.calendar-weekdays span{text-align:center;color:#969a9d;font-size:.55rem;font-weight:850;text-transform:uppercase}.calendar-day{position:relative;aspect-ratio:1;border:0;border-radius:8px;background:transparent;color:#50565a;font:inherit;font-size:.62rem;font-weight:750;cursor:pointer}.calendar-day:hover{background:#f7f2ed}.calendar-day.empty{pointer-events:none}.calendar-day.today{box-shadow:inset 0 0 0 1px var(--md-coral);color:var(--md-coral-dark)}.calendar-day.has-booking{background:var(--md-green-soft);color:#176f48}.calendar-day i{position:absolute;right:2px;top:2px;min-width:13px;height:13px;padding:0 3px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--md-green);color:#fff;font-style:normal;font-size:.45rem;font-weight:900}
.calendar-upcoming{display:grid;gap:6px;margin-top:13px;padding-top:12px;border-top:1px solid var(--md-line)}.calendar-booking{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 9px;border:1px solid #e6e0da;border-radius:10px;background:#fff;text-align:left;cursor:pointer}.calendar-booking:hover{background:#fbf8f5}.calendar-booking strong,.calendar-booking span{display:block}.calendar-booking strong{font-size:.63rem}.calendar-booking span{margin-top:2px;color:var(--md-muted);font-size:.57rem}.calendar-booking small{color:var(--md-coral-dark);font-size:.54rem;font-weight:800;white-space:nowrap}.calendar-empty{padding:9px 4px;color:var(--md-muted);font-size:.62rem;text-align:center}

.booking-modal{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:18px}.booking-modal[hidden]{display:none!important}.booking-modal-backdrop{position:absolute;inset:0;background:rgba(25,24,22,.48);backdrop-filter:blur(4px)}.booking-modal-card{position:relative;z-index:1;width:min(620px,calc(100vw - 28px));max-height:calc(100vh - 36px);overflow:auto;padding:25px;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(20,18,16,.25)}.booking-modal-close{position:absolute;right:15px;top:15px;width:36px;height:36px;border:0;border-radius:50%;background:#f5f1ed;font-size:1.25rem;cursor:pointer}.booking-modal-head h2{margin:7px 45px 4px 0;font-size:1.55rem;letter-spacing:-.04em}.booking-modal-head p{margin:0 0 22px;color:var(--md-muted);font-size:.78rem}.booking-form-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:11px}.booking-modal label{display:grid;gap:6px;margin-bottom:13px;font-size:.7rem;font-weight:850;color:#4d5357}.booking-modal input,.booking-modal select,.booking-modal textarea{width:100%;border:1px solid #ded6cf;border-radius:11px;background:#fff;padding:0 11px;font:inherit;color:var(--md-ink)}.booking-modal input,.booking-modal select{min-height:46px}.booking-modal textarea{padding-top:10px;padding-bottom:10px;resize:vertical}.booking-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.booking-form-actions .button{min-height:44px}.booking-modal form>small{display:block;margin-top:9px;color:var(--md-coral-dark);font-size:.65rem}

@media(max-width:1050px){.lead-map-card iframe{height:130px}.lead-map-card{min-height:130px}.booking-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.booking-form-grid{grid-template-columns:1fr}.booking-form-actions{flex-direction:column-reverse}.booking-form-actions .button{width:100%}.partner-calendar-card{display:block}.lead-map-card iframe{height:180px}}


/* =========================================================
   Update 024 — tidy lead actions, full map preview, right notes
   ========================================================= */
.lead-more-button{
  width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important;
  padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  line-height:1!important;font-size:17px!important;letter-spacing:1px!important;color:#7b8185!important;
  transform:translateY(-1px);
}
.lead-more-button:hover{background:#f5f1ed!important;border-radius:50%!important;color:#2d3236!important}
.lead-more-button:focus-visible{outline:2px solid rgba(255,90,79,.35);outline-offset:2px;border-radius:50%!important}

.lead-map-card{margin-top:14px;min-height:210px;border-radius:14px;background:#f6f4f1}
.lead-map-card iframe{height:210px!important;filter:none!important}
.lead-map-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 11px;border-top:1px solid #e8e0d9;background:#fff}
.lead-map-caption span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--md-muted);font-size:.62rem}
.lead-map-caption a{flex:0 0 auto;color:var(--md-coral-dark);font-size:.62rem;font-weight:850;text-decoration:none}

.lead-notes-right{display:grid;gap:7px;margin-top:10px;padding-top:10px;border-top:1px solid #eee7e1}
.lead-notes-right .lead-private-notes{display:grid;gap:6px}
.lead-notes-right .lead-private-notes>span{font-size:.64rem;color:var(--md-muted);font-weight:850;text-transform:uppercase;letter-spacing:.07em;text-align:left}
.lead-notes-right textarea{width:100%;min-height:86px;resize:vertical;overflow-y:auto;overflow-x:hidden;border:1px solid #e1d9d2;border-radius:11px;padding:10px 11px;background:#fff;font:inherit;font-size:.7rem;line-height:1.45;color:var(--md-ink);box-sizing:border-box}
.lead-notes-right textarea:focus{outline:0;border-color:var(--md-coral);box-shadow:0 0 0 3px rgba(255,90,79,.08)}
.lead-notes-right .lead-notes-actions{align-items:center}
.lead-notes-right .lead-notes-actions small{font-size:.56rem}
.lead-notes-right .lead-notes-save{font-size:.62rem}
.lead-notes-only{display:none!important}
.lead-reinstate-button{display:none!important}

@media(max-width:700px){
  .lead-map-card,.lead-map-card iframe{min-height:190px;height:190px!important}
  .lead-map-caption{align-items:flex-start;flex-direction:column}
  .lead-notes-right{margin-top:12px}
}


/* =========================================================
   Update 025 — accepted-only maps, envelope messages, contact card
   ========================================================= */
.lead-heading-tools{align-items:flex-start}
.lead-heading-quick-actions{display:flex;flex-direction:column;align-items:center;gap:4px;flex:0 0 auto}
.lead-envelope-button{position:relative;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#6e7579;text-decoration:none;background:transparent;transition:.15s}
.lead-envelope-button:hover{background:#f5f1ed;color:var(--md-coral-dark)}
.lead-envelope-button svg{width:18px;height:18px;display:block}
.lead-envelope-button>span{position:absolute;right:-5px;top:-5px;min-width:17px;height:17px;padding:0 4px;border-radius:999px;background:var(--md-coral);color:#fff;font-size:9px;font-weight:900;line-height:17px;text-align:center;box-shadow:0 2px 7px rgba(255,90,79,.28)}
.lead-envelope-button.has-unread{color:var(--md-coral-dark);background:#fff5f3}
.lead-message-link{display:none!important}
.lead-contact-details{display:grid;gap:3px}
.lead-contact-phone{font-weight:750;color:#3e4944!important}
.lead-contact-address{margin-top:5px;padding-top:7px;border-top:1px solid rgba(43,166,106,.14)}
.lead-contact-address small{display:block;color:#738079;font-size:.58rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;margin-bottom:2px}
.lead-contact-address b{display:block;color:#27312c;font-size:.7rem;line-height:1.35}
.lead-contact-address span{display:block!important;color:#515b56!important;font-size:.68rem!important}
/* Keep interactive maps stable; message polling no longer rebuilds lead cards. */
.lead-map-card iframe{background:#eef2ed}

/* =========================================================
   UPDATE 026 — FILTERS / NOTES / MESSAGE BUTTON
   ========================================================= */
.partner-lead-filter-row{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:10px 0 16px;flex-wrap:wrap}.partner-lead-filter-row label{display:flex;align-items:center;gap:7px;color:var(--md-muted);font-size:.67rem;font-weight:850}.partner-lead-filter-row select{min-height:38px;padding:0 34px 0 12px;border:1px solid var(--md-line);border-radius:11px;background:#fff;color:var(--md-ink);font:inherit;font-size:.72rem;font-weight:750;outline:0}.partner-lead-filter-row select:focus{border-color:var(--md-coral);box-shadow:0 0 0 3px rgba(255,90,79,.07)}
.lead-notes-right textarea{height:104px!important;min-height:104px!important;max-height:220px!important}.lead-envelope-button{width:42px!important;height:42px!important;display:grid!important;place-items:center!important}.lead-envelope-button svg{width:24px!important;height:24px!important}.lead-envelope-button span{top:-5px!important;right:-5px!important}
@media(max-width:700px){.partner-lead-filter-row{justify-content:stretch}.partner-lead-filter-row label{flex:1;display:grid;gap:4px}.partner-lead-filter-row select{width:100%}}

/* =========================================================
   UPDATE 026 — PARTNER SETTINGS NAV
   ========================================================= */
.partner-settings-link,.partner-logout-link{white-space:nowrap}.partner-logout-link{border:0;background:transparent;color:#a83c34!important;font:inherit;font-size:.8rem!important;font-weight:800!important;cursor:pointer;padding:0}
