/* Tulip Tower V48.32 — Admin mobile-only responsive audit. Desktop >991.98px untouched. */

@media (max-width: 991.98px){
  html,body.tulip-admin-roboto{max-width:100%;overflow-x:hidden!important}
  @supports (overflow:clip){html,body.tulip-admin-roboto{overflow-x:clip!important}}
  body.tulip-admin-roboto #layout-wrapper,body.tulip-admin-roboto .main-content,
  body.tulip-admin-roboto .page-content,body.tulip-admin-roboto .container-fluid{max-width:100%!important;min-width:0!important}
  body.tulip-admin-roboto img,body.tulip-admin-roboto svg,body.tulip-admin-roboto video,body.tulip-admin-roboto iframe{max-width:100%}
  body.tulip-admin-roboto .card,body.tulip-admin-roboto .row,body.tulip-admin-roboto [class*="col-"]{min-width:0!important}

  /* Admin sidebar stays contained; page itself never drags horizontally. */
  body.tulip-admin-roboto .app-menu.navbar-menu{max-width:min(88vw,340px)!important}
  body.tulip-admin-roboto .navbar-menu .tulip-admin-brand-box-v4827{min-height:94px!important;height:94px!important;padding:8px 14px!important}
  body.tulip-admin-roboto .navbar-menu .tulip-admin-brand-v4827 img{max-width:220px!important;max-height:76px!important}
  body.tulip-admin-roboto .navbar-menu .navbar-nav .nav-link{white-space:normal!important;line-height:1.35!important}
  body.tulip-admin-roboto .navbar-menu .menu-title{font-size:11px!important;letter-spacing:.08em!important}
}

