
/* =========================================================
   iTech IT Solutions — FINAL MASTER UI / MOBILE APP READY
   Loaded last so it wins over legacy/duplicate dashboard rules.
========================================================= */
:root{
  --itech-navy:#071c3b;--itech-navy2:#0d2d5a;--itech-blue:#1769e0;
  --itech-blue2:#3459ff;--itech-orange:#f28a1a;--itech-ink:#10284b;
  --itech-muted:#71819b;--itech-line:#dfe8f4;--itech-bg:#f4f8fd;
}
html,body{width:100%;max-width:100%;min-width:0;overflow-x:hidden!important}
body{min-height:100vh}
img{max-width:100%}

/* PUBLIC TECH-SHOP POLISH */
.site-header{background:linear-gradient(100deg,var(--itech-navy),var(--itech-navy2))!important;box-shadow:0 8px 28px rgba(7,28,59,.18)!important}
.site-header .nav a{transition:transform .18s ease,background .18s ease,color .18s ease}
.site-header .nav a:hover{transform:translateY(-1px)}
.hero,.page-hero{position:relative;overflow:hidden}
.hero:before,.page-hero:before{content:"";position:absolute;inset:-35%;pointer-events:none;background:radial-gradient(circle at 20% 20%,rgba(23,105,224,.18),transparent 27%),radial-gradient(circle at 80% 25%,rgba(242,138,26,.13),transparent 25%);animation:itechGlow 10s ease-in-out infinite alternate}
.hero>* ,.page-hero>*{position:relative;z-index:1}
.card,.panel{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.card:hover,.panel:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(17,50,91,.11)!important;border-color:#d1deee!important}
.btn{transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important}
.btn:hover{transform:translateY(-2px);filter:saturate(1.05)}

/* UNIVERSAL FOOTER — same visual language as index */
.site-footer,.unified-site-footer,footer.footer{
  width:100%!important;max-width:none!important;margin:0!important;min-height:190px!important;
  padding:38px 18px 28px!important;display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;gap:6px!important;text-align:center!important;
  background:radial-gradient(circle at 50% -25%,rgba(23,105,224,.22),transparent 43%),linear-gradient(180deg,#04152d,#061d3d)!important;
  color:#dbe6f3!important;border-top:3px solid transparent!important;
  border-image:linear-gradient(90deg,#1769e0,#f28a1a,#1769e0) 1!important;
  overflow:hidden!important;clear:both!important;
}
.site-footer .footer-brand{width:100%;display:flex;justify-content:center;align-items:center;min-height:65px}
.site-footer .footer-logo,.unified-site-footer .footer-logo{width:min(180px,58vw)!important;max-width:180px!important;height:auto!important;max-height:72px!important;object-fit:contain!important;margin:0 auto 5px!important;filter:drop-shadow(0 8px 18px rgba(0,0,0,.18))}
.site-footer p{margin:0!important;line-height:1.45!important;overflow-wrap:anywhere}
.site-footer .footer-address,.site-footer .footer-email{font-size:12px!important;color:#dbe6f3!important}
.site-footer .footer-contact{font-size:13px!important;font-weight:800!important;color:#fff!important}
.site-footer .footer-social,.site-footer .footer-tagline{color:var(--itech-orange)!important;font-weight:850!important}
.site-footer .footer-tagline{margin-top:7px!important;padding-top:11px!important;width:min(560px,100%)!important;border-top:1px solid rgba(255,255,255,.13)!important;font-size:11px!important;letter-spacing:.05em}

/* DASHBOARD */
.dash-layout{width:100%!important;max-width:100%!important;min-width:0!important}
.dash-main{min-width:0!important;max-width:none!important;overflow:visible!important}
.sidebar{box-shadow:8px 0 28px rgba(6,29,59,.10)!important}
.sidebar nav a{transition:transform .18s ease,background .18s ease,box-shadow .18s ease!important}
.sidebar nav a:hover,.sidebar nav a.active{transform:translateX(3px)!important}
.dashboard-card,.panel,.card,.kpi,.stat-card,.customer-stat,.modern-panel,.quick-card{backdrop-filter:blur(4px)}
.kpi:hover,.stat-card:hover,.customer-stat:hover{transform:translateY(-4px)!important}

/* Mobile dashboard menu: one button, slide-in sidebar, overlay */
.ui-mobile-menu-btn{display:none;border:1px solid rgba(255,255,255,.14)!important;border-radius:11px!important;background:rgba(255,255,255,.10)!important;color:#fff!important;cursor:pointer;font-size:23px!important;line-height:1!important;box-shadow:none!important}
.ui-mobile-close{display:none!important}
@media(max-width:900px){
  .ui-mobile-menu-btn{display:grid!important;place-items:center!important}
  .ui-mobile-close{display:grid!important;place-items:center!important}
  .dash-header{position:sticky!important;top:0!important;z-index:1500!important}
  .sidebar{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:min(292px,84vw)!important;max-width:84vw!important;height:100dvh!important;transform:translateX(-105%)!important;z-index:2000!important;overflow-y:auto!important;padding:72px 14px 22px!important;border-radius:0 18px 18px 0!important;transition:transform .26s cubic-bezier(.22,.61,.36,1)!important}
  .sidebar.ui-open{transform:translateX(0)!important}
  .ui-mobile-overlay{display:none;position:fixed!important;inset:0!important;z-index:1990!important;background:rgba(4,21,45,.52)!important;backdrop-filter:blur(3px)}
  .ui-mobile-overlay.open{display:block!important}
  .dash-main{width:100%!important;padding:16px 13px 28px!important}
  .dash-header .header-actions .user-chip{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
@media(max-width:600px){
  .dash-header{min-height:62px!important;height:auto!important;padding:8px 10px!important}
  .dash-header .brand-logo{height:36px!important;max-width:125px!important}
  .dash-main{padding:14px 11px 24px!important}
  .toolbar h1{font-size:clamp(23px,7vw,29px)!important}
  .panel,.dashboard-card,.card,.quick-card,.modern-panel{padding:15px!important;border-radius:15px!important}
  .site-footer,.unified-site-footer,footer.footer{min-height:175px!important;padding:29px 14px 22px!important}
  .site-footer .footer-logo,.unified-site-footer .footer-logo{width:min(170px,62vw)!important}
}
@media(max-width:420px){.dash-main{padding-left:9px!important;padding-right:9px!important}.dash-header .brand-logo{height:34px!important;max-width:118px!important}}
@keyframes itechGlow{from{transform:translate3d(-1%,0,0) scale(1)}to{transform:translate3d(1%,1%,0) scale(1.04)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
