/* v1.0.57 — XAN Destek Ofisi responsive QA / kırılma önleme katmanı
   Amaç: tasarımı yeniden kurmak değil; mevcut bileşenlerin 320px–masaüstü aralığında
   viewport dışına taşmasını, flex/grid min-content genişliklerini ve sabit panel kırılmalarını engellemek. */

:root{
  --dof-safe-left:env(safe-area-inset-left,0px);
  --dof-safe-right:env(safe-area-inset-right,0px);
  --dof-safe-top:env(safe-area-inset-top,0px);
  --dof-safe-bottom:env(safe-area-inset-bottom,0px);
}
html,body{max-width:100%;}
html.dof-layout-overflow,html.dof-layout-overflow body{overflow-x:clip!important;}
.dof-public-body,.dof-ops-body{width:100%;max-width:100%;overflow-x:clip;}
.dof-public-body *, .dof-ops-body *{box-sizing:border-box;}
.dof-public-body img,.dof-public-body video,.dof-public-body canvas,.dof-public-body svg,
.dof-ops-body img,.dof-ops-body video,.dof-ops-body canvas,.dof-ops-body svg{max-width:100%;}

/* Min-content taşmasını kır: grid/flex çocukları hiçbir zaman viewport'u genişletmesin. */
.dof-public-page,.dof-public-shell,.dof-public-primary,.dof-public-copy,.dof-public-form-wrap,.dof-public-media-wrap,
.dof-form-media,.dof-form-media__viewport,.dof-card,.dof-form,.dof-grid,
.dof-ops,.dof-ops-main,.dof-ops-card,.dof-ops-summary,.dof-ops-stats,.dof-dashboard-grid,.dof-daily-center,.dof-daily-columns,
.dof-report-360,.dof-report-360-grid,.dof-report-card,.dof-report-table,.dof-quick-primary,.dof-quick-grid,.dof-quick-card,
.dof-form-links-premium,.dof-link-grid,.dof-link-item,.dof-engine-health,.dof-engine-health-grid,
.dof-lead-detail-head,.dof-lead-detail-grid,.dof-lead-detail-main,.dof-management-grid,.dof-profile-text-grid,
.dof-task-list-360,.dof-task-create-form,.dof-appointment-list,.dof-appointment-form,.dof-activity-form,
.dof-lead-pool,.dof-lead-pool-tools,.dof-mobile-lead-list,.dof-mobile-lead-card{
  min-width:0!important;max-width:100%;
}

.dof-public-body input,.dof-public-body select,.dof-public-body textarea,.dof-public-body button,
.dof-ops-body input,.dof-ops-body select,.dof-ops-body textarea,.dof-ops-body button{
  max-width:100%;
}
.dof-public-body :is(h1,h2,h3,h4,p,span,strong,a,label,small),
.dof-ops-body :is(h1,h2,h3,h4,p,span,strong,a,label,small){overflow-wrap:anywhere;}

/* Tablolar masaüstünde tablo kalır, dar ekranda viewport'u büyütmez. */
.dof-ops-table-wrap,.dof-report-table{max-width:100%;overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;}
.dof-ops-table-wrap table,.dof-report-table table{max-width:none;}

/* Desktop yoğunluğu: kartlar taşmadan çalışır. */
@media (min-width:1181px){
  .dof-ops-main{min-width:0;}
  .dof-ops-summary .dof-ops-stats{grid-template-columns:repeat(5,minmax(0,1fr))!important;}
  .dof-dashboard-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr)!important;}
  .dof-dashboard-grid>.dof-trend-card{grid-column:1/-1!important;}
  .dof-report-360-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* Tablet: masaüstünü küçültmek yerine kontrollü iki kolon. */
@media (min-width:768px) and (max-width:1180px){
  .dof-public-page{padding:clamp(14px,2.2vw,24px)!important;}
  .dof-public-shell,.dof-public-primary{width:100%!important;max-width:100%!important;}
  .dof-public-primary{grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr)!important;gap:18px!important;align-items:start!important;}
  .dof-public-form-wrap,.dof-public-media-wrap{width:100%!important;min-width:0!important;}
  .dof-ops-main{padding:18px!important;}
  .dof-ops-summary .dof-ops-stats,.dof-ops-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .dof-dashboard-grid,.dof-report-360-grid,.dof-quick-primary,.dof-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .dof-dashboard-grid>.dof-trend-card{grid-column:1/-1!important;}
  .dof-daily-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .dof-daily-panel--week{grid-column:1/-1!important;}
  .dof-lead-detail-grid{grid-template-columns:minmax(0,1fr)!important;}
  .dof-management-grid,.dof-profile-text-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .dof-report-table{border-radius:10px;}
}

