@media(max-width:800px){
  /* Global mobile rhythm */
  html,body{overflow-x:hidden!important}
  body{background:#f4f7f9!important}
  .desktop-main{padding:82px 12px 30px!important;width:100%!important;margin:0!important}
  .view{width:100%!important;min-width:0!important}
  .panel,.calendarbox,.detailbox,.setting,.property,.kpi,.sheet{min-width:0!important;max-width:100%!important}

  /* Mobile header */
  .mobile-top{height:70px!important;padding:8px 12px 8px 14px!important}
  .mobile-logo img{width:124px!important}

  /* Dashboard / report KPI cards: keep 2-up on phones */
  .kpis,.reports-grid,.pipeline-stats,.dashboard-alerts,.report-summary,.lead-overview-stats,.info-grid{
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important
  }
  .kpi{padding:13px!important;min-height:112px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  .kpi span{font-size:9.5px!important;line-height:1.25!important;letter-spacing:.06em!important}
  .kpi strong{font-size:25px!important;line-height:1!important;margin:7px 0 8px!important}
  .delta{font-size:9px!important;padding:4px 7px!important;align-self:flex-start!important}

  /* Page headers and controls */
  .page-head,.pipeline-head,.client-topbar,.panelhead{gap:9px!important}
  .page-head h1,.page-head h2,.pipeline-head h1,.pipeline-head h2,.client-header h1{font-size:23px!important;line-height:1.08!important}
  .toolbar,.report-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}
  .toolbar .search,.report-toolbar .search,.toolbar>.search,.report-toolbar>.search{grid-column:1/-1!important;width:100%!important;min-width:0!important}
  .toolbar select,.toolbar button,.report-toolbar select,.report-toolbar button{width:100%!important;min-width:0!important;min-height:42px!important}
  .search{height:44px!important;padding:8px 11px!important}
  .search input{font-size:16px!important}

  /* Dashboard content */
  .grid2,.calendar-grid,.detailgrid2,.client-layout,.settings,.settings-shell{grid-template-columns:1fr!important;gap:11px!important}
  .panel,.calendarbox,.detailbox{padding:13px!important}
  .task,.leadrow,.note-row,.team-row{gap:9px!important;padding:11px 0!important}
  .task .time,.leadrow .time{max-width:90px!important;white-space:normal!important;text-align:right!important}

  /* Leads */
  #leads .tablewrap{overflow:visible!important;border:0!important;background:transparent!important}
  #leads .table{display:block!important;min-width:0!important;width:100%!important}
  #leads .table thead{display:none!important}
  #leads .table tbody{display:grid!important;gap:10px!important}
  #leads .table tr{display:grid!important;grid-template-columns:1fr!important;gap:5px!important;background:#fff!important;border:1px solid #dfe6eb!important;border-radius:12px!important;padding:13px!important;box-shadow:0 2px 10px rgba(15,23,31,.04)!important}
  #leads .table td{display:block!important;border:0!important;padding:0!important;white-space:normal!important;font-size:12px!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #leads .table td:first-child{font-weight:700!important;font-size:13px!important}
  #leads .lead-main{align-items:center!important}
  #leads .lead-sub{white-space:normal!important;line-height:1.45!important}
  #leads .source-block{margin-top:4px!important}
  #leads .score-cell{max-width:160px!important}
  #leads .next-action{white-space:normal!important}

  /* Lead / client detail */
  .client-topbar{flex-direction:column!important;align-items:stretch!important}
  .client-header{align-items:flex-start!important}
  .client-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;width:100%!important}
  .client-actions a,.client-actions .btn{width:100%!important;min-height:42px!important;justify-content:center!important}
  .client-side{position:static!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .client-header,.client-card,.detail-card{width:100%!important;max-width:100%!important;min-width:0!important}
  .client-section{padding:14px!important}
  .client-section-head{align-items:flex-start!important}
  .client-kv-row{display:grid!important;grid-template-columns:minmax(95px,.45fr) minmax(0,1fr)!important;gap:10px!important;align-items:start!important}
  .client-kv-row b{text-align:left!important;word-break:break-word!important;line-height:1.45!important}
  .match-toolbar{align-items:flex-start!important;gap:8px!important}
  .match-grid{grid-template-columns:1fr!important}
  .match-linked{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .match-status{width:100%!important;display:grid!important;grid-template-columns:1fr auto!important;gap:8px!important}
  .note-add-line{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
  .note-add-line .btn{width:100%!important}

  /* Pipeline */
  .pipeline-board,.pipeline{display:flex!important;gap:10px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scroll-snap-type:x mandatory!important;padding:2px 1px 12px!important;width:100%!important}
  .pipeline-stage,.pipeline .col,.col{min-width:calc(100vw - 42px)!important;max-width:calc(100vw - 42px)!important;scroll-snap-align:start!important;border-radius:13px!important}
  .pipeline-card,.pipeline .card{border-radius:10px!important}
  .pipeline-card-meta{grid-template-columns:1fr!important;gap:8px!important}
  .pipeline-card-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}
  .pipeline-stage-head{position:sticky!important;top:0!important;z-index:2!important}

  /* Appointments */
  .calendar-grid{display:grid!important;grid-template-columns:1fr!important}
  .week{display:grid!important;grid-template-columns:repeat(5,minmax(52px,1fr))!important;gap:6px!important;overflow-x:auto!important;padding-bottom:5px!important}
  .day{padding:8px 5px!important;min-width:52px!important}
  .appointment,.appointment-card{padding:11px!important;display:grid!important;grid-template-columns:62px minmax(0,1fr)!important;gap:9px!important;align-items:start!important}
  .appointment-time{min-width:0!important;flex:none!important}
  .appointment-body{min-width:0!important;flex:1!important}
  .appointment-actions{grid-column:1/-1!important;display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:4px!important}
  .appointment-actions .btn{width:100%!important}
  .appointment-detail-sheet{width:100%!important}
  .appt-detail-grid{grid-template-columns:1fr!important}
  .appt-detail-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}

  /* Properties */
  .property-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
  .property{overflow:hidden!important}
  .property-img{height:116px!important}
  .property-body{padding:10px!important}
  .property-body b{font-size:11px!important;display:block!important}
  .property-body p{font-size:9px!important;line-height:1.4!important;min-height:0!important}
  .property-body strong{font-size:15px!important}
  .property-body .btn{font-size:10px!important;padding:8px!important;width:100%!important}
  .property-actions{display:grid!important;grid-template-columns:1fr!important;gap:6px!important}

  /* Campaigns */
  #campaigns .panel{overflow:visible!important}
  #campaigns .table{display:block!important;min-width:0!important;width:100%!important}
  #campaigns .table thead{display:none!important}
  #campaigns .table tbody{display:grid!important;gap:10px!important}
  #campaigns .table tr{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;background:#fff!important;border:1px solid #e2e9ed!important;border-radius:13px!important;padding:13px!important}
  #campaigns .table td{display:block!important;border:0!important;padding:0!important;white-space:normal!important;min-width:0!important}
  #campaigns .table td:first-child{grid-column:1/-1!important;font-size:14px!important;padding-bottom:5px!important;border-bottom:1px solid #edf2f5!important}
  #campaigns .table td:nth-child(2)::before{content:'Leads';display:block;font-size:9px;color:#819099;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}
  #campaigns .table td:nth-child(3)::before{content:'Hoge intentie';display:block;font-size:9px;color:#819099;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}
  #campaigns .table td:nth-child(4){grid-column:1/-1!important}
  #campaigns .table td:nth-child(4)::before{content:'CPL';display:block;font-size:9px;color:#819099;margin-bottom:4px;text-transform:uppercase;letter-spacing:.06em}

  /* Reports */
  #reports .report-summary{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  #reports .client-kv-row{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;padding:12px 0!important}
  #reports .client-kv-row span{font-size:11px!important;color:#829099!important}
  #reports .client-kv-row b{font-size:14px!important;line-height:1.45!important;text-align:left!important;color:#223039!important}
  #reports .campaign-summary-row{grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:start!important;padding:11px 0!important}
  #reports .campaign-summary-row>span:not(.hide-mobile){grid-column:1/-1!important;text-align:left!important}
  #reports .table{display:block!important;min-width:0!important;width:100%!important}
  #reports .table thead{display:none!important}
  #reports .table tbody{display:grid!important;gap:10px!important}
  #reports .table tr{display:grid!important;grid-template-columns:1fr!important;gap:7px!important;background:#fff!important;border:1px solid #e2e9ed!important;border-radius:13px!important;padding:13px!important}
  #reports .table td{display:block!important;border:0!important;padding:0!important;white-space:normal!important;min-width:0!important}
  #reports .table td:first-child{font-size:11px!important;color:#7b8992!important}

  /* Team */
  #team .team-row{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important}
  #team .team-row>*{min-width:0!important}

  /* Settings */
  #settings .settings,#settings .settings-shell{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  #settings .settings-nav{display:flex!important;gap:6px!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;padding-bottom:3px!important;position:static!important}
  #settings .settings-nav button{flex:0 0 auto!important;white-space:nowrap!important;min-height:40px!important}
  #settings .setting{padding:13px!important;border-radius:11px!important}
  #settings .settings-row{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:10px!important;align-items:start!important}
  #settings .settings-row .integration-status{grid-column:2!important;justify-self:start!important;margin-top:4px!important}
  #settings .settings-header{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  #settings .settings-header .btn{width:100%!important}
  #settings .team-settings-row{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}

  /* Forms / modals */
  .formgrid{grid-template-columns:1fr!important;gap:8px!important}
  input,select,textarea{font-size:16px!important;max-width:100%!important}
  .modal{padding:0!important;align-items:flex-end!important}
  .modal .sheet{width:100%!important;max-width:none!important;max-height:90dvh!important;border-radius:18px 18px 0 0!important;padding:17px 13px calc(18px + env(safe-area-inset-bottom))!important;overflow:auto!important}

  /* Generic tables outside Leads */
  .tablewrap{max-width:100%!important}
  .table th,.table td{font-size:11px!important;padding:10px 9px!important}

  /* Prevent clipping */
  img,svg,canvas{max-width:100%!important}
  .grow,.panelhead>*,.page-head>*,.pipeline-head>*{min-width:0!important}
}

@media(max-width:390px){
  .desktop-main{padding-left:9px!important;padding-right:9px!important}
  .kpis,.reports-grid,.pipeline-stats,.dashboard-alerts,.report-summary,.lead-overview-stats,.info-grid{gap:7px!important}
  .kpi{padding:11px!important;min-height:105px!important}
  .kpi strong{font-size:23px!important}
  .property-grid{grid-template-columns:1fr!important}
  .client-actions{grid-template-columns:1fr 1fr!important}
}
