/* Daftar Nursery V1.0 RC1.2 — final mobile acceptance layer */
:root{--dn-mobile-dock-space:86px}
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
.app-shell,.main-shell,.main-inner,.main-content,.nursery-shell,.fin-shell,.statement-shell{min-width:0}
.main-content>*{min-width:0}
.df-card,.nursery-form-card,.nursery-profile-hero,.fin-section,.fin-filter,.stmt-section,.kpi-card,.kpi-wide{min-width:0}
.table-responsive,.fin-table-wrap,.stmt-table-wrap{display:block;width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
.table-responsive table,.fin-table,.stmt-table{min-width:680px;margin-bottom:0}
.form-control,.form-select,.form-check,.btn,.input-group{max-width:100%}
.btn{white-space:normal}
.modal-content{max-width:100%}
.offcanvas{max-width:92vw}
pre,code{max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere}

@media(max-width:991.98px){
  body{padding-bottom:var(--dn-mobile-dock-space)!important}
  .main-shell,.main-inner,.main-content{width:100%!important;max-width:100%!important;margin-right:0!important}
  .main-content{padding:14px 12px calc(var(--dn-mobile-dock-space) + 18px)!important}
  .flash-wrap{padding:10px 12px 0!important}
  .df-topbar{position:sticky!important;top:0;z-index:1020;padding-inline:14px!important}
  .df-topbar-right,.df-topbar-left{min-width:0}
  .df-topbar-brand{min-width:0}
  .df-topbar-business{display:block;max-width:54vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .nursery-profile-hero .d-flex,.df-page-header .d-flex{min-width:0}
  .nursery-profile-hero h1,.nursery-profile-hero h2,.nursery-profile-hero h3,.nursery-profile-hero h4,.df-page-title{overflow-wrap:anywhere}
  .nursery-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .dn-mobile-dock{padding-bottom:max(6px,env(safe-area-inset-bottom))!important}
  .df-offcanvas{width:min(88vw,310px)!important}
}

@media(max-width:767.98px){
  .row.g-3>[class*="col-md-"],.row.g-3>[class*="col-lg-"],.row.g-3>[class*="col-xl-"],
  .row.g-2>[class*="col-md-"],.row.g-2>[class*="col-lg-"],.row.g-2>[class*="col-xl-"]{width:100%!important}
  .nursery-info-grid,.nursery-check-grid,.nursery-check-grid-2{grid-template-columns:1fr!important}
  .df-page-header,.nursery-profile-hero{border-radius:15px!important}
  .df-page-header{align-items:flex-start!important}
  .df-page-header>.d-flex,.df-page-header .df-page-actions{width:100%;flex-wrap:wrap!important}
  .df-page-title{font-size:1.2rem!important}
  .table-responsive table,.fin-table,.stmt-table{min-width:620px}
  .modal-dialog{margin:.6rem!important;max-width:calc(100% - 1.2rem)!important}
  .modal-content{border-radius:16px!important}
  input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important}
  input[type=file]{width:100%!important}
  .form-actions,.nursery-form-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
  .form-actions>.btn,.nursery-form-actions>.btn{flex:1 1 150px}
  .pagination{flex-wrap:wrap;justify-content:center}
}

@media(max-width:575.98px){
  .main-content{padding-inline:10px!important}
  .flash-wrap{padding-inline:10px!important}
  .df-card,.nursery-form-card,.fin-section,.fin-filter,.stmt-section{border-radius:14px!important}
  .d-flex.justify-content-between{gap:10px}
  .d-flex.justify-content-between:not(.dn-att-child-head):not(.dn-section-title){flex-wrap:wrap}
  .btn-group{display:flex;flex-wrap:wrap!important}
  .btn-group>.btn{border-radius:10px!important;flex:1 1 auto}
  .dn-public-nav{padding-inline:12px!important}
  .dn-login-form-side{padding-inline:18px!important}
}

@media(max-width:430px){
  :root{--dn-mobile-dock-space:82px}
  .main-content{padding-inline:8px!important}
  .df-card,.nursery-form-card,.fin-section,.fin-filter,.stmt-section{padding:12px!important;border-radius:13px!important}
  .df-topbar{padding-inline:9px!important;gap:6px!important}
  .df-topbar-business{max-width:58vw!important;font-size:.82rem!important}
  .df-topbar-date,.df-user-chip,.df-topbar-divider{display:none!important}
  .df-topbar-menu-btn{width:44px!important;height:44px!important;flex:0 0 44px!important}
  .d-flex.flex-wrap.gap-2>.btn,.d-flex.gap-2.flex-wrap>.btn{flex:1 1 130px}
  .dn-mobile-dock{right:7px!important;left:7px!important;bottom:max(7px,env(safe-area-inset-bottom))!important;height:60px!important;border-radius:17px!important}
  .dn-mobile-dock a{font-size:.6rem!important;gap:1px!important}
  .dn-mobile-dock a i{font-size:.95rem!important}
  .df-offcanvas{width:min(92vw,300px)!important}
  .table-responsive table,.fin-table,.stmt-table{min-width:580px}
  .alert{font-size:.78rem}
}

@media(max-width:320px){
  .main-content{padding-inline:6px!important}
  .df-topbar-business{max-width:62vw!important;font-size:.78rem!important}
  .dn-mobile-dock{right:5px!important;left:5px!important}
  .dn-mobile-dock a span{font-size:.56rem!important}
  .dn-mobile-dock a i{font-size:.9rem!important}
  .df-card,.nursery-form-card,.fin-section,.fin-filter,.stmt-section{padding:10px!important}
  .dn-hero{padding:16px!important}
  .dn-hero h1{font-size:1.65rem!important}
}

@media print{
  .dn-mobile-dock,.df-topbar,.sidebar-wrap,.no-print{display:none!important}
  body{padding:0!important;background:#fff!important}
  .main-shell{margin:0!important;width:100%!important}
  .main-content{padding:0!important;max-width:none!important}
  .table-responsive,.fin-table-wrap,.stmt-table-wrap{overflow:visible!important}
}