@media (max-width: 767.98px){
  html{font-size:16px!important}
  body.tulip-admin-roboto{font-size:14.5px!important;line-height:1.55!important}

  /* Topbar: balanced controls and no overflow. */
  body.tulip-admin-roboto #page-topbar{left:0!important;right:0!important;width:100%!important}
  body.tulip-admin-roboto #page-topbar .layout-width{max-width:100%!important;padding:0 8px!important}
  body.tulip-admin-roboto #page-topbar .navbar-header{min-height:62px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
  body.tulip-admin-roboto #page-topbar .navbar-header>.d-flex:first-child{min-width:0!important;gap:4px!important}
  body.tulip-admin-roboto #page-topbar .horizontal-logo{display:none!important}
  body.tulip-admin-roboto #topnav-hamburger-icon{width:46px!important;height:46px!important;padding:0!important;margin:0!important;border-radius:12px!important;display:grid!important;place-items:center!important}
  body.tulip-admin-roboto #page-topbar .topbar-user{margin-left:2px!important}
  body.tulip-admin-roboto #page-topbar .topbar-user .btn{padding:6px!important;min-height:44px!important}
  body.tulip-admin-roboto #page-topbar .header-profile-user{width:36px!important;height:36px!important}
  body.tulip-admin-roboto #page-topbar .btn-icon{width:42px!important;height:42px!important}

  /* Main page gutters and typography. */
  body.tulip-admin-roboto .main-content{margin-left:0!important}
  body.tulip-admin-roboto .page-content{padding:78px 10px 24px!important}
  body.tulip-admin-roboto .page-content>.container-fluid{padding-left:0!important;padding-right:0!important}
  body.tulip-admin-roboto .page-title-box,body.tulip-admin-roboto .page-title-box.d-sm-flex{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;margin-bottom:14px!important}
  body.tulip-admin-roboto h1{font-size:25px!important;line-height:1.2!important}
  body.tulip-admin-roboto h2{font-size:21px!important;line-height:1.25!important}
  body.tulip-admin-roboto h3,body.tulip-admin-roboto .card-title{font-size:17px!important;line-height:1.3!important}
  body.tulip-admin-roboto .fs-10{font-size:11.5px!important}
  body.tulip-admin-roboto .fs-11{font-size:12px!important}
  body.tulip-admin-roboto .fs-12{font-size:12.5px!important}
  body.tulip-admin-roboto small,body.tulip-admin-roboto .small{font-size:12px!important;line-height:1.45!important}
  body.tulip-admin-roboto label,body.tulip-admin-roboto .form-label{font-size:13.5px!important;line-height:1.4!important}

  /* Cards and forms breathe evenly without wasting horizontal space. */
  body.tulip-admin-roboto .card{border-radius:14px!important;margin-bottom:12px!important;overflow:hidden}
  body.tulip-admin-roboto .card-header,body.tulip-admin-roboto .card-body,body.tulip-admin-roboto .card-footer{padding-left:13px!important;padding-right:13px!important}
  body.tulip-admin-roboto .card-header{padding-top:13px!important;padding-bottom:13px!important}
  body.tulip-admin-roboto .card-body{padding-top:14px!important;padding-bottom:14px!important}
  body.tulip-admin-roboto .row{--bs-gutter-x:12px!important;--bs-gutter-y:12px!important;margin-left:0!important;margin-right:0!important}
  body.tulip-admin-roboto .row>*{min-width:0!important}
  body.tulip-admin-roboto .form-control,body.tulip-admin-roboto .form-select,body.tulip-admin-roboto .select2-container,
  body.tulip-admin-roboto .select2-selection{width:100%!important;max-width:100%!important;font-size:16px!important}
  body.tulip-admin-roboto .form-control,body.tulip-admin-roboto .form-select{min-height:46px!important}
  body.tulip-admin-roboto textarea.form-control{min-height:120px!important}
  body.tulip-admin-roboto .input-group{width:100%!important;flex-wrap:nowrap!important}
  body.tulip-admin-roboto .btn{min-height:42px;font-size:13.5px!important;white-space:normal!important}
  body.tulip-admin-roboto .d-flex.gap-2,body.tulip-admin-roboto .d-flex.gap-3{flex-wrap:wrap!important}

  /* DataTables/filter controls: stack cleanly; dense table can scroll locally only. */
  body.tulip-admin-roboto .dataTables_wrapper,body.tulip-admin-roboto .table-responsive{width:100%!important;max-width:100%!important;overflow:hidden}
  body.tulip-admin-roboto .dataTables_wrapper .row{gap:8px!important}
  body.tulip-admin-roboto .dataTables_length,body.tulip-admin-roboto .dataTables_filter{width:100%!important;text-align:left!important;margin:0 0 8px!important}
  body.tulip-admin-roboto .dataTables_filter label,body.tulip-admin-roboto .dataTables_length label{display:flex!important;align-items:center!important;gap:8px!important;width:100%!important}
  body.tulip-admin-roboto .dataTables_filter input{flex:1 1 auto!important;width:auto!important;min-width:0!important;margin-left:0!important}
  body.tulip-admin-roboto .table-responsive{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-x:contain!important;border-radius:10px!important}
  body.tulip-admin-roboto .table{margin-bottom:0!important;max-width:none!important}
  body.tulip-admin-roboto .table th,body.tulip-admin-roboto .table td{font-size:12.5px!important;line-height:1.45!important;padding:10px 9px!important;vertical-align:middle!important;white-space:normal!important;overflow-wrap:anywhere!important}
  body.tulip-admin-roboto .table .btn,body.tulip-admin-roboto td .btn{min-height:36px!important;padding:7px 9px!important;font-size:12px!important}

  /* Dropdowns, modals, editors and upload zones. */
  body.tulip-admin-roboto .dropdown-menu{max-width:calc(100vw - 20px)!important}
  body.tulip-admin-roboto .modal-dialog{width:calc(100vw - 20px)!important;max-width:none!important;margin:10px auto!important}
  body.tulip-admin-roboto .modal-content{border-radius:14px!important;overflow:hidden}
  body.tulip-admin-roboto .modal-header,body.tulip-admin-roboto .modal-body,body.tulip-admin-roboto .modal-footer{padding-left:14px!important;padding-right:14px!important}
  body.tulip-admin-roboto .ck-editor,body.tulip-admin-roboto .tox,body.tulip-admin-roboto .note-editor{max-width:100%!important}
  body.tulip-admin-roboto .elfinder{max-width:100%!important;overflow:auto!important}

  /* Admin login mobile: larger readable text and no overflow. */
  body.tt-admin-login-v24{overflow-x:hidden!important;font-size:15px!important}
  body.tt-admin-login-v24 .tulip-admin-login{min-height:100dvh!important;padding:12px!important;overflow-x:hidden!important}
  body.tt-admin-login-v24 .tulip-login-card{width:100%!important;max-width:560px!important;margin:auto!important;border-radius:16px!important}
  body.tt-admin-login-v24 .tulip-login-visual,body.tt-admin-login-v24 .tulip-brand-panel{min-height:220px!important}
  body.tt-admin-login-v24 .tulip-brand-panel{padding:24px 22px!important}
  body.tt-admin-login-v24 .tulip-brand img{width:56px!important;max-height:68px!important}
  body.tt-admin-login-v24 .tulip-brand-copy strong{font-size:19px!important}
  body.tt-admin-login-v24 .tulip-brand-copy small{font-size:10.5px!important;letter-spacing:.12em!important}
  body.tt-admin-login-v24 .tulip-kicker,body.tt-admin-login-v24 .tulip-login-form .form-kicker{font-size:11px!important}
  body.tt-admin-login-v24 .tulip-visual-copy h2{font-size:29px!important}
  body.tt-admin-login-v24 .tulip-visual-copy p{font-size:13.5px!important;line-height:1.65!important}
  body.tt-admin-login-v24 .tulip-admin-meta{font-size:11.5px!important;gap:9px!important}
  body.tt-admin-login-v24 .tulip-login-form{min-height:auto!important;padding:28px 22px!important}
  body.tt-admin-login-v24 .tulip-login-form h1{font-size:29px!important}
  body.tt-admin-login-v24 .tulip-login-form .lead-copy{font-size:13.5px!important}
  body.tt-admin-login-v24 .tulip-login-form .form-label{font-size:13.5px!important}
  body.tt-admin-login-v24 .tulip-login-form .form-control{font-size:16px!important}
  body.tt-admin-login-v24 .tulip-login-form .form-check-label{font-size:13px!important}
  body.tt-admin-login-v24 .tulip-login-btn{font-size:14px!important}
  body.tt-admin-login-v24 .tulip-return{font-size:13px!important}
  body.tt-admin-login-v24 .tulip-login-footnote{font-size:11px!important;line-height:1.5!important;letter-spacing:.04em!important}
}

