/* Desa Properties — unified interface layer. Visual rules only. */
:root{
  --bg:#f7f8fa!important;--card:#fff!important;--card2:#fafbfc!important;
  --ink:#202831!important;--muted:#687680!important;--line:#e2e7eb!important;
  --line2:#edf0f2!important;--dark:#282d32!important;--dark2:#20252a!important;
  --green:#556b76!important;--green2:#edf2f4!important;--blue:#edf2f5!important;
  --gold:#a88e78!important;--gold-deep:#786552!important;--soft:#f3f6f7!important;
  --shadow:0 2px 12px rgba(27,39,48,.035)!important;
  --shadow-soft:0 1px 4px rgba(27,39,48,.025)!important;
  --radius:10px!important;--radius-sm:8px!important;--sidebar:226px!important;
}
html,body,.app{background:#f7f8fa!important;color:#202831!important}
body{font-size:13px!important;line-height:1.48!important}
button,input,select,textarea{font-size:13px!important}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid #869aa5!important;outline-offset:2px}
::selection{background:#dbe5e9;color:#202831}
.desktop-sidebar{
  background:#292e33!important;padding:20px 11px 14px!important;
  box-shadow:none!important;border-right:1px solid #20252a!important;
}
.brand{min-height:62px!important;padding:0 11px 18px!important}
.brand img{width:172px!important}
.nav{gap:3px!important}
.nav button{
  min-height:37px!important;padding:8px 11px!important;border-radius:7px!important;
  font-size:12px!important;font-weight:500!important;color:#b9c0c5!important;
  transition:background .16s,color .16s!important;transform:none!important;
}
.nav button i{width:18px!important;font-size:15px!important;opacity:.78!important}
.nav button:hover{background:#363d43!important;color:#fff!important;transform:none!important}
.nav button.active{background:#414950!important;color:#fff!important;border-color:transparent!important;transform:none!important}
.nav .badge{border-radius:5px!important;background:#505960!important}
.side-quote{font-size:9px!important;color:#a7b0b6!important;letter-spacing:.09em!important}
.desktop-main{padding:20px clamp(20px,3vw,42px) 70px!important;min-width:0!important}
.topbar{position:relative!important;background:transparent!important;backdrop-filter:none!important;
  padding:0 0 17px!important;margin-bottom:20px!important;border-bottom:1px solid #e2e7eb!important}
.topbar .search,.search{box-shadow:none!important;background:#fff!important;border:1px solid #dce3e7!important;border-radius:8px!important;
  min-height:38px!important;padding:7px 11px!important}
.search:focus-within{border-color:#91a5af!important;box-shadow:0 0 0 3px rgba(85,107,118,.09)!important}
.profile{box-shadow:none!important;border-radius:8px!important;border-color:#e2e7eb!important;padding:5px 8px!important;background:#fff!important}
.avatar,.leadavatar{background:#e9eef0!important;color:#40515a!important;box-shadow:none!important;border-radius:8px!important}
.avatar{height:30px!important;width:30px!important}
.view{animation:none!important;min-width:0}
.page-head,.pipeline-head{gap:14px!important;margin-bottom:18px!important;align-items:flex-end!important}
.page-head h2,.pipeline-head h2,.settings-header h2{
  font-family:Inter,system-ui,sans-serif!important;font-size:24px!important;line-height:1.2!important;
  letter-spacing:-.035em!important;font-weight:700!important;color:#202831!important;margin:3px 0 4px!important;
}
.page-head p,.pipeline-head p,.settings-header p{font-size:12px!important;line-height:1.5!important;color:#687680!important;margin:0!important}
.section-eyebrow{font-size:10px!important;font-weight:650!important;letter-spacing:.08em!important;color:#788690!important}
.dashboard-welcome{padding:0!important}
.dashboard-welcome h1{font-size:25px!important;line-height:1.2!important;letter-spacing:-.035em!important;color:#202831!important}
.dashboard-welcome p{font-size:12px!important;color:#687680!important}
.dashboard-shell{gap:14px!important}
.dashboard-actions{gap:7px!important}
.btn,.toolbar button,.toolbar select,.report-toolbar button,.report-toolbar select,
.client-actions a,.property-open-btn,.property-edit-btn{
  min-height:34px!important;padding:7px 11px!important;border:1px solid #dce3e7!important;
  border-radius:7px!important;background:#fff!important;color:#34434b!important;
  box-shadow:none!important;font-size:12px!important;font-weight:600!important;
  text-decoration:none;transition:background .15s,border-color .15s,color .15s!important;
  transform:none!important;
}
.btn:hover,.toolbar button:hover,.client-actions a:hover,.property-open-btn:hover,
.property-edit-btn:hover{background:#f2f5f6!important;border-color:#bfcbd1!important;transform:none!important;box-shadow:none!important}
.btn.primary,.login-card button[type=submit]{background:#343d44!important;border-color:#343d44!important;color:#fff!important;box-shadow:none!important}
.btn.primary:hover,.login-card button[type=submit]:hover{background:#222a30!important;border-color:#222a30!important}
.btn.sand{background:#786552!important;border-color:#786552!important;color:#fff!important}
.kpis,.reports-grid{gap:10px!important;margin-top:12px!important}
.kpi,.mini-kpi,.lead-stat{
  min-height:0!important;padding:14px 16px!important;background:#fff!important;border:1px solid #e2e7eb!important;
  border-radius:9px!important;box-shadow:none!important;backdrop-filter:none!important;
}
.kpi:after,.kpi:before{display:none!important}
.kpi span,.mini-kpi span,.lead-stat span{font-size:11px!important;font-weight:500!important;color:#687680!important}
.kpi strong{font-size:24px!important;font-weight:700!important;line-height:1.2!important;margin:5px 0 7px!important;color:#202831!important}
.delta,.status,.note-pill,.role-pill,.integration-status,.pipeline-chip{
  font-size:10px!important;font-weight:600!important;padding:3px 7px!important;border-radius:5px!important;
  box-shadow:none!important;
}
.delta{background:#eef3f4!important;color:#536b75!important;border:0!important}
.grid2,.detailgrid2{gap:12px!important;margin-top:12px!important}
.panel,.calendarbox,.table-card,.client-section,.report-summary .panel,.settings-card,.settings-nav,
.appointment-shell,.appointment-card,.property,.property-detail-main,.property-detail-aside{
  border:1px solid #e2e7eb!important;border-radius:9px!important;background:#fff!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
.panel,.client-section{padding:16px!important}
.panelhead,.client-section-head{margin-bottom:10px!important;padding-bottom:10px!important;border-bottom:1px solid #edf0f2!important}
.panelhead h2,.client-section-head h3,.settings-card-head h3{font-size:14px!important;font-weight:650!important;letter-spacing:-.015em!important;color:#27313a!important}
.panelhead button{color:#556b76!important}
.task,.leadrow,.note-row,.team-row,.activity-row,.settings-row{border-color:#edf0f2!important}
.grow b,.lead-name,.settings-row b,.team-member b{font-size:12px!important}
.grow small,.lead-sub,.settings-row small,.team-member small{font-size:11px!important;line-height:1.45!important}
.toolbar,.report-toolbar{gap:8px!important;margin-bottom:12px!important}
.toolbar .search,.report-toolbar .search{min-width:180px!important}
input,select,textarea,.sheet input,.sheet select,.sheet textarea{
  border:1px solid #dce3e7!important;border-radius:7px!important;background:#fff!important;
  color:#26323a!important;box-shadow:none!important;
}
input:focus,select:focus,textarea:focus{border-color:#91a5af!important;box-shadow:0 0 0 3px rgba(85,107,118,.09)!important;outline:0!important}
input::placeholder,textarea::placeholder{color:#98a3a9!important}
.tablewrap{overflow:auto!important}
.table{border-collapse:collapse!important}
.table th,.table thead th{background:#f8fafb!important;color:#6c7981!important;font-size:10px!important;
  font-weight:650!important;letter-spacing:.04em!important;padding:11px 12px!important;border-bottom:1px solid #e2e7eb!important}
.table td{font-size:12px!important;padding:11px 12px!important;border-bottom:1px solid #edf0f2!important;line-height:1.45!important}
.table tbody tr:hover{background:#f8fafb!important}
.lead-overview-stats,.pipeline-stats,.pipeline-summary{gap:10px!important}
.pipeline-board,.pipeline{gap:10px!important}
.pipeline-stage,.pipeline-column,.col{background:#f2f5f6!important;border:1px solid #e3e9ec!important;border-radius:9px!important;box-shadow:none!important;padding:9px!important}
.pipeline-card,.card{background:#fff!important;border:1px solid #e2e7eb!important;border-radius:7px!important;
  padding:11px!important;box-shadow:none!important;margin-bottom:8px!important}
.pipeline-card:hover,.card:hover{border-color:#c5d0d6!important;box-shadow:none!important;transform:none!important}
.pipeline-card-name b{font-size:12px!important}.pipeline-card-sub,.pipeline-card-name small{font-size:11px!important}
.pipeline-stage-head{padding:3px 4px 10px!important}
.appointment-card{padding:12px 14px!important;transition:border-color .15s!important}
.appointment-card:hover{transform:none!important;box-shadow:none!important;border-color:#c5d0d6!important}
.appointment-time{background:#f1f4f5!important;color:#465b64!important;border-radius:7px!important}
.appointment-body h3{font-size:13px!important}.appointment-body p,.appointment-meta span{font-size:11px!important}
.property-grid{gap:12px!important}
.property{overflow:hidden!important;transition:border-color .15s!important}
.property:hover{border-color:#c5d0d6!important;transform:none!important;box-shadow:none!important}
.property-img{height:180px!important;min-height:0!important;background-size:cover!important}
.property-body{padding:14px!important}.property-body b{font-size:14px!important}
.property-body p,.property-description{font-size:11px!important;line-height:1.5!important}
.property-price,.property-body strong{font-size:18px!important}
.property-facts{border-color:#edf0f2!important}
.property-card-actions{border-color:#edf0f2!important}
.client-topbar{margin-bottom:12px!important;padding:0 0 14px!important;background:transparent!important;
  border:0!important;border-bottom:1px solid #e2e7eb!important;border-radius:0!important;box-shadow:none!important}
.client-header h1{font-size:23px!important;color:#202831!important}
.client-header p,.client-kv-row span{font-size:11px!important}
.client-layout{gap:12px!important}
.client-section{margin-bottom:12px!important}
.client-kv-row{padding:8px 0!important}.client-kv-row b{font-size:12px!important}
.note-entry,.match-card,.match-linked{background:#fafbfc!important;border:1px solid #e2e7eb!important;border-radius:7px!important;box-shadow:none!important}
.note-entry p,.activity-row p{font-size:12px!important}.note-entry time,.activity-row small{font-size:10px!important}
.settings-shell{gap:16px!important}
#settings .settings-header{min-height:0!important;background:transparent!important;border:0!important;border-bottom:1px solid #e2e7eb!important;
  border-radius:0!important;padding:0 0 15px!important;margin-bottom:16px!important;box-shadow:none!important}
#settings .settings-header h2{font-size:24px!important}
#settings .settings-nav{padding:6px!important}
#settings .settings-nav button{color:#54636c!important;border-radius:6px!important;font-size:12px!important}
#settings .settings-nav button:hover{background:#f2f5f6!important;color:#27313a!important}
#settings .settings-nav button.active{background:#eaf0f2!important;color:#27313a!important;box-shadow:none!important}
#settings .settings-nav button.active i{color:#27313a!important}
#settings .settings-card{overflow:hidden!important}
#settings .settings-card-head{background:#fafbfc!important;border-bottom:1px solid #e2e7eb!important}
#settings .settings-row{padding:12px 15px!important}
#settings .settings-row:hover{background:#fafbfc!important}
#settings .settings-row-icon{border-radius:7px!important;background:#eef2f4!important;color:#536b75!important}
.report-toolbar,.campaign-summary,.report-summary{box-shadow:none!important}
.campaign-summary-row{border-color:#edf0f2!important}
.sheet,.modal-card,.appointment-detail-sheet{background:#fff!important;border:1px solid #dce3e7!important;
  border-radius:11px!important;box-shadow:0 20px 60px rgba(18,30,38,.18)!important}
.modal{background:rgba(26,36,44,.50)!important;backdrop-filter:blur(3px)!important}
.sheet h2,.modal-card h2{font-size:20px!important;letter-spacing:-.025em!important}
.formgrid{gap:12px!important}
.property-detail-hero{border-radius:9px!important;box-shadow:none!important}
.property-detail-overlay h2{font-size:clamp(30px,4vw,48px)!important}
.property-gallery-thumb{border-radius:6px!important}
.property-detail-layout{gap:12px!important}
.property-detail-intro,.property-detail-section,.property-detail-aside{padding:20px!important}
.property-dossier-block{border-radius:7px!important;background:#fafbfc!important}
.property-detail-facts{border-radius:7px!important}
.login-card{border-radius:12px!important;box-shadow:0 20px 70px rgba(0,0,0,.18)!important;backdrop-filter:none!important}
.login-logo{border-radius:12px 12px 0 0!important}
.login-card h1{font-size:25px!important;line-height:1.2!important}
.login-card input{min-height:40px!important}
.mobile-top,.mobile-bottom{box-shadow:none!important}
@media(max-width:1080px){
  .desktop-main{padding-left:20px!important;padding-right:20px!important}
  .client-layout,.property-detail-layout{grid-template-columns:1fr!important}
}
@media(max-width:800px){
  .desktop-main{margin-left:0!important;width:100%!important;padding:72px 14px 96px!important}
  .mobile-top{background:#fff!important;border-bottom:1px solid #e2e7eb!important}
  .mobile-bottom{background:#fff!important;border:1px solid #e2e7eb!important;border-radius:10px!important}
  .mobile-bottom button{font-size:10px!important}
  .fab{background:#343d44!important;box-shadow:0 5px 16px rgba(20,30,38,.17)!important}
  .topbar{display:none!important}
  .page-head,.pipeline-head{align-items:flex-start!important}
  .page-head h2,.pipeline-head h2{font-size:22px!important}
  .kpis,.reports-grid,.property-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .panel,.client-section{padding:14px!important}
  .toolbar,.report-toolbar{flex-wrap:wrap!important}
  .toolbar .search,.report-toolbar .search{flex:1 1 100%!important;min-width:100%!important}
  .settings-shell{grid-template-columns:1fr!important}
  .settings-nav{position:static!important;overflow:auto!important}
  .property-detail-hero{min-height:300px!important}
}
@media(max-width:520px){
  .desktop-main{padding-left:12px!important;padding-right:12px!important}
  .kpis,.reports-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .kpi{padding:11px!important}
  .kpi strong{font-size:21px!important}
  .property-grid{grid-template-columns:1fr!important}
  .dashboard-actions .btn{flex:1 1 auto!important}
  .client-actions{display:flex!important;overflow:auto!important}
  .client-actions a{white-space:nowrap}
  .formgrid,.property-editor-grid{grid-template-columns:1fr!important}
  .property-detail-intro,.property-detail-section,.property-detail-aside{padding:16px!important}
  .property-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* White, compact layout requested after design review. */
:root{--bg:#fff!important;--card2:#fff!important;--soft:#f8f9fa!important}
html,body,.app,.desktop-main,.view,#settings{background:#fff!important}
.desktop-main{padding-top:14px!important;padding-bottom:48px!important}
.topbar{padding-bottom:11px!important;margin-bottom:15px!important}
.topbar .search,.search{min-height:34px!important;height:34px!important}
.topbar .profile{height:34px!important}
.page-head,.pipeline-head{margin-bottom:12px!important;gap:8px!important}
.page-head h2,.pipeline-head h2,#settings .settings-header h2{font-size:21px!important;line-height:1.18!important}
.page-head p,.pipeline-head p{font-size:11px!important}
.section-eyebrow{font-size:9px!important}
#dashboard .dashboard-welcome{padding:0 0 12px!important;border:0!important;border-bottom:1px solid #e5eaed!important;
  border-radius:0!important;background:#fff!important;box-shadow:none!important}
#dashboard .dashboard-welcome h1{font-size:21px!important;letter-spacing:-.025em!important}
#dashboard .dashboard-welcome p{font-size:11px!important}
.dashboard-shell{gap:10px!important}
.dashboard-actions .btn{height:32px!important;min-height:32px!important}
.kpis,.reports-grid{gap:0!important;margin-top:5px!important;background:#fff!important;
  border:1px solid #e5eaed!important;border-radius:8px!important;overflow:hidden!important}
.kpis .kpi,.reports-grid .kpi{border:0!important;border-right:1px solid #e5eaed!important;border-radius:0!important;
  padding:11px 14px!important;min-height:78px!important;box-shadow:none!important}
.kpis .kpi:last-child,.reports-grid .kpi:last-child{border-right:0!important}
.kpi strong{font-size:21px!important;margin:3px 0 3px!important}
.kpi span{font-size:10px!important}
.delta{padding:2px 5px!important}
.grid2,.detailgrid2{gap:10px!important;margin-top:10px!important}
.panel,.client-section{padding:13px!important}
.panelhead,.client-section-head{padding-bottom:7px!important;margin-bottom:5px!important}
.panelhead h2,.client-section-head h3{font-size:13px!important}
.task,.leadrow,.note-row,.team-row{padding:8px 0!important}
.table th,.table thead th,.table td{padding:8px 10px!important}
.toolbar,.report-toolbar{margin-bottom:9px!important}
.lead-overview-stats,.pipeline-stats,.pipeline-summary{gap:7px!important;margin-bottom:10px!important}
#leads .lead-stat,.lead-stat,.mini-kpi{padding:10px 12px!important;border-radius:7px!important}
.lead-stat strong,.mini-kpi strong{font-size:19px!important}
.pipeline-stage,.pipeline-column{padding:7px!important;min-width:248px!important}
.pipeline-card,.card{padding:9px!important;margin-bottom:6px!important}
.appointment-card{padding:9px 11px!important}
.property-grid{gap:10px!important}
.property-img{height:154px!important;min-height:154px!important}
.property-body{padding:11px!important}
.property-description{min-height:0!important;margin:7px 0 9px!important}
.client-topbar{margin-bottom:10px!important}
.client-header h1{font-size:21px!important}
.client-section{margin-bottom:10px!important}
.settings-shell{gap:11px!important}
#settings .settings-header{padding-bottom:11px!important;margin-bottom:11px!important}
#settings .settings-row{padding:9px 12px!important}
#settings .settings-card-head{padding:10px 12px!important}
.property-detail-hero{height:min(40vh,390px)!important;min-height:240px!important}
.property-detail-overlay h2{font-size:clamp(26px,3.5vw,40px)!important}
.property-detail-intro,.property-detail-section,.property-detail-aside{padding:16px!important}
.sheet,.modal-card{padding:18px!important}
@media(max-width:800px){
  .desktop-main{padding:63px 12px 88px!important}
  .view{padding:0!important}
  .page-head h2,.pipeline-head h2{font-size:20px!important}
  .kpis,.reports-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .kpis .kpi:nth-child(2),.reports-grid .kpi:nth-child(2){border-right:0!important}
  .kpis .kpi:nth-child(-n+2),.reports-grid .kpi:nth-child(-n+2){border-bottom:1px solid #e5eaed!important}
  .panel,.client-section{padding:12px!important}
}
@media(max-width:520px){
  .desktop-main{padding-left:10px!important;padding-right:10px!important}
  .kpis .kpi,.reports-grid .kpi{padding:9px 10px!important;min-height:70px!important}
  .kpi strong{font-size:19px!important}
  .property-grid{grid-template-columns:1fr!important}
}
