/* Layout rules shared by both portals. Keep wide data inside its own scroll area. */
html[data-vtx-shell] body{max-width:100%;margin:0}
html[data-vtx-shell] :is(.pc-container,.pc-content,.content-body,.container-fluid,.container-xxl,.card-body,.row>[class*="col-"]){min-width:0;max-width:100%}
html[data-vtx-shell] :is(.pc-content,.content-body){overflow-wrap:anywhere}
html[data-vtx-shell] :is(img,video,canvas,svg){max-width:100%}
html[data-vtx-shell] :is(.input-group,.form-control,.form-select,.select2-container){min-width:0;max-width:100%}
.vtx-table-scroll{display:block;width:100%;max-width:100%;overflow:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;position:relative}
.vtx-table-scroll:focus-visible{outline:2px solid var(--bs-primary,#00b5e2);outline-offset:2px}
.vtx-table-scroll table{margin-bottom:0}.vtx-table-scroll .dataTable :is(th,td){white-space:nowrap}
.vtx-compact-logo{display:none;width:32px;height:32px;object-fit:contain}
.vtx-drawer-backdrop{position:fixed;inset:0;z-index:1025;border:0;background:#0006;cursor:pointer}
html[data-pc-theme="dark"] .notification-item{background:#1d2939!important;color:#e2e8f0;border-color:#334155!important}
@media(min-width:1025px){
 html[data-vtx-shell].vtx-sidebar-compact body .pc-sidebar{width:76px!important;min-width:76px!important;transform:none!important;visibility:visible!important;border-inline-end:1px solid var(--bs-border-color,#334155)}
 html[data-vtx-shell].vtx-sidebar-compact body .pc-header{left:auto!important;right:auto!important;inset-inline-start:76px!important;inset-inline-end:0!important;width:auto!important}
 html[data-vtx-shell].vtx-sidebar-compact body :is(.pc-container,.pc-footer){margin-left:0!important;margin-right:0!important;margin-inline-start:76px!important;width:auto!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .navbar-wrapper{width:100%!important;min-width:0!important;max-width:76px!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar :is(.navbar-content,.simplebar-content-wrapper,.simplebar-content,.pc-navbar){width:100%!important;min-width:0!important;box-sizing:border-box}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .pc-navbar>.pc-item{margin-inline:0!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .pc-link .pc-badge{display:none!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .pc-micon{flex:0 0 24px}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar :is(.pc-mtext,.pc-arrow,.pc-caption,.pc-submenu){display:none!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .pc-navbar>.pc-item>.pc-link{display:flex!important;justify-content:center;padding:12px 0!important;margin:5px 10px!important;min-height:46px;border-radius:12px}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .pc-micon{display:block!important;margin:0!important;width:24px!important;text-align:center;font-size:22px}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .m-header{justify-content:center;padding:16px 0!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .b-brand{font-size:0!important;justify-content:center}
 html[data-vtx-shell].vtx-sidebar-compact .pc-sidebar .b-brand>:not(.vtx-compact-logo){display:none!important}
 html[data-vtx-shell].vtx-sidebar-compact .vtx-compact-logo{display:block}
 html[data-vtx-shell].vtx-sidebar-compact .pc-user-card{width:76px!important;margin:0!important;padding:8px!important;border:0!important;box-shadow:none!important}
 html[data-vtx-shell].vtx-sidebar-compact .pc-user-card .card-body{padding:0!important;justify-content:center}
 html[data-vtx-shell].vtx-sidebar-compact .pc-user-card :is(.flex-grow-1,.dropdown){display:none!important}
}
@media(max-width:1024px){
 html[data-vtx-shell] body .pc-sidebar{width:min(280px,calc(100vw - 48px))!important;max-width:calc(100vw - 48px);left:auto!important;right:auto!important;inset-inline-start:0!important;inset-inline-end:auto!important;top:0!important;bottom:0!important;height:100dvh!important;visibility:hidden;transform:translateX(-105%)!important;z-index:1026}
 html[data-vtx-shell][dir="rtl"] body .pc-sidebar{transform:translateX(105%)!important}
 html[data-vtx-shell] body.portal-sidebar-open .pc-sidebar,html[data-vtx-shell] body .pc-sidebar.mob-sidebar-active{visibility:visible;transform:none!important}
 html[data-vtx-shell] body :is(.pc-container,.pc-footer){margin-left:0!important;margin-right:0!important;width:100%!important}
 html[data-vtx-shell] body .pc-header{left:0!important;right:0!important;width:100%!important}
 html[data-vtx-shell] .pc-header .header-wrapper{flex-wrap:wrap;gap:8px;padding:10px 12px!important;min-width:0}
 html[data-vtx-shell] .pc-content{padding:16px 12px!important}
 html[data-vtx-shell] body .pc-container{top:var(--vtx-header-height,74px)!important}
 html[data-vtx-shell] body .pc-sidebar .navbar-wrapper{height:100%;width:100%!important;min-width:0!important;background:inherit}
 html[data-vtx-shell] :is(.container-xxl,.content-body){padding-inline:0!important}
 html[data-vtx-shell] :is(.top-filter-card,.table-card,.master-control-panel){max-width:100%;padding:16px!important}
 html[data-vtx-shell] :is(.dataTables_wrapper .row,.dataTables_wrapper .dataTables_paginate,.dt-buttons){flex-wrap:wrap;max-width:100%}
 html[data-vtx-shell] .dataTables_wrapper .dataTables_paginate :is(ul,.pagination){flex-wrap:wrap;gap:4px}
 html[data-vtx-shell] :is(.dropdown-notification,.dropdown-user-profile){width:min(350px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important}
 html[data-vtx-shell] .modal-dialog{max-width:calc(100vw - 24px)!important;margin-inline:auto!important}
 html[data-vtx-shell] .modal-content{max-height:calc(100dvh - 24px)}
 html[data-vtx-shell] .modal-body{overflow-y:auto;overscroll-behavior:contain}
 html[data-vtx-shell] :is(.modal-body,.modal-header,.modal-footer).px-5{padding-inline:16px!important}
}
@media(max-width:575px){
 html[data-vtx-shell] :is(.form-control,.form-select){font-size:16px!important}
 html[data-vtx-shell] :is(.btn,.pc-head-link){min-height:40px}
 html[data-vtx-shell] .pc-content .row{--bs-gutter-x:1rem}
 html[data-vtx-shell] :is(.top-filter-card,.master-control-panel) .row>div{flex:0 0 100%;width:100%}
 html[data-vtx-shell] .pc-header .pc-head-link{margin-inline:0!important;padding-inline:8px}
 html[data-vtx-shell] .pc-header .list-unstyled.d-flex{gap:0;flex-wrap:wrap}
 html[data-vtx-shell] .pc-header .header-wrapper>.ms-auto{margin-inline-start:auto!important}
 html[data-vtx-shell] .chat-wrapper{height:calc(100dvh - var(--vtx-header-height,74px) - 36px)!important;min-height:320px!important;max-width:100%;}
 html[data-vtx-shell] .chat-main{min-width:0;max-width:100%}
 html[data-vtx-shell] .message .card{max-width:100%!important}
 html[data-vtx-shell] .nav-stepper{width:100%;border-radius:16px;justify-content:center}
 html[data-vtx-shell] .nav-stepper .nav-link{padding:8px 10px;white-space:normal}
 html[data-vtx-shell] :is(.var-grid-fixed,.stats-grid){grid-template-columns:1fr!important}
 html[data-vtx-shell] :is(.card-header,.card-footer){padding:12px!important}
 html[data-vtx-shell] :is(.m-toast,.vtx-toast){max-width:calc(100vw - 24px);inset-inline-end:12px!important}
}
@media print{.vtx-drawer-backdrop{display:none!important}.vtx-table-scroll{overflow:visible}.vtx-table-scroll .dataTable :is(th,td){white-space:normal}}
@media(prefers-reduced-motion:reduce){html[data-vtx-shell] :is(.pc-sidebar,.pc-header,.pc-container){transition:none!important}}

@media(max-width:700px){html[data-vtx-login] body{overflow-y:auto!important;overflow-x:hidden!important;min-height:100dvh}html[data-vtx-login] .container{max-width:calc(100vw - 24px)!important;margin-inline:auto}html[data-vtx-login] .login-section{padding:24px 18px!important}html[data-vtx-login] :is(input,select){font-size:16px!important}html[data-vtx-login] .login-panel{max-width:100%}}

html[data-vtx-login] body{direction:inherit!important}
@media(max-width:700px){html[data-vtx-login="subscriber"] body{padding:12px!important}html[data-vtx-login="subscriber"] .container{padding:24px 18px!important;max-width:100%!important}html[data-vtx-login="subscriber"] .login-section{padding:0!important}}

@media(max-width:575px){html[data-vtx-shell="manager"] .pc-header .pc-h-item:has(#global-search-wrapper){display:flex!important;flex:1 0 100%;order:10}html[data-vtx-shell="manager"] :is(#global-search-wrapper,.header-search input){width:100%!important}html[data-vtx-shell="manager"] .pc-header .header-wrapper>.ms-auto{flex:1;min-width:0}html[data-vtx-shell="manager"] #global-search-dropdown{min-width:0!important;max-width:calc(100vw - 24px)!important;width:100%!important}html[data-vtx-shell="subscriber"] .pc-header .header-wrapper>.d-flex{flex-wrap:wrap;gap:8px!important;min-width:0}html[data-vtx-shell="subscriber"] .pc-header .fw-semibold{overflow-wrap:anywhere;min-width:0}}

.vtx-sidebar-flyout{position:fixed;z-index:1030;width:248px;max-width:calc(100vw - 100px);max-height:calc(100dvh - 24px);overflow:auto;padding:12px;border:1px solid var(--bs-border-color,#dce3eb);border-radius:14px;background:var(--bs-body-bg,#fff);color:var(--bs-body-color,#172b3a);box-shadow:0 12px 36px #0002}.vtx-sidebar-flyout>strong{display:block;padding:8px 12px}.vtx-sidebar-flyout ul{list-style:none;padding:0;margin:0}.vtx-sidebar-flyout .pc-link{display:block;padding:10px 12px;border-radius:8px;color:inherit;text-decoration:none}.vtx-sidebar-flyout .pc-link:hover,.vtx-sidebar-flyout .pc-link:focus-visible{background:rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary)}.vtx-sidebar-flyout .pc-link.active{background:rgba(var(--bs-primary-rgb),.15);color:var(--bs-primary);font-weight:700}html[data-pc-theme="dark"] .vtx-sidebar-flyout{background:#1d2939;color:#e2e8f0;border-color:#334155}

html[data-pc-theme="dark"] :is(.perm-card,.perm-header,.perm-body,#noSelectAlert,#managersListContainer .list-group-item){background:#1d2939!important;color:#e2e8f0!important;border-color:#334155!important}html[data-pc-theme="dark"] :is(.perm-card .text-dark,.perm-card .section-title,.perm-card .switch-label,#panelTitle){color:#e2e8f0!important}html[data-pc-theme="dark"] .perm-card :is(.switch-desc,.text-muted){color:#9baec7!important}.perm-header{flex-wrap:wrap;gap:12px}.vtx-sidebar-flyout .pc-link{min-height:42px}
