/* Structural adapters for preserved application contracts. Palette and typography: Frest. */
html[data-theme]{
 --font-panel:"primary-font";--p-primary:var(--bs-primary);--p-primary-hover:var(--bs-primary);
 --p-on-primary:var(--bs-white);--p-secondary:var(--bs-secondary);--p-bg:var(--bs-body-bg);
 --p-surface:var(--bs-white);--p-subtle:var(--bs-body-bg);--p-hover:rgba(var(--bs-primary-rgb),.08);
 --p-text:var(--bs-body-color);--p-muted:var(--bs-secondary);--p-line:var(--bs-border-color);
 --p-active:var(--bs-success);--p-active-bg:rgba(var(--bs-success-rgb),.16);
 --p-warning:var(--bs-warning);--p-warning-bg:rgba(var(--bs-warning-rgb),.16);
 --p-danger:var(--bs-danger);--p-danger-bg:rgba(var(--bs-danger-rgb),.16);
 --p-info:var(--bs-info);--p-info-bg:rgba(var(--bs-info-rgb),.16);--p-ring:var(--bs-primary);
 --p-transparent:transparent;--p-overlay:rgba(var(--bs-black-rgb),.5);
 --p-shadow-color:rgba(var(--bs-black-rgb),.1);--p-shadow:0 2px 6px var(--p-shadow-color);--p-radius:.5rem;
 --chart-1:var(--bs-success);--chart-2:var(--bs-warning);--chart-3:var(--bs-primary);--chart-4:var(--bs-info);--chart-5:var(--bs-danger);--chart-6:var(--bs-secondary);
 --quick-1-bg:var(--p-active-bg);--quick-2-bg:var(--p-warning-bg);--quick-3-bg:rgba(var(--bs-primary-rgb),.16);--quick-4-bg:var(--p-info-bg);
}
html[data-theme=dark]{--p-surface:#283144;--p-muted:#a1b0cb;}
html[data-theme]{--frest-ink:#000000;}
body.vozooh.vozooh-auth{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;}
body.vozooh .cu-login-frame{display:block;max-width:440px;border:0;border-radius:.5rem;box-shadow:var(--p-shadow);}
body.vozooh .cu-login-form{padding:1.5rem;}
body.vozooh .cu-login-brand{padding:1.25rem;gap:.5rem;}
body.vozooh .cu-login-brand img{width:64px;height:64px;}
body.vozooh .cu-login-brand h2{font-size:1.125rem;margin:0;}
body.vozooh .cu-login-brand p{font-size:.875rem;}
body.vozooh.frest-public{min-height:100vh;background:var(--bs-body-bg);}
body.vozooh.frest-public .frest-public-shell{display:block;width:100%;min-width:0;max-width:1140px;margin-inline:auto;}
body.vozooh.frest-public .frest-public-shell>form{width:100%;min-width:0;}
body.vozooh.frest-public .frest-public-shell .container{width:100%;max-width:100%;}
body.vozooh.frest-public .frest-public-shell .row .btn{min-height:44px;white-space:normal;width:100%;}
body.vozooh.frest-public .frest-public-shell img{max-width:100%!important;}
@media(max-width:767.98px){body.vozooh.frest-public .card-body>.row>div{margin-bottom:.5rem;}body.vozooh.frest-public .frest-public-shell .container{padding-inline:12px;}body.vozooh.frest-public .frest-public-shell .card-body{padding:1rem;}}
body.vozooh .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
body.vozooh :is(.btn-primary,.btn-success,.btn-warning,.btn-danger,.btn-info){color:var(--frest-ink);}
body.vozooh :is(.bg-label-primary,.bg-label-success,.bg-label-warning,.bg-label-danger,.bg-label-info){color:var(--p-text)!important;}
body.vozooh .vz-traffic-status{color:var(--p-text);}
body.vozooh{font-family:"primary-font";background:var(--bs-body-bg);color:var(--bs-body-color);font-size:.9375rem;}
body.vozooh :is(input,select,textarea,button,h1,h2,h3,h4,h5,h6,.btn,.dropdown-menu,table,.badge){font-family:"primary-font";}
body.vozooh .bx{font-family:boxicons!important;font-size:1.375rem;}
body.vozooh .vz-icon{display:inline-block;vertical-align:middle;flex-shrink:0;line-height:1;width:1.375rem;height:1.375rem;}
body.vozooh .content-wrapper{min-width:0;}
body.vozooh .content-wrapper>.content{padding:1.5rem;min-width:0;}
body.vozooh .content-wrapper>.content>.container-fluid{padding:0;max-width:1600px;margin-inline:auto;}
body.vozooh .layout-page{min-width:0;}
body.vozooh #layout-navbar{position:sticky;top:0;z-index:1075;margin:0;width:100%;border-radius:0;}
body.vozooh #layout-menu{z-index:1085;}
body.vozooh #side-menu{padding-inline:0;}
body.vozooh #side-menu .menu-link{min-height:44px;}
body.vozooh .layout-overlay{z-index:1084;}
body.vozooh .navbar-brand{color:inherit;font-size:1rem;font-weight:600;}
body.vozooh .frest-notifications{width:min(340px,calc(100vw - 32px));}
body.vozooh .noti-scroll{max-height:350px;overflow:auto;}
body.vozooh .dropdown-header{white-space:normal;overflow-wrap:anywhere;}
body.vozooh .frest-mobile-nav{display:none;}
body.vozooh .btn,body.vozooh .vz-icon-button{min-width:44px;min-height:44px;}
body.vozooh .btn{border-radius:.25rem;font-weight:500;}
body.vozooh .btn-icon{padding:.5rem;display:inline-flex;justify-content:center;align-items:center;}
body.vozooh :is(.vd-card,.plan-card-modern,.payment-card){border:0;border-radius:.5rem;box-shadow:var(--p-shadow);background:var(--p-surface);}
body.vozooh .plan-card-modern{padding:1.5rem;}
body.vozooh .vd-kpi{border-inline-start:3px solid var(--vd-color);border-top:0;}
body.vozooh .vd-quick a{border:0;border-radius:.375rem;}
body.vozooh .plan-card-modern.vz-plan-featured{border:1px solid var(--bs-primary);background:var(--p-surface);}
body.vozooh :is(.plan-card-icon,.vz-payment-label){border-radius:.375rem;}
body.vozooh h1{font-size:1.5rem;font-weight:600;}
body.vozooh h2{font-size:1.25rem;font-weight:600;}
body.vozooh h3{font-size:1.125rem;font-weight:600;}
body.vozooh .form-control,body.vozooh .form-select{min-height:44px;border-radius:.25rem;}
body.vozooh .form-check-input{min-height:0;}
body.vozooh .modal .modal-header{display:flex;align-items:center;}
body.vozooh .modal-header>[data-bs-dismiss=modal]{margin-inline-start:auto;order:2;}
body.vozooh .modal-content{border-radius:.5rem;background:var(--p-surface);}
body.vozooh .modal-title{font-size:1.25rem;}
body.vozooh .modal-footer{gap:.5rem;}
body.vozooh .modal-body{overflow-wrap:anywhere;}
body.vozooh .custom-control{min-height:1.5rem;}
body.vozooh .custom-control-label{cursor:pointer;}
body.vozooh .vz-table-toolbar{background:var(--p-surface);}
body.vozooh table.dataTable thead th.sorting{cursor:pointer;}
body.vozooh table.dataTable thead th.sorting:before,body.vozooh table.dataTable thead th.sorting:after{display:block;}
body.vozooh .dataTables_wrapper{min-width:0;}
body.vozooh .dataTables_wrapper .row{margin-inline:0;}
body.vozooh .badge{border-radius:.25rem;font-weight:500;}
body.vozooh .vd-empty:before{content:none;}
body.vozooh .vd-empty:before{display:none;}
body.vozooh .frest-chart{min-width:0;max-width:100%;direction:ltr;}
html[data-theme]{--frest-chart-grid:var(--bs-border-color);}
html[data-theme=dark]{--frest-chart-grid:#36445d;}
body.vozooh #vd-widgets[data-vz-grid]{grid-auto-rows:auto;}
body.vozooh #vd-widgets #vd-trend>.frest-chart{position:relative;flex:1 1 260px;min-height:260px;width:100%;}
body.vozooh #vd-trend .frest-chart-canvas{position:absolute;inset:0;}
body.vozooh .vd-month-tools{display:flex;flex-wrap:wrap;gap:4px;}
body.vozooh .vd-month-tools button{min-height:44px;}
body.vozooh .vz-purchase-steps{background:var(--p-surface);border-radius:.375rem;padding:1rem;}
body.vozooh .vz-purchase-steps b{background:var(--p-hover);color:var(--p-primary);border-radius:.25rem;}
body.vozooh .footer{position:static;padding:1rem 1.5rem;background:transparent;color:var(--p-muted);}
body.vozooh #preloader{display:none;}
html.layout-menu-collapsed:not(.layout-menu-hover) .frest-user-summary{display:none;}
html.layout-menu-collapsed:not(.layout-menu-hover) .app-brand-text{display:none;}
@media(max-width:1199.98px){
 body.vozooh #layout-navbar{top:0;margin:0;width:100%;border-radius:0;}
 body.vozooh .content-wrapper>.content{padding:1rem;padding-bottom:90px;}
 body.vozooh .frest-mobile-nav{display:flex;position:fixed;bottom:0;inset-inline:0;z-index:1080;justify-content:space-around;gap:4px;padding:8px 4px max(8px,env(safe-area-inset-bottom));background:var(--p-surface);box-shadow:var(--p-shadow);}
 body.vozooh .frest-mobile-nav>a,body.vozooh .frest-mobile-nav>button{display:flex;flex:1;flex-direction:column;gap:4px;align-items:center;justify-content:center;font-size:11px;padding:6px 2px;min-width:0;min-height:48px;border:0;border-radius:.25rem;color:var(--p-text);background:transparent;}
 body.vozooh .frest-mobile-nav [aria-current=page]{background:var(--p-hover);color:var(--p-primary);}
 html.layout-menu-expanded body{overflow:hidden;}
}
@media(max-width:575.98px){body.vozooh .navbar-brand{font-size:.875rem;margin-inline:.25rem!important;}body.vozooh .navbar-nav{gap:0!important;}body.vozooh .vd-grid{gap:1rem;}body.vozooh .modal-dialog{margin:.75rem;}body.vozooh .frest-mobile-nav .bx{font-size:1.25rem;}}

/* Server-rendered legacy badges remain readable before DOM adaptation. */
body.vozooh .badge{color:var(--p-text);}
body.vozooh :is(.badge-success,.badge-soft-success){background:rgba(var(--bs-success-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-warning,.badge-soft-warning){background:rgba(var(--bs-warning-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-danger,.badge-soft-danger){background:rgba(var(--bs-danger-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-info,.badge-soft-info){background:rgba(var(--bs-info-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-primary,.badge-soft-primary){background:rgba(var(--bs-primary-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-secondary,.badge-soft-secondary){background:rgba(var(--bs-secondary-rgb),.16);color:var(--p-text);}
body.vozooh :is(.badge-dark,.badge-soft-dark){background:rgba(var(--bs-dark-rgb),.16);color:var(--p-text);}
