/* Apple90 V9 — unified theme tokens and premium navigation */
:root,html[data-theme="light"]{
 --ui-bg:#f4f7fb;--ui-panel:#ffffff;--ui-panel-2:#f8fafc;--ui-text:#17243a;--ui-muted:#5d6d82;--ui-border:#e1e8f0;
 --ui-primary:#4166e8;--ui-primary-2:#3153d5;--ui-accent:#079b78;--ui-shadow:0 12px 34px rgba(25,45,72,.075);
 --text-primary:#17243a;--text-secondary:#34465f;--text-muted:#62738a;--text-light:#43556d;
 --bg-primary:#f4f7fb;--bg-secondary:#fff;--bg-sidebar:linear-gradient(165deg,#fff 0%,#f5f8fc 100%);
 --border-color:#e1e8f0;--sidebar-border:#e1e8f0;--nav-hover:#edf2f8;--nav-active:linear-gradient(110deg,#496ce8,#3659d7);
 --card-bg:#fff;--card-bg-solid:#fff;--card-border:#e1e8f0;--input-bg:#f8fafc;--input-border:#d7e0eb;
 --primary:#4166e8;--primary-dark:#3153d5;--primary-light:#7d95f5;--secondary:#079b78;
 color-scheme:light;
}
html[data-theme="dark"]{
 --ui-bg:#09121b;--ui-panel:#111e29;--ui-panel-2:#172733;--ui-text:#edf5f4;--ui-muted:#a2b4b9;--ui-border:#263b43;
 --ui-primary:#10b981;--ui-primary-2:#059669;--ui-accent:#34d399;--ui-shadow:0 18px 48px rgba(0,0,0,.30);
 --text-primary:#edf5f4;--text-secondary:#c4d3d4;--text-muted:#9aafb2;--text-light:#d9e5e4;
 --bg-primary:#09121b;--bg-secondary:#111e29;--bg-sidebar:linear-gradient(165deg,#14242d 0%,#0b151e 100%);
 --border-color:#263b43;--sidebar-border:#263b43;--nav-hover:rgba(16,185,129,.10);--nav-active:linear-gradient(110deg,#087d5c,#075a47);
 --card-bg:#111e29;--card-bg-solid:#111e29;--card-border:#263b43;--input-bg:#172733;--input-border:#344d54;
 --primary:#10b981;--primary-dark:#059669;--primary-light:#5ee0ae;--secondary:#34d399;
 color-scheme:dark;
}
html[data-theme="mint"]{
 --ui-bg:#eff7f2;--ui-panel:#ffffff;--ui-panel-2:#f5faf7;--ui-text:#17382d;--ui-muted:#526f62;--ui-border:#d4e6dc;
 --ui-primary:#27845f;--ui-primary-2:#176b4b;--ui-accent:#42a879;--ui-shadow:0 12px 34px rgba(30,83,59,.08);
 --text-primary:#17382d;--text-secondary:#315747;--text-muted:#587366;--text-light:#3c5d4c;
 --bg-primary:#eff7f2;--bg-secondary:#fff;--bg-sidebar:linear-gradient(165deg,#fbfefc 0%,#edf6f0 100%);
 --border-color:#d4e6dc;--sidebar-border:#d4e6dc;--nav-hover:#e5f2e9;--nav-active:linear-gradient(110deg,#328b65,#226f50);
 --card-bg:#fff;--card-bg-solid:#fff;--card-border:#d4e6dc;--input-bg:#f5faf7;--input-border:#cbded2;
 --primary:#27845f;--primary-dark:#176b4b;--primary-light:#65ad88;--secondary:#42a879;
 color-scheme:light;
}
html,body{background-color:var(--ui-bg);color:var(--ui-text)}
body{transition:background-color .22s ease,color .22s ease}
::selection{background:color-mix(in srgb,var(--ui-accent) 24%,transparent);color:var(--ui-text)}
.card,.glass-card,.stat-card,.stat-industrial,.content-card,.admin-card,.notifications-panel,.notification-item,
.modal-content,.modal-dialog,.bg-white{border-color:var(--ui-border)}
html[data-theme="light"] .text-gray-900,html[data-theme="mint"] .text-gray-900{color:var(--ui-text)!important}
html[data-theme="light"] .text-gray-800,html[data-theme="mint"] .text-gray-800{color:var(--ui-text)!important}
html[data-theme="light"] .text-gray-700,html[data-theme="mint"] .text-gray-700{color:var(--text-secondary)!important}
html[data-theme="light"] .text-gray-600,html[data-theme="mint"] .text-gray-600{color:var(--text-secondary)!important}
html[data-theme="light"] .text-gray-500,html[data-theme="mint"] .text-gray-500{color:var(--ui-muted)!important}
html[data-theme="dark"] .text-gray-900,html[data-theme="dark"] .text-gray-800{color:var(--ui-text)!important}
html[data-theme="dark"] .text-gray-700,html[data-theme="dark"] .text-gray-600{color:var(--text-secondary)!important}
html[data-theme="dark"] .text-gray-500,html[data-theme="dark"] .text-gray-400{color:var(--ui-muted)!important}
html[data-theme="light"] input::placeholder,html[data-theme="mint"] input::placeholder,
html[data-theme="light"] textarea::placeholder,html[data-theme="mint"] textarea::placeholder{color:#718096!important;opacity:1}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#9aafb2!important;opacity:1}
input:not([type=checkbox]):not([type=radio]),select,textarea{background:var(--input-bg,var(--ui-panel-2))!important;color:var(--ui-text)!important;border-color:var(--input-border,var(--ui-border))!important}
table thead th{background:var(--ui-panel-2)!important;color:var(--ui-muted)!important}
table tbody td{color:var(--text-secondary)}
hr{border-color:var(--ui-border)!important}

/* User navigation — spacing, clear hierarchy, soft emerald active state */
#userSidebar{
 background:var(--bg-sidebar)!important;color:var(--text-primary)!important;
 border-color:var(--sidebar-border)!important;
 box-shadow:8px 0 34px rgba(3,15,25,.10);
}
html[data-theme="dark"] #userSidebar{box-shadow:10px 0 38px rgba(0,0,0,.22)}
#userSidebar .user-sidebar-top{border-color:var(--ui-border)!important}
#userSidebar .user-sidebar-brand .w-10{
 background:linear-gradient(145deg,#10b981,#087f66)!important;
 box-shadow:0 8px 22px rgba(16,185,129,.24)!important;border:1px solid rgba(52,211,153,.3)
}
#userSidebar .user-sidebar-brand span{color:var(--ui-text)!important;background:none!important;-webkit-text-fill-color:var(--ui-text)!important}
#userSidebar .user-profile-card,#userSidebar .guest-profile-card{
 background:linear-gradient(145deg,var(--ui-panel),var(--ui-panel-2))!important;
 border:1px solid var(--ui-border)!important;box-shadow:inset 0 1px rgba(255,255,255,.035),0 9px 24px rgba(0,0,0,.055)
}
#userSidebar nav ul{gap:9px!important}
#userSidebar nav li{margin:0!important}
#userSidebar .nav-link{
 min-height:62px!important;padding:7px 10px!important;gap:13px!important;
 color:var(--text-secondary)!important;border:1px solid transparent!important;border-radius:16px!important;
 background:transparent!important;font-weight:650!important
}
#userSidebar .nav-link>i:first-child{
 width:44px!important;height:44px!important;flex:0 0 44px!important;border-radius:14px!important;
 display:inline-flex!important;align-items:center;justify-content:center;
 background:linear-gradient(145deg,color-mix(in srgb,var(--ui-panel-2) 90%,var(--ui-primary) 10%),var(--ui-panel-2))!important;
 border:1px solid var(--ui-border)!important;color:var(--ui-muted)!important;font-size:21px!important
}
#userSidebar .nav-link:hover{
 color:var(--ui-text)!important;background:var(--nav-hover)!important;border-color:var(--ui-border)!important;
 transform:translateX(-2px)
}
#userSidebar .nav-link:hover>i:first-child{color:var(--ui-accent)!important;border-color:color-mix(in srgb,var(--ui-accent) 35%,var(--ui-border))!important}
#userSidebar .nav-link.active,#userSidebar .nav-link[aria-current="page"]{
 color:#f2fff9!important;background:var(--nav-active)!important;border-color:color-mix(in srgb,var(--ui-accent) 76%,transparent)!important;
 box-shadow:inset 0 1px rgba(255,255,255,.13),0 8px 24px color-mix(in srgb,var(--ui-accent) 16%,transparent)!important
}
#userSidebar .nav-link.active>i:first-child,#userSidebar .nav-link[aria-current="page"]>i:first-child{
 color:#eafff5!important;background:rgba(4,30,25,.24)!important;border-color:rgba(110,255,203,.42)!important
}
#userSidebar .nav-link.active:after,#userSidebar .nav-link[aria-current="page"]:after{
 content:"";position:absolute;inset:8px auto 8px 0;width:3px;border-radius:9px;background:#55f0b5;box-shadow:0 0 14px rgba(53,230,168,.5)
}
#userSidebar nav li:has(>a[href="logout.php"]){margin-top:15px!important;padding-top:15px!important;border-top:1px solid var(--ui-border)!important}
#userSidebar nav li:has(>a[href="logout.php"]) .nav-link{color:#dc6666!important;background:rgba(220,70,70,.055)!important}
#userSidebar .sidebar-collapse-btn,#adminSidebar .sidebar-collapse-btn{
 background:var(--ui-panel-2)!important;color:var(--ui-muted)!important;border:1px solid var(--ui-border)!important;
 box-shadow:0 5px 16px rgba(0,0,0,.08)!important
}
#userSidebar .sidebar-collapse-btn:hover,#adminSidebar .sidebar-collapse-btn:hover{
 background:var(--ui-accent)!important;color:#fff!important;border-color:var(--ui-accent)!important
}