/* Telefon: tek gerçek mobil kolon; yatay taşma kesin kilit. */
@media (max-width:767px){
  html,body{width:100%;max-width:100%;overflow-x:clip!important;}
  .dof-public-page,.dof-ops-main{
    width:100%!important;max-width:100%!important;
    padding-left:max(10px,var(--dof-safe-left))!important;
    padding-right:max(10px,var(--dof-safe-right))!important;
    margin-left:0!important;margin-right:0!important;
  }
  .dof-public-shell,.dof-public-primary,.dof-public-copy,.dof-public-form-wrap,.dof-public-media-wrap,
  .dof-form-media,.dof-card,.dof-form,.dof-ops,.dof-ops-main,.dof-ops-card,.dof-report-card,
  .dof-lead-detail-head,.dof-lead-detail-grid,.dof-quick-primary,.dof-quick-grid{
    width:100%!important;max-width:100%!important;min-width:0!important;
    margin-left:0!important;margin-right:0!important;left:auto!important;right:auto!important;
    transform:none!important;
  }
  .dof-public-primary,.dof-dashboard-grid,.dof-daily-columns,.dof-report-360-grid,
  .dof-quick-primary,.dof-quick-grid,.dof-management-grid,.dof-profile-text-grid,.dof-lead-detail-grid,
  .dof-form-links-premium,.dof-link-grid{grid-template-columns:minmax(0,1fr)!important;gap:8px!important;}

  /* Formlar: iOS otomatik zoom + min-width taşma önleme. */
  .dof-public-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  .dof-public-body select,.dof-public-body textarea,
  .dof-ops-body input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
  .dof-ops-body select,.dof-ops-body textarea{
    width:100%!important;min-width:0!important;max-width:100%!important;font-size:16px!important;
  }
  .dof-grid{grid-template-columns:minmax(0,1fr)!important;gap:10px!important;}
  .dof-form{width:100%!important;overflow:visible!important;}

  /* Video doğal oranını korurken yatay geometriyi aşmasın. */
  .dof-form-media{display:block!important;justify-self:stretch!important;place-self:auto!important;}
  .dof-form-media__viewport{width:100%!important;max-width:100%!important;margin-inline:auto!important;overflow:hidden!important;}
  .dof-form-media__video{max-width:100%!important;}

  /* KPI: mobilde 2 sütun, tek kalan kart tam satır. */
  .dof-ops-summary .dof-ops-stats,.dof-ops-stats,.dof-funnel-grid,.dof-insight-grid,.dof-engine-health-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;
  }
  .dof-ops-summary .dof-ops-stats>div:last-child:nth-child(odd),
  .dof-engine-health-grid>div:last-child:nth-child(odd){grid-column:1/-1!important;}
  .dof-ops-summary .dof-ops-stats>div,.dof-ops-stats>div{min-width:0!important;}

  /* CRM aksiyonları ve filtreler dokunmatik kullanım için kırılabilir. */
  .dof-lead-pool-head,.dof-lead-pool-tools,.dof-ops-section-head,.dof-ops-summary-head,.dof-report-card-head,
  .dof-form-links-head,.dof-quick-head{min-width:0!important;max-width:100%!important;flex-wrap:wrap!important;}
  .dof-row-actions,.dof-mobile-lead-actions,.dof-daily-row-actions,.dof-link-actions,.dof-lead-detail-actions{
    flex-wrap:wrap!important;max-width:100%!important;
  }
  .dof-crm-filter{width:100%!important;max-width:100%!important;grid-template-columns:minmax(0,1fr)!important;}
  .dof-crm-filter>*{min-width:0!important;max-width:100%!important;}

  /* Raporlar: uzun kampanya/şehir/operator metinleri kartı genişletmesin. */
  .dof-report-card-head{align-items:flex-start!important;}
  .dof-report-card :is(td,th,strong,span,p){overflow-wrap:anywhere;word-break:break-word;}
  .dof-report-table{width:100%!important;max-width:100%!important;}

  /* Alt mobil navigasyon içerikten bağımsız ve safe-area uyumlu. */
  .dof-ops-mobile-bottom{
    left:0!important;right:0!important;width:100%!important;max-width:100%!important;
    padding-left:max(4px,var(--dof-safe-left))!important;
    padding-right:max(4px,var(--dof-safe-right))!important;
    padding-bottom:max(4px,var(--dof-safe-bottom))!important;
  }
  .dof-ops-main{padding-bottom:calc(72px + var(--dof-safe-bottom))!important;}

  /* Bildirim paneli: açıldığında launcher konumundan bağımsız sabit sheet. */
  .dof-center-float.is-open .dof-center-panel{
    position:fixed!important;left:max(6px,var(--dof-safe-left))!important;right:max(6px,var(--dof-safe-right))!important;
    top:max(48px,calc(6px + var(--dof-safe-top)))!important;bottom:calc(72px + var(--dof-safe-bottom))!important;
    width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;transform:none!important;
  }
}