@media (max-width: 390px){
  body.tulip-admin-roboto .page-content{padding-left:8px!important;padding-right:8px!important}
  body.tulip-admin-roboto .card-header,body.tulip-admin-roboto .card-body,body.tulip-admin-roboto .card-footer{padding-left:11px!important;padding-right:11px!important}
  body.tt-admin-login-v24 .tulip-admin-login{padding:8px!important}
  body.tt-admin-login-v24 .tulip-login-form{padding:24px 18px!important}
}

/* =====================================================================
   V48.33 — ADMIN MOBILE MENU POLISH
   Only active <= 991.98px. Desktop remains unchanged.
   ===================================================================== */
.tulip-admin-menu-label-v4833{display:none}

@media (max-width:991.98px){
  body.tulip-admin-roboto .app-menu.navbar-menu{
    width:min(88vw,332px)!important;
    max-width:min(88vw,332px)!important;
    overflow:hidden!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu #scrollbar,
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-wrapper,
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-mask,
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-content-wrapper,
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-content,
  body.tulip-admin-roboto .app-menu.navbar-menu .container-fluid,
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu #scrollbar,
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-content-wrapper{
    overflow-x:hidden!important;
    overscroll-behavior-x:none!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .simplebar-horizontal{display:none!important}
  body.tulip-admin-roboto .app-menu.navbar-menu .container-fluid{padding:0 10px 26px!important}
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav{padding:0!important;margin:0!important}
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-title{
    margin:4px 0 7px!important;
    padding:8px 10px!important;
    font-size:10.5px!important;
    letter-spacing:.11em!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item{width:100%!important;min-width:0!important;margin:2px 0!important}
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item>.nav-link.menu-link{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:10px 11px!important;
    gap:10px!important;
    border-radius:10px!important;
    white-space:normal!important;
    overflow:hidden!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item>.nav-link.menu-link>i{
    width:22px!important;
    min-width:22px!important;
    margin:0!important;
    text-align:center!important;
    font-size:18px!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item>.nav-link.menu-link>span{
    flex:1 1 auto!important;
    min-width:0!important;
    overflow-wrap:anywhere!important;
    font-size:14px!important;
    line-height:1.3!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item>.nav-link.menu-link[data-bs-toggle="collapse"]::after{
    flex:0 0 auto!important;
    margin-left:auto!important;
    right:auto!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown{
    width:100%!important;
    max-width:100%!important;
    margin:2px 0 5px!important;
    padding:2px 0!important;
    overflow:hidden!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown .nav{
    width:100%!important;
    min-width:0!important;
    padding:2px 0 3px!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown .nav-item,
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown .nav-link{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown .nav-link{
    min-height:41px!important;
    margin:1px 0!important;
    padding:9px 11px 9px 42px!important;
    border-radius:8px!important;
    font-size:13.5px!important;
    line-height:1.35!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .menu-dropdown .nav-link::before{
    left:24px!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .nav-link.active{
    box-shadow:none!important;
  }
}

@media (max-width:767.98px){
  /* Make the mobile Admin menu control explicit instead of an unlabeled icon. */
  body.tulip-admin-roboto #topnav-hamburger-icon.tulip-admin-menu-trigger-v4833{
    width:auto!important;
    min-width:108px!important;
    height:44px!important;
    min-height:44px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    padding:0 12px!important;
    border-radius:11px!important;
  }
  body.tulip-admin-roboto #topnav-hamburger-icon .hamburger-icon{
    width:18px!important;
    height:16px!important;
    flex:0 0 18px!important;
  }
  body.tulip-admin-roboto .tulip-admin-menu-label-v4833{
    display:inline-block!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu{
    width:min(90vw,326px)!important;
    max-width:min(90vw,326px)!important;
  }
  body.tulip-admin-roboto .navbar-menu .tulip-admin-brand-box-v4827{
    min-height:82px!important;
    height:82px!important;
    padding:7px 14px!important;
  }
  body.tulip-admin-roboto .navbar-menu .tulip-admin-brand-v4827 img{
    max-width:205px!important;
    max-height:66px!important;
  }
  body.tulip-admin-roboto .app-menu.navbar-menu .navbar-nav>.nav-item>.nav-link.menu-link{
    min-height:45px!important;
  }

  /* Toolbars/actions wrap rather than widening the page. */
  body.tulip-admin-roboto .card-header>.d-flex,
  body.tulip-admin-roboto .card-body>.d-flex,
  body.tulip-admin-roboto .page-title-box .d-flex,
  body.tulip-admin-roboto .btn-group:not(.dropdown){
    max-width:100%!important;
    flex-wrap:wrap!important;
  }
}

@media (max-width:390px){
  body.tulip-admin-roboto .app-menu.navbar-menu{width:min(92vw,316px)!important;max-width:min(92vw,316px)!important}
  body.tulip-admin-roboto #topnav-hamburger-icon.tulip-admin-menu-trigger-v4833{min-width:102px!important;padding:0 10px!important}
  body.tulip-admin-roboto .tulip-admin-menu-label-v4833{font-size:12.5px!important}
}
