:root{
  --fp-primary:#7367f0;
  --fp-primary-dark:#685dd8;
  --fp-primary-soft:#efedff;
  --fp-secondary:#7367f0;
  --fp-warning:#ff9f43;
  --fp-info:#00cfe8;
  --fp-danger:#ea5455;
  --fp-bg:#f8f7fa;
  --fp-card:#fff;
  --fp-text:#2f2b3d;
  --fp-muted:#6f6b7d;
  --fp-border:#e6e6e8;
  --fp-shadow:0 0.25rem 1.125rem rgba(47,43,61,.08);
  --fp-radius:14px;
  --fp-sidebar:270px;
}
*{box-sizing:border-box} html,body{min-height:100%} body{margin:0;background:var(--fp-bg);color:var(--fp-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:.94rem}
a{text-decoration:none}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:var(--fp-sidebar);position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--fp-border);padding:1rem .9rem;overflow-y:auto;z-index:1040}.app-brand{display:flex;align-items:center;gap:.75rem;padding:.4rem .6rem 1.25rem;font-size:1.12rem;font-weight:700;color:var(--fp-text)}.brand-mark{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,var(--fp-primary),#9e95f5);display:grid;place-items:center;color:#fff;font-weight:800}.menu-label{padding:.9rem .85rem .4rem;color:#9b98a5;text-transform:uppercase;font-size:.67rem;font-weight:700;letter-spacing:.08em}.menu-link{display:flex;align-items:center;gap:.8rem;padding:.72rem .85rem;margin:.18rem 0;border-radius:10px;color:#5d596c;font-weight:500}.menu-link:hover{background:#f3f2f5;color:var(--fp-primary)}.menu-link.active{background:linear-gradient(118deg,var(--fp-primary),#9e95f5);color:#fff;box-shadow:0 3px 8px rgba(115,103,240,.28)}.menu-link i{font-size:1.15rem}.app-main{margin-left:var(--fp-sidebar);width:calc(100% - var(--fp-sidebar));min-height:100vh}.app-topbar{height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:1020;background:rgba(248,247,250,.88);backdrop-filter:blur(10px)}.topbar-card{width:100%;height:54px;background:#fff;border:1px solid var(--fp-border);border-radius:12px;box-shadow:var(--fp-shadow);display:flex;align-items:center;justify-content:space-between;padding:.35rem .75rem .35rem 1rem}.app-content{padding:1.5rem;max-width:1600px;margin:0 auto}.page-title{font-size:1.45rem;font-weight:700;margin:0}.page-subtitle{color:var(--fp-muted);margin-top:.2rem}.fp-card{background:var(--fp-card);border:1px solid var(--fp-border);border-radius:var(--fp-radius);box-shadow:var(--fp-shadow)}.fp-card-header{padding:1.05rem 1.15rem;border-bottom:1px solid var(--fp-border);display:flex;align-items:center;justify-content:space-between;gap:1rem}.fp-card-body{padding:1.15rem}.stat-card{padding:1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.stat-label{color:var(--fp-muted);font-size:.82rem}.stat-value{font-size:1.75rem;font-weight:700;line-height:1.1;margin-top:.25rem}.stat-icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;font-size:1.25rem}.bg-soft-primary{background:var(--fp-primary-soft);color:var(--fp-primary)}.bg-soft-purple{background:#efedff;color:#7367f0}.bg-soft-orange{background:#fff2e3;color:#ff9f43}.bg-soft-cyan{background:#e5fbfe;color:#00a9bc}.bg-soft-red{background:#fceaea;color:#ea5455}.bg-soft-blue{background:#e8f3ff;color:#3b82f6}.btn-primary{--bs-btn-bg:var(--fp-primary);--bs-btn-border-color:var(--fp-primary);--bs-btn-hover-bg:var(--fp-primary-dark);--bs-btn-hover-border-color:var(--fp-primary-dark);--bs-btn-active-bg:var(--fp-primary-dark);--bs-btn-active-border-color:var(--fp-primary-dark)}.btn-outline-primary{--bs-btn-color:var(--fp-primary);--bs-btn-border-color:var(--fp-primary);--bs-btn-hover-bg:var(--fp-primary);--bs-btn-hover-border-color:var(--fp-primary)}.form-control,.form-select{border-color:#d9d7dc;border-radius:9px;min-height:42px}.form-control:focus,.form-select:focus{border-color:var(--fp-primary);box-shadow:0 0 0 .18rem rgba(115,103,240,.14)}.form-label{font-size:.84rem;font-weight:600}.table{--bs-table-color:var(--fp-text);margin:0}.table thead th{font-size:.72rem;text-transform:uppercase;letter-spacing:.045em;color:#7b7787;background:#f8f8fa;border-bottom-width:1px;padding:.85rem 1rem;white-space:nowrap}.table td{padding:.88rem 1rem;vertical-align:middle;border-color:#ecebed}.badge-soft-success{background:#e8f5ef;color:#0a7a5a}.badge-soft-danger{background:#fceaea;color:#d83b3e}.badge-soft-warning{background:#fff2e3;color:#d97811}.badge-soft-info{background:#e9f9fb;color:#008d9c}.avatar-circle{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary);font-weight:700}.empty-state{padding:3rem 1rem;text-align:center;color:var(--fp-muted)}.auth-page{min-height:100vh;background:#f8f7fa;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(420px,.8fr)}.auth-visual{position:relative;display:flex;align-items:center;justify-content:center;padding:3rem;background:linear-gradient(135deg,#f3f1ff,#faf9ff);overflow:hidden}.auth-visual:before,.auth-visual:after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}.auth-visual:before{width:340px;height:340px;background:rgba(115,103,240,.10);left:-80px;bottom:-80px}.auth-visual:after{width:260px;height:260px;background:rgba(115,103,240,.08);right:-60px;top:-80px}.auth-visual img{max-width:min(620px,85%);position:relative;z-index:1}.auth-panel{display:flex;align-items:center;justify-content:center;padding:2rem}.auth-box{width:min(440px,100%)}.auth-brand{display:flex;align-items:center;gap:.7rem;margin-bottom:2rem;font-weight:800;font-size:1.2rem}.auth-role-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .65rem;border-radius:999px;background:var(--fp-primary-soft);color:var(--fp-primary);font-size:.78rem;font-weight:700;margin-bottom:1rem}.filter-bar{display:flex;gap:.75rem;flex-wrap:wrap}.filter-bar>*{min-width:150px}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.metric-chip{padding:.85rem 1rem;border:1px solid var(--fp-border);border-radius:12px;background:#fff}.metric-chip .label{font-size:.75rem;color:var(--fp-muted)}.metric-chip .value{font-size:1.15rem;font-weight:700;margin-top:.2rem}.quick-action{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border:1px solid var(--fp-border);border-radius:12px;background:#fff;color:var(--fp-text);transition:.2s}.quick-action:hover{transform:translateY(-1px);box-shadow:var(--fp-shadow);color:var(--fp-primary)}.quick-action i{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary)}.mobile-toggle{display:none;border:0;background:transparent;font-size:1.3rem}.sidebar-backdrop{display:none}.print-only{display:none}
@media(max-width:991.98px){.app-sidebar{transform:translateX(-100%);transition:.25s}.app-sidebar.open{transform:translateX(0)}.app-main{margin-left:0;width:100%}.mobile-toggle{display:inline-flex}.sidebar-backdrop.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:1035}.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.app-content{padding:1rem}.app-topbar{padding:0 1rem}}
@media(max-width:575.98px){.metric-strip{grid-template-columns:1fr}.stat-value{font-size:1.45rem}.filter-bar>*{width:100%;min-width:0}.app-topbar{height:64px}.topbar-card{height:50px}.app-content{padding:.8rem}.auth-panel{padding:1.25rem}.fp-card-header,.fp-card-body{padding:1rem}}
@media print{.app-sidebar,.app-topbar,.no-print{display:none!important}.app-main{margin:0;width:100%}.app-content{padding:0;max-width:none}.fp-card{box-shadow:none;border:0}.print-only{display:block}}