@media (max-width:430px){
  .dof-public-page,.dof-ops-main{padding-left:max(8px,var(--dof-safe-left))!important;padding-right:max(8px,var(--dof-safe-right))!important;}
  .dof-public-shell,.dof-public-primary,.dof-card,.dof-ops-card,.dof-report-card{border-radius:12px!important;}
  .dof-public-brandbar{padding-inline:10px!important;}
  .dof-ops-summary .dof-ops-stats strong,.dof-ops-stats strong{font-size:18px!important;}
  .dof-ops-summary .dof-ops-stats span,.dof-ops-stats span{font-size:9px!important;}
  .dof-lead-detail-actions>a,.dof-lead-detail-actions>button{min-width:0!important;}
}

@media (max-width:359px){
  .dof-public-page,.dof-ops-main{padding-left:max(6px,var(--dof-safe-left))!important;padding-right:max(6px,var(--dof-safe-right))!important;}
  .dof-ops-summary .dof-ops-stats,.dof-ops-stats,.dof-funnel-grid,.dof-insight-grid,.dof-engine-health-grid{gap:5px!important;}
  .dof-ops-summary .dof-ops-stats>div,.dof-ops-stats>div{padding:7px!important;}
  .dof-mobile-lead-actions>a,.dof-mobile-lead-actions>button{font-size:11px!important;padding-inline:7px!important;}
}

/* Kısa yatay telefonlarda paneller ekran yüksekliğini kilitlemesin. */
@media (max-width:900px) and (max-height:520px) and (orientation:landscape){
  .dof-ops-main{padding-bottom:58px!important;}
  .dof-center-float.is-open .dof-center-panel{top:4px!important;bottom:58px!important;}
  .dof-public-primary{align-items:start!important;}
}

@media (prefers-reduced-motion:reduce){
  .dof-public-body *, .dof-ops-body *{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}
}

/* v1.0.57 — Public landing mobile spacing guard: hiçbir eski grid/gap form-video arasını büyütemez. */
@media (max-width:767px){
  .dof-public-body .dof-public-primary{display:flex!important;flex-direction:column!important;gap:0!important;row-gap:0!important}
  .dof-public-body .dof-public-form-wrap{order:1!important;margin-bottom:0!important;padding-bottom:0!important}
  .dof-public-body .dof-public-media-wrap{order:2!important;margin-top:4px!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important;min-height:0!important}
  .dof-public-body .dof-public-form-wrap + .dof-public-media-wrap{margin-top:4px!important}
  .dof-public-body .dof-public-media-wrap:empty{display:none!important}
}

/* v1.0.58 — Final mobile landing order/edge guard. Bu blok dosyanın en sonunda kalmalı. */
@media (max-width:767px){
  .dof-public-body .dof-public-primary{
    display:flex!important;
    flex-direction:column!important;
    gap:4px!important;
    row-gap:4px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  .dof-public-body .dof-public-media-wrap{
    order:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    overflow:clip!important;
  }
  .dof-public-body .dof-public-form-wrap{
    order:2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
  }
  .dof-public-body .dof-public-shell.has-media::before,
  .dof-public-body .dof-public-shell.has-media::after,
  .dof-public-body .dof-public-media-wrap::before,
  .dof-public-body .dof-public-media-wrap::after{
    content:none!important;
    display:none!important;
  }
}


/* v1.0.59 — consent width safety net / MUST STAY LAST */
@media(max-width:767px){
  .dof-public-body .dof-public-form-wrap .dof-consent{
    display:grid!important;
    grid-template-columns:21px minmax(0,1fr)!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  .dof-public-body .dof-public-form-wrap .dof-consent>.dof-consent__text{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    writing-mode:horizontal-tb!important;
    text-orientation:mixed!important;
  }
}