/* Admin navigation — same visual language as the user panel */
#adminSidebar{
 background:var(--bg-sidebar)!important;color:var(--text-primary)!important;border-color:var(--sidebar-border)!important;
 box-shadow:-12px 0 38px rgba(3,15,25,.12)
}
#adminSidebar .admin-sidebar-brand{border-color:var(--ui-border)!important;background:transparent}
#adminSidebar .admin-sidebar-brand .w-12{
 background:linear-gradient(145deg,#10b981,#087f66)!important;box-shadow:0 8px 22px rgba(16,185,129,.22)!important
}
#adminSidebar .admin-sidebar-brand h2{
 color:var(--ui-text)!important;background:none!important;-webkit-text-fill-color:var(--ui-text)!important
}
#adminSidebar .admin-sidebar-brand p{color:var(--ui-muted)!important}
#adminSidebar nav>div.px-3.py-2{margin:15px 12px 8px!important;padding:0 4px!important}
#adminSidebar nav>div.px-3.py-2 span{color:var(--ui-muted)!important;font-size:11px!important;font-weight:750;letter-spacing:.02em}
#adminSidebar .sidebar-menu-item{
 display:flex!important;align-items:center;gap:13px!important;min-height:58px!important;
 margin:5px 12px!important;padding:7px 11px!important;border:1px solid transparent!important;border-radius:16px!important;
 background:transparent!important;color:var(--text-secondary)!important;font-size:14px!important;font-weight:650!important;
 box-shadow:none!important;transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease!important
}
#adminSidebar .sidebar-menu-item>i{
 width:44px!important;height:44px!important;flex:0 0 44px!important;display:inline-flex!important;align-items:center;justify-content:center;
 border-radius:14px!important;background:var(--ui-panel-2)!important;border:1px solid var(--ui-border)!important;
 color:var(--ui-muted)!important;font-size:21px!important
}
#adminSidebar .sidebar-menu-item:hover{
 background:var(--nav-hover)!important;border-color:var(--ui-border)!important;color:var(--ui-text)!important;transform:translateX(-2px)
}
#adminSidebar .sidebar-menu-item:hover>i{color:var(--ui-accent)!important;border-color:color-mix(in srgb,var(--ui-accent) 34%,var(--ui-border))!important}
#adminSidebar .sidebar-menu-item.active,#adminSidebar .sidebar-menu-item[aria-current="page"]{
 color:#f2fff9!important;background:var(--nav-active)!important;border-color:color-mix(in srgb,var(--ui-accent) 76%,transparent)!important;
 box-shadow:inset 0 1px rgba(255,255,255,.13),0 8px 24px color-mix(in srgb,var(--ui-accent) 16%,transparent)!important
}
#adminSidebar .sidebar-menu-item.active>i,#adminSidebar .sidebar-menu-item[aria-current="page"]>i{
 color:#eafff5!important;background:rgba(4,30,25,.24)!important;border-color:rgba(110,255,203,.42)!important
}
#adminSidebar .sidebar-menu-item .nav-badge{margin-inline-start:auto!important}
#adminSidebar .sidebar-theme-btn{
 margin:18px 12px!important;min-height:54px!important;padding:9px 13px!important;border-radius:15px!important;
 border:1px solid var(--ui-border)!important;background:var(--ui-panel-2)!important;color:var(--text-secondary)!important;
 display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .22s ease
}
#adminSidebar .sidebar-theme-btn:hover{border-color:var(--ui-accent)!important;color:var(--ui-accent)!important;background:var(--nav-hover)!important}
#adminSidebar .sidebar-theme-btn i{color:var(--ui-accent)!important;font-size:20px;width:28px}