/* ===== Vuexy-style detached top navbar (v3) ===== */
.app-topbar{height:80px;padding:12px 1.5rem 8px;background:transparent;backdrop-filter:none}
.vuexy-navbar{height:56px;border:0;border-radius:6px;box-shadow:0 2px 8px rgba(47,43,61,.12);padding:.35rem .85rem .35rem 1rem;gap:1rem}
.topbar-search-area{display:flex;align-items:center;gap:.5rem;min-width:0;flex:1}
.vuexy-search-wrap{position:relative;display:flex;align-items:center;min-width:260px;max-width:560px;flex:1}
.vuexy-search-icon{font-size:1.45rem;color:#6f6b7d;flex:0 0 auto;margin-right:.75rem}
.vuexy-search-input{width:100%;height:42px;padding:0;border:0;outline:0;background:transparent;color:var(--fp-text);font-size:1rem;font-weight:400}
.vuexy-search-input::placeholder{color:#aaa7b1;opacity:1}
.vuexy-search-input::-webkit-search-cancel-button{display:none}
.vuexy-search-results{position:absolute;top:48px;left:-8px;width:min(480px,calc(100vw - 40px));background:#fff;border:1px solid var(--fp-border);border-radius:8px;box-shadow:0 12px 30px rgba(47,43,61,.14);padding:.4rem;display:none;z-index:1090}
.vuexy-search-results.show{display:block}
.vuexy-search-result{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-radius:6px;color:var(--fp-text)}
.vuexy-search-result:hover,.vuexy-search-result.active{background:var(--fp-primary-soft);color:var(--fp-primary)}
.vuexy-search-empty{padding:.8rem;color:var(--fp-muted);font-size:.85rem}
.vuexy-navbar-actions{display:flex;align-items:center;gap:.18rem;margin-left:auto}
.topbar-icon-btn,.profile-avatar-button{width:38px;height:38px;border:0;border-radius:50%;background:transparent;color:#444050;display:inline-flex;align-items:center;justify-content:center;transition:.16s;padding:0}
.topbar-icon-btn:hover,.profile-avatar-button:hover{background:#f2f1f4;color:#2f2b3d}
.topbar-icon-btn svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.topbar-icon-btn i{font-size:1.3rem}
.notification-icon-wrap{position:relative;display:grid;place-items:center}
.profile-avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;position:relative;background:#e9e7fd;color:var(--fp-primary);font-weight:700;overflow:visible;border:2px solid rgba(115,103,240,.2)}
.profile-avatar img,.profile-avatar-initial{width:100%;height:100%;border-radius:50%;object-fit:cover;display:grid;place-items:center;overflow:hidden}
.profile-online-dot{position:absolute;right:-1px;bottom:-1px;width:10px;height:10px;border-radius:50%;background:#28c76f;border:2px solid #fff}
.profile-avatar-lg{width:42px;height:42px;flex:0 0 42px}
.vuexy-dropdown{min-width:180px;border:0;border-radius:8px;box-shadow:0 8px 24px rgba(47,43,61,.16);padding:.4rem;margin-top:.55rem!important}
.vuexy-dropdown .dropdown-item{border-radius:5px;padding:.55rem .7rem;color:#5d596c;font-size:.9rem}
.vuexy-dropdown .dropdown-item:hover{background:#f3f2f5;color:var(--fp-primary)}
.vuexy-dropdown-title{padding:.85rem 1rem;font-weight:700;border-bottom:1px solid var(--fp-border)}
.vuexy-shortcuts{width:310px}
.shortcut-grid{display:grid;grid-template-columns:1fr 1fr}
.shortcut-grid a{min-height:100px;padding:1rem .65rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.45rem;color:var(--fp-text);border-right:1px solid var(--fp-border);border-bottom:1px solid var(--fp-border)}
.shortcut-grid a:nth-child(2n){border-right:0}.shortcut-grid a:hover{background:#faf9fb;color:var(--fp-primary)}
.shortcut-grid i{font-size:1.5rem;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary)}
.notification-dropdown{width:300px}.notification-empty{padding:1.6rem 1rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.25rem;color:var(--fp-muted)}.notification-empty i{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#e8f5ef;color:#0a7a5a;font-size:1.2rem}.notification-empty strong{color:var(--fp-text);margin-top:.35rem}.notification-empty small{font-size:.78rem}
.profile-dropdown{width:250px}.profile-dropdown-head{display:flex;align-items:center;gap:.75rem;padding:.9rem}.profile-dropdown-head div{min-width:0}.profile-dropdown-head strong,.profile-dropdown-head small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-dropdown-head small{font-size:.76rem;color:var(--fp-muted);margin-top:.08rem}

/* Web-only theme support for the navbar and main shell. */
html[data-web-theme="dark"] body{--fp-bg:#25232e;--fp-card:#2f2b3d;--fp-text:#e7e3fc;--fp-muted:#b6b3c0;--fp-border:#45404f;background:var(--fp-bg);color:var(--fp-text)}
html[data-web-theme="dark"] .app-sidebar,html[data-web-theme="dark"] .topbar-card,html[data-web-theme="dark"] .fp-card,html[data-web-theme="dark"] .metric-chip,html[data-web-theme="dark"] .quick-action{background:#2f2b3d;border-color:#45404f}
html[data-web-theme="dark"] .topbar-icon-btn,html[data-web-theme="dark"] .profile-avatar-button{color:#d3d0dc}
html[data-web-theme="dark"] .topbar-icon-btn:hover,html[data-web-theme="dark"] .profile-avatar-button:hover{background:#3a3546;color:#fff}
html[data-web-theme="dark"] .vuexy-search-input{color:#e7e3fc}
html[data-web-theme="dark"] .vuexy-search-results,html[data-web-theme="dark"] .vuexy-dropdown{background:#2f2b3d;border-color:#45404f}
html[data-web-theme="dark"] .vuexy-dropdown .dropdown-item,html[data-web-theme="dark"] .shortcut-grid a{color:#d3d0dc}
html[data-web-theme="dark"] .vuexy-dropdown .dropdown-item:hover,html[data-web-theme="dark"] .shortcut-grid a:hover{background:#3a3546;color:#9e95f5}
html[data-web-theme="dark"] .form-control,html[data-web-theme="dark"] .form-select{background:#2f2b3d;color:#e7e3fc;border-color:#56505f}
html[data-web-theme="dark"] .table{--bs-table-bg:#2f2b3d;--bs-table-color:#e7e3fc;--bs-table-border-color:#45404f}
html[data-web-theme="dark"] .table thead th{background:#373241;color:#b6b3c0}

@media(max-width:991.98px){.app-topbar{padding:10px 1rem 8px;height:76px}.vuexy-search-wrap{min-width:0}.vuexy-navbar{padding-left:.55rem}.mobile-toggle.topbar-icon-btn{display:inline-flex}}
@media(max-width:575.98px){.app-topbar{height:70px;padding:8px .75rem 6px}.vuexy-navbar{height:56px;padding:.3rem .45rem}.vuexy-search-input{font-size:.9rem}.vuexy-search-input::placeholder{color:transparent}.vuexy-search-icon{margin-right:.25rem}.vuexy-navbar-actions{gap:0}.topbar-icon-btn,.profile-avatar-button{width:34px;height:34px}.profile-avatar{width:32px;height:32px}}

/* ===== Vuexy navbar behavior + complete theme polish (v4) ===== */
:root{
  --vx-page:#f8f7fa;
  --vx-surface:#fff;
  --vx-surface-2:#f3f2f5;
  --vx-heading:#2f2b3d;
  --vx-body:#6f6b7d;
  --vx-border:#e6e6e8;
  --vx-hover:#f3f2f5;
  --vx-dropdown-shadow:0 8px 24px rgba(47,43,61,.16);
}
html[data-web-theme="light"]{color-scheme:light}
html[data-web-theme="dark"]{color-scheme:dark;--vx-page:#25232e;--vx-surface:#2f2b3d;--vx-surface-2:#373241;--vx-heading:#e7e3fc;--vx-body:#b6b3c0;--vx-border:#45404f;--vx-hover:#3a3546;--vx-dropdown-shadow:0 8px 28px rgba(0,0,0,.32)}

/* Theme menu: use Vuexy purple rather than Bootstrap's blue active item. */
#themeMenu .dropdown-item{display:flex;align-items:center;min-width:150px;transition:background .15s,color .15s}
#themeMenu .dropdown-item.active,#themeMenu .dropdown-item:active{background:rgba(115,103,240,.14)!important;color:#7367f0!important;font-weight:600}
html[data-web-theme="dark"] #themeMenu .dropdown-item.active,html[data-web-theme="dark"] #themeMenu .dropdown-item:active{background:rgba(115,103,240,.24)!important;color:#a99ff8!important}

/* Apply theme colors to the full web shell, not just a few cards. */
html[data-web-theme="dark"] body{background:var(--vx-page)!important;color:var(--vx-heading)!important}
html[data-web-theme="dark"] .app-main,html[data-web-theme="dark"] .app-content{background:var(--vx-page)}
html[data-web-theme="dark"] .app-sidebar{background:var(--vx-surface)!important;border-color:var(--vx-border)!important}
html[data-web-theme="dark"] .app-brand,html[data-web-theme="dark"] .page-title,html[data-web-theme="dark"] h1,html[data-web-theme="dark"] h2,html[data-web-theme="dark"] h3,html[data-web-theme="dark"] h4,html[data-web-theme="dark"] h5,html[data-web-theme="dark"] h6{color:var(--vx-heading)!important}
html[data-web-theme="dark"] .page-subtitle,html[data-web-theme="dark"] .text-muted,html[data-web-theme="dark"] .stat-label,html[data-web-theme="dark"] .metric-chip .label{color:var(--vx-body)!important}
html[data-web-theme="dark"] .menu-link{color:#c7c3d1}
html[data-web-theme="dark"] .menu-link:hover{background:var(--vx-hover);color:#a99ff8}
html[data-web-theme="dark"] .menu-label{color:#8f8a9c}
html[data-web-theme="dark"] .topbar-card,html[data-web-theme="dark"] .fp-card,html[data-web-theme="dark"] .metric-chip,html[data-web-theme="dark"] .quick-action,html[data-web-theme="dark"] .card{background:var(--vx-surface)!important;border-color:var(--vx-border)!important;color:var(--vx-heading)}
html[data-web-theme="dark"] .card-header,html[data-web-theme="dark"] .card-footer,html[data-web-theme="dark"] .fp-card-header{background:var(--vx-surface)!important;border-color:var(--vx-border)!important}
html[data-web-theme="dark"] .vuexy-search-results,html[data-web-theme="dark"] .vuexy-dropdown{background:var(--vx-surface)!important;border-color:var(--vx-border)!important;box-shadow:var(--vx-dropdown-shadow)}
html[data-web-theme="dark"] .vuexy-dropdown-title,html[data-web-theme="dark"] .dropdown-divider{border-color:var(--vx-border)!important}
html[data-web-theme="dark"] .vuexy-dropdown .dropdown-item{color:#d3d0dc!important}
html[data-web-theme="dark"] .vuexy-dropdown .dropdown-item:hover{background:var(--vx-hover)!important;color:#a99ff8!important}
html[data-web-theme="dark"] .vuexy-search-result{color:#d3d0dc}
html[data-web-theme="dark"] .vuexy-search-result:hover{background:var(--vx-hover);color:#a99ff8}
html[data-web-theme="dark"] .vuexy-search-heading{color:#8f8a9c}
html[data-web-theme="dark"] .vuexy-search-input{color:var(--vx-heading)}
html[data-web-theme="dark"] .vuexy-search-input::placeholder{color:#8f8a9c}
html[data-web-theme="dark"] .vuexy-search-icon,html[data-web-theme="dark"] .vuexy-search-clear{color:#b6b3c0}
html[data-web-theme="dark"] .topbar-icon-btn,html[data-web-theme="dark"] .profile-avatar-button{color:#d3d0dc}
html[data-web-theme="dark"] .topbar-icon-btn:hover,html[data-web-theme="dark"] .profile-avatar-button:hover{background:var(--vx-hover);color:#fff}
html[data-web-theme="dark"] .profile-online-dot{border-color:var(--vx-surface)}
html[data-web-theme="dark"] .shortcut-grid a{color:#d3d0dc;border-color:var(--vx-border)}
html[data-web-theme="dark"] .shortcut-grid a:hover{background:var(--vx-hover);color:#a99ff8}
html[data-web-theme="dark"] .form-control,html[data-web-theme="dark"] .form-select,html[data-web-theme="dark"] .input-group-text{background:var(--vx-surface)!important;color:var(--vx-heading)!important;border-color:#56505f!important}
html[data-web-theme="dark"] .form-control::placeholder{color:#898493}
html[data-web-theme="dark"] .table{--bs-table-bg:var(--vx-surface);--bs-table-color:var(--vx-heading);--bs-table-border-color:var(--vx-border)}
html[data-web-theme="dark"] .table thead th{background:var(--vx-surface-2)!important;color:#b6b3c0!important}
html[data-web-theme="dark"] .modal-content,html[data-web-theme="dark"] .offcanvas{background:var(--vx-surface);color:var(--vx-heading);border-color:var(--vx-border)}
html[data-web-theme="dark"] .modal-header,html[data-web-theme="dark"] .modal-footer{border-color:var(--vx-border)}
html[data-web-theme="dark"] .btn-close{filter:invert(1) grayscale(100%) brightness(200%)}

/* Search is clickable as one control and now has a clear button. */
.vuexy-search-wrap{cursor:text}
.vuexy-search-clear{width:32px;height:32px;border:0;border-radius:50%;background:transparent;color:#8c8996;display:none;align-items:center;justify-content:center;flex:0 0 32px}
.vuexy-search-clear.show{display:inline-flex}
.vuexy-search-clear:hover{background:var(--fp-primary-soft);color:var(--fp-primary)}
.vuexy-search-heading{padding:.45rem .7rem .3rem;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#9b98a5;font-weight:700}
.vuexy-search-empty{display:flex;align-items:center;gap:.55rem}
.vuexy-search-empty i{font-size:1.1rem}

/* Desktop sidebar collapse/expand from the header hamburger button. */
@media(min-width:992px){
  .mobile-toggle.topbar-icon-btn{display:inline-flex!important}
  body.sidebar-collapsed{--fp-sidebar:86px}
  body.sidebar-collapsed .app-sidebar{width:86px;padding-left:.65rem;padding-right:.65rem;overflow-x:hidden}
  body.sidebar-collapsed .app-main{margin-left:86px;width:calc(100% - 86px)}
  body.sidebar-collapsed .app-brand{justify-content:center;padding-left:0;padding-right:0}
  body.sidebar-collapsed .app-brand>span:not(.brand-mark),body.sidebar-collapsed .app-sidebar>.px-2,body.sidebar-collapsed .menu-label{display:none!important}
  body.sidebar-collapsed .menu-link{justify-content:center;gap:0;padding:.72rem .55rem;font-size:0}
  body.sidebar-collapsed .menu-link i{font-size:1.3rem;margin:0}
  body.sidebar-collapsed .brand-mark{flex:0 0 38px}
}

/* Mobile sidebar continues to behave as an overlay and hamburger turns into X. */
@media(max-width:991.98px){
  .app-sidebar{width:min(270px,86vw)}
  .sidebar-backdrop.show{display:block!important}
}

/* ===== Super Admin dashboard analytics (v6) ===== */
.dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem}
.dashboard-kpi-card{padding:1.05rem 1.05rem 1rem;min-width:0;transition:transform .18s ease,box-shadow .18s ease}
.dashboard-kpi-card:hover{transform:translateY(-2px);box-shadow:0 .45rem 1.4rem rgba(47,43,61,.11)}
.dashboard-kpi-top{display:flex;align-items:center;justify-content:space-between;gap:.65rem;margin-bottom:.9rem}
.dashboard-kpi-card .stat-icon{width:40px;height:40px;border-radius:10px;font-size:1.15rem}
.dashboard-kpi-card .stat-value{font-size:1.45rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-kpi-card .stat-label{margin-top:.32rem;line-height:1.25}
.dashboard-currency{font-size:1.3rem!important}
.dashboard-kpi-tag{display:inline-flex;align-items:center;justify-content:center;max-width:110px;padding:.27rem .5rem;border-radius:6px;background:#f2f1f4;color:#6f6b7d;font-size:.69rem;font-weight:650;white-space:nowrap}
.dashboard-tag-success{background:#e8f5ef;color:#0a7a5a}.dashboard-tag-danger{background:#fceaea;color:#d83b3e}
.dashboard-soft-success{background:#e8f5ef;color:#0a7a5a}
.dashboard-chart-card .fp-card-body{padding-bottom:1rem}
.dashboard-chart-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-bottom:.9rem}
.dashboard-chart-summary-two{grid-template-columns:repeat(2,minmax(0,1fr))}
.dashboard-chart-summary>div{padding:.65rem .75rem;border:1px solid var(--fp-border);border-radius:9px;background:#fbfbfc}
.dashboard-chart-summary span{display:block;color:var(--fp-muted);font-size:.72rem;margin-bottom:.1rem}
.dashboard-chart-summary strong{font-size:1rem;font-weight:700}
.dashboard-chart-wrap{position:relative;height:260px;width:100%;overflow:hidden}.dashboard-chart-wrap canvas{display:block;width:100%;height:100%}
.dashboard-chart-legend{display:flex;align-items:center;justify-content:center;gap:1.25rem;margin-top:.65rem;color:var(--fp-muted);font-size:.75rem}.dashboard-chart-legend span{display:inline-flex;align-items:center;gap:.4rem}.legend-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.legend-purple{background:#7367f0}.legend-orange{background:#ff9f43}.legend-cyan{background:#00cfe8}
.dashboard-status-wrap{display:flex;align-items:center;gap:1.35rem}
.dashboard-donut{--active:0%;width:138px;height:138px;border-radius:50%;background:conic-gradient(#28c76f 0 var(--active),#ea5455 var(--active) 100%);display:grid;place-items:center;flex:0 0 138px;position:relative}
.dashboard-donut:before{content:"";position:absolute;inset:14px;border-radius:50%;background:var(--fp-card)}
.dashboard-donut>div{position:relative;z-index:1;text-align:center}.dashboard-donut strong{display:block;font-size:1.35rem}.dashboard-donut span{display:block;color:var(--fp-muted);font-size:.72rem;margin-top:.08rem}
.dashboard-status-list{flex:1;min-width:0}.dashboard-status-list>div{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem 0;border-bottom:1px dashed var(--fp-border)}.dashboard-status-list>div:last-child{border-bottom:0}.dashboard-status-list span{display:flex;align-items:center;gap:.45rem;color:var(--fp-muted);font-size:.78rem}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot-success{background:#28c76f}.status-dot-danger{background:#ea5455}.status-dot-purple{background:#7367f0}
.dashboard-table td,.dashboard-table th{padding-top:.78rem;padding-bottom:.78rem}.dashboard-empty-inline{display:flex;align-items:center;justify-content:center;gap:.55rem;padding:1.75rem;color:var(--fp-muted)}.dashboard-empty-inline i{font-size:1.2rem;color:var(--fp-primary)}
.dashboard-quick-grid{display:grid;gap:.75rem}.dashboard-quick-grid .quick-action{min-height:68px}.dashboard-quick-grid .quick-action>span:last-child i{background:transparent;width:auto;height:auto}
html[data-web-theme="dark"] .dashboard-kpi-tag{background:#3a3546;color:#b6b3c0}html[data-web-theme="dark"] .dashboard-tag-success{background:rgba(40,199,111,.14);color:#53d28a}html[data-web-theme="dark"] .dashboard-tag-danger{background:rgba(234,84,85,.14);color:#ef7d7e}html[data-web-theme="dark"] .dashboard-chart-summary>div{background:#373241;border-color:#45404f}html[data-web-theme="dark"] .dashboard-donut:before{background:#2f2b3d}
@media(max-width:1399.98px){.dashboard-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1199.98px){.dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-status-wrap{align-items:flex-start}.dashboard-donut{width:120px;height:120px;flex-basis:120px}.dashboard-chart-summary{grid-template-columns:1fr 1fr}.dashboard-chart-summary>div:last-child{grid-column:1/-1}}
@media(max-width:479.98px){.dashboard-kpi-grid{grid-template-columns:1fr}.dashboard-status-wrap{flex-direction:column;align-items:center;width:100%}.dashboard-status-list{width:100%}.dashboard-chart-wrap{height:230px}.dashboard-chart-summary,.dashboard-chart-summary-two{grid-template-columns:1fr}.dashboard-chart-summary>div:last-child{grid-column:auto}}

/* ===== Subscription management (v7) ===== */
.subscription-alert-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.subscription-alert-card{padding:1rem;display:flex;align-items:center;gap:.85rem;color:var(--fp-text);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.subscription-alert-card:hover{transform:translateY(-2px);box-shadow:0 .45rem 1.35rem rgba(47,43,61,.11);color:var(--fp-text)}
.subscription-alert-card.subscription-alert-active{border-color:rgba(115,103,240,.55);box-shadow:0 0 0 2px rgba(115,103,240,.08),var(--fp-shadow)}
.subscription-alert-card .stat-icon{flex:0 0 42px;width:42px;height:42px}
.subscription-alert-card .stat-value{font-size:1.25rem;margin:0}.subscription-alert-card .stat-label{margin-top:.15rem;line-height:1.25}
.subscription-urgent-card{overflow:hidden}.subscription-mini-alert{display:flex;align-items:center;gap:.7rem;padding:.72rem;border:1px solid var(--fp-border);border-radius:10px;color:var(--fp-text);min-width:0;height:100%}.subscription-mini-alert:hover{border-color:rgba(115,103,240,.38);background:var(--fp-primary-soft);color:var(--fp-text)}
.subscription-days{width:42px;height:42px;flex:0 0 42px;border-radius:10px;background:#fff2e3;color:#d97811;display:grid;place-items:center;font-weight:700;font-size:.82rem}.subscription-days.is-urgent{background:#fceaea;color:#d83b3e}
.subscription-lifecycle{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;position:relative}.subscription-life-item{position:relative;padding:1rem .85rem;border:1px solid var(--fp-border);border-radius:10px;background:#fbfbfc;min-width:0}.subscription-life-item small{display:block;color:var(--fp-muted);font-size:.7rem;margin-bottom:.3rem}.subscription-life-item strong{display:block;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.subscription-life-dot{width:8px;height:8px;border-radius:50%;background:var(--fp-primary);display:block;margin-bottom:.65rem;box-shadow:0 0 0 4px var(--fp-primary-soft)}
.subscription-history-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.15rem;border-bottom:1px solid var(--fp-border);color:var(--fp-text)}.subscription-history-row:last-child{border-bottom:0}.subscription-history-row:hover{background:#faf9fc;color:var(--fp-text)}.subscription-history-row.current{background:var(--fp-primary-soft)}
.subscription-timeline{position:relative;padding-left:.3rem}.subscription-timeline-item{position:relative;display:flex;gap:.9rem;padding:0 0 1.15rem 1.2rem}.subscription-timeline-item:before{content:"";position:absolute;left:3px;top:13px;bottom:-3px;width:1px;background:var(--fp-border)}.subscription-timeline-item:last-child:before{display:none}.subscription-timeline-dot{position:absolute;left:-1px;top:5px;width:9px;height:9px;border-radius:50%;background:var(--fp-primary);box-shadow:0 0 0 4px var(--fp-primary-soft)}
.dashboard-subscription-alert-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem}.dashboard-subscription-alert{display:flex;align-items:center;gap:.7rem;padding:.8rem;border:1px solid var(--fp-border);border-radius:10px;color:var(--fp-text);min-width:0}.dashboard-subscription-alert:hover{transform:translateY(-1px);box-shadow:var(--fp-shadow);color:var(--fp-text)}.dashboard-subscription-alert>span{width:36px;height:36px;flex:0 0 36px;border-radius:9px;display:grid;place-items:center}.dashboard-subscription-alert>div{min-width:0}.dashboard-subscription-alert strong{display:block;font-size:1.05rem}.dashboard-subscription-alert small{display:block;color:var(--fp-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dashboard-subscription-alert.is-danger>span{background:#fceaea;color:#d83b3e}.dashboard-subscription-alert.is-warning>span{background:#fff2e3;color:#d97811}.dashboard-subscription-alert.is-primary>span{background:var(--fp-primary-soft);color:var(--fp-primary)}.dashboard-subscription-alert.is-info>span{background:#e9f9fb;color:#008d9c}
.dropdown-menu{border-color:var(--fp-border);box-shadow:0 8px 24px rgba(47,43,61,.12);border-radius:10px;padding:.45rem}.dropdown-item{border-radius:7px;padding:.55rem .7rem}.dropdown-item:hover{background:var(--fp-primary-soft);color:var(--fp-primary)}
html[data-web-theme="dark"] .subscription-life-item,html[data-web-theme="dark"] .subscription-mini-alert,html[data-web-theme="dark"] .dashboard-subscription-alert{background:#373241;border-color:#45404f;color:#d3d0dc}html[data-web-theme="dark"] .subscription-mini-alert:hover,html[data-web-theme="dark"] .subscription-history-row:hover{background:#3a3546}html[data-web-theme="dark"] .subscription-history-row{color:#d3d0dc;border-color:#45404f}html[data-web-theme="dark"] .subscription-history-row.current{background:rgba(115,103,240,.14)}html[data-web-theme="dark"] .dropdown-menu{background:#2f2b3d;border-color:#45404f;color:#d3d0dc}html[data-web-theme="dark"] .dropdown-item{color:#d3d0dc}html[data-web-theme="dark"] .dropdown-item:hover{background:#3a3546;color:#a99ff8}
@media(max-width:1399.98px){.dashboard-subscription-alert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1199.98px){.subscription-alert-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.subscription-lifecycle{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:767.98px){.subscription-alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-subscription-alert-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-lifecycle{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:479.98px){.subscription-alert-grid,.dashboard-subscription-alert-grid,.subscription-lifecycle{grid-template-columns:1fr}}

/* Subscription Management v9 — Vuexy-style icon and filter toolbar polish */
.subscription-register-header{flex-wrap:wrap;gap:.85rem}
.subscription-register-count{display:inline-flex;align-items:center;gap:.45rem;padding:.42rem .7rem;border-radius:8px;background:var(--fp-primary-soft);color:var(--fp-primary);font-size:.78rem;font-weight:600;white-space:nowrap}
.subscription-register-count .ti{font-size:1rem}
.subscription-filter-toolbar{padding:1rem 1.15rem;border-bottom:1px solid var(--fp-border);background:rgba(248,247,250,.62)}
.subscription-filter-form{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;width:100%;margin-left:auto}
.subscription-filter-control{position:relative;min-width:0}
.subscription-filter-search{width:min(360px,100%);flex:1 1 300px;max-width:420px}
.subscription-filter-status{width:235px;flex:0 0 235px}
.subscription-filter-control .subscription-filter-leading{position:absolute;left:.85rem;top:50%;transform:translateY(-50%);z-index:3;color:var(--fp-muted);display:grid;place-items:center;pointer-events:none}
.subscription-filter-control .subscription-filter-leading .ti{font-size:1.08rem}
.subscription-filter-control .form-control,
.subscription-filter-control .form-select{height:42px;min-height:42px;padding-left:2.55rem;background-color:var(--fp-card);border-color:var(--fp-border)}
.subscription-filter-control .form-select{padding-right:2.25rem}
.subscription-filter-action{height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding-inline:1rem;white-space:nowrap}
.subscription-filter-action .ti{font-size:1rem}
.subscription-filter-reset{border:1px solid var(--fp-border);color:var(--fp-text);background:var(--fp-card)}
.subscription-filter-reset:hover{color:var(--fp-primary);background:var(--fp-primary-soft);border-color:rgba(115,103,240,.25)}
.subscription-alert-card .stat-icon .ti{font-size:1.2rem}

html[data-web-theme="dark"] .subscription-filter-toolbar{background:rgba(47,43,61,.55);border-color:#45404f}
html[data-web-theme="dark"] .subscription-filter-control .form-control,
html[data-web-theme="dark"] .subscription-filter-control .form-select,
html[data-web-theme="dark"] .subscription-filter-reset{background:#312d3d;border-color:#4b465c;color:#d3d0dc}
html[data-web-theme="dark"] .subscription-filter-control .form-control::placeholder{color:#8f8a9d}
html[data-web-theme="dark"] .subscription-filter-control .subscription-filter-leading{color:#9c97aa}
html[data-web-theme="dark"] .subscription-filter-reset:hover{background:rgba(115,103,240,.16);border-color:rgba(115,103,240,.45);color:#a99ff8}

@media(max-width:991.98px){
  .subscription-filter-form{justify-content:flex-start;flex-wrap:wrap}
  .subscription-filter-search{max-width:none;flex:1 1 100%}
  .subscription-filter-status{flex:1 1 260px;width:auto}
}
@media(max-width:575.98px){
  .subscription-filter-toolbar{padding:.85rem 1rem}
  .subscription-filter-form{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
  .subscription-filter-search,.subscription-filter-status{grid-column:1/-1;width:100%;max-width:none}
  .subscription-filter-action{width:100%}
  .subscription-register-count{width:100%;justify-content:center}
}

/* ===== Payments, Platform Reports & Usage Analytics (v10) ===== */
.report-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.report-kpi-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.report-kpi-card,.usage-kpi{padding:1rem 1.1rem;display:flex;align-items:center;gap:.85rem;min-width:0}.report-kpi-card .stat-icon,.usage-kpi .stat-icon{flex:0 0 44px;width:44px;height:44px}.report-kpi-card .stat-value,.usage-kpi .stat-value{font-size:1.2rem;margin-top:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.payment-register-header{flex-wrap:wrap;gap:.8rem}.payment-pending-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.payment-pending-item{display:flex;align-items:center;gap:.7rem;border:1px solid var(--fp-border);border-radius:10px;padding:.8rem;background:var(--fp-card)}.payment-filter-form{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.payment-filter-search{flex:1 1 340px;max-width:480px}.payment-filter-form .subscription-filter-control:not(.payment-filter-search){flex:0 1 210px}.min-w-0{min-width:0}
.usage-kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.usage-chart-wrap{height:290px;position:relative}.usage-chart-wrap canvas{width:100%;height:100%;display:block}.usage-channel-row{margin-bottom:1.15rem}.usage-progress{height:7px;border-radius:999px;background:rgba(115,103,240,.12);overflow:hidden;margin:.5rem 0}.usage-progress>span{display:block;height:100%;border-radius:inherit;background:var(--fp-primary)}
.location-report-row{padding:.7rem 0;border-bottom:1px solid var(--fp-border)}.location-report-row:last-child{border-bottom:0}.report-note{display:flex;gap:.75rem;align-items:flex-start;padding:1rem;border:1px solid var(--fp-border);border-radius:10px;height:100%;background:rgba(248,247,250,.55)}.report-note>.ti{font-size:1.3rem;color:var(--fp-primary);margin-top:.1rem}.report-note small{display:block;color:var(--fp-muted);margin-top:.25rem;line-height:1.45}
html[data-web-theme="dark"] .payment-pending-item,html[data-web-theme="dark"] .report-note{background:#373241;border-color:#45404f;color:#d3d0dc}html[data-web-theme="dark"] .usage-progress{background:rgba(169,159,248,.13)}
@media(max-width:1399.98px){.usage-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.report-kpi-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1199.98px){.report-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-pending-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.usage-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767.98px){.payment-pending-grid{grid-template-columns:1fr}.report-kpi-grid,.report-kpi-grid-wide,.usage-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-filter-form{display:grid;grid-template-columns:1fr 1fr}.payment-filter-search,.payment-filter-form .subscription-filter-control:not(.payment-filter-search){grid-column:1/-1;max-width:none;width:100%}.usage-chart-wrap{height:250px}}
@media(max-width:479.98px){.report-kpi-grid,.report-kpi-grid-wide,.usage-kpi-grid{grid-template-columns:1fr}.payment-filter-form{grid-template-columns:1fr}.payment-filter-form .subscription-filter-action{grid-column:1/-1}}

/* ===== Master Settings (v16) ===== */
.brand-logo-image{width:36px;height:36px;object-fit:contain;border-radius:8px;flex:0 0 36px}.auth-brand .brand-logo-image{width:40px;height:40px;flex-basis:40px}.master-logo-current{display:flex;align-items:center;gap:1rem;padding:.85rem 1rem;border:1px solid var(--fp-border);border-radius:10px;background:rgba(248,247,250,.62)}.master-logo-current img{width:64px;height:64px;object-fit:contain;border-radius:10px;background:var(--fp-card);border:1px solid var(--fp-border);padding:.35rem}.master-setting-note{display:flex;gap:.7rem;align-items:flex-start;padding:.85rem 1rem;border-radius:10px;background:var(--fp-primary-soft);color:var(--fp-text)}.master-setting-note>.ti{color:var(--fp-primary);font-size:1.2rem;margin-top:.05rem}.master-brand-preview{display:flex;align-items:center;gap:.8rem;padding:.9rem;border:1px solid var(--fp-border);border-radius:10px;background:rgba(248,247,250,.5)}.master-brand-preview img{width:46px;height:46px;object-fit:contain;border-radius:9px}.master-summary-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--fp-border);font-size:.86rem}.master-summary-list>div:last-child{border-bottom:0}.master-summary-list span{color:var(--fp-muted)}.master-summary-list strong{text-align:right;overflow-wrap:anywhere}html[data-web-theme="dark"] .master-logo-current,html[data-web-theme="dark"] .master-brand-preview{background:#373241;border-color:#45404f;color:#d3d0dc}html[data-web-theme="dark"] .master-logo-current img{background:#312d3d;border-color:#4b465c}

/* v18 Notifications */
.menu-count-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:rgba(115,103,240,.12);color:var(--fp-primary);font-size:.68rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.menu-link.active .menu-count-badge{background:rgba(255,255,255,.2);color:#fff}
.notification-compose-card{position:sticky;top:92px}.notification-type-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.notification-type-option{cursor:pointer;min-width:0}.notification-type-option input{position:absolute;opacity:0;pointer-events:none}.notification-type-option span{display:flex;align-items:center;gap:.55rem;min-height:44px;padding:.7rem .8rem;border:1px solid var(--fp-border);border-radius:10px;color:var(--fp-muted);transition:.15s;background:var(--fp-card)}.notification-type-option i{font-size:1.15rem;color:var(--fp-primary)}.notification-type-option input:checked+span{border-color:var(--fp-primary);background:var(--fp-primary-soft);color:var(--fp-primary);box-shadow:0 0 0 2px rgba(115,103,240,.08)}.notification-farmer-selector .form-select{min-height:190px}.notification-compose-note{display:flex;align-items:flex-start;gap:.65rem;padding:.8rem .9rem;border-radius:10px;background:rgba(115,103,240,.07);color:var(--fp-text)}.notification-compose-note>i{color:var(--fp-primary);font-size:1.15rem;margin-top:.05rem}.notification-history-filter{display:grid;grid-template-columns:minmax(130px,1fr) 135px 120px auto;gap:.45rem;align-items:center;min-width:min(100%,540px)}.notification-history-table td:first-child{min-width:260px}.notification-history-table .stat-icon{width:36px;height:36px;border-radius:9px;flex:0 0 36px;font-size:1rem}.notification-message-preview{max-width:340px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-table-title>div{min-width:0}.farmer-notification-card{padding:1rem 1.1rem;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:start;margin-bottom:.8rem}.farmer-notification-card.is-unread{border-color:rgba(115,103,240,.42);box-shadow:0 .25rem 1rem rgba(115,103,240,.08);position:relative}.farmer-notification-card.is-unread:before{content:"";position:absolute;left:-1px;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--fp-primary)}.farmer-notification-icon{width:42px;height:42px;flex:0 0 42px}.notification-body-text{white-space:pre-line;line-height:1.55}.farmer-notification-action{align-self:center}.topbar-notification-count{position:absolute;right:1px;top:0;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ea5455;color:#fff;border:2px solid var(--fp-card);font-size:.58rem;font-weight:800;display:flex;align-items:center;justify-content:center}.notification-dropdown{width:360px;max-width:calc(100vw - 24px)}.topbar-notification-list{max-height:340px;overflow:auto}.topbar-notification-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.75rem .9rem;color:var(--fp-text);border-bottom:1px solid var(--fp-border)}.topbar-notification-item:hover{background:#f8f7fa;color:var(--fp-text)}.topbar-notification-item.is-unread{background:rgba(115,103,240,.055)}.topbar-notification-symbol{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary);font-size:1.05rem}.topbar-notification-item strong{display:block;font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-notification-item small{display:block;color:var(--fp-muted);font-size:.72rem;margin-top:.12rem}.topbar-unread-dot{width:7px;height:7px;border-radius:50%;background:var(--fp-primary)}.topbar-notification-footer{padding:.65rem .85rem;text-align:center}.topbar-notification-footer a{color:var(--fp-primary);font-size:.8rem;font-weight:600}
html[data-web-theme="dark"] .notification-type-option span{background:var(--vx-card);border-color:var(--vx-border);color:var(--vx-muted)}html[data-web-theme="dark"] .notification-type-option input:checked+span{background:rgba(115,103,240,.16);color:#a99fff}html[data-web-theme="dark"] .notification-compose-note{background:rgba(115,103,240,.12)}html[data-web-theme="dark"] .topbar-notification-item:hover{background:var(--vx-hover)}html[data-web-theme="dark"] .topbar-notification-item.is-unread{background:rgba(115,103,240,.1)}html[data-web-theme="dark"] .topbar-notification-count{border-color:var(--vx-card)}
@media(max-width:1199.98px){.notification-compose-card{position:static}}@media(max-width:767.98px){.notification-history-filter{grid-template-columns:1fr 1fr}.notification-history-filter .input-group{grid-column:1/-1}.farmer-notification-card{grid-template-columns:auto minmax(0,1fr)}.farmer-notification-action{grid-column:2}}@media(max-width:575.98px){.notification-type-grid{grid-template-columns:1fr}.notification-history-filter{grid-template-columns:1fr}.notification-history-filter .input-group{grid-column:auto}.notification-dropdown{width:320px}.farmer-notification-card{grid-template-columns:1fr}.farmer-notification-icon{display:none}.farmer-notification-action{grid-column:auto}}

/* Universal table export controls */
.table-export-tools{display:flex;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem .25rem}.table-export-tools .btn{font-size:.8rem}.fp-generic-print-area{display:none}
@media print{
 body.fp-generic-table-print .app-sidebar,body.fp-generic-table-print .app-topbar,body.fp-generic-table-print .sidebar-backdrop{display:none!important}
 body.fp-generic-table-print .app-main{margin:0!important;width:100%!important}
 body.fp-generic-table-print .app-content{padding:0!important;max-width:none!important}
 body.fp-generic-table-print .app-content>*:not(.fp-generic-print-area){display:none!important}
 body.fp-generic-table-print .fp-generic-print-area{display:block!important;color:#000!important;background:#fff!important}
 .fp-generic-print-area h1{font-size:16px;text-align:center;margin:0 0 3px}.fp-generic-print-area .generic-print-meta{text-align:center;font-size:9px;margin-bottom:8px}.fp-generic-print-area table{width:100%;border-collapse:collapse;font-size:8px}.fp-generic-print-area th,.fp-generic-print-area td{border:.6px solid #222;padding:3px 4px;vertical-align:top}.fp-generic-print-area th{font-weight:700;background:#f3f2f7!important}.fp-generic-print-area button,.fp-generic-print-area a,.fp-generic-print-area form{display:none!important}
}

/* ===== System Users / Roles & Permissions (v22) ===== */
.menu-group-toggle{width:100%;border:0;background:transparent;text-align:left}.menu-group-toggle .menu-group-chevron{transition:transform .18s ease}.menu-group-toggle[aria-expanded="true"] .menu-group-chevron{transform:rotate(180deg)}.menu-subnav{margin:.15rem 0 .35rem 1.05rem;padding-left:.55rem;border-left:1px solid var(--fp-border)}.menu-sub-link{font-size:.84rem;min-height:38px}.menu-sub-link .ti{font-size:1rem}
.system-search-box{max-width:360px}.system-table th{white-space:nowrap}.permission-chip-wrap{display:flex;flex-wrap:wrap;gap:.35rem}.permission-chip{display:inline-flex;align-items:center;padding:.28rem .5rem;border-radius:5px;background:rgba(115,103,240,.13);color:#4f46c8;font-size:.72rem;font-weight:600;line-height:1.1}.permission-chip-more{background:#f1f0f2;color:var(--fp-muted)}
.permission-select-all{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;border:1px solid var(--fp-border);border-radius:10px;background:rgba(248,247,250,.55)}.permission-module-list{display:grid;gap:1rem}.permission-module{border:1px solid var(--fp-border);border-radius:10px;overflow:hidden;background:var(--fp-card)}.permission-module-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem;background:rgba(248,247,250,.7);border-bottom:1px solid var(--fp-border)}.permission-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem 1rem;padding:1rem}.permission-action{display:flex;align-items:flex-start;gap:.55rem;font-size:.84rem;cursor:pointer;min-width:0}.permission-action span{line-height:1.35}.permission-action .form-check-input{margin-top:.13rem;flex:0 0 auto}.role-summary-module{padding:.9rem 0;border-bottom:1px solid var(--fp-border)}.role-summary-module:first-child{padding-top:0}.role-summary-module:last-child{border-bottom:0;padding-bottom:0}
.system-user-filter{display:grid;grid-template-columns:minmax(240px,1fr) 190px 160px auto auto;gap:.65rem;align-items:center}.system-user-filter .system-search-box{max-width:none}.system-user-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary);font-weight:700;flex:0 0 38px}.system-user-avatar-lg{width:58px;height:58px;flex-basis:58px;font-size:1.1rem}.system-user-profile{display:flex;align-items:center;gap:1rem}.role-user-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.85rem 1rem;border-bottom:1px solid var(--fp-border)}.role-user-row:last-child{border-bottom:0}.role-user-row strong,.role-user-row small{display:block}.role-user-row small{color:var(--fp-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-web-theme="dark"] .permission-chip-more{background:#3a3546;color:#b6b1c3}html[data-web-theme="dark"] .permission-select-all,html[data-web-theme="dark"] .permission-module-header{background:rgba(47,43,61,.6)}html[data-web-theme="dark"] .permission-module{background:#312d3d;border-color:#45404f}html[data-web-theme="dark"] .permission-module-header,html[data-web-theme="dark"] .permission-select-all,html[data-web-theme="dark"] .role-summary-module,html[data-web-theme="dark"] .role-user-row,html[data-web-theme="dark"] .menu-subnav{border-color:#45404f}
@media(max-width:1199.98px){.permission-action-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.system-user-filter{grid-template-columns:1fr 1fr 1fr auto auto}}
@media(max-width:767.98px){.permission-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.system-user-filter{grid-template-columns:1fr 1fr}.system-user-filter .system-search-box{grid-column:1/-1}.permission-select-all{align-items:flex-start;flex-direction:column}}
@media(max-width:479.98px){.permission-action-grid{grid-template-columns:1fr}.permission-module-header{align-items:flex-start;flex-direction:column}.system-user-filter{grid-template-columns:1fr}.system-user-filter .system-search-box{grid-column:auto}}

/* ===== System Users / RBAC UI polish v22.4 ===== */
.menu-group-toggle{justify-content:flex-start;cursor:pointer}
.menu-group-toggle.active{
  background:#f3f2f5;
  color:var(--fp-primary);
  box-shadow:none;
}
.menu-group-toggle.active:hover{background:#ecebf0;color:var(--fp-primary)}
.menu-group-toggle .menu-group-chevron{margin-left:auto;font-size:.95rem;flex:0 0 auto}
.menu-subnav{
  margin:.3rem 0 .4rem .6rem;
  padding:.35rem;
  border-left:0;
  border-radius:10px;
  background:#f5f5f7;
}
.menu-sub-link{
  min-height:38px;
  margin:0;
  padding:.58rem .7rem;
  border-radius:8px;
  color:#6f6b7d;
  font-size:.84rem;
  box-shadow:none!important;
}
.menu-sub-link + .menu-sub-link{margin-top:.18rem}
.menu-sub-link:hover{background:#ecebf0;color:var(--fp-primary)}
.menu-sub-link.active{
  background:#e9e8ed;
  color:var(--fp-primary);
  box-shadow:none;
  font-weight:600;
}
.menu-sub-link.active .ti{color:var(--fp-primary)}

.system-page-heading{min-width:0}
.system-page-heading>div:first-child{min-width:0}
.system-page-primary-action{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap}
.role-search-form{max-width:100%}

.system-actions-cell{white-space:nowrap}
.system-action-group{
  display:inline-flex;
  align-items:center;
  justify-content:flex-end;
  gap:.35rem;
  flex-wrap:nowrap;
  vertical-align:middle;
}
.system-action-group form{display:inline-flex;margin:0;padding:0}
.system-action-btn{
  width:34px;
  height:34px;
  padding:0;
  border:1px solid transparent;
  border-radius:8px;
  background:#f8f7fa;
  color:#6f6b7d;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  line-height:1;
  transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;
}
.system-action-btn .ti{font-size:1rem}
.system-action-btn:hover{
  background:var(--fp-primary-soft);
  border-color:rgba(115,103,240,.18);
  color:var(--fp-primary);
  transform:translateY(-1px);
}
.system-action-danger{color:var(--fp-danger)}
.system-action-danger:hover{background:#fceaea;border-color:rgba(234,84,85,.18);color:#d83b3e}

.role-form-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:.6rem;
  padding:1rem 1.15rem;
  border-top:1px solid var(--fp-border);
}
.role-form-actions .btn{min-width:112px;display:inline-flex;align-items:center;justify-content:center}

html[data-web-theme="dark"] .menu-group-toggle.active,
html[data-web-theme="dark"] .menu-subnav,
html[data-web-theme="dark"] .menu-sub-link:hover,
html[data-web-theme="dark"] .menu-sub-link.active,
html[data-web-theme="dark"] .system-action-btn{background:#3a3546}
html[data-web-theme="dark"] .menu-sub-link{color:#b6b1c3}
html[data-web-theme="dark"] .menu-sub-link.active{color:#a8a0ff}
html[data-web-theme="dark"] .system-action-btn{color:#b6b1c3;border-color:#45404f}
html[data-web-theme="dark"] .system-action-btn:hover{background:#45404f;color:#a8a0ff}
html[data-web-theme="dark"] .system-action-danger{color:#ff6b6d}
html[data-web-theme="dark"] .system-action-danger:hover{background:rgba(234,84,85,.14);color:#ff8587}

@media(max-width:991.98px){
  .menu-subnav{margin-left:.35rem}
  .system-table{min-width:900px}
  .role-search-form{width:100%}
}
@media(max-width:767.98px){
  .system-page-heading{align-items:stretch!important}
  .system-page-primary-action{margin-left:auto}
  .system-user-filter{grid-template-columns:1fr 1fr}
  .system-user-filter .system-search-box{grid-column:1/-1}
  .system-user-filter .btn{min-height:42px}
  .permission-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .role-form-actions{justify-content:stretch}
  .role-form-actions .btn{flex:1 1 0;min-width:0}
}
@media(max-width:575.98px){
  .system-page-heading{display:grid!important;grid-template-columns:1fr;gap:.8rem!important;margin-bottom:1rem!important}
  .system-page-primary-action{width:100%;margin-left:0}
  .role-search-form{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:.5rem!important}
  .role-search-form .system-search-box{max-width:none;width:100%}
  .system-user-filter{grid-template-columns:1fr}
  .system-user-filter .system-search-box{grid-column:auto}
  .system-actions-cell{padding-left:.6rem!important;padding-right:.6rem!important}
  .system-action-group{gap:.25rem}
  .system-action-btn{width:32px;height:32px}
  .permission-select-all{align-items:flex-start;flex-direction:column}
  .permission-module-header{align-items:flex-start;flex-direction:column}
  .permission-action-grid{grid-template-columns:1fr}
  .role-form-actions{flex-direction:column-reverse;align-items:stretch;padding:.85rem 1rem}
  .role-form-actions .btn{width:100%}
}

/* ===== Master Settings workspace + Brand / Email Settings v22.5 ===== */
.brand-logo-for-dark{display:none}
html[data-web-theme="dark"] .brand-logo-for-light{display:none}
html[data-web-theme="dark"] .brand-logo-for-dark{display:block}

.master-settings-shell{display:grid;grid-template-columns:280px minmax(0,1fr);gap:1.5rem;align-items:start}
.master-settings-nav{position:sticky;top:92px;padding:.75rem;display:grid;gap:.2rem}
.master-settings-nav-link{display:flex;align-items:center;gap:.75rem;min-height:44px;padding:.65rem .8rem;border-radius:9px;color:var(--fp-text);font-weight:600;font-size:.88rem;transition:.15s}
.master-settings-nav-link i{font-size:1.1rem;color:var(--fp-muted)}
.master-settings-nav-link:hover{background:#f3f2f5;color:var(--fp-primary)}
.master-settings-nav-link.active{background:#f3f2f5;color:var(--fp-primary)}
.master-settings-nav-link.active i{color:var(--fp-primary)}
.master-settings-content{display:grid;gap:1.5rem;min-width:0}
.master-settings-section{scroll-margin-top:100px;overflow:hidden}
.master-settings-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.35rem 1.5rem 0}
.master-settings-card-header h2{font-size:1.15rem;margin:0;font-weight:700}
.master-settings-card-header p{margin:.35rem 0 0;color:var(--fp-muted);font-size:.9rem}
.master-save-btn{display:inline-flex;align-items:center;gap:.5rem;white-space:nowrap;flex:0 0 auto}
.master-settings-form{padding:1.25rem 1.5rem 1.5rem}
.master-settings-divider{border-top:1px solid var(--fp-border);margin:1.35rem 0 1rem}
.master-subheading{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:.2rem}
.master-subheading>i{width:32px;height:32px;border-radius:8px;background:var(--fp-primary-soft);color:var(--fp-primary);display:grid;place-items:center;font-size:1rem;flex:0 0 32px}
.master-subheading strong,.master-subheading span{display:block}.master-subheading span{color:var(--fp-muted);font-size:.78rem;margin-top:.12rem}

.master-brand-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;padding:1.25rem 1.5rem 1.5rem}
.master-brand-main{min-width:0}
.master-brand-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:1.25rem}
.master-brand-tabs button{border:1px solid var(--fp-border);background:var(--fp-card);border-radius:9px;min-height:42px;display:flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;color:var(--fp-text);transition:.15s}
.master-brand-tabs button:hover{border-color:var(--fp-primary);color:var(--fp-primary)}
.master-brand-tabs button.active{background:var(--fp-primary);border-color:var(--fp-primary);color:#fff}
.master-brand-tab-content{min-height:310px}
.master-logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}
.master-logo-preview{height:150px;border:1px solid var(--fp-border);border-radius:10px;display:flex;align-items:center;justify-content:center;padding:1rem;overflow:hidden}
.master-logo-preview-light{background:#fff}.master-logo-preview-dark{background:#161616}
.master-logo-preview img{max-width:80%;max-height:86px;object-fit:contain}
.master-logo-placeholder{display:flex;flex-direction:column;align-items:center;gap:.4rem;color:#9b98a5;font-size:.8rem}.master-logo-placeholder i{font-size:1.6rem}
.master-file-row{display:flex;align-items:center;gap:.5rem;margin-top:.65rem;min-width:0}.master-file-row .form-control{min-width:0}
.master-remove-file{width:42px;height:42px;padding:0;display:grid;place-items:center;flex:0 0 42px;cursor:pointer}.master-remove-file input{display:none}.master-remove-file:has(input:checked){background:#fceaea;color:var(--fp-danger);border-color:#f4b7b8!important}
.master-favicon-preview{width:84px;height:74px;border:1px solid var(--fp-border);border-radius:10px;background:#fff;display:grid;place-items:center;flex:0 0 84px}.master-favicon-preview img{max-width:48px;max-height:48px;object-fit:contain}.master-favicon-preview i{font-size:1.6rem;color:var(--fp-muted)}
.master-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.master-choice-card input,.master-color-choice input{position:absolute;opacity:0;pointer-events:none}
.master-choice-card span{display:flex;align-items:center;justify-content:center;gap:.4rem;border:1px solid var(--fp-border);border-radius:9px;min-height:44px;cursor:pointer;font-weight:600;font-size:.82rem}.master-choice-card input:checked+span{border-color:var(--fp-primary);background:var(--fp-primary-soft);color:var(--fp-primary)}
.master-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.master-color-choice span{display:flex;align-items:center;gap:.45rem;border:1px solid var(--fp-border);border-radius:9px;min-height:44px;padding:.55rem .65rem;cursor:pointer;font-size:.82rem;font-weight:600}.master-color-choice b{width:18px;height:18px;border-radius:50%;background:var(--brand-swatch);box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);flex:0 0 18px}.master-color-choice input:checked+span{border-color:var(--brand-swatch);box-shadow:0 0 0 2px color-mix(in srgb,var(--brand-swatch) 15%,transparent)}

.master-live-preview{border:1px solid var(--fp-border);border-radius:10px;padding:1rem;align-self:start}.master-live-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;margin-bottom:1rem}.master-live-title i{font-size:1.1rem}.master-theme-preview{border:1px solid var(--fp-border);border-radius:10px;overflow:hidden;background:#fff}.master-theme-preview-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem .75rem;background:#f8f7fa;font-size:.72rem}.master-theme-preview-head>div{display:flex;gap:.35rem;flex-wrap:wrap;justify-content:flex-end}.master-theme-preview-head em{font-style:normal;padding:.25rem .5rem;border-radius:5px;background:var(--fp-primary-soft);color:var(--fp-primary);font-weight:700}.master-theme-preview-body{display:grid;grid-template-columns:58px minmax(0,1fr);height:250px}.master-preview-sidebar{border-right:1px solid #eee;padding:.65rem .4rem;display:flex;flex-direction:column;align-items:center;gap:.65rem}.master-preview-logo{height:34px;display:grid;place-items:center}.master-preview-logo img{max-width:42px;max-height:25px;object-fit:contain}.master-preview-logo span{font-weight:800;color:var(--fp-primary)}.master-preview-sidebar>i{width:8px;height:22px;border-radius:999px;background:#edf7f4}.master-preview-sidebar>i:first-of-type{width:30px;background:var(--fp-primary-soft)}.master-preview-main{padding:1.2rem;display:flex;flex-direction:column;gap:.75rem}.master-preview-main>b{width:65%;height:30px;border-radius:7px;background:#f1f7f5}.master-preview-main>span{width:88%;height:17px;border-radius:7px;background:#f1f7f5}.master-preview-main>span.short{width:65%}.master-preview-main>button{border:0;width:80px;height:34px;border-radius:7px;background:var(--fp-primary);opacity:.55}.master-preview-main>div{margin-top:.25rem;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.master-preview-main>div i{height:62px;border-radius:8px;background:#f5f8f7}.master-preview-footer{border-top:1px solid var(--fp-border);margin-top:1rem;padding-top:1rem;font-size:.78rem;font-weight:600}

.master-email-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:1.5rem;padding:1.25rem 1.5rem 1.5rem}.master-email-config-card,.master-test-email-card{border:1px solid var(--fp-border);border-radius:10px;padding:1.25rem;min-width:0}.master-test-email-card{align-self:start}.master-test-email-card h3{font-size:1rem;margin:0;display:flex;align-items:center;gap:.5rem}.master-test-email-card h3 i{color:var(--fp-primary)}

html[data-web-theme="dark"] .master-settings-nav-link:hover,html[data-web-theme="dark"] .master-settings-nav-link.active{background:#3a3546}
html[data-web-theme="dark"] .master-brand-tabs button,html[data-web-theme="dark"] .master-choice-card span,html[data-web-theme="dark"] .master-color-choice span,html[data-web-theme="dark"] .master-live-preview,html[data-web-theme="dark"] .master-email-config-card,html[data-web-theme="dark"] .master-test-email-card{background:var(--vx-surface);border-color:var(--vx-border);color:var(--vx-heading)}
html[data-web-theme="dark"] .master-brand-tabs button.active{background:var(--fp-primary);color:#fff}
html[data-web-theme="dark"] .master-logo-preview-light,html[data-web-theme="dark"] .master-favicon-preview{background:#f8f8f8}
html[data-web-theme="dark"] .master-theme-preview{background:#fff;color:#2f2b3d;border-color:#56505f}
html[data-web-theme="dark"] .master-theme-preview-head{background:#f3f2f5;color:#2f2b3d}

@media(max-width:1199.98px){
  .master-settings-shell{grid-template-columns:230px minmax(0,1fr);gap:1rem}
  .master-brand-layout,.master-email-layout{grid-template-columns:1fr}
  .master-live-preview,.master-test-email-card{width:100%}
}
@media(max-width:991.98px){
  .master-settings-shell{grid-template-columns:1fr}
  .master-settings-nav{position:sticky;top:78px;z-index:12;display:flex;overflow-x:auto;gap:.4rem;padding:.55rem;scrollbar-width:none}
  .master-settings-nav::-webkit-scrollbar{display:none}.master-settings-nav-link{white-space:nowrap;flex:0 0 auto;min-height:40px;padding:.55rem .7rem}
  .master-settings-nav-link span{display:inline}
}
@media(max-width:767.98px){
  .master-settings-card-header{padding:1.1rem 1rem 0;align-items:stretch;flex-direction:column}
  .master-save-btn{width:100%;justify-content:center}
  .master-settings-form,.master-brand-layout,.master-email-layout{padding:1rem}
  .master-logo-grid{grid-template-columns:1fr}.master-brand-tabs{grid-template-columns:1fr 1fr 1fr}.master-brand-tabs button{font-size:.78rem}
  .master-email-config-card,.master-test-email-card{padding:1rem}
  .master-settings-heading .badge{display:none}
}
@media(max-width:479.98px){
  .master-settings-nav{top:70px;margin-left:-.1rem;margin-right:-.1rem}
  .master-settings-nav-link{font-size:.8rem}.master-settings-nav-link i{font-size:1rem}
  .master-brand-tabs{gap:.35rem}.master-brand-tabs button{padding:.5rem .35rem}.master-brand-tabs button i{display:none}
  .master-choice-grid,.master-color-grid{grid-template-columns:1fr 1fr}
  .master-theme-preview-body{height:220px}.master-preview-main{padding:.9rem}
  .master-file-row{align-items:stretch}.master-file-row .form-control{font-size:.8rem}
}
.menu-link.active{background:linear-gradient(118deg,var(--fp-primary),var(--fp-primary-dark));box-shadow:0 3px 8px color-mix(in srgb,var(--fp-primary) 30%,transparent)}


/* ===== Master settings / navigation enhancements v22.6 ===== */
.app-main{display:flex;flex-direction:column}.app-content{flex:1 0 auto}.app-footer{padding:1rem 1.5rem 1.35rem;text-align:center;color:var(--fp-muted);font-size:.8rem;margin-top:auto}
body.nav-position-right .app-sidebar{left:auto;right:0;border-right:0;border-left:1px solid var(--fp-border)}
body.nav-position-right .app-main{margin-left:0;margin-right:var(--fp-sidebar)}
body.nav-position-top .app-shell{display:block}
body.nav-position-top .app-sidebar{position:sticky;top:0;inset:auto;width:100%;height:auto;min-height:64px;display:flex;align-items:center;gap:.25rem;padding:.55rem 1rem;overflow-x:auto;overflow-y:visible;border-right:0;border-bottom:1px solid var(--fp-border);z-index:1040;white-space:nowrap}
body.nav-position-top .app-brand{padding:.2rem .8rem .2rem 0;margin-right:.35rem;flex:0 0 auto}
body.nav-position-top .menu-label{display:none}
body.nav-position-top .menu-link{margin:0;padding:.58rem .72rem;flex:0 0 auto}
body.nav-position-top .app-main{margin:0;width:100%;min-height:calc(100vh - 64px)}
body.nav-position-top .app-topbar{top:64px}
body.nav-position-top #systemUsersNav{flex-basis:100%;width:100%}
body.nav-position-top #systemUsersNav:not(.show){display:none}
body.nav-position-top #systemUsersNav.show{display:block}
body.nav-position-top .menu-subnav{display:flex;gap:.25rem;padding:.4rem;background:#f6f6f8;border-radius:8px;width:max-content;margin-left:auto}
body.nav-position-top .menu-sub-link{padding:.5rem .65rem}
body.nav-position-top .menu-group-toggle .menu-group-chevron{display:none}
@media(min-width:992px){
 body.nav-position-top.sidebar-collapsed .app-sidebar{width:100%;padding:.55rem 1rem;overflow-x:auto}
 body.nav-position-top.sidebar-collapsed .app-main{margin:0;width:100%}
 body.nav-position-top.sidebar-collapsed .app-brand>span:not(.brand-mark),body.nav-position-top.sidebar-collapsed .app-sidebar>.px-2,body.nav-position-top.sidebar-collapsed .menu-label{display:initial!important}
 body.nav-position-right.sidebar-collapsed .app-sidebar{width:86px;padding-left:.65rem;padding-right:.65rem}
 body.nav-position-right.sidebar-collapsed .app-main{margin-right:86px;margin-left:0;width:calc(100% - 86px)}
}
@media(max-width:991.98px){
 body.nav-position-right .app-sidebar{transform:translateX(100%)}body.nav-position-right .app-sidebar.open{transform:translateX(0)}body.nav-position-right .app-main{margin:0;width:100%}
 body.nav-position-top .app-sidebar{position:fixed;top:0;left:0;width:min(270px,86vw);height:100vh;display:block;padding:1rem .9rem;overflow-y:auto;white-space:normal;transform:translateX(-100%);border-right:1px solid var(--fp-border);border-bottom:0}
 body.nav-position-top .app-sidebar.open{transform:translateX(0)}body.nav-position-top .app-topbar{top:0}body.nav-position-top .app-main{margin:0;width:100%}body.nav-position-top .menu-label{display:block}body.nav-position-top .menu-link{margin:.18rem 0;padding:.72rem .85rem}body.nav-position-top .app-brand{padding:.4rem .6rem 1.25rem}body.nav-position-top #systemUsersNav{width:auto}body.nav-position-top .menu-subnav{display:block;width:auto;margin:0}
}
.master-custom-color-picker{padding:.75rem;border:1px dashed var(--fp-border);border-radius:9px;background:#fafafd}.master-custom-color-picker code{font-size:.78rem;color:var(--fp-muted)}.form-control-color{width:52px;min-width:52px;height:42px;padding:.3rem}
.master-theme-preview-body.preview-nav-right{grid-template-columns:minmax(0,1fr) 58px}.master-theme-preview-body.preview-nav-right .master-preview-sidebar{order:2;border-right:0;border-left:1px solid #eee}.master-theme-preview-body.preview-nav-right .master-preview-main{order:1}
.master-theme-preview-body.preview-nav-top{display:grid;grid-template-columns:1fr;grid-template-rows:52px 1fr}.master-theme-preview-body.preview-nav-top .master-preview-sidebar{border-right:0;border-bottom:1px solid #eee;padding:.4rem .65rem;flex-direction:row;justify-content:flex-start}.master-theme-preview-body.preview-nav-top .master-preview-sidebar>i{width:22px;height:8px}.master-theme-preview-body.preview-nav-top .master-preview-sidebar>i:first-of-type{width:34px}.master-theme-preview-body.preview-nav-top .master-preview-logo{width:42px;height:28px}.master-theme-preview-body.preview-nav-top .master-preview-main{padding:.8rem 1.2rem}
.master-email-config-card .form-label{display:flex;align-items:center;gap:.35rem}.master-email-config-card .form-label i{width:18px;height:18px;display:inline-block;flex:0 0 18px;color:var(--fp-muted)}
html[data-web-theme="dark"] .master-custom-color-picker{background:#373241;border-color:#45404f}

/* ===== Layout width fix v22.7 =====
   app-main became a column flex container in v22.6 for the sticky footer.
   Explicit width keeps app-content stretched instead of shrink-to-fit. */
.app-content{width:100%;}

/* Farmers page UI */
.farmers-filter-card .fp-card-body{padding-bottom:1rem}
.farmers-filter-form{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(180px,1fr) minmax(180px,1fr) auto;gap:.75rem;align-items:end}
.farmers-search-input .input-group-text{border-color:#d9d7dc;border-radius:9px 0 0 9px}
.farmers-search-input .form-control{border-radius:0 9px 9px 0}
.farmers-toolbar-actions{flex-wrap:nowrap}
.farmers-view-toggle{display:flex;gap:.45rem}
.farmers-view-toggle .btn{width:42px;height:42px;padding:0;display:grid;place-items:center;border-color:#d9d7dc}
.farmers-view-toggle .btn.active,.farmers-view-toggle .btn:hover{background:var(--fp-primary);border-color:var(--fp-primary);color:#fff}
.farmers-status-tabs{display:flex;gap:.8rem;flex-wrap:wrap;padding:1rem 1.15rem 1.15rem;border-top:1px solid var(--fp-border)}
.farmer-status-tab{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem .8rem;border-radius:999px;background:#fff;color:#6f6b7d;border:1px solid var(--fp-border);font-weight:600}
.farmer-status-tab:hover{color:var(--fp-primary);border-color:var(--fp-primary-soft);background:var(--fp-primary-soft)}
.farmer-status-tab.active{background:var(--fp-primary-soft);color:var(--fp-primary);border-color:rgba(115,103,240,.18)}
.farmer-status-icon{display:grid;place-items:center;font-size:1rem}
.farmer-status-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 .4rem;border-radius:999px;background:rgba(115,103,240,.12);color:inherit;font-size:.78rem;font-weight:700}
.farmer-results-header{flex-wrap:wrap}
.farmer-results-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
.farmer-avatar-wrapper{position:relative;width:42px;height:42px;flex-shrink:0}
.farmer-avatar-image{width:42px;height:42px;border-radius:50%;object-fit:cover;border:1px solid var(--fp-border)}
.farmer-avatar-fallback{width:42px;height:42px}
.farmer-table td:last-child{white-space:nowrap}
.farmer-action-group{display:flex;align-items:center;gap:.4rem}
.farmer-action-group form{margin:0}
.icon-action-btn{width:34px;height:34px;border-radius:9px;border:1px solid var(--fp-border);background:#fff;color:#6f6b7d;display:grid;place-items:center;padding:0;transition:.2s}
.icon-action-btn:hover{color:var(--fp-primary);border-color:var(--fp-primary);background:var(--fp-primary-soft)}
.farmers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}
.farmer-profile-card{background:#fff;border:1px solid var(--fp-border);border-radius:16px;overflow:hidden;box-shadow:var(--fp-shadow)}
.farmer-profile-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem 1rem .95rem;border-bottom:1px solid var(--fp-border)}
.farmer-profile-card__body{padding:1rem;display:grid;gap:.4rem;color:#5d596c}
.farmer-profile-card__body strong{color:var(--fp-text)}
.farmer-profile-card__footer{display:flex;justify-content:space-between;align-items:center;gap:.75rem;padding:.9rem 1rem;border-top:1px solid var(--fp-border)}
.min-w-0{min-width:0}
@media(max-width:991.98px){.farmers-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.farmers-toolbar-actions{justify-content:flex-start}}
@media(max-width:767.98px){.farmers-filter-form{grid-template-columns:1fr}.farmers-toolbar-actions{flex-wrap:wrap}.farmer-results-header,.farmer-profile-card__footer{flex-direction:column;align-items:flex-start}.farmer-results-actions{width:100%}.farmer-results-actions .btn{width:100%;justify-content:center}.farmers-grid{grid-template-columns:1fr}}

/* V22.9 universal sortable tables + Export control */
.table-export-tools{display:flex;justify-content:flex-end;align-items:center;padding:.7rem 1rem;border-bottom:1px solid var(--fp-border);background:var(--fp-card)}
.platform-export-btn{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;min-height:38px;font-weight:600;background:#fff;color:var(--fp-text);border-color:var(--fp-border)!important;box-shadow:0 1px 2px rgba(47,43,61,.04)}
.platform-export-btn:hover,.platform-export-btn:focus{background:#f8f8fa;color:var(--fp-primary);border-color:#cfcbd7!important}
.platform-export-btn::after{display:none}
.platform-export-menu{min-width:170px;padding:.4rem;border-radius:10px;border:1px solid var(--fp-border);box-shadow:0 .5rem 1.5rem rgba(47,43,61,.14)}
.platform-export-menu .dropdown-item{border-radius:7px;padding:.55rem .7rem;display:flex;align-items:center;font-size:.88rem}
.platform-export-menu .dropdown-item:hover{background:var(--fp-primary-soft);color:var(--fp-primary)}
.table thead th.sortable-column{cursor:pointer;user-select:none;position:relative;padding-right:2rem!important;transition:background .15s ease,color .15s ease}
.table thead th.sortable-column:hover{background:#f2f1f4;color:var(--fp-primary)}
.table-sort-indicator{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);width:14px;height:18px;opacity:.48}
.table-sort-indicator::before,.table-sort-indicator::after{position:absolute;left:2px;font-size:9px;line-height:1;color:currentColor}
.table-sort-indicator::before{content:'▲';top:1px}
.table-sort-indicator::after{content:'▼';bottom:1px}
.table thead th.sort-asc,.table thead th.sort-desc{color:var(--fp-primary);background:var(--fp-primary-soft)}
.table thead th.sort-asc .table-sort-indicator::before{opacity:1}.table thead th.sort-asc .table-sort-indicator::after{opacity:.2}
.table thead th.sort-desc .table-sort-indicator::before{opacity:.2}.table thead th.sort-desc .table-sort-indicator::after{opacity:1}
html[data-web-theme="dark"] .table-export-tools{background:var(--vx-surface,#2f2b3d);border-color:var(--vx-border,#45404f)}
html[data-web-theme="dark"] .platform-export-btn{background:#312d3f;color:#d7d5dd;border-color:#514c5b!important}
html[data-web-theme="dark"] .platform-export-btn:hover{background:#3b364a;color:#fff}
html[data-web-theme="dark"] .platform-export-menu{background:#312d3f;border-color:#514c5b}
html[data-web-theme="dark"] .platform-export-menu .dropdown-item{color:#d7d5dd}
html[data-web-theme="dark"] .platform-export-menu .dropdown-item:hover{background:rgba(115,103,240,.16);color:#b9b3ff}
html[data-web-theme="dark"] .table thead th.sortable-column:hover{background:#393445}
@media(max-width:575.98px){.table-export-tools{padding:.65rem .8rem}.platform-export-btn{width:100%}.table-export-tools>.dropdown{width:100%}}

/* v22.11 notification image + documents & records */
.notification-image-preview-wrap{display:flex;align-items:flex-start;gap:.75rem;flex-wrap:wrap}
.notification-image-preview-wrap img{width:min(240px,100%);max-height:170px;object-fit:cover;border:1px solid var(--fp-border);border-radius:12px;background:#f8f8fa}
.notification-history-image{width:96px;height:60px;object-fit:cover;border-radius:9px;border:1px solid var(--fp-border);display:block}
.farmer-notification-image{width:min(520px,100%);max-height:280px;object-fit:cover;border-radius:12px;border:1px solid var(--fp-border);display:block}
.document-file-icon{width:36px;height:36px;border-radius:9px;font-size:1rem;flex:0 0 auto}
html[data-web-theme="dark"] .notification-image-preview-wrap img,html[data-web-theme="dark"] .notification-history-image,html[data-web-theme="dark"] .farmer-notification-image{border-color:var(--vx-border);background:var(--vx-surface)}

/* Email template editor */
.master-email-template-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-top:1.25rem}
.master-email-template-heading h3{font-size:1rem;margin:0 0 .25rem;display:flex;align-items:center}
.master-email-templates .accordion-item{border:1px solid var(--fp-border);border-radius:12px!important;overflow:hidden;margin-bottom:.75rem;background:#fff}
.master-email-templates .accordion-button{background:#fff;box-shadow:none!important;padding:1rem 1.1rem;color:var(--fp-text)}
.master-email-templates .accordion-button:not(.collapsed){background:var(--fp-primary-soft);color:var(--fp-text)}
.master-template-name{display:flex;flex-direction:column;gap:.2rem;min-width:0}
.master-template-name small{font-weight:400;color:var(--fp-muted)}
.email-template-variables{display:flex;flex-wrap:wrap;gap:.4rem}
.email-template-variables code{background:#f3f2f5;color:#5d596c;padding:.28rem .48rem;border-radius:6px;font-size:.76rem}
.email-template-editor{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.82rem;line-height:1.5;min-height:320px}
html[data-web-theme="dark"] .master-email-templates .accordion-item,html[data-web-theme="dark"] .master-email-templates .accordion-button{background:var(--vx-surface)!important;border-color:var(--vx-border)!important;color:var(--vx-heading)}
html[data-web-theme="dark"] .email-template-variables code{background:#3b3748;color:#d7d2e4}
@media(max-width:767.98px){.master-email-template-heading{flex-direction:column}.email-template-editor{min-height:260px}}

/* V22.13 email-template workspace + Farmer APK management */
.email-template-workspace{display:grid;grid-template-columns:minmax(240px,310px) minmax(0,1fr);border:1px solid var(--fp-border);border-radius:14px;overflow:hidden;background:#fff;min-height:520px}
.email-template-list{border-right:1px solid var(--fp-border);background:#faf9fb;max-height:720px;overflow-y:auto;padding:.65rem}
.email-template-list-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.45rem .55rem .65rem;color:var(--fp-text)}
.email-template-list-head span{font-size:.75rem;color:var(--fp-muted);font-weight:600}
.email-template-tab{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) 10px;align-items:center;gap:.7rem;border:0;background:transparent;text-align:left;padding:.72rem .65rem;border-radius:10px;color:var(--fp-text);transition:.15s;margin:.08rem 0}
.email-template-tab:hover{background:#f1eff4}
.email-template-tab.active{background:var(--fp-primary-soft);color:var(--fp-primary)}
.email-template-tab-icon{width:36px;height:36px;border-radius:10px;background:#fff;border:1px solid var(--fp-border);display:grid;place-items:center;color:var(--fp-muted)}
.email-template-tab.active .email-template-tab-icon{color:var(--fp-primary);border-color:rgba(115,103,240,.22)}
.email-template-tab-copy{display:flex;flex-direction:column;gap:.12rem;min-width:0}
.email-template-tab-copy strong{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.email-template-tab-copy small{font-size:.72rem;color:var(--fp-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.email-template-status-dot{width:8px;height:8px;border-radius:50%;display:block}.email-template-status-dot.is-active{background:#10b981}.email-template-status-dot.is-disabled{background:#ea5455}
.email-template-editor-panel{min-width:0;background:#fff}
.email-template-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1.05rem 1.2rem;border-bottom:1px solid var(--fp-border)}
.email-template-editor-head h4{font-size:1rem;margin:0}.email-template-editor-head p{margin:.25rem 0 0;color:var(--fp-muted);font-size:.82rem}
.email-template-switch{white-space:nowrap;padding-top:.15rem}
.email-template-editor-body{padding:1.1rem 1.2rem 1.25rem;display:grid;gap:1rem}
.email-template-variables{display:flex;flex-wrap:wrap;gap:.4rem}
.email-variable-chip{border:0;background:transparent;padding:0}
.email-variable-chip code{display:inline-flex;background:#f3f2f5;color:#5d596c;padding:.3rem .5rem;border-radius:7px;font-size:.75rem;transition:.15s;border:1px solid transparent}
.email-variable-chip:hover code{background:var(--fp-primary-soft);color:var(--fp-primary);border-color:rgba(115,103,240,.16)}
.email-template-editor{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;font-size:.8rem;line-height:1.5;min-height:360px;resize:vertical}
.email-template-upload-row{display:flex;align-items:flex-end;gap:1rem}
.email-template-save-btn{min-width:145px;min-height:42px}
.apk-settings-layout{display:grid;gap:1.1rem}
.apk-upload-card{display:flex;align-items:center;gap:1rem;padding:1rem;border:1px solid var(--fp-border);border-radius:13px;background:#faf9fb}
.apk-upload-icon{width:50px;height:50px;border-radius:14px;display:grid;place-items:center;background:var(--fp-primary-soft);color:var(--fp-primary);font-size:1.35rem;flex:0 0 auto}
.apk-current-actions{margin-left:auto}
.apk-publish-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--fp-border);border-radius:12px;background:#faf9fb}
.apk-publish-row .form-switch .form-check-input{width:2.7rem;height:1.4rem}
.apk-danger-zone{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid var(--fp-border);padding:1rem 1.5rem;background:#fffafa}
.farmer-apk-page{max-width:1100px;margin:0 auto}
.farmer-apk-hero{display:flex;align-items:center;gap:1.2rem;padding:1.3rem 1.4rem}
.farmer-apk-icon{width:64px;height:64px;border-radius:18px;background:var(--fp-primary-soft);color:var(--fp-primary);display:grid;place-items:center;font-size:1.8rem;flex:0 0 auto}
.farmer-apk-copy{min-width:0;flex:1}.farmer-apk-copy h2{font-size:1.2rem;margin:0}.farmer-apk-copy p{margin:.25rem 0 0;color:var(--fp-muted)}
.farmer-apk-download-btn{margin-left:auto;white-space:nowrap}
.farmer-apk-release-notes{line-height:1.7;white-space:normal}
.farmer-apk-steps{list-style:none;padding:0;margin:0;display:grid;gap:1rem}.farmer-apk-steps li{display:flex;align-items:flex-start;gap:.8rem}.farmer-apk-steps li>span{width:30px;height:30px;border-radius:9px;background:var(--fp-primary-soft);color:var(--fp-primary);display:grid;place-items:center;font-weight:700;flex:0 0 auto}.farmer-apk-steps li div{display:flex;flex-direction:column;gap:.12rem}.farmer-apk-steps small{color:var(--fp-muted);line-height:1.45}
html[data-web-theme="dark"] .email-template-workspace,html[data-web-theme="dark"] .email-template-editor-panel{background:var(--vx-surface);border-color:var(--vx-border)}
html[data-web-theme="dark"] .email-template-list{background:#2c2838;border-color:var(--vx-border)}
html[data-web-theme="dark"] .email-template-tab:hover{background:#373241}html[data-web-theme="dark"] .email-template-tab-icon{background:#312d3f;border-color:var(--vx-border)}
html[data-web-theme="dark"] .email-template-editor-head{border-color:var(--vx-border)}
html[data-web-theme="dark"] .email-variable-chip code{background:#3b3748;color:#d7d2e4}
html[data-web-theme="dark"] .apk-upload-card,html[data-web-theme="dark"] .apk-publish-row{background:#2c2838;border-color:var(--vx-border)}
html[data-web-theme="dark"] .apk-danger-zone{background:#342c34;border-color:var(--vx-border)}
@media(max-width:991.98px){.email-template-workspace{grid-template-columns:1fr}.email-template-list{border-right:0;border-bottom:1px solid var(--fp-border);display:flex;gap:.45rem;overflow-x:auto;overflow-y:hidden;max-height:none}.email-template-list-head{display:none}.email-template-tab{min-width:210px;width:210px;grid-template-columns:32px minmax(0,1fr) 8px}.email-template-tab-icon{width:32px;height:32px}.farmer-apk-hero{align-items:flex-start;flex-wrap:wrap}.farmer-apk-download-btn{margin-left:0}}
@media(max-width:767.98px){.master-email-template-heading{flex-direction:column}.email-template-editor-head,.email-template-upload-row,.apk-upload-card,.apk-publish-row,.apk-danger-zone{flex-direction:column;align-items:stretch}.email-template-save-btn{width:100%}.email-template-editor{min-height:280px}.apk-current-actions{margin-left:0}.apk-current-actions .btn{width:100%}.farmer-apk-hero{padding:1rem}.farmer-apk-download-btn{width:100%}}

/* Notification create page */
.notification-compose-page{max-width:1200px;margin:0 auto;overflow:hidden}
.notification-type-grid-modal{grid-template-columns:repeat(4,minmax(0,1fr))}
.notification-compose-side-card{height:100%;border:1px solid var(--fp-border);border-radius:14px;background:#fafafa;padding:1rem}
.notification-compose-footer{display:flex;justify-content:flex-end;gap:.65rem;align-items:center;padding:1rem 1.15rem;border-top:1px solid var(--fp-border);background:#fff}
html[data-web-theme="dark"] .notification-compose-side-card{background:#2c2838;border-color:var(--vx-border)}
html[data-web-theme="dark"] .notification-compose-footer{background:var(--vx-surface);border-color:var(--vx-border)}
@media(max-width:991.98px){.notification-type-grid-modal{grid-template-columns:repeat(2,minmax(0,1fr))}.notification-compose-side-card{height:auto}}
@media(max-width:575.98px){.notification-type-grid-modal{grid-template-columns:1fr}.notification-compose-footer{display:grid;grid-template-columns:1fr}.notification-compose-footer .btn{width:100%}}
.notification-history-header{align-items:flex-end}
.notification-history-filter-wide{display:grid;grid-template-columns:minmax(220px,1.6fr) minmax(150px,.8fr) minmax(140px,.7fr) auto;gap:.55rem;align-items:center;flex:1;max-width:820px;margin-left:auto}
@media(max-width:991.98px){.notification-history-filter-wide{grid-template-columns:1fr 1fr;max-width:none;width:100%;margin-left:0}}
@media(max-width:575.98px){.notification-history-filter-wide{grid-template-columns:1fr}}
