:root{--bg:#f6f8fb;--card:#fff;--text:#1d2433;--muted:#657084;--line:#d9e0ea;--primary:#1f66d1;--danger:#bf2f2f;--ok:#16803c}*{box-sizing:border-box}body{margin:0;background:var(--bg);font-family:Segoe UI,Arial,sans-serif;color:var(--text)}a{color:var(--primary);text-decoration:none}.layout{display:flex;min-height:100vh}.side{width:250px;background:#101828;color:white;padding:22px}.brand{font-size:21px;font-weight:700;margin-bottom:24px}.side a{display:block;color:#d9e6ff;padding:10px;border-radius:8px;margin:4px 0}.side a:hover{background:#1d2939}.main{flex:1;padding:26px}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:0 1px 2px rgba(16,24,40,.06);margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.metric{font-size:32px;font-weight:700}.muted{color:var(--muted)}table{width:100%;border-collapse:collapse;background:white}th,td{border-bottom:1px solid var(--line);padding:11px;text-align:left}th{background:#f2f5fa;font-size:13px}.btn{display:inline-block;border:0;border-radius:8px;background:var(--primary);color:white;padding:9px 13px;cursor:pointer}.btn.secondary{background:#475467}.btn.danger{background:var(--danger)}.btn.ok{background:var(--ok)}input,select,textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px;margin:5px 0 12px;background:white}.formgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.badge{display:inline-block;padding:4px 9px;border-radius:999px;background:#e8eef8;font-size:12px}.login{max-width:430px;margin:8vh auto}.actions{display:flex;gap:8px;flex-wrap:wrap}.error{background:#ffecec;border:1px solid #ffc8c8;padding:12px;border-radius:8px}.success{background:#eaf8ef;border:1px solid #bde8c8;padding:12px;border-radius:8px}
.brand{display:flex;align-items:center;gap:10px}.brand-logo{max-width:42px;max-height:42px;object-fit:contain;background:#fff;border-radius:6px;padding:3px}.settings-logo-preview{max-width:220px;max-height:100px;object-fit:contain;border:1px solid #ddd;border-radius:8px;padding:8px;background:#fff}.template-block{border:1px solid #e5e7eb;border-radius:10px;padding:14px;margin:14px 0}.template-block textarea{width:100%;font-family:monospace}.muted{color:#6b7280}.alert{padding:10px 12px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;margin-bottom:14px}

.alert.error{background:#fee2e2;color:#991b1b;border-color:#fecaca}
.report-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.report-search{display:flex;gap:8px;align-items:center;margin-bottom:14px}.report-search input{margin:0;max-width:720px}.report-search .btn{white-space:nowrap}.table-scroll{overflow:auto;max-width:100%}.table-scroll table{min-width:1250px}.report-tabs .btn.secondary{background:#475467}@media(max-width:700px){.report-head,.report-search{display:block}.report-search .btn{margin-top:8px}}

/* Top menu layout */
body{padding-top:82px}.layout{display:block}.side{display:none}.app-shell{min-height:100vh}.topbar{position:fixed;top:0;left:0;right:0;z-index:1000;display:flex;align-items:center;gap:14px;min-height:72px;padding:10px 22px;background:#101828;color:#fff;box-shadow:0 8px 22px rgba(16,24,40,.16)}.topbar-brand{display:flex;align-items:center;gap:12px;font-size:22px;font-weight:800;white-space:nowrap}.topbar-brand .brand-logo,.brand-logo{max-width:150px;max-height:48px;object-fit:contain;background:#fff;border-radius:8px;padding:4px}.topnav{display:flex;align-items:center;gap:8px;flex:1;overflow-x:auto;padding:6px 2px}.topnav a{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;color:#d9e6ff;padding:10px 14px;border-radius:999px;font-weight:600;transition:background .15s ease,color .15s ease,transform .15s ease}.topnav a:hover{background:#1d2939;color:#fff;transform:translateY(-1px)}.topnav a.active{background:#1f66d1;color:#fff;box-shadow:0 6px 14px rgba(31,102,209,.25)}.topnav .logout-link{background:#344054;color:#fff}.topnav .logout-link:hover{background:#bf2f2f}.user-chip{display:flex;align-items:center;gap:8px;white-space:nowrap;background:#fff;color:#101828;border-radius:999px;padding:7px 10px;font-size:14px}.main{padding:28px;max-width:1600px;margin:0 auto}.page-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.page-title h1{margin:0;font-size:34px}.top{display:none}.menu-toggle{display:none;border:1px solid rgba(255,255,255,.22);background:#1d2939;color:#fff;border-radius:999px;padding:9px 13px;font-weight:700;cursor:pointer}
@media(max-width:1100px){body{padding-top:74px}.topbar{min-height:64px;flex-wrap:wrap}.menu-toggle{display:inline-block;margin-left:auto}.topnav{display:none;flex-basis:100%;order:10;overflow:visible;background:#101828;border-top:1px solid rgba(255,255,255,.12);padding:12px 0;flex-wrap:wrap}.menu-open .topnav{display:flex}.user-chip{margin-left:0}.topbar-brand .brand-logo,.brand-logo{max-width:130px;max-height:42px}.main{padding:22px}.page-title h1{font-size:28px}}
@media(max-width:700px){body{padding-top:72px}.topbar{padding:10px 14px}.topbar-brand{font-size:19px}.topbar-brand .brand-logo,.brand-logo{max-width:120px;max-height:38px}.topnav a{width:100%;justify-content:flex-start;border-radius:10px}.user-chip{width:100%;justify-content:space-between}.main{padding:16px}.page-title h1{font-size:24px}}

/* Custom login screen */
.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(320px,1.05fr) minmax(320px,.95fr);align-items:center;gap:32px;padding:40px;background:linear-gradient(135deg,#101828 0%,#1f66d1 58%,#f6f8fb 58%)}
.login-hero{color:#fff;max-width:680px;padding:28px}.login-logo{max-width:280px;max-height:100px;object-fit:contain;background:#fff;border-radius:14px;padding:10px;margin-bottom:24px;box-shadow:0 14px 30px rgba(0,0,0,.22)}.login-logo-placeholder{width:88px;height:88px;border-radius:22px;background:#fff;color:#1f66d1;display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:800;margin-bottom:24px}.login-hero h1{font-size:44px;line-height:1.1;margin:0 0 8px}.login-hero h2{font-size:30px;margin:0 0 22px;color:#e9f2ff}.login-instructions{font-size:17px;line-height:1.65;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:18px}.login-note{color:#dbeafe;font-size:14px;line-height:1.6;margin-top:18px}.login-page .login{width:100%;max-width:460px;margin:0 auto;padding:30px;border-radius:22px;box-shadow:0 22px 60px rgba(16,24,40,.22)}.login-page .login h2{margin-top:0;font-size:30px}.login-btn{width:100%;text-align:center;margin-top:8px;padding:12px 16px;font-weight:700}
@media(max-width:900px){.login-page{grid-template-columns:1fr;background:#f6f8fb;padding:22px}.login-hero{color:#101828;background:#fff;border:1px solid #d9e0ea;border-radius:22px;box-shadow:0 1px 2px rgba(16,24,40,.06)}.login-hero h2{color:#1f66d1}.login-instructions{background:#f2f5fa;border-color:#d9e0ea}.login-note{color:#657084}.login-logo{box-shadow:none;border:1px solid #d9e0ea}}
.alert.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;border-radius:10px;padding:10px 12px;margin-bottom:14px}
.report-links{display:inline-block;margin:2px 0;white-space:nowrap}
input[type=file]{padding:10px;background:#fff;border:1px solid #d7e0ec;border-radius:10px;width:100%}
small{display:block;margin-top:5px;color:#475569}

/* Gatepass print layout */
.gatepass{max-width:980px;margin:0 auto}.gatepass-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:2px solid #101828;padding-bottom:18px;margin-bottom:18px}.gatepass-logo{max-width:180px;max-height:70px;object-fit:contain;background:#fff;border:1px solid #d9e0ea;border-radius:8px;padding:6px;margin-bottom:8px}.gatepass-meta{text-align:right}.gatepass-meta h1{margin:0 0 10px;font-size:28px}.gatepass-table{width:100%;border-collapse:collapse}.gatepass-table th{width:18%;background:#f2f5fa}.gatepass-table th,.gatepass-table td{border:1px solid #d9e0ea;padding:11px;vertical-align:top}.gatepass-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:70px;text-align:center}.gatepass-signatures span{display:block;border-top:1px solid #101828;margin-bottom:8px}.gatepass-actions{max-width:980px;margin-left:auto;margin-right:auto}.no-print{display:block}@media print{body{padding-top:0;background:#fff}.topbar,.page-title,.no-print{display:none!important}.main{max-width:none;padding:0}.card{box-shadow:none;border:0}.gatepass{border:0}.gatepass-table th,.gatepass-table td{border:1px solid #333}.gatepass-head{border-bottom:2px solid #333}}

select[multiple] {
  min-height: 180px;
  padding: 8px;
}
select[multiple] option {
  padding: 7px 8px;
  border-bottom: 1px solid #eef2f7;
}
.gatepass h3 { margin-top: 24px; margin-bottom: 10px; }

/* User-friendly top header refinement */
.topbar{justify-content:space-between}.topbar-brand{min-width:120px}.topbar-brand .brand-logo{max-width:170px;max-height:52px}.topnav{justify-content:flex-start}.user-chip{display:none}.user-menu{position:relative;display:flex;align-items:center;margin-left:auto}.user-menu-button{display:flex;align-items:center;gap:10px;border:1px solid rgba(255,255,255,.18);background:#1d2939;color:#fff;border-radius:999px;padding:6px 10px 6px 6px;cursor:pointer;box-shadow:0 6px 14px rgba(0,0,0,.12)}.user-menu-button:hover{background:#263449}.user-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.9);background:#fff;color:#1f66d1;display:inline-flex;align-items:center;justify-content:center;font-weight:800}.avatar-initials{font-size:18px}.user-menu-name{font-weight:700;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu-caret{font-size:13px;color:#d9e6ff}.user-dropdown{display:none;position:absolute;right:0;top:calc(100% + 10px);min-width:220px;background:#fff;color:#101828;border:1px solid #d9e0ea;border-radius:14px;box-shadow:0 20px 45px rgba(16,24,40,.22);overflow:hidden;z-index:1200}.user-menu.open .user-dropdown{display:block}.user-dropdown-head{padding:14px 16px;border-bottom:1px solid #edf1f7}.user-dropdown-head strong{display:block;margin-bottom:4px}.user-dropdown-head span{display:block;color:#657084;font-size:13px}.user-dropdown .logout-link{display:block;background:#fff;color:#bf2f2f;padding:13px 16px;font-weight:700}.user-dropdown .logout-link:hover{background:#fee2e2;color:#991b1b}@media(max-width:1100px){.topbar{align-items:center}.menu-toggle{order:3;margin-left:0}.user-menu{order:2;margin-left:auto}.topnav{order:5}.user-menu-name{display:none}.user-menu-button{padding:5px}.user-menu-caret{display:none}.topbar-brand{min-width:auto}.topbar-brand .brand-logo{max-width:145px}}@media(max-width:700px){.user-avatar{width:38px;height:38px}.user-dropdown{right:-8px}.topbar-brand .brand-logo{max-width:135px}}

/* Search-and-add multiple asset picker */
.multi-asset-picker{border:1px solid #e5ebf3;background:#f8fafc;border-radius:12px;padding:12px;margin-bottom:14px}.asset-add-row{display:grid;grid-template-columns:1fr 1.3fr auto;gap:8px;align-items:center}.asset-add-row input,.asset-add-row select{margin:0}.picker-help{font-size:13px;margin:7px 0 10px}.selected-assets{background:#fff;border:1px solid #e5ebf3;border-radius:10px;min-height:48px;overflow:auto}.empty-selected{padding:14px}.selected-asset-table{margin:0}.selected-asset-table th,.selected-asset-table td{padding:8px;font-size:13px}.right{text-align:right}.btn-small{padding:5px 8px;font-size:12px}@media(max-width:900px){.asset-add-row{grid-template-columns:1fr}.asset-add-row .btn{width:100%}}
.gatepass-footer-address{margin-top:26px;border-top:1px solid #d9e0ea;padding-top:12px;text-align:center;color:#475467;font-size:13px;line-height:1.5}
@media print{.gatepass-footer-address{position:fixed;left:0;right:0;bottom:12px;border-top:1px solid #333;color:#000;background:#fff;padding-top:8px}.gatepass{padding-bottom:70px}}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
@media(max-width:800px){.grid-2{grid-template-columns:1fr}}

/* Dropdown top menu */
.nav-dropdown{position:relative;display:inline-flex;align-items:center}.nav-dropdown>button{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;color:#d9e6ff;background:transparent;border:0;padding:10px 14px;border-radius:999px;font-weight:700;cursor:pointer}.nav-dropdown:hover>button,.nav-dropdown.active>button{background:#1f66d1;color:#fff}.nav-dropdown-menu{display:none;position:absolute;top:100%;left:0;min-width:230px;background:#fff;color:#101828;border:1px solid #d9e0ea;border-radius:14px;box-shadow:0 16px 32px rgba(16,24,40,.18);padding:8px;z-index:1500}.nav-dropdown:hover .nav-dropdown-menu{display:block}.nav-dropdown-menu a{display:block;color:#101828;border-radius:10px;padding:10px 12px;text-align:left}.nav-dropdown-menu a:hover{background:#eef4ff;color:#1f66d1;transform:none}.workflow-tabs{margin-bottom:16px}.lifecycle-grid{grid-template-columns:repeat(auto-fit,minmax(420px,1fr))}@media(max-width:1100px){.nav-dropdown{width:100%;display:block}.nav-dropdown>button{width:100%;justify-content:flex-start;border-radius:10px}.nav-dropdown-menu{position:static;display:block;box-shadow:none;border:1px solid rgba(255,255,255,.12);background:#1d2939;margin:4px 0 8px}.nav-dropdown-menu a{color:#d9e6ff}.nav-dropdown-menu a:hover{background:#263449;color:#fff}.lifecycle-grid{grid-template-columns:1fr}}

/* Fixed hover/click dropdown menu behavior */
.topbar{overflow:visible!important;align-items:center!important}
.topnav{overflow:visible!important;flex-wrap:nowrap!important}
.nav-dropdown{position:relative!important;display:inline-flex!important;align-items:center!important}
.nav-dropdown>button.dropdown-toggle{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:#d9e6ff;border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer;line-height:1.2}
.nav-dropdown:hover>button.dropdown-toggle,.nav-dropdown:focus-within>button.dropdown-toggle,.nav-dropdown.open>button.dropdown-toggle,.nav-dropdown.active>button.dropdown-toggle{background:#1f66d1;color:#fff}
.nav-dropdown-menu{display:none!important;position:absolute!important;top:calc(100% + 8px)!important;left:0!important;min-width:245px!important;background:#fff!important;color:#101828!important;border:1px solid #d9e0ea!important;border-radius:14px!important;box-shadow:0 18px 42px rgba(16,24,40,.24)!important;padding:8px!important;z-index:5000!important}
.nav-dropdown:hover>.nav-dropdown-menu,.nav-dropdown:focus-within>.nav-dropdown-menu,.nav-dropdown.open>.nav-dropdown-menu{display:block!important}
.nav-dropdown-menu a{display:block!important;width:100%!important;color:#101828!important;background:#fff!important;border-radius:10px!important;padding:10px 12px!important;text-align:left!important;white-space:nowrap!important;font-weight:600!important}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus{background:#eef4ff!important;color:#1f66d1!important;transform:none!important}
.nav-dropdown-menu:before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px}
@media(max-width:1100px){.topnav{flex-wrap:wrap!important;overflow:visible!important}.nav-dropdown{width:auto!important;display:inline-flex!important}.nav-dropdown>button.dropdown-toggle{width:auto!important;justify-content:center!important}.nav-dropdown-menu{position:absolute!important;top:calc(100% + 8px)!important;left:0!important;background:#fff!important;border:1px solid #d9e0ea!important;box-shadow:0 18px 42px rgba(16,24,40,.24)!important;margin:0!important}.nav-dropdown-menu a{color:#101828!important;background:#fff!important}.nav-dropdown-menu a:hover{background:#eef4ff!important;color:#1f66d1!important}}
@media(max-width:700px){.topnav{gap:6px!important}.nav-dropdown-menu{left:0!important;right:auto!important;min-width:230px!important}.topnav>a{width:auto!important;justify-content:center!important}}
.asset-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.asset-toolbar .actions{display:flex;gap:6px;flex-wrap:wrap}.asset-search-form{display:flex;gap:8px;align-items:center}.asset-search-form input{min-width:260px}.permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin:10px 0 18px}.check-card{border:1px solid #d6e0ed;border-radius:10px;padding:10px;background:#fff}.nav-dropdown:hover .nav-dropdown-menu{display:block;opacity:1;visibility:visible;pointer-events:auto}.nav-dropdown-menu{display:none}.gatepass-signatures{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:55px;text-align:center}.gatepass-signatures span{display:block;border-top:1px solid #111;margin-bottom:8px;height:1px}
@media print{.gatepass-actions,.topbar,.page-title{display:none!important}.gatepass{box-shadow:none;border:0}.gatepass-footer-address{position:fixed;bottom:20px;left:20px;right:20px;text-align:center;border-top:1px solid #999;padding-top:8px}}

/* Enhanced blue + light orange UI refresh */
:root{--bg:#f6f9ff;--card:#fff;--text:#0b1f3a;--muted:#667085;--line:#d8e2ef;--primary:#1f66d1;--primary-dark:#0f2a4a;--orange:#fb923c;--orange-soft:#fff3e8;--blue-soft:#eef5ff;--shadow:0 10px 28px rgba(15,42,74,.08)}
body{background:linear-gradient(180deg,#f8fbff 0,#f4f7fb 42%,#f7f9fd 100%);color:var(--text)}
.topbar{background:#0f172a!important;border-bottom:3px solid rgba(251,146,60,.55)!important;box-shadow:0 12px 34px rgba(15,23,42,.18)!important}
.brand-logo{max-width:220px!important;max-height:60px!important;border-radius:10px!important;background:#fff!important;padding:6px!important;box-shadow:0 4px 14px rgba(0,0,0,.12)!important}
.topnav>a,.dropdown-toggle{border-radius:999px!important;padding:12px 18px!important;color:#dfe7f5!important;font-weight:700!important;transition:.18s ease!important}
.topnav>a:hover,.dropdown-toggle:hover,.topnav>a.active,.nav-dropdown.active>.dropdown-toggle{background:linear-gradient(135deg,var(--primary),#2e7df0)!important;color:#fff!important;box-shadow:0 10px 24px rgba(31,102,209,.25)!important}
.nav-dropdown-menu{border-top:4px solid var(--orange)!important;border-radius:16px!important;overflow:hidden!important}
.nav-dropdown-menu a:hover{background:linear-gradient(90deg,var(--blue-soft),var(--orange-soft))!important;color:#0b1f3a!important}
.main{padding:34px!important}.page-title h1{font-size:36px!important;letter-spacing:-.03em!important;color:#091b33!important}.card{border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:var(--shadow)!important;background:rgba(255,255,255,.96)!important}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:16px!important}.dashboard-metric{position:relative;overflow:hidden;padding:24px!important}.dashboard-metric:before{content:"";position:absolute;right:-28px;top:-28px;width:90px;height:90px;border-radius:50%;background:linear-gradient(135deg,rgba(31,102,209,.13),rgba(251,146,60,.18))}.dashboard-metric .metric{font-size:34px!important;color:#07162b!important}.approval-card,.process-card{margin-top:24px!important}.btn{background:linear-gradient(135deg,var(--primary),#2f7cf0)!important;border-radius:10px!important;font-weight:700!important;box-shadow:0 6px 16px rgba(31,102,209,.18)!important}.btn.secondary{background:#475569!important}.btn.ok{background:#16803c!important}.btn.danger{background:#bf2f2f!important}input,select,textarea{border-color:#d5dfec!important;border-radius:11px!important}.user-menu-button{border:1px solid rgba(255,255,255,.18)!important;background:#1e293b!important;border-radius:999px!important}.user-avatar{border:3px solid #fff!important;object-fit:cover!important}.avatar-initials{color:#fff!important;font-weight:800!important}.user-dropdown{border-radius:16px!important;border-top:4px solid var(--orange)!important;box-shadow:0 18px 42px rgba(15,23,42,.24)!important}.user-dropdown a{display:block;padding:10px 14px;color:#0b1f3a!important;border-radius:10px}.user-dropdown a:hover{background:var(--orange-soft)}
.profile-card{max-width:900px}.profile-hero{display:flex;gap:22px;align-items:center;margin-bottom:20px;padding:18px;border-radius:18px;background:linear-gradient(135deg,var(--blue-soft),var(--orange-soft))}.profile-avatar-large{width:112px;height:112px;border-radius:50%;object-fit:cover;border:5px solid #fff;box-shadow:0 12px 30px rgba(15,42,74,.18)}.profile-avatar-large.initials{display:flex;align-items:center;justify-content:center;color:#fff;font-size:44px;font-weight:800}.color-choices{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}.color-choice{width:34px;height:34px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:3px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.18)}.color-choice input{display:none}.color-choice input:checked+span{width:14px;height:14px;border-radius:50%;border:3px solid #fff;background:rgba(255,255,255,.1)}
@media(max-width:800px){.profile-hero{flex-direction:column;text-align:center}.brand-logo{max-width:160px!important}.main{padding:18px!important}}

/* Enterprise UI v2: requested brand colors + analytics dashboard */
:root{--menu-bg:#219ebc;--menu-btn:#e76f51;--menu-btn-dark:#d45f43;--deep:#073b4c;--card-blue:#219ebc;--card-orange:#e76f51;--card-teal:#2a9d8f;--card-yellow:#ffb703;--card-purple:#7c3aed;--card-green:#16a34a;--card-slate:#334155;--card-pink:#db2777}
.topbar{background:var(--menu-bg)!important;border-bottom:4px solid rgba(231,111,81,.85)!important;box-shadow:0 14px 36px rgba(33,158,188,.28)!important}
.topnav>a,.nav-dropdown>button.dropdown-toggle{background:rgba(255,255,255,.14)!important;color:#fff!important;border:1px solid rgba(255,255,255,.2)!important}
.topnav>a:hover,.topnav>a.active,.nav-dropdown:hover>button.dropdown-toggle,.nav-dropdown:focus-within>button.dropdown-toggle,.nav-dropdown.open>button.dropdown-toggle,.nav-dropdown.active>button.dropdown-toggle{background:var(--menu-btn)!important;color:#fff!important;box-shadow:0 10px 24px rgba(231,111,81,.35)!important}
.btn{background:linear-gradient(135deg,var(--menu-btn),#f68b63)!important}.btn:hover{filter:brightness(.98)}.btn.secondary{background:#264653!important}.nav-dropdown-menu{border-top:5px solid var(--menu-btn)!important}.nav-dropdown-menu a:hover{background:#fff0ea!important;color:#c85036!important}.user-menu-button{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.25)!important;color:#fff!important}
.enterprise-hero{display:flex;justify-content:space-between;align-items:center;gap:22px;background:linear-gradient(135deg,#073b4c 0%,#219ebc 58%,#8ecae6 100%)!important;color:#fff!important;border:0!important;overflow:hidden;position:relative}.enterprise-hero:after{content:"";position:absolute;right:-70px;top:-80px;width:230px;height:230px;border-radius:50%;background:rgba(231,111,81,.32)}.enterprise-hero h2{font-size:34px;margin:6px 0 8px;color:#fff}.enterprise-hero p{margin:0;color:#e9fbff;font-size:16px}.eyebrow{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.18);font-weight:800;font-size:12px;letter-spacing:.08em;text-transform:uppercase}.hero-actions{display:flex;gap:10px;position:relative;z-index:2;flex-wrap:wrap}.enterprise-metrics.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;margin:18px 0 20px}.kpi-card{border:0!important;color:#fff!important;min-height:142px;position:relative;overflow:hidden}.kpi-card:before{background:rgba(255,255,255,.2)!important;right:-34px!important;top:-34px!important;width:110px!important;height:110px!important}.kpi-card .metric{color:#fff!important;font-size:38px!important}.kpi-card small{color:rgba(255,255,255,.82)!important;margin-top:4px}.kpi-top{display:flex;flex-direction:column;gap:2px;font-weight:800}.card-total{background:linear-gradient(135deg,#264653,#0f172a)!important}.card-allocated{background:linear-gradient(135deg,#2a9d8f,#087f73)!important}.card-ready{background:linear-gradient(135deg,#219ebc,#0f82a0)!important}.card-donation{background:linear-gradient(135deg,#f4a261,#e76f51)!important}.card-scrap{background:linear-gradient(135deg,#e76f51,#b23a28)!important}.card-repair{background:linear-gradient(135deg,#ffb703,#fb8500)!important}.card-util{background:linear-gradient(135deg,#7c3aed,#4c1d95)!important}.card-value{background:linear-gradient(135deg,#16a34a,#166534)!important}.analytics-layout{display:grid;grid-template-columns:1.25fr .85fr;gap:18px;align-items:start}.chart-card{padding:22px!important}.chart-card.wide{grid-column:span 1}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.section-head h2{margin:0;font-size:22px;color:#073b4c}.section-head span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#e76f51;font-weight:900}.analytics-bars{display:flex;flex-direction:column;gap:12px}.bar-row{display:grid;grid-template-columns:minmax(120px,190px) 1fr 74px;gap:12px;align-items:center}.bar-label{font-weight:700;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-track{height:14px;border-radius:999px;background:#e7eef6;overflow:hidden;box-shadow:inset 0 1px 2px rgba(0,0,0,.06)}.bar-fill{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#219ebc,#e76f51)}.status-bars .bar-fill{background:linear-gradient(90deg,#2a9d8f,#219ebc)}.value-bars .bar-fill{background:linear-gradient(90deg,#e76f51,#ffb703)}.bar-row strong{text-align:right;color:#073b4c}.approval-card{border-left:6px solid #e76f51!important}table th{background:#eaf7fb!important;color:#073b4c!important}table tr:hover td{background:#fff7f3}.badge{background:#e0f5fb!important;color:#073b4c!important;font-weight:800}.main{max-width:1800px!important}
@media(max-width:1100px){.analytics-layout{grid-template-columns:1fr}.enterprise-hero{flex-direction:column;align-items:flex-start}.bar-row{grid-template-columns:1fr}.bar-row strong{text-align:left}.hero-actions{width:100%}.hero-actions .btn{flex:1;text-align:center}}

/* Enterprise audit + asset intelligence popup */
.asset-no-link{font-weight:800;color:#0f82a0;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}.asset-detail-modal{display:none;position:fixed;z-index:5000;inset:0;background:rgba(7,20,35,.72);padding:28px}.asset-detail-panel{background:#fff;border-radius:22px;max-width:1180px;height:92vh;margin:0 auto;overflow:auto;box-shadow:0 26px 70px rgba(0,0,0,.35);border-top:6px solid #e76f51}.asset-detail-header{position:sticky;top:0;background:linear-gradient(135deg,#073b4c,#219ebc);color:#fff;z-index:2;padding:22px 26px;display:flex;justify-content:space-between;gap:18px;align-items:center}.asset-detail-header h2{margin:6px 0 0;color:#fff}.modal-close{font-size:34px;line-height:1;border:0;border-radius:50%;width:46px;height:46px;background:rgba(255,255,255,.18);color:#fff;cursor:pointer}.asset-tabs{display:flex;gap:8px;flex-wrap:wrap;padding:16px 22px;border-bottom:1px solid #e5edf5;background:#f8fbff}.asset-tabs button{border:0;border-radius:999px;padding:10px 16px;background:#e8f3f8;color:#073b4c;font-weight:800;cursor:pointer}.asset-tabs button.active{background:#e76f51;color:#fff}.asset-detail-content{padding:24px}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.detail-cell{border:1px solid #d9e6ef;border-radius:14px;padding:14px;background:linear-gradient(180deg,#fff,#f9fcff)}.detail-cell small{display:block;color:#667085;text-transform:uppercase;font-weight:800;font-size:11px;letter-spacing:.06em;margin-bottom:7px}.detail-cell strong{display:block;font-size:16px;color:#0b1f3a;word-break:break-word}.doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.doc-card{border:1px solid #d9e6ef;border-radius:16px;padding:18px;background:#f7fbff;border-left:5px solid #219ebc}.doc-card strong{display:block;margin-bottom:8px}.doc-card.disabled{opacity:.55;border-left-color:#94a3b8}.timeline{position:relative;padding-left:8px}.timeline-item{display:grid;grid-template-columns:28px 1fr;gap:10px;margin-bottom:16px}.timeline-dot{width:14px;height:14px;border-radius:50%;background:#e76f51;margin-top:6px;box-shadow:0 0 0 5px #ffe8df}.timeline-content{background:#fff;border:1px solid #dbe8f3;border-radius:14px;padding:13px 15px}.timeline-content p{margin:7px 0}.audit-hero{margin-bottom:18px}.audit-print-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.table-scroll pre{white-space:pre-wrap;max-width:480px;max-height:240px;overflow:auto;background:#0f172a;color:#d1e7ff;border-radius:10px;padding:12px}details summary{cursor:pointer;font-weight:800;color:#219ebc}
@media(max-width:760px){.asset-detail-modal{padding:8px}.asset-detail-panel{height:96vh;border-radius:14px}.asset-detail-header{padding:18px}.asset-detail-content{padding:16px}.asset-tabs{padding:12px}.asset-tabs button{flex:1}.detail-grid{grid-template-columns:1fr}}
@media print{.topbar,.page-title,.asset-tabs,.modal-close,.btn,.report-search,.hero-actions{display:none!important}.card{box-shadow:none!important;border:1px solid #ccc!important}.main{max-width:none!important;padding:0!important}body{padding-top:0!important;background:#fff!important}}

/* Compact two-column forms and themed labels */
label{font-weight:800!important;color:var(--menu-bg,#219ebc)!important;}
.formgrid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))!important;gap:10px 16px!important;max-width:1180px;}
.card form{max-width:1180px;}
.card input,.card select,.card textarea{max-width:100%;}
.lifecycle-grid{grid-template-columns:repeat(auto-fit,minmax(460px,1fr))!important;align-items:start;}
.lifecycle-grid .card form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:16px;align-items:end;}
.lifecycle-grid .card form label{margin-top:2px;}
.lifecycle-grid .card form textarea,.lifecycle-grid .card form button,.lifecycle-grid .multi-asset-picker{grid-column:1/-1;}
.lifecycle-grid .card form button{width:max-content;min-width:150px;}
@media(max-width:760px){.lifecycle-grid{grid-template-columns:1fr!important}.lifecycle-grid .card form{grid-template-columns:1fr}.card form,.formgrid{max-width:none}}

/* Asset master/dropdown/date-format update */
.formgrid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px 18px;align-items:start;}
.formgrid label,.compact-form label,label{font-weight:700;color:var(--primary,#0f766e);}
.date-dmy{letter-spacing:.02em;}
@media(max-width:760px){.formgrid{grid-template-columns:1fr;}}

/* Asset Add free-text fields: visually uppercase while typing, keep browser spellcheck active, then save uppercase on blur/submit. */
.asset-uppercase-spellcheck{ text-transform:uppercase!important; }

/* Global form enhancement: spellcheck-friendly uppercase + real-time validation */
.global-uppercase-spellcheck{ text-transform:uppercase; }
.field-error{ border-color:#dc2626!important; box-shadow:0 0 0 3px rgba(220,38,38,.14)!important; background:#fff7f7!important; }
.field-error-message{ display:block; margin-top:4px; color:#b91c1c; font-size:12px; font-weight:700; }

.lifecycle-review-box{margin-top:10px;padding:10px;border:1px solid #d9e2ef;border-radius:8px;background:#f8fbff;line-height:1.6}

.return-user-review {
  margin: 10px 0 14px;
  padding: 10px 12px;
  border: 1px solid #d7dde8;
  border-radius: 8px;
  background: #f8fafc;
  line-height: 1.7;
}

/* Clickable dashboard KPI cards */
.kpi-link{display:block;text-decoration:none!important;cursor:pointer;transition:transform .16s ease, box-shadow .16s ease, filter .16s ease;}
.kpi-link:hover,.kpi-link:focus{transform:translateY(-3px);filter:brightness(1.05);box-shadow:0 18px 34px rgba(15,23,42,.22)!important;outline:3px solid rgba(255,255,255,.35);outline-offset:-6px;}
.kpi-view{position:absolute;right:18px;bottom:14px;z-index:2;color:rgba(255,255,255,.9);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.07em;}
.kpi-link .kpi-top,.kpi-link .metric{position:relative;z-index:2;}

/* Column-level sort/filter controls */
table.data-filter-table th.sortable-th, table.asset-list-table th.sortable-th{cursor:pointer;position:relative;padding-right:20px;user-select:none;}
table.data-filter-table th.sortable-th:after, table.asset-list-table th.sortable-th:after{content:'↕';position:absolute;right:6px;top:50%;transform:translateY(-50%);font-size:11px;opacity:.55;}
table.data-filter-table th.sort-asc:after, table.asset-list-table th.sort-asc:after{content:'↑';opacity:1;}
table.data-filter-table th.sort-desc:after, table.asset-list-table th.sort-desc:after{content:'↓';opacity:1;}
.filter-row th{background:#f8fbff!important;padding:4px!important;}
.column-filter{width:100%;min-width:80px;font-size:12px;padding:5px 6px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;}
.email-logs-popup{width:1100px;max-width:96vw;max-height:90vh;overflow:auto;padding:22px;}
.email-log-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin:12px 0 14px;}
.email-log-filter label{display:flex;flex-direction:column;gap:4px;}
.email-log-table-wrap{max-height:58vh;overflow:auto;}
.asset-list-table td{vertical-align:top;}

/* Fix Client Assets dashboard card theme: keep it readable and consistent with other KPI cards. */
.dashboard-metric.card-client,
.kpi-card.card-client{
  background:linear-gradient(135deg,#0ea5e9,#0369a1)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(3,105,161,.22)!important;
}
.dashboard-metric.card-client:before,
.kpi-card.card-client:before{
  content:"";
  position:absolute;
  right:-34px!important;
  top:-34px!important;
  width:110px!important;
  height:110px!important;
  border-radius:999px;
  background:rgba(255,255,255,.22)!important;
}
.dashboard-metric.card-client .metric,
.dashboard-metric.card-client .kpi-top span,
.dashboard-metric.card-client .kpi-view,
.kpi-card.card-client .metric,
.kpi-card.card-client .kpi-top span,
.kpi-card.card-client .kpi-view{
  color:#fff!important;
  opacity:1!important;
}
.dashboard-metric.card-client small,
.kpi-card.card-client small{
  color:rgba(255,255,255,.86)!important;
  opacity:1!important;
}

.avatar-icon{display:flex;align-items:center;justify-content:center;color:#fff;font-size:46px;font-weight:800}.avatar-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:12px;margin:12px 0 18px}.avatar-choice{border:1px solid #d5dfec;border-radius:14px;padding:10px;text-align:center;cursor:pointer;background:#fff;display:flex;flex-direction:column;align-items:center;gap:6px}.avatar-choice input{display:none}.avatar-choice-face{width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:26px;color:#fff;border:3px solid #fff;box-shadow:0 5px 14px rgba(15,23,42,.18)}.avatar-choice input:checked+.avatar-choice-face{outline:4px solid rgba(31,102,209,.35)}.avatar-choice span:last-child{font-weight:700;font-size:12px;color:#475569}.user-avatar.avatar-initials{font-size:20px;line-height:1}.profile-card+.profile-card{margin-top:18px}

/* Clipart avatar update */
.profile-avatar-large{background:#eef6fb!important;}
.avatar-choice-face{width:78px!important;height:78px!important;background:#eef6fb!important;overflow:hidden;padding:0!important;border:3px solid #fff!important;}
.avatar-choice-face img{width:100%;height:100%;object-fit:cover;display:block;}
.avatar-choice input:checked+.avatar-choice-face{outline:4px solid rgba(31,102,209,.45);box-shadow:0 0 0 6px rgba(249,115,22,.16),0 8px 22px rgba(15,23,42,.18)!important;}
.avatar-picker{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;}
.user-avatar{background:#eef6fb!important;}
.forgot-password-link{margin:12px 0 0;text-align:right;font-weight:700;}
.forgot-password-link a{color:var(--primary);text-decoration:none;}
.reset-card{max-width:460px;margin:auto;}
.success{background:#e8fff1;border:1px solid #9be7b3;color:#116329;padding:10px 12px;border-radius:10px;margin:10px 0;}


/* Compact profile avatar selector - clipart style matching approved sample */
.avatar-section-title{font-weight:800;color:#1e293b;margin:16px 0 8px;font-size:15px;}
.compact-avatar-picker{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(82px,1fr))!important;gap:10px!important;margin:8px 0 14px!important;}
.compact-avatar-choice{padding:6px!important;border-radius:12px!important;gap:4px!important;min-height:auto!important;}
.compact-avatar-choice .avatar-choice-face{width:58px!important;height:58px!important;border-radius:50%!important;background:#eef6fb!important;box-shadow:0 3px 10px rgba(15,23,42,.12)!important;}
.compact-avatar-choice .avatar-choice-face img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;}
.compact-avatar-choice span:last-child{font-size:10px!important;line-height:1.15!important;color:#475569!important;font-weight:700!important;}
.compact-avatar-choice input:checked+.avatar-choice-face{outline:3px solid rgba(31,102,209,.55)!important;box-shadow:0 0 0 5px rgba(249,115,22,.16),0 5px 14px rgba(15,23,42,.18)!important;}
.profile-avatar-large{background:#eef6fb!important;}
.user-dropdown a{display:block;padding:11px 16px;color:#0b1f3a!important;text-decoration:none;font-weight:700;}
.user-dropdown a:hover{background:#fff7ed!important;color:#c2410c!important;}

/* Refined professional clipart avatars */
.avatar-picker.compact-avatar-picker{grid-template-columns:repeat(auto-fill,minmax(92px,1fr))!important;gap:12px!important;}
.compact-avatar-choice{background:linear-gradient(180deg,#fff,#f8fafc)!important;border:1px solid #dbe4ef!important;box-shadow:0 4px 12px rgba(15,23,42,.06)!important;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease!important;}
.compact-avatar-choice:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(15,23,42,.12)!important;border-color:#93c5fd!important;}
.compact-avatar-choice .avatar-choice-face{width:64px!important;height:64px!important;background:#eef6fb!important;border:3px solid #fff!important;box-shadow:0 6px 16px rgba(15,23,42,.14)!important;}
.compact-avatar-choice input:checked+.avatar-choice-face{outline:3px solid #2563eb!important;box-shadow:0 0 0 6px rgba(37,99,235,.13),0 8px 20px rgba(15,23,42,.18)!important;}
.avatar-section-title{padding-top:6px;border-top:1px solid #eef2f7;color:#0f172a!important;}
.profile-hero{background:linear-gradient(135deg,#eef6ff,#fff7ed)!important;}
.profile-avatar-large{width:118px!important;height:118px!important;box-shadow:0 16px 38px rgba(15,23,42,.18)!important;}

/* IT/Admin Assets dashboard card themes */
.dashboard-metric.card-it-assets,
.kpi-card.card-it-assets{
  background:linear-gradient(135deg,#2563eb,#1e3a8a)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(30,58,138,.22)!important;
}
.dashboard-metric.card-admin-assets,
.kpi-card.card-admin-assets{
  background:linear-gradient(135deg,#64748b,#334155)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(51,65,85,.22)!important;
}
.dashboard-metric.card-it-assets:before,
.kpi-card.card-it-assets:before,
.dashboard-metric.card-admin-assets:before,
.kpi-card.card-admin-assets:before{
  content:"";
  position:absolute;
  right:-34px!important;
  top:-34px!important;
  width:110px!important;
  height:110px!important;
  border-radius:999px;
  background:rgba(255,255,255,.22)!important;
}
.dashboard-metric.card-it-assets .metric,
.dashboard-metric.card-it-assets .kpi-top span,
.dashboard-metric.card-it-assets .kpi-view,
.dashboard-metric.card-admin-assets .metric,
.dashboard-metric.card-admin-assets .kpi-top span,
.dashboard-metric.card-admin-assets .kpi-view{
  color:#fff!important;
  opacity:1!important;
}
.dashboard-metric.card-it-assets small,
.dashboard-metric.card-admin-assets small{
  color:rgba(255,255,255,.86)!important;
  opacity:1!important;
}


/* Audit dashboard compact card layout - match user dashboard cards */
.audit-metrics.dashboard-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(190px,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
  margin:18px 0 22px!important;
}
.audit-metrics .kpi-card{
  min-height:126px!important;
  margin-bottom:0!important;
  padding:20px 22px!important;
  border-radius:18px!important;
}
.audit-metrics .kpi-card .metric{
  font-size:34px!important;
  line-height:1.05!important;
  margin-top:8px!important;
}
.audit-metrics .kpi-top{
  font-size:15px!important;
  line-height:1.2!important;
  max-width:145px!important;
  word-break:break-word!important;
}
.audit-metrics .kpi-card small{
  font-size:12px!important;
  line-height:1.3!important;
}
@media(max-width:760px){
  .audit-metrics.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .audit-metrics .kpi-card{min-height:116px!important;padding:16px!important;}
  .audit-metrics .kpi-card .metric{font-size:28px!important;}
}
@media(max-width:460px){
  .audit-metrics.dashboard-grid{grid-template-columns:1fr!important;}
}


/* Rental dashboard cards - same enterprise KPI theme as existing dashboard cards. */
.kpi-card.card-rental{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;color:#fff!important;box-shadow:0 14px 30px rgba(37,99,235,.22)!important;}
.kpi-card.card-rent-expiry{background:linear-gradient(135deg,#7c3aed,#5b21b6)!important;color:#fff!important;box-shadow:0 14px 30px rgba(91,33,182,.22)!important;}
.kpi-card.card-rental:before,.kpi-card.card-rent-expiry:before{background:rgba(255,255,255,.2)!important;}
.kpi-card.card-rental .metric,.kpi-card.card-rental .kpi-top span,.kpi-card.card-rental .kpi-view,.kpi-card.card-rent-expiry .metric,.kpi-card.card-rent-expiry .kpi-top span,.kpi-card.card-rent-expiry .kpi-view{color:#fff!important;opacity:1!important;}
.kpi-card.card-rental small,.kpi-card.card-rent-expiry small{color:rgba(255,255,255,.84)!important;}


/* Leased KPI cards - enterprise colour theme (fix white/blank cards). */
.kpi-card.card-leased{background:linear-gradient(135deg,#0f766e,#115e59)!important;color:#fff!important;box-shadow:0 14px 30px rgba(15,118,110,.22)!important;}
.kpi-card.card-lease-expiry{background:linear-gradient(135deg,#ea580c,#c2410c)!important;color:#fff!important;box-shadow:0 14px 30px rgba(194,65,12,.22)!important;}
.kpi-card.card-leased:before,.kpi-card.card-lease-expiry:before{background:rgba(255,255,255,.2)!important;}
.kpi-card.card-leased .metric,.kpi-card.card-leased .kpi-top span,.kpi-card.card-leased .kpi-view,.kpi-card.card-lease-expiry .metric,.kpi-card.card-lease-expiry .kpi-top span,.kpi-card.card-lease-expiry .kpi-view{color:#fff!important;opacity:1!important;}
.kpi-card.card-leased small,.kpi-card.card-lease-expiry small{color:rgba(255,255,255,.84)!important;}

/* Personal dashboard card arrangement. */
.dashboard-layout-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:4px 0 10px;}
.dashboard-layout-toolbar .muted{margin-right:auto;}
.dashboard-arrange-mode .kpi-card{cursor:grab!important;outline:2px dashed rgba(7,59,76,.28);outline-offset:-5px;user-select:none;}
.dashboard-arrange-mode .kpi-card:after{content:'DRAG TO REORDER';position:absolute;left:16px;bottom:13px;font-size:10px;font-weight:900;letter-spacing:.08em;color:rgba(255,255,255,.85);z-index:3;}
.dashboard-arrange-mode .kpi-card .kpi-view{display:none;}
.dashboard-arrange-mode .kpi-card.dragging{opacity:.5;transform:scale(.98);cursor:grabbing!important;}
@media(max-width:640px){.dashboard-layout-toolbar{justify-content:stretch}.dashboard-layout-toolbar .muted{width:100%;}.dashboard-layout-toolbar .btn{flex:1;}}

/* Shared asset/report table pagination */
.asset-pagination-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:12px 0;padding:10px 12px;border:1px solid #d9e6ef;border-radius:12px;background:linear-gradient(180deg,#ffffff,#f7fbff);}
.asset-pagination-size label{display:flex;align-items:center;gap:8px;font-weight:700;color:#334155}.asset-page-size{min-width:88px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:9px;background:#fff}.asset-page-summary{font-weight:700;color:#475569}.asset-page-navigation{display:flex;gap:8px}.asset-page-btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.asset-pagination-bottom{margin-top:14px}.asset-pagination-top{margin-bottom:10px}@media(max-width:720px){.asset-pagination-controls{align-items:stretch}.asset-pagination-size,.asset-page-summary,.asset-page-navigation{width:100%}.asset-page-navigation .btn{flex:1}}

/* 14-inch laptop workflow optimization: Allocation / Return / Status Change */
.allocation-return-page{grid-template-columns:1fr!important;gap:10px!important;}
.allocation-return-page .allocation-return-card{max-width:none!important;}
.allocation-return-page .allocation-return-form{max-width:none!important;}

/* Normal desktop: two field pairs per row (label/control + label/control). */
@media (min-width: 1050px){
  .allocation-return-page .allocation-return-form{
    display:grid!important;
    grid-template-columns:150px minmax(220px,1fr) 150px minmax(220px,1fr)!important;
    column-gap:12px!important;
    row-gap:7px!important;
    align-items:center!important;
  }
  .allocation-return-page .allocation-return-form > label{
    margin:0!important;
    align-self:center!important;
    line-height:1.2!important;
  }
  .allocation-return-page .allocation-return-form > input,
  .allocation-return-page .allocation-return-form > select{
    margin:0!important;
    min-height:38px!important;
    padding:7px 10px!important;
  }
  .allocation-return-page .allocation-return-form > label:has(+ textarea){
    grid-column:1/2!important;
    align-self:start!important;
    padding-top:7px!important;
  }
  .allocation-return-page .allocation-return-form > textarea{
    grid-column:2/-1!important;
    margin:0!important;
    min-height:52px!important;
    max-height:72px!important;
    resize:vertical!important;
    padding:8px 10px!important;
  }
  .allocation-return-page .allocation-return-form > button{
    grid-column:4/5!important;
    justify-self:end!important;
    margin-top:2px!important;
    min-width:170px!important;
  }
  .allocation-return-page .status-change-clean > .multi-asset-picker{
    grid-column:1/-1!important;
    margin-bottom:2px!important;
  }
  .allocation-return-page .status-change-clean > label{
    grid-column:1/2!important;
  }
  .allocation-return-page .status-change-clean > select{
    grid-column:2/4!important;
  }
  .allocation-return-page .status-change-clean > button{
    grid-column:4/5!important;
    align-self:center!important;
  }
}

/* Typical 14-inch laptop viewport (768-950 px usable height). */
@media (min-width:1050px) and (max-height:950px){
  .main{padding-top:16px!important;padding-bottom:18px!important;}
  .page-title{margin-bottom:10px!important;}
  .page-title h1{font-size:28px!important;line-height:1.1!important;}
  .workflow-tabs{margin-bottom:10px!important;gap:6px!important;}
  .workflow-tabs .btn{padding:8px 12px!important;}
  .allocation-return-page .allocation-return-card,
  .allocation-return-page .status-change-card{padding:14px 18px!important;margin-bottom:10px!important;}
  .allocation-return-page .allocation-return-card h2,
  .allocation-return-page .status-change-card h2{font-size:22px!important;margin:0 0 4px!important;line-height:1.15!important;}
  .allocation-return-page .form-subtitle{margin:0 0 10px!important;font-size:14px!important;line-height:1.35!important;}
  .allocation-return-page .allocation-return-form{row-gap:6px!important;}
  .allocation-return-page .allocation-return-form > input,
  .allocation-return-page .allocation-return-form > select{min-height:36px!important;padding:6px 9px!important;font-size:14px!important;}
  .allocation-return-page .allocation-return-form > textarea{min-height:46px!important;max-height:58px!important;}
  .allocation-return-page .multi-asset-picker{padding:9px!important;margin:0!important;}
  .allocation-return-page .asset-add-row{gap:7px!important;}
  .allocation-return-page .picker-help{font-size:12px!important;margin-top:2px!important;}
  .allocation-return-page .selected-assets{margin-top:4px!important;}
  .allocation-return-page .btn{padding:8px 12px!important;}
}

/* Mid-size screens retain the safer one-field-per-row layout. */
@media (min-width:761px) and (max-width:1049px){
  .allocation-return-page .allocation-return-form{grid-template-columns:150px minmax(0,1fr)!important;row-gap:7px!important;}
  .allocation-return-page .allocation-return-form > textarea,
  .allocation-return-page .allocation-return-form > button,
  .allocation-return-page .allocation-return-form > .multi-asset-picker{grid-column:1/-1!important;}
}

/* Enterprise Audit Dashboard KPI drill-down */
.audit-kpi-link{display:block!important;text-decoration:none!important;color:inherit!important;cursor:pointer!important;transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important}
.audit-kpi-link:hover,.audit-kpi-link:focus{transform:translateY(-3px)!important;filter:brightness(1.035);box-shadow:0 16px 34px rgba(23,42,74,.20)!important;outline:3px solid rgba(31,102,209,.18);outline-offset:2px}
.audit-kpi-link.audit-kpi-selected{box-shadow:0 0 0 4px rgba(255,255,255,.72),0 0 0 7px rgba(31,102,209,.32),0 16px 34px rgba(23,42,74,.20)!important}
.audit-drilldown{scroll-margin-top:90px}
.audit-drill-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}
.audit-drill-controls form{margin:0}.audit-drill-controls label{display:flex;align-items:center;gap:8px;font-weight:700}.audit-drill-controls select{width:auto!important;min-width:86px;margin:0!important;padding:8px 10px!important}.audit-drill-pager{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.audit-drill-table{min-width:1180px}.audit-drill-table pre{max-width:520px;white-space:pre-wrap;word-break:break-word;font-size:11px}.audit-drill-controls-bottom{border-top:1px solid #e3e8f0;padding-top:12px;margin-top:12px}

/* Dashboard density refresh: compact hero + 5 KPI cards per row + stronger themed visuals */
.enterprise-hero{padding:24px 24px!important;min-height:156px!important;gap:16px!important;border-radius:22px!important}
.enterprise-hero h2{font-size:22px!important;line-height:1.15!important;margin:4px 0 6px!important}
.enterprise-hero p{font-size:14px!important;max-width:760px}
.hero-actions .btn,.hero-actions a{padding:8px 14px!important;font-size:12px!important;min-height:auto!important}
.enterprise-metrics.dashboard-grid{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important}
.dashboard-metric.kpi-card{min-height:144px!important;padding:14px 14px 12px!important;border-radius:16px!important;box-shadow:0 10px 24px rgba(15,23,42,.12)!important}
.dashboard-metric .metric{font-size:28px!important;line-height:1!important;margin-top:8px}
.dashboard-metric .kpi-top span{font-size:15px!important;line-height:1.2!important}
.dashboard-metric .kpi-top small{font-size:11px!important;line-height:1.25!important;opacity:.92!important}
.kpi-icon-badge{width:34px!important;height:34px!important;border-radius:12px!important;background:rgba(255,255,255,.22)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.15)}
.kpi-icon-badge svg{width:18px!important;height:18px!important;opacity:1!important}
.kpi-illustration{position:absolute;right:12px;bottom:12px;opacity:.28!important;transform:none!important}
.kpi-illustration svg{width:52px!important;height:52px!important;stroke-width:1.9!important;filter:drop-shadow(0 4px 10px rgba(255,255,255,.12))}
.kpi-operational{font-size:11px!important;margin-top:10px!important}
.kpi-view{font-size:10px!important;right:12px!important;bottom:10px!important;letter-spacing:.05em!important}
.card-total{background:linear-gradient(135deg,#1d4ed8,#1e3a8a)!important}
.card-allocated{background:linear-gradient(135deg,#10b981,#047857)!important}
.card-ready{background:linear-gradient(135deg,#06b6d4,#2563eb)!important}
.card-donation{background:linear-gradient(135deg,#fb923c,#f97316)!important}
.card-scrap{background:linear-gradient(135deg,#ef4444,#dc2626)!important}
.kpi-card.card-client{background:linear-gradient(135deg,#0ea5e9,#0284c7)!important}
.kpi-card.card-leased{background:linear-gradient(135deg,#14b8a6,#0f766e)!important}
.kpi-card.card-lease-expiry{background:linear-gradient(135deg,#f97316,#ea580c)!important}
.kpi-card.card-rental{background:linear-gradient(135deg,#3b82f6,#1d4ed8)!important}
.kpi-card.card-rent-expiry{background:linear-gradient(135deg,#8b5cf6,#6d28d9)!important}
.kpi-card.card-it-assets{background:linear-gradient(135deg,#2563eb,#1e40af)!important}
.kpi-card.card-admin-assets{background:linear-gradient(135deg,#475569,#334155)!important}
.card-repair{background:linear-gradient(135deg,#f59e0b,#ea580c)!important}
.card-util{background:linear-gradient(135deg,#8b5cf6,#7c3aed)!important}
.card-value{background:linear-gradient(135deg,#22c55e,#15803d)!important}
@media (max-width: 1500px){.enterprise-metrics.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.enterprise-hero{min-height:148px!important}}
@media (max-width: 1200px){.enterprise-metrics.dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.enterprise-hero{padding:20px!important;min-height:136px!important}}
@media (max-width: 900px){.enterprise-metrics.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.enterprise-hero{min-height:auto!important;align-items:flex-start!important;flex-direction:column!important}.hero-actions{width:100%}}
@media (max-width: 560px){.enterprise-metrics.dashboard-grid{grid-template-columns:1fr!important}.dashboard-metric.kpi-card{min-height:136px!important}}


/* Gatepass A4 print and clean document presentation - V7.2.8 */
.gatepass-document{max-width:190mm;margin:0 auto;padding:10mm;background:#fff;color:#111;border:1px solid #d7dde5;border-radius:8px;box-shadow:none}
.gatepass-document-header{text-align:center;border-bottom:1.5px solid #222;padding-bottom:4mm;margin-bottom:4mm}
.gatepass-document-header .gatepass-logo{display:block;margin:0 auto 2.5mm;max-width:46mm;max-height:14mm;width:auto;height:auto;object-fit:contain;object-position:center;border:0;border-radius:0;padding:0;background:transparent}
.gatepass-document-header h2{margin:0 auto;max-width:100%;padding:0 5mm;font-size:20px;line-height:1.15;text-align:center;text-transform:uppercase;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.gatepass-document-header h3{margin:1.5mm 0 0;font-size:15px;line-height:1.2}
.gatepass-info-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:4mm;margin-bottom:4mm}
.gatepass-info-box{border:1px solid #333;padding:3mm;min-width:0}
.gatepass-info-box h4{margin:0 0 2mm;text-transform:uppercase;font-size:12px}
.gatepass-info-box p{margin:1.2mm 0;font-size:10px;line-height:1.35;overflow-wrap:anywhere}
.gatepass-meta-box p{display:grid;grid-template-columns:38mm minmax(0,1fr);gap:2mm}
.gatepass-section-title{font-size:12px;margin:4mm 0 2mm;text-transform:uppercase}
.gatepass-document .gatepass-table{width:100%!important;max-width:100%!important;border-collapse:collapse!important;table-layout:fixed!important;margin:0!important}
.gatepass-document .gatepass-table th,.gatepass-document .gatepass-table td{border:1px solid #333!important;padding:2mm!important;vertical-align:top!important;font-size:9px!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
.gatepass-document .gatepass-table th{font-weight:700;background:#f3f5f7!important;text-align:left}
.gatepass-document .gatepass-signatures{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5mm;margin-top:18mm;text-align:center;font-size:9px}
.gatepass-document .gatepass-signatures>div{min-width:0;overflow-wrap:anywhere}
.gatepass-document .gatepass-signatures span{display:block;border-top:1px solid #222;margin-bottom:2mm;height:1px}
.gatepass-document .gatepass-footer-address{margin-top:8mm;border-top:1px solid #777;padding:2mm 6mm 0;text-align:center;font-size:8px;line-height:1.35;color:#222;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.gatepass-print-sheet{width:100%;margin:0 auto}

@page{size:A4 portrait;margin:10mm}
@media print{
  html,body{width:210mm!important;min-height:297mm!important;margin:0!important;padding:0!important;background:#fff!important}
  .topbar,.topnav,.page-breadcrumb,.page-title,.app-footer,.gatepass-actions,.enterprise-table-toolbar,.wide-table-scrollbar,.command-palette,.asset-detail-modal,.skip-link{display:none!important}
  .app-shell,.main,.page-content-shell{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important;background:#fff!important;overflow:visible!important}
  .gatepass-document{width:190mm!important;max-width:190mm!important;margin:0 auto!important;padding:0!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .gatepass-document-header{break-inside:avoid;page-break-inside:avoid}
  .gatepass-info-grid{break-inside:avoid;page-break-inside:avoid}
  .gatepass-document .gatepass-table{width:190mm!important;max-width:190mm!important;table-layout:fixed!important}
  .gatepass-document .gatepass-table thead{display:table-header-group}
  .gatepass-document .gatepass-table tr{break-inside:avoid;page-break-inside:avoid}
  .gatepass-document .gatepass-signatures{break-inside:avoid;page-break-inside:avoid}
  .gatepass-document .gatepass-footer-address{position:static!important;left:auto!important;right:auto!important;bottom:auto!important;background:#fff!important}
  a{color:inherit!important;text-decoration:none!important}
}