/* Consistent collapsed rail and helpful hover labels */
@media(min-width:768px){
 #userSidebar{flex-basis:292px!important;width:292px!important;min-width:292px!important;transition:width .28s cubic-bezier(.22,.61,.36,1),min-width .28s,flex-basis .28s,padding .28s!important}
 body.user-sidebar-collapsed #userSidebar{flex-basis:82px!important;width:82px!important;min-width:82px!important;padding:15px 9px!important}
 body.user-sidebar-collapsed #userSidebar .nav-link{width:58px!important;height:56px!important;min-height:56px!important;margin:4px auto!important;padding:5px!important;justify-content:center!important}
 body.user-sidebar-collapsed #userSidebar .nav-link>i:first-child{width:42px!important;height:42px!important;flex-basis:42px!important}
 body.user-sidebar-collapsed #userSidebar .nav-link span{display:none!important}
 body.user-sidebar-collapsed #userSidebar .nav-link:after{right:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#10251f;color:#effff8;padding:8px 12px;border:1px solid rgba(52,211,153,.24);border-radius:10px;font-size:12px;font-weight:650;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;z-index:1200;transition:opacity .16s ease,visibility .16s ease}
 body.user-sidebar-collapsed #userSidebar .nav-link:hover:after{opacity:1;visibility:visible}
 #adminSidebar{width:292px!important;transition:width .28s cubic-bezier(.22,.61,.36,1),transform .28s ease!important}
 body.admin-sidebar-collapsed #adminSidebar{width:82px!important}
 body.admin-sidebar-collapsed main{margin-right:82px!important}
 body.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item{width:58px!important;height:56px!important;min-height:56px!important;margin:4px auto!important;padding:5px!important;justify-content:center!important}
 body.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item>i{width:42px!important;height:42px!important;flex-basis:42px!important}
 body.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item:after{right:94px!important;top:50%!important;transform:translateY(-50%)!important;background:#10251f!important;color:#effff8!important;border:1px solid rgba(52,211,153,.24);padding:8px 12px!important;border-radius:10px!important;font-size:12px!important;font-weight:650;opacity:0;visibility:hidden;transition:opacity .16s ease,visibility .16s ease}
 body.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item:hover:after{opacity:1;visibility:visible}
}
/* Mobile: preserve the existing off-canvas behavior and avoid cramped controls */
@media(max-width:767px){
 #userSidebar{box-shadow:0 20px 60px rgba(0,0,0,.22)}
 #adminSidebar{box-shadow:0 20px 60px rgba(0,0,0,.24)}
 #userSidebar .nav-link,#adminSidebar .sidebar-menu-item{min-height:52px!important}
}
@media(prefers-reduced-motion:reduce){
 #userSidebar,#adminSidebar,#userSidebar *,#adminSidebar *{transition-duration:.01ms!important;animation-duration:.01ms!important}
}
