/* =========================================================
   AQUAZAL Admin — Shared Mobile Framework
   FILE 067 | Version 12.1
========================================================= */
:root{
  --aq-blue:#0099cc;
  --aq-blue-dark:#007ca8;
  --aq-navy:#1f2937;
  --aq-bg:#f4f7fa;
  --aq-card:#ffffff;
  --aq-text:#1f2937;
  --aq-muted:#6b7280;
  --aq-danger:#dc2626;
  --aq-danger-dark:#b91c1c;
  --aq-border:#e5e7eb;
  --aq-radius:12px;
  --aq-shadow:0 5px 15px rgba(0,0,0,.08);
}

html{background:var(--aq-bg);scroll-behavior:smooth}
body{overflow-x:hidden}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button{touch-action:manipulation}
.header{
  min-height:64px!important;
  padding:10px 14px!important;
  box-shadow:0 1px 0 rgba(255,255,255,.14);
}
.brand{min-width:0}
.brand h2,.header h2{
  font-size:clamp(16px,4.3vw,21px)!important;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.header-actions{gap:8px!important;flex-shrink:0}
.menu-button,.notification-button{
  min-width:42px!important;
  width:42px!important;
  height:42px!important;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.logout{
  background:var(--aq-danger)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.3)!important;
  min-height:42px;
  padding:9px 13px!important;
  border-radius:8px!important;
  font-weight:700!important;
  box-shadow:0 2px 5px rgba(127,29,29,.18);
}
.logout:hover,.logout:focus{background:var(--aq-danger-dark)!important}
.notification-count{display:none!important}
.layout{min-width:0}
.content{min-width:0}
.sidebar{
  overscroll-behavior:contain;
  box-shadow:12px 0 28px rgba(0,0,0,.18);
}
.sidebar a{
  min-height:48px;
  font-size:15px;
}
.sidebar a.active{font-weight:700}
.overlay{backdrop-filter:blur(1px)}
.card,.panel,.summary-card,.table-box,.toolbar,.report-card,.table-card,.card-section{
  border:1px solid rgba(17,24,39,.04);
}
.aq-page-loader{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#f8fbfd,#eef5f8);
  transition:none;
}
.aq-page-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.aq-loader-card{
  width:min(300px,calc(100% - 42px));
  padding:24px;
  text-align:center;
  background:#fff;
  border-radius:16px;
  box-shadow:0 18px 45px rgba(15,23,42,.13);
}
.aq-loader-mark{
  width:52px;height:52px;margin:0 auto 13px;border-radius:50%;
  display:grid;place-items:center;background:#e0f5fc;color:var(--aq-blue);
  font-size:27px;font-weight:800;
}
.aq-loader-title{font-size:19px;font-weight:800;margin-bottom:6px}
.aq-loader-text{font-size:13px;color:var(--aq-muted)}
.aq-spinner{
  width:24px;height:24px;margin:16px auto 0;border:3px solid #dbeafe;
  border-top-color:var(--aq-blue);border-radius:50%;animation:aqSpin .8s linear infinite;
}
@keyframes aqSpin{to{transform:rotate(360deg)}}
.aq-system-strip{
  display:grid;
  grid-template-columns:1.15fr .85fr;
  gap:12px;
  padding:14px 16px;
  margin:0 0 20px;
  background:linear-gradient(135deg,#ffffff,#f4fbfe);
  border:1px solid #dbeef5;
  border-radius:12px;
  box-shadow:var(--aq-shadow);
}
.aq-system-item{min-width:0}
.aq-system-label{
  display:block;color:var(--aq-muted);font-size:11px;
  text-transform:uppercase;letter-spacing:.06em;margin-bottom:5px;font-weight:700;
}
.aq-system-value{display:block;font-weight:800;line-height:1.35}
.aq-system-sub{display:block;font-size:12px;color:var(--aq-muted);margin-top:3px}
.aq-empty-row td,.aq-empty-state{
  text-align:center!important;color:var(--aq-muted)!important;padding:26px!important;
}
.aq-mobile-records{display:none}
@media(max-width:768px){
  .header{position:sticky!important;top:0!important;z-index:110!important}
  .layout{display:block!important}
  .sidebar{
    top:64px!important;
    width:min(82vw,290px)!important;
    left:min(-84vw,-300px)!important;
    z-index:105!important;
  }
  .sidebar.open{left:0!important}
  .overlay{inset:64px 0 0!important;z-index:100!important}
  .content{padding:16px!important;width:100%!important;max-width:none!important}
  .page-head,.page-heading{margin-bottom:16px!important}
  .page-head h1,.page-heading h1{font-size:25px!important}
  .cards,.summary-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
  .card,.summary-card{padding:15px!important;min-width:0}
  .card strong,.summary-card strong{font-size:24px!important}
  .toolbar,.filter-panel{grid-template-columns:1fr!important}
  .section-grid,.report-grid{grid-template-columns:1fr!important}
  .aq-system-strip{grid-template-columns:1fr;padding:13px}
  table{font-size:13px}
  .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(max-width:420px){
  .header{padding:9px 10px!important}
  .header-actions{gap:6px!important}
  .logout{padding:8px 10px!important;font-size:12px}
  .menu-button,.notification-button{width:39px!important;height:39px!important;min-width:39px!important}
  .cards,.summary-cards{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}


/* FILE 021A v1.1 — transition, login and navigation corrections */
html.auth-pending body{visibility:visible!important}
html.auth-pending body>*:not(.aq-page-loader){visibility:hidden!important}

.aq-page-loader{
  background:#f4f7fa!important;
  opacity:1;
}
.aq-page-loader .aq-loader-card{
  transform:translateZ(0);
}
.aq-login-brand{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  margin-bottom:14px;
}
.aq-login-logo{
  width:72px;
  height:72px;
  border-radius:20px;
  background:linear-gradient(145deg,#062b55,#0099cc);
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:24px;
  letter-spacing:-1px;
  box-shadow:0 10px 24px rgba(0,153,204,.22);
  border:2px solid rgba(255,255,255,.8);
}
.aq-login-logo small{
  display:block;
  font-size:9px;
  letter-spacing:.08em;
  font-weight:700;
}
.aq-password-wrap{position:relative}
.aq-password-wrap input{padding-right:48px!important}
.aq-password-toggle{
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  width:39px;
  height:39px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#4b5563;
  font-size:18px;
}
.aq-login-links{
  display:flex;
  justify-content:flex-end;
  margin-top:8px;
  margin-bottom:12px;
}
.aq-login-links button{
  border:0;
  background:transparent;
  color:#007ca8;
  padding:4px 0;
  font-size:13px;
  font-weight:700;
}
.aq-login-message{
  display:none;
  margin:10px 0;
  padding:10px 12px;
  border-radius:8px;
  font-size:13px;
  line-height:1.45;
}
.aq-login-message.show{display:block}
.aq-login-message.success{background:#dcfce7;color:#166534}
.aq-login-message.error{background:#fee2e2;color:#991b1b}

@media(max-width:768px){
  header.header, body>header{
    min-height:64px!important;
  }
  .menu-button{
    display:inline-flex!important;
    visibility:visible!important;
  }
}



/* =========================================================
   FILE 021B v1.2 — Unified page header, sidebar and tables
========================================================= */

/* Force every legacy page to use the exact shared shell */
body > header.header,
header.header{
  background:#0099cc!important;
  color:#fff!important;
  min-height:64px!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  position:sticky!important;
  top:0!important;
  z-index:110!important;
}

header.header .brand,
header.header .header-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}

header.header h2{
  margin:0!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.2!important;
}

.sidebar{
  background:#1f2937!important;
  padding:18px 0!important;
}

.sidebar a{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  color:#fff!important;
  text-decoration:none!important;
  padding:14px 22px!important;
  min-height:48px!important;
}

.sidebar a:hover,
.sidebar a.active{
  background:#0099cc!important;
}

.page-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
  margin-bottom:20px!important;
}

.page-head h1{
  margin:0 0 6px!important;
  font-size:30px!important;
}

.summary-cards{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:16px!important;
  margin-bottom:20px!important;
}

.table-box{
  background:#fff!important;
  border-radius:12px!important;
  box-shadow:0 5px 15px rgba(0,0,0,.08)!important;
  overflow:hidden!important;
}

.table-wrap{
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

/* Column headings now visibly interactive */
th.aq-sortable{
  cursor:pointer!important;
  user-select:none!important;
  position:relative!important;
  padding-right:27px!important;
  transition:background .15s ease,color .15s ease!important;
}

th.aq-sortable::after{
  content:"↕";
  position:absolute;
  right:9px;
  color:#9ca3af;
  font-size:12px;
}

th.aq-sortable.aq-sort-asc,
th.aq-sortable.aq-sort-desc{
  background:#e0f5fc!important;
  color:#007ca8!important;
}

th.aq-sortable.aq-sort-asc::after{content:"▲";color:#007ca8}
th.aq-sortable.aq-sort-desc::after{content:"▼";color:#007ca8}

.aq-table-help{
  display:flex;
  align-items:center;
  gap:7px;
  padding:10px 14px;
  background:#f8fafc;
  border-bottom:1px solid #e5e7eb;
  color:#64748b;
  font-size:12px;
}

.aq-table-help strong{color:#334155}

/* Settings logo upload */
.aq-logo-preview-image{
  width:100%;
  height:100%;
  object-fit:contain;
  border-radius:12px;
}

.aq-upload-status{
  margin-top:10px;
  padding:9px 11px;
  border-radius:8px;
  font-size:12px;
  display:none;
}

.aq-upload-status.show{display:block}
.aq-upload-status.success{background:#dcfce7;color:#166534}
.aq-upload-status.error{background:#fee2e2;color:#991b1b}

@media(max-width:768px){
  .menu-button{
    display:inline-flex!important;
    visibility:visible!important;
  }

  .sidebar{
    display:block!important;
    position:fixed!important;
    left:min(-84vw,-300px)!important;
    top:64px!important;
    bottom:0!important;
    width:min(82vw,290px)!important;
    z-index:105!important;
    overflow-y:auto!important;
    transition:left .22s ease!important;
  }

  .sidebar.open{left:0!important}

  .overlay{
    position:fixed!important;
    inset:64px 0 0!important;
    z-index:100!important;
    background:rgba(0,0,0,.45)!important;
  }

  .overlay.show{display:block!important}

  .content,
  main.content{
    padding:16px!important;
    width:100%!important;
  }

  .page-head{
    flex-direction:column!important;
  }

  .page-head h1{
    font-size:25px!important;
  }

  .summary-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
  }
}

@media(max-width:420px){
  .summary-cards{
    grid-template-columns:1fr!important;
  }
}


/* =========================================================
   AQUAZAL ADMIN — FILE 022C v1.3
   Every column feedback + stable enquiries layout
========================================================= */

th.aq-column-feedback{
  cursor:pointer!important;
  user-select:none!important;
  transition:background .14s ease,color .14s ease,box-shadow .14s ease!important;
}

th.aq-column-feedback:active,
th.aq-column-feedback.aq-column-active{
  background:#dff5fc!important;
  color:#007ca8!important;
  box-shadow:inset 0 -3px 0 #0099cc!important;
}

.aq-feedback-toast{
  position:fixed;
  left:50%;
  bottom:24px;
  transform:translateX(-50%) translateY(18px);
  max-width:min(92vw,440px);
  padding:12px 16px;
  border-radius:10px;
  background:#0f172a;
  color:#fff;
  font-size:13px;
  line-height:1.45;
  font-weight:700;
  text-align:center;
  opacity:0;
  pointer-events:none;
  z-index:9999;
  box-shadow:0 14px 34px rgba(15,23,42,.3);
  transition:opacity .18s ease,transform .18s ease;
}

.aq-feedback-toast.show{
  opacity:1;
  transform:translateX(-50%) translateY(0);
}

/* Real row action buttons stay in one line */
.actions{
  display:inline-flex!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  white-space:nowrap!important;
}

.actions button,
.action-button{
  flex:0 0 auto!important;
  min-height:40px!important;
  padding:9px 12px!important;
  border-radius:7px!important;
  font-weight:800!important;
  touch-action:manipulation!important;
}

.actions button:active,
.action-button:active,
.actions button.aq-button-active,
.action-button.aq-button-active{
  transform:scale(.94)!important;
  filter:brightness(.9)!important;
  box-shadow:0 0 0 3px rgba(0,153,204,.22)!important;
}

tr.aq-row-active{
  background:#eaf8fd!important;
  box-shadow:inset 4px 0 0 #0099cc!important;
}

/* Enquiries page must visually match Orders/Customers */
body.aq-enquiries-page .content{
  width:100%!important;
  min-width:0!important;
  padding:28px!important;
}

body.aq-enquiries-page .page-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:16px!important;
  margin-bottom:20px!important;
}

body.aq-enquiries-page .summary-cards{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:16px!important;
  margin-bottom:20px!important;
}

body.aq-enquiries-page .card{
  background:#fff!important;
  border-radius:12px!important;
  padding:18px!important;
  box-shadow:0 5px 15px rgba(0,0,0,.08)!important;
}

body.aq-enquiries-page .toolbar{
  display:grid!important;
  grid-template-columns:1fr 180px 180px!important;
  gap:12px!important;
  padding:16px!important;
  margin-bottom:20px!important;
  background:#fff!important;
  border-radius:12px!important;
  box-shadow:0 5px 15px rgba(0,0,0,.08)!important;
}

body.aq-enquiries-page .table-box{
  width:100%!important;
  min-width:0!important;
  background:#fff!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 5px 15px rgba(0,0,0,.08)!important;
}

body.aq-enquiries-page .table-wrap{
  width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

body.aq-enquiries-page table{
  min-width:1100px!important;
  width:100%!important;
}

.aq-enquiry-permission{
  padding:16px!important;
  background:#fff7ed!important;
  color:#9a3412!important;
  border-top:1px solid #fed7aa!important;
  font-size:13px!important;
  line-height:1.5!important;
  text-align:left!important;
}

@media(max-width:768px){
  body.aq-enquiries-page .content{padding:16px!important}
  body.aq-enquiries-page .page-head{flex-direction:column!important}
  body.aq-enquiries-page .toolbar{grid-template-columns:1fr!important}
  body.aq-enquiries-page .summary-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:420px){
  body.aq-enquiries-page .summary-cards{grid-template-columns:1fr!important}
}

/* FILE 023 smooth page reveal */
html.auth-pending body{background:#f4f7fa}
html.auth-pending body>*:not(.aq-page-loader){visibility:hidden!important}
html.auth-ready body>*{visibility:visible}
.aq-page-loader{transition:none}
html.auth-ready .aq-page-loader{opacity:0!important;visibility:hidden!important;pointer-events:none!important}


/* =========================================================
   FILE 024C — Unified header and notification behavior
========================================================= */
.header{
  width:100%!important;
  min-height:64px!important;
  padding:10px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  background:#0099cc!important;
  color:#fff!important;
  overflow:hidden!important;
}

.header .brand{
  min-width:0!important;
  flex:1 1 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}

.header .brand h2{
  min-width:0!important;
  margin:0!important;
  color:#fff!important;
  font-size:20px!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.header .menu-button{
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.45)!important;
  border-radius:7px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  font-size:22px!important;
  line-height:1!important;
  cursor:pointer!important;
}

.header .header-actions{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}

.header .notification-button{
  position:relative!important;
  flex:0 0 42px!important;
  width:42px!important;
  height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#b77900!important;
  font-size:18px!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
}

.header .notification-button:active{
  transform:scale(.95)!important;
}

.header .notification-count{
  position:absolute!important;
  top:-5px!important;
  right:-5px!important;
  min-width:18px!important;
  height:18px!important;
  padding:0 4px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:20px!important;
  background:#ef4444!important;
  color:#fff!important;
  font-size:10px!important;
  font-weight:800!important;
}

.header .logout{
  flex:0 0 auto!important;
  min-height:42px!important;
  padding:9px 13px!important;
  border:1px solid rgba(255,255,255,.4)!important;
  border-radius:7px!important;
  background:#dc2626!important;
  color:#fff!important;
  font-weight:800!important;
  cursor:pointer!important;
}

.header-clock{
  color:#e0f2fe!important;
  font-size:11px!important;
  white-space:nowrap!important;
}

@media(max-width:768px){
  .header{
    min-height:60px!important;
    padding:8px 10px!important;
  }

  .header .brand h2{
    font-size:17px!important;
  }

  .header .menu-button,
  .header .notification-button{
    flex-basis:40px!important;
    width:40px!important;
    height:40px!important;
  }

  .header .logout{
    min-height:40px!important;
    padding:8px 11px!important;
    font-size:12px!important;
  }

  /* Clock remains in Reports content logic but does not crush mobile brand. */
  .header-clock{
    display:none!important;
  }
}

@media(max-width:380px){
  .header .brand h2{
    max-width:132px!important;
  }

  .header .header-actions{
    gap:5px!important;
  }

  .header .logout{
    padding:8px 9px!important;
  }
}

/* FILE 024F — safe user-initiated precise-location request */
.aq-location-retry{
  border:0;
  background:transparent;
  color:#0284c7;
  padding:0;
  font:inherit;
  font-weight:800;
  text-decoration:underline;
  cursor:pointer;
}

/* FILE 025 — real unread badge visibility */
.header .notification-count{display:none!important}
.header .notification-count[style*="flex"]{display:flex!important}

/* FILE 025 v1.9 — readable unified header time */
.aq-build-marker{
  display:block;
  margin-top:6px;
  color:#94a3b8;
  font-size:11px;
  font-weight:700;
  text-align:center;
}
.header-clock.aq-global-clock{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  min-width:148px!important;
  height:38px!important;
  padding:0 4px!important;
  color:#ffffff!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:.1px!important;
  white-space:nowrap!important;
  text-align:right!important;
  font-variant-numeric:tabular-nums!important;
  flex:0 0 auto!important;
}
@media(max-width:768px){
  .header-clock.aq-global-clock{
    display:inline-flex!important;
    min-width:126px!important;
    height:36px!important;
    padding:0 2px!important;
    font-size:10px!important;
    line-height:1!important;
  }
  .header .brand h2{
    font-size:15px!important;
    max-width:140px!important;
  }
  .header .header-actions{
    gap:5px!important;
  }
}
@media(max-width:430px){
  .header-clock.aq-global-clock{
    min-width:116px!important;
    font-size:9px!important;
  }
  .header .brand h2{
    max-width:116px!important;
    font-size:14px!important;
  }
}


/* A2Z v1.2 — simple bell icon + clearer header time */
.header .notification-button,
header.header .notification-button{
  width:auto!important;
  min-width:32px!important;
  height:38px!important;
  padding:0 4px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#ffd400!important;
  font-size:24px!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.header .notification-button:hover,
.header .notification-button:focus,
.header .notification-button:active{
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
.header .notification-count{
  top:-2px!important;
  right:-7px!important;
}

.header-clock.aq-global-clock{
  min-width:154px!important;
  font-size:12px!important;
  font-weight:800!important;
  color:#ffffff!important;
  white-space:nowrap!important;
  font-variant-numeric:tabular-nums!important;
}
@media(max-width:768px){
  .header-clock.aq-global-clock{
    min-width:132px!important;
    font-size:10px!important;
  }
}
@media(max-width:430px){
  .header-clock.aq-global-clock{
    min-width:118px!important;
    font-size:9px!important;
  }
}

/* FILE 067 v2.6 — flicker-free auth reveal and stable mobile rendering */
html.auth-pending,html.auth-pending body{background:#f4f7fa!important}
html.auth-pending body{overflow:hidden!important}
html.auth-pending body>*:not(.aq-page-loader){visibility:hidden!important}
html.auth-ready body>*{visibility:visible}
html.auth-ready body{overflow-x:hidden}
.aq-page-loader{opacity:1!important;visibility:visible!important;pointer-events:auto!important;will-change:opacity;contain:layout paint style}
html.auth-ready .aq-page-loader,.aq-page-loader.is-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body,.content,.layout{backface-visibility:hidden;-webkit-backface-visibility:hidden}
@media(max-width:768px){.sidebar{will-change:left}.content{transform:translateZ(0)}}

/* FILE 067: repeated-tap navigation lock */
html.aq-navigating .sidebar a{pointer-events:none!important}
.sidebar a.aq-nav-target{background:#0099cc!important}

/* =========================================================
   FILE 030.10 v4.1 — Premium International UI + Performance
   Controlled visual upgrade; existing structure and behavior preserved.
========================================================= */
:root{
  --aq-blue:#0a8fbd;
  --aq-blue-dark:#066b91;
  --aq-navy:#102033;
  --aq-navy-2:#172a40;
  --aq-gold:#d4a83f;
  --aq-gold-soft:#f6e7b8;
  --aq-bg:#f2f6f9;
  --aq-card:#ffffff;
  --aq-text:#172334;
  --aq-muted:#667386;
  --aq-border:#dce5eb;
  --aq-radius:16px;
  --aq-shadow:0 8px 24px rgba(16,32,51,.075);
  --aq-shadow-strong:0 18px 42px rgba(16,32,51,.14);
}
html{background:var(--aq-bg)}
body{
  background:
    radial-gradient(circle at 100% 0,rgba(10,143,189,.065),transparent 32rem),
    linear-gradient(180deg,#f8fafc 0,#f2f6f9 42%,#eef3f6 100%);
  color:var(--aq-text);
  min-height:100vh;
}
body,.content,.layout{transform:none!important}
.header,body>header.header,header.header{
  background:linear-gradient(108deg,#102033 0,#12334c 46%,#087fa9 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 8px 24px rgba(16,32,51,.18)!important;
}
.header .brand{gap:10px!important}
.header .brand h2,.header h2{
  font-weight:800!important;
  letter-spacing:.01em!important;
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.menu-button{
  border:1px solid rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.095)!important;
  border-radius:11px!important;
}
.notification-button{filter:drop-shadow(0 2px 4px rgba(0,0,0,.18))}
.logout{
  background:linear-gradient(135deg,#ef4444,#c81e1e)!important;
  border-radius:10px!important;
  box-shadow:0 5px 13px rgba(153,27,27,.28)!important;
}
.sidebar{
  background:linear-gradient(180deg,#122236 0,#17283d 55%,#101d2d 100%)!important;
  border-right:1px solid rgba(255,255,255,.05);
  box-shadow:10px 0 28px rgba(16,32,51,.16)!important;
}
.sidebar a{
  color:#dce7f0!important;
  margin:4px 10px!important;
  padding:12px 14px!important;
  border-radius:10px!important;
  border:1px solid transparent;
  transition:background-color .14s ease,border-color .14s ease,color .14s ease!important;
}
.sidebar a:hover{
  background:rgba(255,255,255,.07)!important;
  border-color:rgba(255,255,255,.08)!important;
}
.sidebar a.active,.sidebar a.aq-nav-target{
  color:#fff!important;
  background:linear-gradient(105deg,rgba(10,143,189,.98),rgba(6,107,145,.98))!important;
  border-color:rgba(255,255,255,.14)!important;
  box-shadow:0 7px 18px rgba(3,83,117,.25)!important;
}
.content{max-width:1600px;margin:0 auto;padding:26px 28px 42px!important}
.page-heading,.page-head{
  position:relative;
  padding:2px 0 4px 15px;
  border-left:4px solid var(--aq-gold);
}
.page-heading h1,.page-head h1{
  color:var(--aq-navy)!important;
  font-weight:850!important;
  letter-spacing:-.025em;
}
.page-heading p,.page-head p{color:var(--aq-muted)!important}
.card,.panel,.summary-card,.table-box,.toolbar,.report-card,.table-card,.card-section,.settings-card,.form-card{
  background:rgba(255,255,255,.96)!important;
  border:1px solid var(--aq-border)!important;
  border-radius:var(--aq-radius)!important;
  box-shadow:var(--aq-shadow)!important;
}
.card,.summary-card{
  position:relative;
  overflow:hidden;
}
.card::before,.summary-card::before{
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,var(--aq-blue),var(--aq-gold));
}
.card h3,.summary-card h3{color:var(--aq-muted)!important;font-weight:700!important}
.card strong,.summary-card strong{color:var(--aq-blue-dark)!important;font-weight:850!important}
.panel-head,.table-head{
  background:linear-gradient(180deg,#fff,#f8fafc)!important;
  border-bottom:1px solid var(--aq-border)!important;
}
.panel-head h2,.table-head h2{color:var(--aq-navy)!important;font-weight:800!important}
th{
  background:#f3f7fa!important;
  color:#425268!important;
  font-size:12px!important;
  text-transform:uppercase;
  letter-spacing:.035em;
}
tbody tr{transition:background-color .12s ease}
tbody tr:hover{background:#f7fbfd}
input,select,textarea{
  border:1px solid #ccd8e0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:var(--aq-text)!important;
}
input:focus,select:focus,textarea:focus{
  border-color:var(--aq-blue)!important;
  box-shadow:0 0 0 3px rgba(10,143,189,.12)!important;
  outline:none!important;
}
button,.button,.btn,.primary-button{
  border-radius:10px!important;
}
.status,.badge,.pill{
  border-radius:999px!important;
  border:1px solid rgba(16,32,51,.06);
}
.aq-system-strip{
  background:linear-gradient(135deg,#fff,#f4fafc)!important;
  border-color:#d4e6ee!important;
  border-left:4px solid var(--aq-gold)!important;
}
.aq-loader-card{
  border:1px solid #dce7ed;
  border-top:4px solid var(--aq-gold);
  box-shadow:var(--aq-shadow-strong)!important;
}
.aq-loader-mark{
  border-radius:15px!important;
  color:#fff!important;
  background:linear-gradient(145deg,var(--aq-navy),var(--aq-blue))!important;
  box-shadow:0 8px 20px rgba(10,143,189,.22);
}
/* Login — premium, familiar and lightweight */
body:has(.login-card){
  background:
    radial-gradient(circle at 18% 18%,rgba(212,168,63,.14),transparent 22rem),
    radial-gradient(circle at 85% 75%,rgba(10,143,189,.12),transparent 28rem),
    linear-gradient(145deg,#eef5f8,#f8fafc)!important;
  padding:22px;
}
.login-card{
  max-width:430px!important;
  padding:34px!important;
  border:1px solid rgba(16,32,51,.1)!important;
  border-top:4px solid var(--aq-gold)!important;
  border-radius:22px!important;
  box-shadow:var(--aq-shadow-strong)!important;
}
.aq-login-logo{
  background:linear-gradient(145deg,#102033,#087fa9)!important;
  border-radius:18px!important;
  box-shadow:0 12px 26px rgba(8,127,169,.25)!important;
}
.login-head h2{color:var(--aq-navy)!important;font-size:27px!important;font-weight:850!important}
.login-button{
  min-height:48px;
  background:linear-gradient(105deg,var(--aq-blue),var(--aq-blue-dark))!important;
  border-radius:11px!important;
  box-shadow:0 8px 18px rgba(6,107,145,.22);
}
.login-button:active{transform:translateY(1px)}
.aq-build-marker,[data-aq-build]{color:#748397!important;font-weight:700!important}
/* Performance: avoid expensive effects; isolate large visual blocks */
.card,.panel,.summary-card,.table-box,.report-card,.table-card,.card-section{
  contain:layout paint style;
}
.content>section,.content>article{
  content-visibility:auto;
  contain-intrinsic-size:auto 240px;
}
.table-wrap{overscroll-behavior-x:contain}
@media(max-width:768px){
  .content{padding:18px 15px 34px!important}
  .header{box-shadow:0 5px 18px rgba(16,32,51,.18)!important}
  .sidebar a{margin:3px 9px!important}
  .page-heading,.page-head{padding-left:12px}
  .page-heading h1,.page-head h1{font-size:25px!important}
  .card,.summary-card{min-height:104px}
  body:has(.login-card){padding:16px!important;align-items:center!important}
  .login-card{padding:27px 22px!important;border-radius:18px!important}
}
@media(max-width:420px){
  .header-clock.aq-global-clock{display:none!important}
  .header .brand h2{max-width:145px!important}
  .content{padding:15px 12px 30px!important}
}
@media(prefers-reduced-motion:no-preference){
  .login-card,.aq-loader-card{animation:aqPremiumEnter .28s ease-out both}
}
@keyframes aqPremiumEnter{from{opacity:.01;transform:translateY(7px)}to{opacity:1;transform:none}}


/* =========================================================
   FILE 030.11 v4.2 — Unified shell, zoom-safe layout and clean page loading
========================================================= */
/* A single predictable application shell on every protected page. */
body.aq-protected-page{min-width:0!important}
body.aq-protected-page>.header,
body.aq-protected-page>header.header{
  width:100%!important;
  min-width:0!important;
  height:64px!important;
  min-height:64px!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  overflow:hidden!important;
}
body.aq-protected-page .header .brand{
  display:flex!important;align-items:center!important;gap:9px!important;
  min-width:0!important;max-width:min(48vw,360px)!important;flex:1 1 auto!important;
}
body.aq-protected-page .header .brand h2{
  display:block!important;min-width:0!important;max-width:100%!important;
  overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;
  margin:0!important;line-height:1.15!important;
}
body.aq-protected-page .header-actions{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  flex:0 0 auto!important;min-width:0!important;white-space:nowrap!important;
}
body.aq-protected-page>.layout{
  width:100%!important;max-width:none!important;min-width:0!important;
  display:grid!important;grid-template-columns:240px minmax(0,1fr)!important;
  align-items:stretch!important;
}
body.aq-protected-page>.layout>.sidebar{min-width:0!important;width:240px!important}
body.aq-protected-page>.layout>main.content,
body.aq-protected-page>.layout>.content{
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;
}
/* Every page title belongs only inside content, never in the top bar. */
body.aq-protected-page .content>.page-heading:first-child,
body.aq-protected-page .content>.page-head:first-child{clear:both!important}
/* Current page highlighting is assigned centrally by shared.js. */
.sidebar a[aria-current="page"]{font-weight:800!important}
/* Full-card protected-page loader caused the brand to appear twice between pages.
   Use a quiet progress surface without a second AQUAZAL title. */
body.aq-protected-page .aq-page-loader{
  align-items:flex-start!important;justify-content:stretch!important;
  background:var(--aq-bg)!important;padding:0!important;
}
body.aq-protected-page .aq-page-loader .aq-loader-card{
  position:absolute!important;top:0!important;left:0!important;right:0!important;
  width:100%!important;height:4px!important;min-height:4px!important;padding:0!important;
  border:0!important;border-radius:0!important;background:#d9e6ed!important;
  box-shadow:none!important;overflow:hidden!important;
}
body.aq-protected-page .aq-page-loader .aq-loader-card::after{
  content:"";display:block;width:38%;height:100%;
  background:linear-gradient(90deg,var(--aq-blue),var(--aq-gold),var(--aq-blue));
  animation:aqShellProgress 1s ease-in-out infinite;
}
body.aq-protected-page .aq-loader-mark,
body.aq-protected-page .aq-loader-title,
body.aq-protected-page .aq-loader-text,
body.aq-protected-page .aq-spinner{display:none!important}
@keyframes aqShellProgress{from{transform:translateX(-110%)}to{transform:translateX(300%)}}
/* content-visibility caused some long pages to look empty after browser zoom/reflow. */
.content>section,.content>article{content-visibility:visible!important;contain-intrinsic-size:none!important}
.card,.panel,.summary-card,.table-box,.report-card,.table-card,.card-section{
  contain:paint style!important;
}
/* Zoom and narrow-screen fallback. */
@media(max-width:900px){
  body.aq-protected-page>.layout{display:block!important}
  body.aq-protected-page>.layout>.sidebar{
    position:fixed!important;top:64px!important;bottom:0!important;left:-300px!important;
    width:min(82vw,290px)!important;max-width:290px!important;z-index:105!important;
  }
  body.aq-protected-page>.layout>.sidebar.open{left:0!important}
  body.aq-protected-page>.layout>main.content,
  body.aq-protected-page>.layout>.content{width:100%!important;max-width:none!important}
  body.aq-protected-page .header .brand{max-width:52vw!important}
}
@media(max-width:520px){
  body.aq-protected-page .header .brand{max-width:48vw!important}
  body.aq-protected-page .header .brand h2{font-size:15px!important}
  body.aq-protected-page .header-actions{gap:5px!important}
  body.aq-protected-page .logout{min-width:56px!important;padding:8px 9px!important}
}


/* FILE 030.12 v4.3 — final sidebar identity + persistent current-page state */
body.aq-protected-page .sidebar-brand{display:none!important}
.sidebar a.active,
.sidebar a[aria-current="page"],
.sidebar a[data-aq-current="true"]{
  color:#fff!important;
  background:linear-gradient(105deg,#0a9fd0,#087da8)!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:0 7px 18px rgba(3,83,117,.27)!important;
  font-weight:800!important;
}
.sidebar a{position:relative}
html.auth-ready body.aq-protected-page .aq-page-loader{display:none!important}


/* FILE 030.13 v4.4 — permanent current-page sidebar indicator */
body.aq-protected-page .sidebar a[aria-current="page"],
body.aq-protected-page .sidebar a[data-aq-current="true"],
body.aq-protected-page .sidebar a.active{
  color:#fff!important;
  background:linear-gradient(105deg,#0a9fd0,#087da8)!important;
  border-color:rgba(255,255,255,.18)!important;
  box-shadow:0 7px 18px rgba(3,83,117,.27)!important;
  font-weight:800!important;
  opacity:1!important;
}

/* FILE 031B v4.7 — clean persistent active state without side stripe */
body.aq-protected-page .sidebar a.active::before,
body.aq-protected-page .sidebar a[aria-current="page"]::before,
body.aq-protected-page .sidebar a[data-aq-current="true"]::before{content:none!important;display:none!important}

/* FILE 039A v6.1 — unified Refresh / Refresh Data button */
.aq-refresh-btn,button[id*="refresh" i],button[id*="Refresh"],#reportRefreshBtn{
  appearance:none!important;border:0!important;border-radius:10px!important;
  min-height:42px!important;padding:10px 18px!important;
  background:linear-gradient(105deg,#0aa0cf,#0789b5)!important;
  color:#fff!important;font-weight:750!important;line-height:1.15!important;
  box-shadow:0 7px 16px rgba(7,137,181,.20)!important;cursor:pointer!important;
  width:auto!important;white-space:nowrap!important;transition:transform .12s ease,opacity .12s ease!important;
}
.aq-refresh-btn:hover,button[id*="refresh" i]:hover,#reportRefreshBtn:hover{filter:brightness(1.03)!important}
.aq-refresh-btn:active,button[id*="refresh" i]:active,#reportRefreshBtn:active{transform:translateY(1px)!important}
.aq-refresh-btn:disabled,button[id*="refresh" i]:disabled,#reportRefreshBtn:disabled{opacity:.65!important;cursor:wait!important}
@media(max-width:620px){.page-head .aq-refresh-btn,.page-intro .aq-refresh-btn,.head .aq-refresh-btn{width:100%!important}}


/* FILE 041 v6.7 — Attendance/Payroll content visibility final guard */
html.auth-ready body.aq-attendance-page > .layout > main.content,
html.auth-ready body.aq-payroll-page > .layout > main.content,
body.aq-attendance-page.aq-content-ready > .layout > main.content,
body.aq-payroll-page.aq-content-ready > .layout > main.content{
  display:block!important;visibility:visible!important;opacity:1!important;
  position:relative!important;inset:auto!important;transform:none!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  height:auto!important;min-height:1px!important;overflow:visible!important;
  pointer-events:auto!important;z-index:1!important;
}
html.auth-ready body.aq-attendance-page > .layout > main.content > *,
html.auth-ready body.aq-payroll-page > .layout > main.content > *,
body.aq-attendance-page.aq-content-ready > .layout > main.content > *,
body.aq-payroll-page.aq-content-ready > .layout > main.content > *{
  display:revert;visibility:visible!important;opacity:1!important;transform:none!important;
}
/* Restore elements whose own component rules intentionally control display. */
body.aq-attendance-page .tab-panel:not(.active),body.aq-payroll-page .tab-panel:not(.active){display:none!important}
body.aq-attendance-page .tab-panel.active,body.aq-payroll-page .tab-panel.active{display:block!important}
@media(min-width:901px){
 body.aq-attendance-page>.layout,body.aq-payroll-page>.layout{display:grid!important;grid-template-columns:240px minmax(0,1fr)!important}
}
@media(max-width:900px){
 body.aq-attendance-page>.layout,body.aq-payroll-page>.layout{display:block!important}
 body.aq-attendance-page>.layout>main.content,body.aq-payroll-page>.layout>main.content{width:100%!important;margin:0!important}
}

/* FILE 041 v6.7 — Attendance and Payroll top-alignment lock */
@media (min-width:481px){
  body.aq-attendance-page>.layout,
  body.aq-payroll-page>.layout{
    display:grid!important;
    grid-template-columns:240px minmax(0,1fr)!important;
    grid-template-rows:auto!important;
    align-items:start!important;
    align-content:start!important;
    width:100%!important;
    min-height:calc(100vh - 64px)!important;
  }
  body.aq-attendance-page>.layout>.sidebar,
  body.aq-payroll-page>.layout>.sidebar{
    grid-column:1!important;
    grid-row:1!important;
    align-self:stretch!important;
    position:static!important;
    inset:auto!important;
    margin:0!important;
    width:240px!important;
    min-width:240px!important;
    max-width:240px!important;
    height:auto!important;
    min-height:calc(100vh - 64px)!important;
  }
  body.aq-attendance-page>.layout>main.content,
  body.aq-payroll-page>.layout>main.content{
    grid-column:2!important;
    grid-row:1!important;
    align-self:start!important;
    justify-self:stretch!important;
    position:relative!important;
    inset:auto!important;
    float:none!important;
    clear:none!important;
    margin:0!important;
    padding:22px!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    min-height:0!important;
    transform:none!important;
  }
}
@media (max-width:480px){
  body.aq-attendance-page>.layout,
  body.aq-payroll-page>.layout{display:block!important}
  body.aq-attendance-page>.layout>.sidebar,
  body.aq-payroll-page>.layout>.sidebar{
    position:fixed!important;top:64px!important;bottom:0!important;left:-310px!important;
    width:min(82vw,290px)!important;min-width:0!important;max-width:290px!important;
    z-index:115!important;overflow-y:auto!important
  }
  body.aq-attendance-page>.layout>.sidebar.open,
  body.aq-payroll-page>.layout>.sidebar.open{left:0!important}
  body.aq-attendance-page>.layout>main.content,
  body.aq-payroll-page>.layout>main.content{
    display:block!important;position:relative!important;inset:auto!important;
    margin:0!important;padding:16px 12px 32px!important;width:100%!important;max-width:none!important
  }
}

/* FILE 041A v6.8 — unified report actions and Roles page stabilization */
.report-actions .aq-refresh-btn,
.reports-actions .aq-refresh-btn,
body[data-aq-page="reports.html"] .aq-refresh-btn{
  background:linear-gradient(135deg,#0797bd,#0aa8cf)!important;
  color:#fff!important;border:1px solid #078ab0!important;
  box-shadow:0 5px 14px rgba(5,139,177,.22)!important;
  min-height:38px!important;border-radius:8px!important;
}
body[data-aq-page="reports.html"] .aq-refresh-btn:hover{filter:brightness(.98)!important}
body.aq-roles-page main.content{overflow:visible!important}


/* FILE 042A v7.1 — final shared shell for Payroll, Roles & HR.
   One rule-set prevents desktop-site toggle, delayed auth/role updates and zoom
   from changing header/sidebar/content geometry. */
body.aq-payroll-page,
body.aq-roles-page,
body.aq-hr-page{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  min-height:100vh!important;
  overflow-x:hidden!important;
}
body.aq-payroll-page>.header,
body.aq-roles-page>.header,
body.aq-hr-page>.header{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-width:0!important;
  height:64px!important;
  min-height:64px!important;
  max-height:64px!important;
  padding:0 12px!important;
  box-sizing:border-box!important;
  position:relative!important;
  inset:auto!important;
  z-index:120!important;
}
body.aq-payroll-page>.header .brand,
body.aq-roles-page>.header .brand,
body.aq-hr-page>.header .brand{
  display:flex!important;align-items:center!important;gap:8px!important;
  flex:1 1 auto!important;min-width:0!important;max-width:none!important;
}
body.aq-payroll-page>.header .brand h2,
body.aq-roles-page>.header .brand h2,
body.aq-hr-page>.header .brand h2{
  margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
body.aq-payroll-page>.header .header-actions,
body.aq-roles-page>.header .header-actions,
body.aq-hr-page>.header .header-actions{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  flex:0 0 auto!important;width:auto!important;min-width:0!important;gap:8px!important;
}
body.aq-payroll-page>.header .logout,
body.aq-roles-page>.header .logout,
body.aq-hr-page>.header .logout{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;width:auto!important;min-width:64px!important;max-width:92px!important;
  height:38px!important;margin:0!important;padding:8px 14px!important;white-space:nowrap!important;
}
body.aq-payroll-page>.layout,
body.aq-roles-page>.layout,
body.aq-hr-page>.layout{
  display:grid!important;
  grid-template-columns:240px minmax(0,1fr)!important;
  grid-template-rows:minmax(calc(100vh - 64px),auto)!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  min-height:calc(100vh - 64px)!important;
  margin:0!important;padding:0!important;
}
body.aq-payroll-page>.layout>.sidebar,
body.aq-roles-page>.layout>.sidebar,
body.aq-hr-page>.layout>.sidebar{
  grid-column:1!important;grid-row:1!important;
  position:static!important;inset:auto!important;transform:none!important;
  display:block!important;visibility:visible!important;opacity:1!important;
  width:240px!important;min-width:240px!important;max-width:240px!important;
  height:auto!important;min-height:calc(100vh - 64px)!important;
  margin:0!important;overflow:visible!important;z-index:10!important;
}
body.aq-payroll-page>.layout>.sidebar nav,
body.aq-roles-page>.layout>.sidebar nav,
body.aq-hr-page>.layout>.sidebar nav{display:flex!important;flex-direction:column!important;width:100%!important}
body.aq-payroll-page>.layout>.sidebar nav>a,
body.aq-roles-page>.layout>.sidebar nav>a,
body.aq-hr-page>.layout>.sidebar nav>a:not([hidden]){display:flex!important;visibility:visible!important;opacity:1!important}
body.aq-payroll-page>.layout>main.content,
body.aq-roles-page>.layout>main.content,
body.aq-hr-page>.layout>main.content{
  grid-column:2!important;grid-row:1!important;
  display:block!important;visibility:visible!important;opacity:1!important;
  position:relative!important;inset:auto!important;float:none!important;clear:none!important;
  align-self:start!important;justify-self:stretch!important;transform:none!important;
  width:100%!important;max-width:none!important;min-width:0!important;
  height:auto!important;min-height:0!important;margin:0!important;padding:22px!important;
  overflow:visible!important;box-sizing:border-box!important;
}
body.aq-payroll-page>.layout>.overlay,
body.aq-roles-page>.layout>.overlay,
body.aq-hr-page>.layout>.overlay{display:none!important}
body.aq-payroll-page .page-intro,
body.aq-roles-page .page-head,
body.aq-hr-page .page-intro{
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
  gap:16px!important;flex-wrap:wrap!important;width:100%!important;min-width:0!important;
}
body.aq-payroll-page .page-intro>div,
body.aq-roles-page .page-head>div,
body.aq-hr-page .page-intro>div{flex:1 1 420px!important;min-width:0!important}
body.aq-payroll-page .panel,
body.aq-roles-page .panel,
body.aq-hr-page .panel,
body.aq-payroll-page .table-wrap,
body.aq-roles-page .table-wrap,
body.aq-hr-page .table-wrap{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
body.aq-payroll-page .table-wrap,
body.aq-roles-page .table-wrap,
body.aq-hr-page .table-wrap{overflow-x:auto!important}
body.aq-hr-page .hr-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.aq-hr-page .form-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* True mobile only. Browser "Desktop site" produces a wide viewport and stays in the grid above. */
@media(max-width:760px){
  body.aq-payroll-page>.layout,
  body.aq-roles-page>.layout,
  body.aq-hr-page>.layout{display:block!important;min-height:calc(100vh - 64px)!important}
  body.aq-payroll-page>.layout>.sidebar,
  body.aq-roles-page>.layout>.sidebar,
  body.aq-hr-page>.layout>.sidebar{
    position:fixed!important;top:64px!important;bottom:0!important;left:-310px!important;
    width:min(82vw,290px)!important;min-width:0!important;max-width:290px!important;
    min-height:0!important;height:auto!important;overflow-y:auto!important;z-index:130!important;
    transition:left .18s ease!important;
  }
  body.aq-payroll-page>.layout>.sidebar.open,
  body.aq-roles-page>.layout>.sidebar.open,
  body.aq-hr-page>.layout>.sidebar.open{left:0!important}
  body.aq-payroll-page>.layout>main.content,
  body.aq-roles-page>.layout>main.content,
  body.aq-hr-page>.layout>main.content{
    display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
    margin:0!important;padding:16px 12px 32px!important;
  }
  body.aq-payroll-page>.layout>.overlay,
  body.aq-roles-page>.layout>.overlay,
  body.aq-hr-page>.layout>.overlay{display:none!important}
  body.aq-payroll-page>.layout>.overlay.show,
  body.aq-roles-page>.layout>.overlay.show,
  body.aq-hr-page>.layout>.overlay.show{display:block!important;position:fixed!important;inset:64px 0 0!important;z-index:125!important}
  body.aq-payroll-page>.header .header-clock,
  body.aq-roles-page>.header .header-clock,
  body.aq-hr-page>.header .header-clock{display:none!important}
  body.aq-payroll-page>.header .logout,
  body.aq-roles-page>.header .logout,
  body.aq-hr-page>.header .logout{min-width:58px!important;max-width:72px!important;padding:8px 9px!important}
  body.aq-hr-page .hr-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.aq-hr-page .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  body.aq-hr-page .hr-grid,
  body.aq-hr-page .form-grid{grid-template-columns:1fr!important}
  body.aq-payroll-page .page-intro .aq-refresh-btn,
  body.aq-roles-page .page-head .aq-refresh-btn,
  body.aq-hr-page .page-intro .aq-refresh-btn{width:100%!important}
}


/* =========================================================
   FILE 042C v7.3 — FINAL CANONICAL RESPONSIVE SHELL
   One authoritative shell for every protected Admin page.
========================================================= */
html,body{max-width:100%!important}
body.aq-protected-page{
  display:block!important;width:100%!important;min-width:0!important;
  min-height:100vh!important;overflow-x:hidden!important;background:#f4f8fb!important;
}
body.aq-protected-page>header.header,
body.aq-protected-page>.header{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  position:relative!important;inset:auto!important;z-index:300!important;
  width:100%!important;min-width:0!important;height:64px!important;min-height:64px!important;max-height:64px!important;
  margin:0!important;padding:0 12px!important;box-sizing:border-box!important;overflow:visible!important;
}
body.aq-protected-page .header .brand{
  display:flex!important;align-items:center!important;gap:9px!important;flex:1 1 auto!important;
  min-width:0!important;max-width:none!important;width:auto!important;
}
body.aq-protected-page .header .brand h2{
  display:block!important;margin:0!important;min-width:0!important;white-space:nowrap!important;
  overflow:hidden!important;text-overflow:ellipsis!important;font-size:18px!important;
}
body.aq-protected-page .menu-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  position:relative!important;z-index:330!important;pointer-events:auto!important;touch-action:manipulation!important;
  flex:0 0 42px!important;width:42px!important;min-width:42px!important;height:42px!important;
  margin:0!important;padding:0!important;cursor:pointer!important;
}
body.aq-protected-page .header-actions{
  display:flex!important;align-items:center!important;justify-content:flex-end!important;
  flex:0 0 auto!important;width:auto!important;min-width:0!important;gap:7px!important;
}
body.aq-protected-page .header-clock.aq-global-clock{
  display:inline-block!important;visibility:visible!important;opacity:1!important;
  width:auto!important;max-width:150px!important;white-space:nowrap!important;overflow:hidden!important;
  text-overflow:ellipsis!important;font-size:10px!important;line-height:1.2!important;
}
body.aq-protected-page .notification-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  pointer-events:auto!important;touch-action:manipulation!important;flex:0 0 40px!important;
  width:40px!important;min-width:40px!important;height:40px!important;margin:0!important;padding:0!important;
}
body.aq-protected-page .logout{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  flex:0 0 auto!important;width:auto!important;min-width:64px!important;max-width:90px!important;
  height:40px!important;margin:0!important;padding:8px 13px!important;white-space:nowrap!important;
  pointer-events:auto!important;touch-action:manipulation!important;
}
body.aq-protected-page>.layout{
  display:grid!important;grid-template-columns:240px minmax(0,1fr)!important;grid-template-rows:auto!important;
  align-items:stretch!important;align-content:start!important;width:100%!important;min-width:0!important;
  min-height:calc(100vh - 64px)!important;margin:0!important;padding:0!important;
}
body.aq-protected-page>.layout>.sidebar{
  grid-column:1!important;grid-row:1!important;position:static!important;inset:auto!important;transform:none!important;
  display:block!important;visibility:visible!important;opacity:1!important;width:240px!important;min-width:240px!important;
  max-width:240px!important;height:auto!important;min-height:calc(100vh - 64px)!important;margin:0!important;
  overflow:visible!important;z-index:100!important;
}
body.aq-protected-page>.layout>.sidebar nav{
  display:flex!important;flex-direction:column!important;width:100%!important;min-width:0!important;
}
body.aq-protected-page>.layout>.sidebar nav>a:not([hidden]){
  display:flex!important;visibility:visible!important;opacity:1!important;min-width:0!important;
}
body.aq-protected-page>.layout>main.content,
body.aq-protected-page>.layout>.content{
  grid-column:2!important;grid-row:1!important;display:block!important;visibility:visible!important;opacity:1!important;
  position:relative!important;inset:auto!important;float:none!important;clear:none!important;transform:none!important;
  align-self:start!important;justify-self:stretch!important;width:100%!important;max-width:none!important;min-width:0!important;
  height:auto!important;min-height:0!important;margin:0!important;padding:22px!important;box-sizing:border-box!important;
  overflow:visible!important;
}
body.aq-protected-page>.layout>.overlay{display:none!important}
body.aq-protected-page .page-head,
body.aq-protected-page .page-intro,
body.aq-protected-page .head{
  display:flex!important;align-items:flex-start!important;justify-content:space-between!important;
  gap:14px!important;flex-wrap:wrap!important;width:100%!important;min-width:0!important;
}
body.aq-protected-page .page-head>div,
body.aq-protected-page .page-intro>div,
body.aq-protected-page .head>div{flex:1 1 360px!important;min-width:0!important}
body.aq-protected-page .panel,
body.aq-protected-page .card,
body.aq-protected-page .table-wrap{max-width:100%!important;min-width:0!important;box-sizing:border-box!important}
body.aq-protected-page .table-wrap{width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}

/* Consistent inner tabs: visible labels, white inactive, blue active. */
body.aq-attendance-page .tabs,
body.aq-payroll-page .tabs{
  display:grid!important;width:100%!important;gap:7px!important;margin:12px 0!important;overflow:visible!important;
}
body.aq-attendance-page .tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}
body.aq-payroll-page .tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.aq-attendance-page .tabs>.tab,
body.aq-payroll-page .tabs>.tab{
  display:flex!important;align-items:center!important;justify-content:center!important;visibility:visible!important;opacity:1!important;
  min-width:0!important;min-height:42px!important;width:100%!important;margin:0!important;padding:9px 10px!important;
  border:1px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;color:#213547!important;
  font-weight:750!important;white-space:normal!important;text-align:center!important;line-height:1.15!important;
}
body.aq-attendance-page .tabs>.tab.active,
body.aq-payroll-page .tabs>.tab.active{
  background:linear-gradient(135deg,#0797bd,#0aa8cf)!important;color:#fff!important;border-color:#078ab0!important;
  box-shadow:0 5px 14px rgba(5,139,177,.20)!important;
}

/* Settings inner navigation now matches the strong Attendance tab design. */
body[data-aq-page="settings.html"] .settings-menu button{
  background:#fff!important;color:#243746!important;border:1px solid #d7e1e7!important;
  font-weight:750!important;min-height:48px!important;transition:none!important;
}
body[data-aq-page="settings.html"] .settings-menu button:hover,
body[data-aq-page="settings.html"] .settings-menu button.active{
  background:linear-gradient(135deg,#0797bd,#0aa8cf)!important;color:#fff!important;border-color:#078ab0!important;
  box-shadow:0 5px 14px rgba(5,139,177,.18)!important;
}

/* Reports: one action colour and geometry. */
body[data-aq-page="reports.html"] button.aq-refresh-btn,
body[data-aq-page="reports.html"] .action-main,
body[data-aq-page="reports.html"] .action-secondary{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  background:linear-gradient(135deg,#0797bd,#0aa8cf)!important;color:#fff!important;border:1px solid #078ab0!important;
  box-shadow:0 5px 14px rgba(5,139,177,.20)!important;border-radius:8px!important;min-height:40px!important;
  padding:9px 14px!important;font-weight:750!important;
}

/* HR validation feedback always visible. */
body.aq-hr-page .notice.show{display:block!important;scroll-margin-top:80px!important}

@media(max-width:768px){
  body.aq-protected-page>header.header,body.aq-protected-page>.header{padding:0 9px!important}
  body.aq-protected-page .header .brand h2{font-size:16px!important}
  body.aq-protected-page .header-clock.aq-global-clock{
    display:inline-block!important;max-width:92px!important;font-size:8px!important;letter-spacing:-.15px!important;
  }
  body.aq-protected-page .header-actions{gap:4px!important}
  body.aq-protected-page .notification-button{flex-basis:36px!important;width:36px!important;min-width:36px!important;height:36px!important}
  body.aq-protected-page .logout{min-width:57px!important;max-width:68px!important;height:38px!important;padding:7px 8px!important;font-size:12px!important}
  body.aq-protected-page>.layout{display:block!important;min-height:calc(100vh - 64px)!important}
  body.aq-protected-page>.layout>.sidebar{
    position:fixed!important;top:64px!important;bottom:0!important;left:-310px!important;right:auto!important;
    width:min(82vw,290px)!important;min-width:0!important;max-width:290px!important;height:auto!important;min-height:0!important;
    overflow-y:auto!important;z-index:320!important;transition:left .18s ease!important;box-shadow:8px 0 24px rgba(11,38,60,.25)!important;
  }
  body.aq-protected-page>.layout>.sidebar.open{left:0!important}
  body.aq-protected-page>.layout>main.content,
  body.aq-protected-page>.layout>.content{
    display:block!important;width:100%!important;max-width:none!important;min-width:0!important;
    margin:0!important;padding:16px 12px 32px!important;
  }
  body.aq-protected-page>.layout>.overlay.show{
    display:block!important;position:fixed!important;inset:64px 0 0!important;z-index:310!important;
    background:rgba(7,24,39,.46)!important;
  }
  body.aq-attendance-page .tabs,
  body.aq-payroll-page .tabs{
    display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;gap:7px!important;padding-bottom:2px!important;
  }
  body.aq-attendance-page .tabs>.tab,
  body.aq-payroll-page .tabs>.tab{flex:1 0 128px!important;width:auto!important;white-space:nowrap!important}
  body[data-aq-page="settings.html"] .settings-menu{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  body[data-aq-page="settings.html"] .settings-menu button{justify-content:flex-start!important;width:100%!important}
  body[data-aq-page="reports.html"] .report-actions,
  body[data-aq-page="reports.html"] .reports-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}
  body[data-aq-page="reports.html"] button.aq-refresh-btn,
  body[data-aq-page="reports.html"] .action-main,
  body[data-aq-page="reports.html"] .action-secondary{width:100%!important;white-space:normal!important}
}
@media(max-width:430px){
  body.aq-protected-page .header-clock.aq-global-clock{max-width:74px!important;font-size:7px!important}
  body.aq-protected-page .header .brand h2{font-size:15px!important}
  body.aq-protected-page .menu-button{flex-basis:39px!important;width:39px!important;min-width:39px!important;height:39px!important}
  body[data-aq-page="reports.html"] .report-actions,
  body[data-aq-page="reports.html"] .reports-actions{grid-template-columns:1fr!important}
}


/* =========================================================
   FILE 042C v7.3 — A TO Z FINAL RESPONSIVE / HEADER / FORM FIX
========================================================= */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-x:hidden}
body.aq-protected-page{overflow-x:hidden!important}
body.aq-protected-page .header{gap:8px!important}
body.aq-protected-page .header-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;min-width:0!important;height:100%!important}
body.aq-protected-page .header-clock.aq-global-clock{position:static!important;inset:auto!important;transform:none!important;align-self:center!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;line-height:1.15!important;margin:0!important;white-space:nowrap!important}
body.aq-protected-page .notification-button,body.aq-protected-page .logout{align-self:center!important;margin:0!important}
body.aq-protected-page .menu-button{user-select:none!important;-webkit-tap-highlight-color:transparent!important}
body.aq-protected-page .layout,body.aq-protected-page main.content{min-width:0!important;max-width:100%!important}
body.aq-protected-page main.content{overflow-x:hidden!important}
body.aq-protected-page h1,body.aq-protected-page h2,body.aq-protected-page h3,body.aq-protected-page p{overflow-wrap:anywhere}
body.aq-protected-page input,body.aq-protected-page select,body.aq-protected-page textarea,body.aq-protected-page button{max-width:100%;font:inherit}
body.aq-protected-page label{min-width:0!important}
.form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
.form-grid>label{display:flex!important;flex-direction:column!important;gap:7px!important;margin:0!important}
.form-grid input,.form-grid select,.form-grid textarea{width:100%!important;min-width:0!important;min-height:46px!important;padding:10px 12px!important}
.form-grid textarea{min-height:86px!important;resize:vertical}
.form-grid .wide{grid-column:1/-1!important}
.form-grid .actions{display:flex!important;justify-content:flex-end!important;align-items:center!important}
.tabs{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))!important;gap:8px!important;width:100%!important;overflow:visible!important}
.tabs .tab{width:100%!important;min-width:0!important;white-space:normal!important;min-height:46px!important;padding:9px 10px!important}
.summary-cards,.cards{gap:12px!important}
body.aq-roles-page .cards .card{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-width:0!important;padding:16px!important}
body.aq-roles-page .cards .card b{font-size:1.35rem!important;flex:0 0 auto!important}
body.aq-roles-page .role-grid{display:grid!important;grid-template-columns:minmax(240px,.75fr) minmax(0,1.25fr)!important;gap:22px!important;align-items:start!important}
body.aq-roles-page .role-grid>div{min-width:0!important}
body.aq-roles-page .role-grid label{display:flex!important;flex-direction:column!important;gap:8px!important;margin-bottom:14px!important}
body.aq-roles-page .role-grid select,body.aq-roles-page .role-grid textarea{width:100%!important;min-width:0!important}
body.aq-roles-page .permissions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body.aq-roles-page .perm{display:flex!important;flex-direction:row!important;align-items:center!important;gap:9px!important;min-height:42px!important;padding:9px 11px!important;border:1px solid #d9e4eb!important;border-radius:9px!important;background:#fff!important}
body.aq-roles-page .perm input{flex:0 0 auto!important;width:18px!important;height:18px!important;margin:0!important}
body.aq-payroll-page .panel,body.aq-attendance-page .panel,body.aq-roles-page .panel{overflow:hidden!important}
.table-wrap{width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
.table{min-width:680px!important}

@media(max-width:900px){
 body.aq-protected-page>.layout{grid-template-columns:210px minmax(0,1fr)!important}
 body.aq-protected-page>.layout>.sidebar{width:210px!important;min-width:210px!important;max-width:210px!important}
 body.aq-protected-page main.content{padding:18px!important}
 body.aq-roles-page .role-grid{grid-template-columns:1fr!important}
}
@media(max-width:760px){
 body.aq-protected-page>header.header,body.aq-protected-page>.header{position:sticky!important;top:0!important;height:64px!important;min-height:64px!important;padding:0 10px!important}
 body.aq-protected-page .header .brand{max-width:calc(100% - 132px)!important;gap:7px!important}
 body.aq-protected-page .header .brand h2{font-size:17px!important;max-width:170px!important}
 body.aq-protected-page .header-clock.aq-global-clock{display:none!important}
 body.aq-protected-page .header-actions{gap:6px!important}
 body.aq-protected-page .notification-button{width:42px!important;min-width:42px!important;height:42px!important}
 body.aq-protected-page .logout{height:42px!important;min-width:64px!important;padding:7px 10px!important}
 body.aq-protected-page>.layout{display:block!important;width:100%!important}
 body.aq-protected-page>.layout>.sidebar{position:fixed!important;top:64px!important;bottom:0!important;left:-310px!important;width:min(84vw,290px)!important;min-width:0!important;max-width:290px!important;height:auto!important;min-height:0!important;overflow-y:auto!important;z-index:500!important;transition:left .18s ease!important;box-shadow:12px 0 28px rgba(4,24,42,.2)!important}
 body.aq-protected-page>.layout>.sidebar.open{left:0!important}
 body.aq-protected-page>.layout>.overlay,body.aq-protected-page>.overlay{display:none!important}
 body.aq-protected-page>.layout>.overlay.show,body.aq-protected-page>.overlay.show{display:block!important;position:fixed!important;inset:64px 0 0!important;background:rgba(7,20,34,.52)!important;backdrop-filter:blur(1px)!important;z-index:490!important}
 body.aq-protected-page main.content{width:100%!important;margin:0!important;padding:16px 12px 34px!important}
 .page-intro,.page-head,.head{gap:12px!important}
 .page-intro h1,.page-head h1,.head h1{font-size:clamp(1.75rem,8vw,2.45rem)!important;line-height:1.08!important}
 .form-grid{grid-template-columns:1fr!important;gap:12px!important}
 .form-grid .wide{grid-column:auto!important}
 .form-grid .actions{justify-content:stretch!important}
 .form-grid .actions button{width:100%!important}
 body.aq-roles-page .permissions{grid-template-columns:1fr!important}
 body.aq-roles-page .cards,.cards,.summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .tabs{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .tabs .tab{font-size:14px!important}
}
@media(max-width:430px){
 body.aq-protected-page .header .brand h2{max-width:120px!important;font-size:16px!important}
 body.aq-protected-page .menu-button,body.aq-protected-page .notification-button{width:40px!important;min-width:40px!important;height:40px!important}
 body.aq-protected-page .logout{min-width:60px!important;font-size:14px!important;padding:6px 8px!important}
 body.aq-roles-page .cards,.cards,.summary-cards{grid-template-columns:1fr!important}
 .tabs{grid-template-columns:1fr!important}
 .tabs .tab{font-size:16px!important}
}

/* =========================================================
   FILE 042D v7.4 — UNIVERSAL TOUCH SHELL + PAGE UI NORMALIZATION
========================================================= */
html.aq-touch-shell body.aq-protected-page>.layout{
  display:block!important;width:100%!important;grid-template-columns:none!important;
}
html.aq-touch-shell body.aq-protected-page>.layout>.sidebar,
html.aq-touch-shell body.aq-protected-page .layout>.sidebar{
  position:fixed!important;top:64px!important;bottom:0!important;left:-310px!important;right:auto!important;
  width:min(84vw,290px)!important;min-width:0!important;max-width:290px!important;height:auto!important;min-height:0!important;
  overflow-y:auto!important;overflow-x:hidden!important;z-index:1002!important;transition:left .18s ease!important;
  box-shadow:12px 0 30px rgba(4,24,42,.28)!important;
}
html.aq-touch-shell body.aq-protected-page>.layout>.sidebar.open,
html.aq-touch-shell body.aq-protected-page .layout>.sidebar.open{left:0!important}
html.aq-touch-shell body.aq-protected-page main.content,
html.aq-touch-shell body.aq-protected-page>.layout>main.content,
html.aq-touch-shell body.aq-protected-page>.layout>.content{
  width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:16px 12px 34px!important;
}
html.aq-touch-shell body.aq-protected-page>#overlay.overlay,
html.aq-touch-shell body.aq-protected-page>.overlay{
  display:none!important;position:fixed!important;inset:64px 0 0!important;z-index:1001!important;
  background:rgba(7,20,34,.52)!important;backdrop-filter:blur(1px)!important;-webkit-backdrop-filter:blur(1px)!important;
}
html.aq-touch-shell body.aq-protected-page>#overlay.overlay.show,
html.aq-touch-shell body.aq-protected-page>.overlay.show{display:block!important}
html.aq-touch-shell body.aq-protected-page .menu-button{display:inline-flex!important;align-items:center!important;justify-content:center!important;pointer-events:auto!important;cursor:pointer!important;z-index:3!important}
html.aq-touch-shell body.aq-protected-page.aq-menu-open main.content{pointer-events:none!important}

/* Header stays balanced in normal mobile mode and browser Desktop-site mode. */
html.aq-touch-shell body.aq-protected-page .header{height:64px!important;min-height:64px!important;padding:0 10px!important;gap:8px!important}
html.aq-touch-shell body.aq-protected-page .header .brand{min-width:0!important;flex:1 1 auto!important;overflow:hidden!important}
html.aq-touch-shell body.aq-protected-page .header .brand h2{min-width:0!important;max-width:180px!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
html.aq-touch-shell body.aq-protected-page .header-actions{flex:0 0 auto!important;align-items:center!important}
html.aq-touch-shell body.aq-protected-page .header-clock.aq-global-clock{display:none!important}
html.aq-touch-shell body.aq-protected-page .notification-button,
html.aq-touch-shell body.aq-protected-page .logout{align-self:center!important;margin:0!important}

/* Settings-quality action/navigation buttons across all operational pages. */
html.aq-touch-shell body.aq-protected-page .page-actions,
html.aq-touch-shell body.aq-protected-page .actions,
html.aq-touch-shell body.aq-protected-page .report-actions,
html.aq-touch-shell body.aq-protected-page .reports-actions{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;
}
html.aq-touch-shell body.aq-protected-page .page-actions>button,
html.aq-touch-shell body.aq-protected-page .actions>button,
html.aq-touch-shell body.aq-protected-page .report-actions>button,
html.aq-touch-shell body.aq-protected-page .reports-actions>button{
  width:100%!important;min-width:0!important;margin:0!important;white-space:normal!important;min-height:44px!important;
}
html.aq-touch-shell body[data-aq-page="reports.html"] .summary-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
html.aq-touch-shell body[data-aq-page="reports.html"] .report-grid{grid-template-columns:1fr!important}
html.aq-touch-shell body[data-aq-page="reports.html"] .page-head,
html.aq-touch-shell body[data-aq-page="reports.html"] .head{display:block!important}
html.aq-touch-shell body[data-aq-page="reports.html"] .page-actions{margin-top:12px!important}

/* Long notification controls and labels must remain reachable, never frozen off-screen. */
html.aq-touch-shell body[data-aq-page="background-notifications.html"] .channels,
html.aq-touch-shell body[data-aq-page="background-notifications.html"] .status-grid{
  display:grid!important;grid-template-columns:1fr!important;width:100%!important;overflow:visible!important;
}
html.aq-touch-shell body[data-aq-page="background-notifications.html"] .channels label{
  width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important;
}
html.aq-touch-shell body[data-aq-page="background-notifications.html"] .panel,
html.aq-touch-shell body[data-aq-page="background-notifications.html"] .card{overflow:hidden!important}

@media(max-width:430px){
 html.aq-touch-shell body.aq-protected-page .page-actions,
 html.aq-touch-shell body.aq-protected-page .actions,
 html.aq-touch-shell body.aq-protected-page .report-actions,
 html.aq-touch-shell body.aq-protected-page .reports-actions{grid-template-columns:1fr!important}
 html.aq-touch-shell body[data-aq-page="reports.html"] .summary-cards{grid-template-columns:1fr!important}
}


/* =========================================================
   FILE 042E v7.5 — DESKTOP CLOCK / REPORTS / INVENTORY POLISH
========================================================= */
/* Touch phone with Chrome "Desktop site" uses a wide CSS viewport: show full live clock. */
@media (min-width:769px){
  html.aq-touch-shell body.aq-protected-page .header-clock.aq-global-clock,
  body.aq-protected-page .header-clock.aq-global-clock{
    display:inline-flex!important;
    min-width:154px!important;
    height:40px!important;
    padding:0 6px!important;
    align-items:center!important;
    justify-content:center!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
    font-variant-numeric:tabular-nums!important;
    letter-spacing:.1px!important;
    white-space:nowrap!important;
  }
  html.aq-touch-shell body.aq-protected-page .header .brand{flex:1 1 auto!important}
  html.aq-touch-shell body.aq-protected-page .header-actions{gap:8px!important}
}

/* Reports: refresh sits in the page-heading corner; four actions behave like Settings rows. */
body[data-aq-page="reports.html"] .page-head{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start!important;gap:16px!important;
}
body[data-aq-page="reports.html"] .report-head-tools{display:flex!important;justify-content:flex-end!important;align-items:flex-start!important}
body[data-aq-page="reports.html"] .report-refresh-corner{width:auto!important;min-width:150px!important;min-height:44px!important}
body[data-aq-page="reports.html"] .report-command-menu{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:0 0 22px!important;
}
body[data-aq-page="reports.html"] .report-command{
  appearance:none!important;width:100%!important;min-height:76px!important;padding:13px 16px!important;
  display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;
  column-gap:11px!important;align-items:center!important;text-align:left!important;
  border:1px solid #d7e1e8!important;border-radius:12px!important;background:#fff!important;color:#243342!important;
  box-shadow:0 3px 10px rgba(15,43,63,.06)!important;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease,background .12s ease!important;
}
body[data-aq-page="reports.html"] .report-command>span{grid-row:1/3!important;font-size:24px!important;line-height:1!important;text-align:center!important}
body[data-aq-page="reports.html"] .report-command>b{font-size:16px!important;line-height:1.2!important}
body[data-aq-page="reports.html"] .report-command>small{color:#6b7785!important;font-size:12px!important;line-height:1.3!important}
body[data-aq-page="reports.html"] .report-command:hover,
body[data-aq-page="reports.html"] .report-command:focus-visible{border-color:#0797bd!important;background:#f2fbfe!important;box-shadow:0 6px 16px rgba(5,139,177,.14)!important;outline:3px solid rgba(7,151,189,.16)!important;outline-offset:1px!important}
body[data-aq-page="reports.html"] .report-command:active,
body[data-aq-page="reports.html"] .report-command.aq-pressed{transform:translateY(1px) scale(.992)!important;background:#e7f8fc!important;border-color:#0797bd!important}

/* Background notification controls: unmistakable tap/focus/working feedback. */
body[data-aq-page="background-notifications.html"] .aq-feedback-button{
  position:relative!important;transition:transform .12s ease,box-shadow .12s ease,filter .12s ease!important;
  -webkit-tap-highlight-color:transparent!important;
}
body[data-aq-page="background-notifications.html"] .aq-feedback-button:hover,
body[data-aq-page="background-notifications.html"] .aq-feedback-button:focus-visible{
  box-shadow:0 0 0 4px rgba(7,151,189,.18),0 6px 16px rgba(15,43,63,.12)!important;outline:none!important;filter:saturate(1.08)!important;
}
body[data-aq-page="background-notifications.html"] .aq-feedback-button:active,
body[data-aq-page="background-notifications.html"] .aq-feedback-button.aq-pressed{
  transform:translateY(2px) scale(.985)!important;filter:brightness(.92)!important;
}
body[data-aq-page="background-notifications.html"] .aq-feedback-button.aq-working::after{
  content:"";position:absolute;right:14px;top:50%;width:16px;height:16px;margin-top:-8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:aqBtnSpin .7s linear infinite;
}
@keyframes aqBtnSpin{to{transform:rotate(360deg)}}

/* Inventory is restored to its own original layout instead of inheriting broad page rules. */
body[data-aq-page="inventory.html"] .page-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:16px!important}
body[data-aq-page="inventory.html"] .toolbar{display:grid!important;grid-template-columns:minmax(0,1fr) 180px 180px!important;gap:12px!important}
body[data-aq-page="inventory.html"] .form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:14px!important;align-items:start!important}
body[data-aq-page="inventory.html"] .form-grid>.form-group{display:block!important;margin-bottom:0!important}
body[data-aq-page="inventory.html"] .form-group.full{grid-column:1/-1!important}
body[data-aq-page="inventory.html"] .inventory-details{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
body[data-aq-page="inventory.html"] .detail-box.full{grid-column:1/-1!important}
body[data-aq-page="inventory.html"] main.content{overflow-x:hidden!important}

@media(max-width:768px){
  body[data-aq-page="reports.html"] .page-head{grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important}
  body[data-aq-page="reports.html"] .report-refresh-corner{min-width:0!important;width:auto!important;padding:9px 12px!important;font-size:13px!important}
  body[data-aq-page="reports.html"] .report-command-menu{grid-template-columns:1fr!important}
  body[data-aq-page="reports.html"] .report-command{min-height:68px!important}
  body[data-aq-page="inventory.html"] .page-head{flex-direction:column!important}
  body[data-aq-page="inventory.html"] .toolbar{grid-template-columns:1fr!important}
  body[data-aq-page="inventory.html"] .form-grid,
  body[data-aq-page="inventory.html"] .inventory-details{grid-template-columns:1fr!important}
  body[data-aq-page="inventory.html"] .form-group.full,
  body[data-aq-page="inventory.html"] .detail-box.full{grid-column:auto!important}
}
@media(max-width:430px){
  body[data-aq-page="reports.html"] .page-head{grid-template-columns:1fr!important}
  body[data-aq-page="reports.html"] .report-head-tools{justify-content:flex-start!important}
  body[data-aq-page="reports.html"] .report-refresh-corner{width:100%!important}
}


/* FILE 043 v7.7 — targeted notification and inventory polish only. */
body[data-aq-page="background-notifications.html"] #permissionBtn{
  background:linear-gradient(135deg,#0798c7,#06a8d8)!important;color:#fff!important;border-color:transparent!important;
}
body[data-aq-page="background-notifications.html"] #registerBtn{
  background:linear-gradient(135deg,#168a55,#22a66a)!important;color:#fff!important;border:0!important;
}
body[data-aq-page="background-notifications.html"] #testBtn{
  background:linear-gradient(135deg,#d88b08,#f0a928)!important;color:#fff!important;border:0!important;
}
body[data-aq-page="background-notifications.html"] #deactivateBtn{
  background:linear-gradient(135deg,#b91c1c,#d52323)!important;color:#fff!important;border:0!important;
}
body[data-aq-page="background-notifications.html"] .panel>.actions .aq-feedback-button{
  flex:1 1 190px!important;min-height:44px!important;
}

/* Keep Inventory action controls in one readable horizontal row, as in the earlier stable layout. */
body[data-aq-page="inventory.html"] td .actions{
  display:inline-flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:6px!important;min-width:max-content!important;
}
body[data-aq-page="inventory.html"] td .action-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;white-space:nowrap!important;
}
body[data-aq-page="inventory.html"] th:last-child,
body[data-aq-page="inventory.html"] td:last-child{
  min-width:286px!important;white-space:nowrap!important;
}
body[data-aq-page="inventory.html"] .table-wrap{
  overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;
}

/* FILE 043 v7.7 — readable header clock and stable action rows */
.header-clock.aq-global-clock{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-width:max-content;
  font-size:13px!important;
  line-height:1.2!important;
  font-weight:800!important;
  letter-spacing:.15px;
  color:#fff!important;
  text-shadow:0 1px 2px rgba(0,0,0,.35);
  opacity:1!important;
  white-space:nowrap!important;
}
@media (max-width:600px){
  .header-clock.aq-global-clock{
    display:inline-flex!important;
    font-size:11px!important;
    max-width:112px;
    overflow:hidden;
    text-overflow:ellipsis;
  }
}
.inventory-page .actions,
body[data-page="inventory"] .actions{
  display:inline-flex!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  min-width:max-content!important;
  align-items:center!important;
}
.inventory-page .action-button,
body[data-page="inventory"] .action-button{
  flex:0 0 auto!important;
  padding:7px 9px!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
@media(max-width:600px){
  .inventory-page .table-wrap,
  body[data-page="inventory"] .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch}
  .inventory-page table,
  body[data-page="inventory"] table{min-width:1050px!important}
}


/* =====================================================
   FILE 045D v8.6 — canonical stable shell + inventory row
===================================================== */
body.aq-protected-page>.header,body.aq-protected-page header.header{
  display:flex!important;align-items:center!important;justify-content:space-between!important;
  min-height:72px!important;padding:10px 16px!important;gap:10px!important;overflow:visible!important;
}
body.aq-protected-page .header .brand,body.aq-protected-page .header .header-actions{display:flex!important;align-items:center!important}
body.aq-protected-page .header .header-actions{margin-left:auto!important;gap:8px!important;flex:0 0 auto!important;height:auto!important}
body.aq-protected-page .header-clock.aq-global-clock{position:static!important;transform:none!important;margin:0!important;align-self:center!important;line-height:1.2!important}
body.aq-protected-page .notification-button,body.aq-protected-page .logout{position:relative!important;top:auto!important;transform:none!important;align-self:center!important;margin:0!important;touch-action:manipulation!important}
body[data-aq-page="inventory.html"] .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-x:contain!important}
body[data-aq-page="inventory.html"] table{min-width:1120px!important}
body[data-aq-page="inventory.html"] th:last-child,body[data-aq-page="inventory.html"] td:last-child{min-width:244px!important;width:244px!important}
body[data-aq-page="inventory.html"] td .actions{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:6px!important;width:max-content!important;min-width:226px!important}
body[data-aq-page="inventory.html"] td .action-button{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;min-width:49px!important;min-height:38px!important;padding:8px 10px!important;white-space:nowrap!important}
@media(max-width:760px){
  body.aq-protected-page>.header,body.aq-protected-page header.header{min-height:72px!important;padding:9px 12px!important}
  body.aq-protected-page .header-clock.aq-global-clock{display:none!important}
  body.aq-protected-page .notification-button{width:42px!important;min-width:42px!important;height:42px!important}
  body.aq-protected-page .logout{min-width:68px!important;height:42px!important;padding:7px 11px!important}
  body[data-aq-page="inventory.html"] table{min-width:1080px!important}
}
@media(min-width:761px){
  body.aq-protected-page .header-clock.aq-global-clock{display:inline-flex!important;min-height:34px!important;align-items:center!important;justify-content:center!important;font-size:11px!important;font-weight:700!important;white-space:nowrap!important}
}


/* =====================================================
   FILE 045D v8.6 — final canonical warehouse/header/inventory stability
===================================================== */
body[data-aq-page="warehouses.html"] .warehouse-pane[hidden]{display:none!important}
body[data-aq-page="warehouses.html"] .warehouse-pane.is-active{display:block!important}
body[data-aq-page="warehouses.html"] .warehouse-tabs{visibility:visible!important;opacity:1!important}
body[data-aq-page="inventory.html"] .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;scrollbar-gutter:stable!important}
body[data-aq-page="inventory.html"] td:last-child{white-space:nowrap!important}
body[data-aq-page="inventory.html"] td .actions{display:inline-flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:6px!important;width:max-content!important;min-width:max-content!important}
body[data-aq-page="inventory.html"] td .action-button{display:inline-flex!important;flex:0 0 auto!important;min-width:50px!important;min-height:38px!important;padding:8px 10px!important;white-space:nowrap!important}
@media(max-width:760px){body[data-aq-page="inventory.html"] table{min-width:1080px!important}}
@media(min-width:761px){body.aq-protected-page .header-clock.aq-global-clock{display:inline-flex!important;align-items:center!important;justify-content:center!important;position:static!important;transform:none!important;min-width:max-content!important;max-width:none!important;font-size:11px!important;font-weight:800!important;white-space:nowrap!important}}
@media(max-width:760px){body.aq-protected-page .header-clock.aq-global-clock{display:none!important}}


/* =====================================================
   AQUAZAL FINAL MASTER STABILITY — FILE 045D v8.6
   Last-resort normalized rules; intentionally compact.
===================================================== */
html{overflow-x:hidden}
body.aq-protected-page{overflow-x:hidden}
body.aq-protected-page .header{align-items:center}
body.aq-protected-page .brand,body.aq-protected-page .header-actions{align-items:center}
body.aq-protected-page .notification-button,body.aq-protected-page .logout,body.aq-protected-page .menu-button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.aq-protected-page .notification-button{display:inline-flex;align-items:center;justify-content:center;line-height:1}
body.aq-protected-page .logout{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.action-buttons,.inventory-actions,.row-actions{display:inline-flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:6px!important;white-space:nowrap!important;min-width:max-content!important}
.action-buttons .action-button,.inventory-actions .action-button,.row-actions .action-button{flex:0 0 auto!important;min-width:52px!important;min-height:38px!important;margin:0!important}
.table-wrapper,.inventory-table-wrapper,.responsive-table{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-inline:contain}
table{border-collapse:collapse}
button,a,[role="button"]{touch-action:manipulation}
button:focus-visible,a:focus-visible,[role="button"]:focus-visible{outline:3px solid rgba(8,164,206,.35);outline-offset:2px}
button:disabled{cursor:not-allowed;opacity:.65}
@media(max-width:760px){
 body.aq-protected-page .header-clock.aq-global-clock{display:none!important}
 .content{max-width:100%;overflow-x:hidden}
 .page-head{gap:12px}
}
@media(min-width:761px){body.aq-protected-page .header-clock.aq-global-clock{display:inline-flex!important}}


/* =====================================================
   AQUAZAL FILE 045D v8.6 — FINAL CONSISTENCY LAYER
===================================================== */
body[data-aq-page="inventory.html"] .inventory-action-cell{min-width:326px!important;width:326px!important;white-space:nowrap!important;overflow:visible!important}
body[data-aq-page="inventory.html"] .inventory-actions,body[data-aq-page="inventory.html"] td .actions{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;width:max-content!important;min-width:304px!important;max-width:none!important;white-space:nowrap!important;overflow:visible!important}
body[data-aq-page="inventory.html"] .inventory-actions .action-button,body[data-aq-page="inventory.html"] td .actions .action-button{display:inline-flex!important;flex:0 0 auto!important;min-width:66px!important;min-height:40px!important;padding:8px 11px!important;margin:0!important;white-space:nowrap!important}
body[data-aq-page="inventory.html"] .table-wrap{overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch!important}
body[data-aq-page="inventory.html"] table{min-width:1190px!important}
.warehouse-tabs{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;visibility:visible!important;opacity:1!important}
.warehouse-pane[hidden]{display:none!important}.warehouse-pane.is-active{display:block!important}
.header-clock.aq-global-clock{font-variant-numeric:tabular-nums}
.aq-inline-time,.warehouse-runtime{display:none!important}
@media(max-width:760px){body[data-aq-page="inventory.html"] table{min-width:1190px!important}body[data-aq-page="inventory.html"] .inventory-action-cell{min-width:326px!important;width:326px!important}}

/* FILE 045E v8.7 — final Inventory one-line action lock */
body[data-aq-page="inventory.html"] .table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
body[data-aq-page="inventory.html"] table{min-width:1190px!important}
body[data-aq-page="inventory.html"] th:last-child,body[data-aq-page="inventory.html"] td:last-child{min-width:330px!important;width:330px!important;white-space:nowrap!important}
body[data-aq-page="inventory.html"] td:last-child .actions,body[data-aq-page="inventory.html"] .inventory-actions{display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;gap:7px!important;min-width:310px!important;width:max-content!important;white-space:nowrap!important}
body[data-aq-page="inventory.html"] td:last-child .action-button,body[data-aq-page="inventory.html"] .inventory-actions .action-button{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;min-width:66px!important;min-height:40px!important;margin:0!important;padding:8px 11px!important;white-space:nowrap!important}


/* FILE 055 — mobile menu must scroll independently and never cover header actions */
@media (max-width:768px){
  body.aq-protected-page>.layout>.sidebar,.sidebar{
    overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;height:calc(100dvh - 64px)!important;max-height:calc(100dvh - 64px)!important;
    padding-bottom:32px!important;
  }
  body.aq-menu-open{overflow:hidden!important}
  body.aq-protected-page>.header,body.aq-protected-page>header.header{z-index:220!important}
  body.aq-protected-page .header-actions,.logout,#logoutBtn{pointer-events:auto!important;z-index:230!important}
  .overlay{z-index:190!important;top:64px!important}
  .sidebar{z-index:200!important}
}


/* =====================================================
   FILE 067 v12.2 — ENTERPRISE CLEANUP & QA LOCK
   Canonical visual, responsive and accessibility layer
===================================================== */
:root{--aq-navy:#082d49;--aq-navy-2:#0b4667;--aq-aqua:#079fc9;--aq-aqua-2:#0bb5d8;--aq-gold:#d8aa35;--aq-ink:#142033;--aq-muted:#667487;--aq-border:#d7e1e8;--aq-bg:#f2f7fa;--aq-success:#16835b;--aq-danger:#c62828;--aq-radius:14px;--aq-shadow:0 8px 22px rgba(15,48,70,.08)}
html{font-size:16px;scroll-behavior:auto}
body.aq-protected-page{background:var(--aq-bg)!important;color:var(--aq-ink)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.aq-protected-page .content{padding:18px!important;min-width:0!important}
body.aq-protected-page h1{font-size:clamp(1.55rem,2.1vw,2.2rem)!important;line-height:1.15!important;letter-spacing:-.025em!important}
body.aq-protected-page h2{font-size:clamp(1.2rem,1.55vw,1.55rem)!important;line-height:1.25!important}
body.aq-protected-page p,body.aq-protected-page label,body.aq-protected-page input,body.aq-protected-page select,body.aq-protected-page textarea,body.aq-protected-page button{font-size:max(14px,.93rem)}
body.aq-protected-page small,.mini,.tip,.table-tip{font-size:12px!important;line-height:1.45!important;color:#607083!important}
.page-intro,.page-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;margin-bottom:14px!important}
.page-intro>div,.page-head>div{min-width:0;flex:1 1 auto}
.aq-refresh-btn,[id="refreshBtn"],button.refresh{flex:0 0 auto!important;min-width:112px!important;min-height:44px!important;padding:10px 16px!important;border-radius:10px!important;font-weight:800!important;white-space:nowrap!important;box-shadow:0 5px 14px rgba(5,150,194,.16)!important}
.panel,.card,.metric,.stat-card{border:1px solid var(--aq-border)!important;border-radius:var(--aq-radius)!important;box-shadow:var(--aq-shadow)!important;background:#fff!important}
input,select,textarea{min-height:44px!important;border:1px solid #cbd8e0!important;border-radius:10px!important;background:#fff!important;color:var(--aq-ink)!important}
textarea{min-height:92px!important;resize:vertical}
button,.btn,.tab{min-height:42px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease,border-color .12s ease!important}
button:active,.btn:active,.tab:active{transform:translateY(1px) scale(.99)!important}
.tabs{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;gap:8px!important;align-items:stretch!important}
.tabs .tab{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;padding:10px 12px!important;color:#24364a!important;background:#fff!important;border:1px solid #cbd8e0!important;border-radius:10px!important;font-weight:800!important;white-space:normal!important;text-align:center!important;line-height:1.2!important;opacity:1!important;visibility:visible!important}
.tabs .tab.active{color:#fff!important;background:linear-gradient(135deg,var(--aq-aqua),#078fb8)!important;border-color:transparent!important;box-shadow:0 5px 14px rgba(6,155,201,.22)!important}
.table-wrap{overflow:auto!important;-webkit-overflow-scrolling:touch!important;border-radius:12px!important}
table{width:100%;font-size:13px!important}
th{font-size:12px!important;line-height:1.25!important;letter-spacing:.015em!important;color:#405268!important;background:#edf4f7!important;padding:11px 10px!important}
td{font-size:13px!important;line-height:1.35!important;padding:11px 10px!important;vertical-align:middle!important}
.sidebar{scrollbar-width:thin!important;overscroll-behavior:contain!important}
.sidebar nav{display:flex!important;flex-direction:column!important;min-height:100%!important}
.sidebar a{min-height:44px!important;display:flex!important;align-items:center!important;gap:8px!important;line-height:1.2!important}
.sidebar a[href="settings.html"]{margin-top:8px!important}
/* Supplier tabs must never become blank */
body[data-aq-page="suppliers.html"] .tabs .tab{color:#22364b!important;text-indent:0!important;font-size:13px!important}
body[data-aq-page="suppliers.html"] .tabs .tab.active{color:#fff!important}
body[data-aq-page="suppliers.html"] .form-grid{gap:14px!important}
/* Attendance: compact, readable, single-line row actions */
body[data-aq-page="attendance.html"] .table-wrap table{min-width:1040px!important}
body[data-aq-page="attendance.html"] th:last-child,body[data-aq-page="attendance.html"] td:last-child{min-width:300px!important;width:300px!important}
body[data-aq-page="attendance.html"] td:last-child .action-row{display:inline-flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;min-width:278px!important;width:max-content!important}
body[data-aq-page="attendance.html"] td:last-child .action-row .btn{flex:0 0 auto!important;width:auto!important;min-width:82px!important;min-height:38px!important;padding:8px 10px!important;font-size:12px!important;white-space:nowrap!important;border-radius:9px!important}
body[data-aq-page="attendance.html"] td:last-child .action-row .btn[data-act="break-start"]{background:#eaf7fb!important;color:#086b8b!important;border:1px solid #abddea!important}
body[data-aq-page="attendance.html"] td:last-child .action-row .btn[data-act="break-end"]{background:#fff7df!important;color:#8a6100!important;border:1px solid #efd995!important}
body[data-aq-page="attendance.html"] td:last-child .action-row .btn[data-act="checkout"]{background:#087fa8!important;color:#fff!important;border:1px solid #087fa8!important}
/* Monitoring page */
body[data-aq-page="monitoring.html"] .monitor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
body[data-aq-page="monitoring.html"] .monitor-card{padding:18px;min-height:150px}
body[data-aq-page="monitoring.html"] .monitor-card h2{display:flex;align-items:center;gap:9px;margin-bottom:8px}
body[data-aq-page="monitoring.html"] .health-pill{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#e9f8f1;color:#13704e;font-weight:800;font-size:12px}
body[data-aq-page="monitoring.html"] .monitor-list{display:grid;gap:8px;margin-top:12px}
body[data-aq-page="monitoring.html"] .monitor-row{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid #edf2f5;font-size:13px}
@media(max-width:768px){
 body.aq-protected-page .content{padding:14px 10px!important}
 .page-intro,.page-head{flex-direction:column!important;align-items:stretch!important}
 .aq-refresh-btn,[id="refreshBtn"],button.refresh{width:100%!important}
 .tabs{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body[data-aq-page="monitoring.html"] .monitor-grid{grid-template-columns:1fr}
 body[data-aq-page="attendance.html"] .table-wrap table{min-width:1040px!important}
}
@media(max-width:390px){.tabs{grid-template-columns:1fr!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* ===== FILE 067 Enterprise Regression + UX Master ===== */
:root{--aq-action:#079bc5;--aq-action-dark:#067ea1;--aq-success:#178a5b;--aq-warning:#a26a11;--aq-danger:#c62828;--aq-gold:#d4a82f}
.aq-refresh-btn,button[id*="refresh" i],button[id*="Refresh"]{background:linear-gradient(135deg,var(--aq-action),#0aa7cf)!important;color:#fff!important;border:1px solid rgba(0,91,126,.18)!important;box-shadow:0 7px 18px rgba(7,155,197,.18)!important;font-weight:800!important;min-height:44px!important}
.aq-refresh-btn:hover,.aq-refresh-btn:focus-visible{background:linear-gradient(135deg,var(--aq-action-dark),var(--aq-action))!important}
.aq-refresh-pulse{transform:translateY(1px)!important;filter:saturate(1.15)!important;box-shadow:0 2px 8px rgba(7,155,197,.25)!important;position:relative!important}
.aq-refresh-pulse::after{content:"";display:inline-block;width:14px;height:14px;margin-left:9px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;vertical-align:-2px;animation:aqSpin .7s linear infinite}
@keyframes aqSpin{to{transform:rotate(360deg)}}
.sidebar nav{padding-bottom:max(24px,env(safe-area-inset-bottom))!important}.sidebar nav a{min-height:46px!important;display:flex!important;align-items:center!important}
/* Supplier tabs never become unnamed white blocks */
body[data-aq-page="suppliers.html"] .tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
body[data-aq-page="suppliers.html"] .tab{display:flex!important;align-items:center!important;justify-content:center!important;min-height:46px!important;padding:9px 10px!important;color:#243447!important;background:#fff!important;border:1px solid #ccd9e2!important;white-space:normal!important;line-height:1.2!important;font-size:14px!important;opacity:1!important;text-indent:0!important;overflow:visible!important}
body[data-aq-page="suppliers.html"] .tab.active{color:#fff!important;background:linear-gradient(135deg,#079bc5,#0aa7cf)!important;border-color:#078eb6!important}
/* Attendance actions remain one clean row inside the horizontally scrollable table */
body[data-aq-page="attendance.html"] td:last-child,body[data-aq-page="attendance.html"] th:last-child{min-width:300px!important;width:300px!important}
body[data-aq-page="attendance.html"] td:last-child>div,body[data-aq-page="attendance.html"] .row-actions,body[data-aq-page="attendance.html"] .attendance-actions{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:7px!important;width:max-content!important}
body[data-aq-page="attendance.html"] td:last-child button{display:inline-flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important;width:auto!important;min-width:88px!important;min-height:40px!important;margin:0!important;padding:8px 11px!important;font-size:13px!important;line-height:1.1!important}
/* Reports: compact on phones, balanced on desktop; decorative gold used only as a subtle section accent */
body[data-aq-page="reports.html"] .page-head h1{font-size:clamp(1.65rem,4vw,2.25rem)!important;line-height:1.1!important}
body[data-aq-page="reports.html"] .report-actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important}
body[data-aq-page="reports.html"] .report-actions button,body[data-aq-page="reports.html"] .report-actions .action-card{min-height:76px!important;padding:13px!important}
body[data-aq-page="reports.html"] .summary-card,body[data-aq-page="reports.html"] .aq-enterprise-cards article{border-left:3px solid #22a7ba!important}
body[data-aq-page="reports.html"] .page-head{border-left:3px solid var(--aq-gold)!important;padding-left:12px!important}
@media(max-width:768px){
 body[data-aq-page="reports.html"] .report-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body[data-aq-page="reports.html"] .summary-cards,body[data-aq-page="reports.html"] .aq-enterprise-cards{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body[data-aq-page="reports.html"] .summary-card,body[data-aq-page="reports.html"] .aq-enterprise-cards article{min-height:128px!important;padding:16px!important}
 body[data-aq-page="reports.html"] .report-actions button,body[data-aq-page="reports.html"] .report-actions .action-card{min-height:84px!important;font-size:15px!important}
}
@media(max-width:390px){body[data-aq-page="suppliers.html"] .tabs{grid-template-columns:1fr 1fr!important}body[data-aq-page="reports.html"] .summary-cards,body[data-aq-page="reports.html"] .aq-enterprise-cards{grid-template-columns:1fr!important}}

body[data-aq-page="attendance.html"] .action-row{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;gap:7px!important;width:max-content!important} body[data-aq-page="attendance.html"] .action-row button{white-space:nowrap!important;flex:0 0 auto!important;min-width:88px!important}


/* =========================================================
   FILE 067 — Premium Final A2Z UI & Stability Layer
========================================================= */
:root{
  --aq-blue:#087f9c;--aq-blue-dark:#055f78;--aq-navy:#102033;
  --aq-bg:#f4f7f9;--aq-card:#fff;--aq-text:#172637;--aq-muted:#66778a;
  --aq-border:#dce5eb;--aq-radius:16px;
  --aq-shadow:0 12px 32px rgba(16,32,51,.08);
  --aq-focus:0 0 0 3px rgba(8,127,156,.18);
}
html{color-scheme:light;-webkit-text-size-adjust:100%}
body{background:linear-gradient(180deg,#f8fafb 0,#f2f6f8 100%);color:var(--aq-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.5}
.header{background:linear-gradient(120deg,#092f4a,#075a72)!important;border-bottom:1px solid rgba(255,255,255,.12)!important;box-shadow:0 8px 24px rgba(9,47,74,.16)!important}
.sidebar{background:linear-gradient(180deg,#102c42,#0b2234)!important;border-right:1px solid rgba(255,255,255,.06)}
.sidebar a{border-radius:10px;margin:2px 8px;padding-inline:13px;transition:background-color .16s ease,transform .16s ease,color .16s ease}
.sidebar a:hover{transform:translateX(2px)}
.sidebar a.active{background:linear-gradient(135deg,rgba(36,174,202,.24),rgba(255,255,255,.09))!important;box-shadow:inset 3px 0 #51c7de}
.content,main{max-width:1600px}
.card,.panel,.summary-card,.table-box,.toolbar,.report-card,.table-card,.card-section,.continuity-card{background:rgba(255,255,255,.98)!important;border:1px solid var(--aq-border)!important;border-radius:var(--aq-radius)!important;box-shadow:var(--aq-shadow)!important}
h1,h2,h3{letter-spacing:-.02em;color:#102033}
p{max-width:80ch}
button,.btn,.primary-button,.save-button,.apply-filter{min-height:42px;border-radius:11px!important;font-weight:700;letter-spacing:.005em;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease,opacity .14s ease}
button:hover:not(:disabled),.btn:hover:not(:disabled),.primary-button:hover:not(:disabled){transform:translateY(-1px)}
button:active:not(:disabled),.btn:active:not(:disabled),.primary-button:active:not(:disabled){transform:translateY(0)}
button:disabled{opacity:.55;cursor:not-allowed;transform:none!important}
input,select,textarea{min-height:43px;border:1px solid #cfdbe3!important;border-radius:11px!important;background:#fff!important;color:#172637!important;transition:border-color .15s ease,box-shadow .15s ease}
input:focus,select:focus,textarea:focus,button:focus-visible,a:focus-visible{outline:none!important;border-color:#087f9c!important;box-shadow:var(--aq-focus)!important}
label{font-weight:650;color:#34485c}
table{border-collapse:separate!important;border-spacing:0;width:100%}
thead th{position:sticky;top:0;z-index:1;background:#eef4f7!important;color:#31475a!important;font-size:12px;letter-spacing:.045em;text-transform:uppercase;border-bottom:1px solid #d7e2e8!important}
tbody tr{transition:background-color .12s ease}
tbody tr:hover{background:#f7fafb!important}
th,td{padding:13px 14px!important;vertical-align:middle}
.table-wrap{border:1px solid #dfe7ec;border-radius:13px;overflow:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;background:#fff}
.badge,.status,.chip{border-radius:999px!important;font-weight:700}
.aq-page-loader{background:rgba(244,247,249,.96);backdrop-filter:blur(8px)}
.aq-toast,.toast{border-radius:13px!important;box-shadow:0 18px 50px rgba(16,32,51,.2)!important}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media (max-width:760px){
  .content,main{padding:14px!important}
  .card,.panel,.summary-card,.table-box,.toolbar,.report-card,.table-card,.card-section,.continuity-card{border-radius:14px!important;box-shadow:0 7px 20px rgba(16,32,51,.07)!important}
  h1{font-size:clamp(22px,6vw,28px)!important} h2{font-size:clamp(18px,5vw,22px)!important}
  button,.btn,.primary-button{min-height:46px}
  th,td{padding:12px!important;white-space:nowrap}
}


/* FILE 067 — VIP low-power, accessibility and interaction polish */
:root{color-scheme:light}
button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button,.btn,[role="button"]{touch-action:manipulation}
input,select,textarea{font-size:max(16px,1rem)}
:focus-visible{outline:3px solid rgba(14,116,144,.42);outline-offset:2px}
[aria-busy="true"],button:disabled{cursor:progress;opacity:.72}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media (max-width:600px){.content,.main-content,main{scroll-margin-top:72px}.card,.panel,.section-card{border-radius:14px}button,.btn{min-height:44px}}
@media print{.sidebar,.topbar,.mobile-menu,.overlay,.notification-badge,.no-print{display:none!important}body,main{background:#fff!important;color:#000!important;box-shadow:none!important}}

/* =====================================================
   FILE 036A v1.0 — canonical zoom-safe sidebar scrolling
   Keeps the complete navigation independently scrollable at
   browser zoom, Chrome Desktop Site mode and small visual viewports.
===================================================== */
:root{--aq-header-h:72px;--aq-visual-h:100dvh;--aq-visual-top:0px}
body.aq-protected-page .sidebar,
body.aq-protected-page>.layout>.sidebar{
  box-sizing:border-box!important;
}
@media (max-width: 900px), (hover:none) and (pointer:coarse){
  body.aq-protected-page .sidebar,
  body.aq-protected-page>.layout>.sidebar{
    position:fixed!important;
    top:calc(var(--aq-header-h) + var(--aq-visual-top))!important;
    bottom:auto!important;
    height:calc(var(--aq-visual-h) - var(--aq-header-h))!important;
    min-height:0!important;
    max-height:calc(var(--aq-visual-h) - var(--aq-header-h))!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior-y:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    scroll-behavior:auto!important;
    scrollbar-gutter:stable!important;
    padding-bottom:max(28px,env(safe-area-inset-bottom))!important;
    contain:layout paint!important;
  }
  body.aq-protected-page .sidebar nav{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    min-height:max-content!important;
    max-height:none!important;
    overflow:visible!important;
    touch-action:pan-y!important;
    padding-bottom:32px!important;
  }
  body.aq-protected-page.aq-menu-open{overflow:hidden!important}
}
@media (min-width:901px) and (hover:hover){
  body.aq-protected-page>.layout>.sidebar{
    overflow-y:auto!important;
    max-height:calc(100dvh - var(--aq-header-h))!important;
    overscroll-behavior-y:contain!important;
  }
}


/* ==============================================================
   FILE 036A v1.0 — FINAL CANONICAL MOBILE / ZOOM SHELL
   One viewport, one drawer, no split white/content panning.
============================================================== */
:root{--aq-header-h:72px;--aq-drawer-w:min(86vw,340px)}
html{width:100%;max-width:100%;overflow-x:clip!important;overscroll-behavior-x:none!important}
body.aq-protected-page{width:100%;max-width:100%;min-height:100dvh;overflow-x:clip!important;overscroll-behavior-x:none!important}
body.aq-protected-page>.layout{width:100%!important;max-width:100%!important;min-width:0!important}
body.aq-protected-page main.content{min-width:0!important;width:auto!important;max-width:100%!important;overflow-x:clip!important}
body.aq-protected-page .overlay{touch-action:none!important}
@media (max-width:900px), (hover:none) and (pointer:coarse){
  body.aq-protected-page>.layout{display:block!important;min-height:calc(100dvh - var(--aq-header-h))!important}
  body.aq-protected-page>.layout>.sidebar,
  body.aq-protected-page .layout>.sidebar,
  body.aq-protected-page .sidebar{
    position:fixed!important;inset:var(--aq-header-h) auto 0 0!important;
    top:var(--aq-header-h)!important;bottom:0!important;left:calc(-1 * var(--aq-drawer-w) - 28px)!important;
    width:var(--aq-drawer-w)!important;min-width:0!important;max-width:340px!important;
    height:auto!important;max-height:none!important;margin:0!important;
    overflow-x:hidden!important;overflow-y:auto!important;
    overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;z-index:1002!important;
    transform:none!important;contain:layout paint!important;
    box-shadow:14px 0 38px rgba(2,18,32,.30)!important;
    transition:left .20s cubic-bezier(.2,.8,.2,1)!important;
    scrollbar-gutter:auto!important;
  }
  body.aq-protected-page .sidebar.open{left:0!important}
  body.aq-protected-page .sidebar nav{width:100%!important;min-width:0!important;height:auto!important;min-height:100%!important;overflow:visible!important;padding:14px 8px max(32px,env(safe-area-inset-bottom))!important}
  body.aq-protected-page .sidebar nav>a{width:auto!important;max-width:100%!important;min-width:0!important;margin:2px 6px!important;padding:13px 14px!important;white-space:normal!important;overflow-wrap:anywhere!important}
  body.aq-protected-page>.layout>.overlay,
  body.aq-protected-page>.overlay,
  body.aq-protected-page .overlay{
    display:block!important;position:fixed!important;inset:var(--aq-header-h) 0 0 0!important;
    width:auto!important;height:auto!important;margin:0!important;
    background:rgba(5,18,30,.56)!important;backdrop-filter:blur(2px)!important;
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
    z-index:1001!important;transition:opacity .18s ease,visibility .18s ease!important;
  }
  body.aq-protected-page .overlay.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
  body.aq-protected-page.aq-menu-open{overflow:hidden!important;touch-action:none!important}
  body.aq-protected-page.aq-menu-open main.content{pointer-events:none!important;user-select:none!important}
  body.aq-protected-page .header{position:sticky!important;top:0!important;z-index:1010!important;width:100%!important;max-width:100%!important}
}
@media (min-width:901px) and (hover:hover){
  body.aq-protected-page>.layout{display:grid!important;grid-template-columns:240px minmax(0,1fr)!important}
  body.aq-protected-page>.layout>.sidebar{position:sticky!important;top:var(--aq-header-h)!important;height:calc(100dvh - var(--aq-header-h))!important;overflow-y:auto!important;overflow-x:hidden!important}
}

/* FILE 072 v16.0 — exact 036A screen with scrolled-menu header repair */
@media (max-width:900px), (hover:none) and (pointer:coarse){
  body.aq-protected-page>.header,
  body.aq-protected-page>header.header{
    position:fixed!important;
    top:var(--aq-visual-top)!important;
    left:0!important;right:0!important;
    width:100%!important;max-width:100%!important;
    z-index:1100!important;
  }
  body.aq-protected-page>.layout{
    padding-top:var(--aq-header-h)!important;
  }
  body.aq-protected-page>.layout>.sidebar,
  body.aq-protected-page .layout>.sidebar,
  body.aq-protected-page .sidebar{
    top:calc(var(--aq-visual-top) + var(--aq-header-h))!important;
    bottom:auto!important;
    height:calc(var(--aq-visual-h) - var(--aq-header-h))!important;
    max-height:calc(var(--aq-visual-h) - var(--aq-header-h))!important;
  }
  body.aq-protected-page>.layout>.overlay,
  body.aq-protected-page>.overlay,
  body.aq-protected-page .overlay{
    top:calc(var(--aq-visual-top) + var(--aq-header-h))!important;
    bottom:auto!important;
    height:calc(var(--aq-visual-h) - var(--aq-header-h))!important;
  }
}

/* FILE 068D FINAL OVERRIDE — refresh controls only. */
body.aq-protected-page :is(.page-head,.page-intro,.head):has(> :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn)){align-items:flex-start!important}
body.aq-protected-page :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn).aq-data-refresh{flex:0 0 auto!important;width:auto!important;min-width:132px!important;max-width:100%!important;min-height:44px!important;margin:0!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:9px!important;background:linear-gradient(135deg,#078eaf,#08abd0)!important;color:#fff!important;box-shadow:0 7px 18px rgba(7,142,175,.18)!important;font-weight:700!important;line-height:1.2!important;opacity:1!important;visibility:visible!important}
body.aq-protected-page :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn).aq-data-refresh:disabled{background:linear-gradient(135deg,#087f9c,#0796b7)!important;color:#fff!important;opacity:.82!important;cursor:wait!important}
body.aq-protected-page .aq-refresh-feedback{display:block!important;margin-top:8px!important;color:#527083!important;font-size:13px!important;line-height:1.45!important}
body.aq-protected-page .aq-refresh-feedback:empty{display:none!important}
@media (max-width:760px){
  body.aq-protected-page :is(.page-head,.page-intro,.head):has(> :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn)){display:flex!important;flex-direction:column!important;gap:12px!important}
  body.aq-protected-page :is(.page-head,.page-intro,.head):has(> :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn))>div:first-child{flex:0 1 auto!important;width:100%!important;min-width:0!important;min-height:0!important;height:auto!important}
  body.aq-protected-page :is(#refreshBtn,#factoryRefresh,#warehouseRefresh,#traceRefresh,#reportRefreshBtn).aq-data-refresh{align-self:stretch!important;width:100%!important}
}

/* FILE 068D FINAL TARGETED OVERRIDE — no geometry changes. */
body.aq-protected-page .aq-refresh-pulse::after{box-sizing:border-box!important;width:15px!important;height:15px!important;border:2px solid rgba(4,54,73,.48)!important;border-top-color:#ffe082!important;background:rgba(255,255,255,.18)!important;box-shadow:0 0 0 2px rgba(255,255,255,.22)!important}
body[data-aq-page="inventory.html"] .table-wrap{overflow-x:auto!important;overflow-y:visible!important;overscroll-behavior-x:contain!important;overscroll-behavior-y:auto!important;touch-action:pan-x pan-y pinch-zoom!important;-webkit-overflow-scrolling:touch!important}
body[data-aq-page="inventory.html"] .table-wrap :is(table,thead,tbody,tr,th,td){touch-action:pan-x pan-y pinch-zoom!important}

/* FILE 072 v16.0 — video-audited stability and mobile interaction fixes. */
.aq-global-clock,#aqDateTime{font-variant-numeric:tabular-nums;white-space:nowrap;contain:layout paint}
.aq-system-strip,.aq-system-item,.cards,.section-grid{backface-visibility:visible}
.aq-system-value,.aq-system-sub{min-height:1.35em}
.brand h2::after{content:none!important;display:none!important}

body[data-aq-page="dashboard.html"] .page-heading p{
  font-size:16px!important;
  line-height:1.55!important;
  font-weight:500!important;
  color:#526579!important;
  margin-top:6px!important;
}
.aq-toggle-state{display:block!important;margin-top:6px!important;color:#7f1d1d!important;font-weight:700!important}
.aq-toggle-state.is-active{color:#047857!important}
body[data-aq-page="inventory.html"] #inventoryTable .inventory-action-cell{width:256px!important;min-width:256px!important}
body[data-aq-page="inventory.html"] #inventoryTable .inventory-actions{min-width:244px!important;gap:5px!important}
body[data-aq-page="inventory.html"] #inventoryTable .action-button{min-width:54px!important;min-height:38px!important;padding:7px 8px!important;font-size:12px!important}
@media(max-width:430px){
  .brand h2::after{font-size:9px}
  .header-clock{display:block!important;position:absolute!important;left:50%!important;transform:translateX(-50%)!important;top:4px!important;font-size:9px!important;max-width:42vw!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body.aq-protected-page main.content{padding:14px!important}
}
@media(min-width:901px){
  body.aq-protected-page>.layout{align-items:start!important}
  body.aq-protected-page main.content{min-height:calc(100vh - var(--aq-header-h))!important}
}

/* =============================================================
   FILE 074 v18.0 — final authoritative screen/session UI layer
============================================================= */
:root{--aq-visual-top:0px!important}
html,body.aq-protected-page{max-width:100%!important;overflow-x:clip!important}
body.aq-protected-page{display:block!important;min-height:100dvh!important}
body.aq-protected-page>.layout,
body.aq-protected-page main.content{min-width:0!important;max-width:100%!important}
body.aq-protected-page main.content{overflow-x:clip!important}

/* A loader is present in every protected document, so authentication and
   page navigation never expose a blank white screen. */
html.auth-pending body.aq-protected-page{background:#f4f7fa!important}
html.auth-pending body.aq-protected-page>.aq-page-loader{
  display:grid!important;visibility:visible!important;opacity:1!important;
}

/* Every business table supports horizontal inspection without stealing
   vertical page movement when the gesture begins on a row or cell. */
body.aq-protected-page :is(.table-wrap,.factory-table,.warehouse-table){
  max-width:100%!important;overflow-x:auto!important;overflow-y:visible!important;
  overscroll-behavior-x:contain!important;overscroll-behavior-y:auto!important;
  touch-action:pan-x pan-y pinch-zoom!important;-webkit-overflow-scrolling:touch!important;
}
body.aq-protected-page :is(.table-wrap,.factory-table,.warehouse-table) :is(table,thead,tbody,tr,th,td){
  touch-action:pan-x pan-y pinch-zoom!important;
}

/* Chrome Android Desktop-site mode still reports a coarse touch pointer.
   Keep the 036A drawer usable there, while full desktop retains its grid. */
@media (max-width:900px), (hover:none) and (pointer:coarse){
  body.aq-protected-page>.header,body.aq-protected-page>header.header{
    position:fixed!important;inset:0 0 auto 0!important;top:0!important;
    width:100%!important;max-width:100%!important;z-index:1100!important;
  }
  body.aq-protected-page>.layout{display:block!important;padding-top:var(--aq-header-h)!important}
  body.aq-protected-page .sidebar{
    top:var(--aq-header-h)!important;bottom:0!important;height:auto!important;
    max-height:calc(100dvh - var(--aq-header-h))!important;
  }
  body.aq-protected-page .overlay{
    top:var(--aq-header-h)!important;bottom:0!important;height:auto!important;
  }
}
@media (min-width:901px) and (hover:hover) and (pointer:fine){
  body.aq-protected-page>.layout{display:grid!important;grid-template-columns:240px minmax(0,1fr)!important;padding-top:0!important}
}

/* =============================================================
   FILE 074 v18.0 — one deterministic mobile/desktop shell
   Normal mobile uses the drawer. Android "Desktop site" uses the full
   desktop grid even though Chrome continues to report a coarse pointer.
============================================================= */
body.aq-protected-page .header{box-sizing:border-box!important;min-width:0!important}
body.aq-protected-page .brand{min-width:0!important;max-width:100%!important}
body.aq-protected-page .brand h2{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
body.aq-protected-page .header-actions{flex:0 0 auto!important;min-width:0!important}
@media (max-width:900px){
  body.aq-protected-page>.layout{display:block!important;padding-top:var(--aq-header-h)!important}
}
@media (min-width:901px){
  body.aq-protected-page>.header,body.aq-protected-page>header.header{position:sticky!important;top:0!important}
  body.aq-protected-page>.layout{display:grid!important;grid-template-columns:240px minmax(0,1fr)!important;padding-top:0!important}
  body.aq-protected-page>.layout>.sidebar,body.aq-protected-page .layout>.sidebar{
    position:sticky!important;inset:auto!important;top:var(--aq-header-h)!important;left:auto!important;
    width:240px!important;max-width:240px!important;height:calc(100dvh - var(--aq-header-h))!important;
    max-height:calc(100dvh - var(--aq-header-h))!important;overflow-y:auto!important;transform:none!important;
  }
  body.aq-protected-page .overlay{display:none!important}
  body.aq-protected-page main.content{grid-column:2!important;width:auto!important}
}

/* =============================================================
   FILE 078 v18.4 — ChatGPT/Gmail-style universal overlay drawer
   The navigation is never permanently visible. It slides over the complete
   screen (including the header) and closes from the dimmed outside area.
============================================================= */
body.aq-protected-page .menu-button{display:inline-flex!important;align-items:center!important;justify-content:center!important}
body.aq-protected-page>.layout{display:block!important;padding-top:0!important;grid-template-columns:none!important}
body.aq-protected-page main.content{grid-column:auto!important;width:auto!important;max-width:100%!important}
body.aq-protected-page>.layout>.sidebar,
body.aq-protected-page .layout>.sidebar,
body.aq-protected-page .sidebar{
  display:block!important;position:fixed!important;
  inset:0 auto 0 calc(-1 * min(86vw,340px) - 32px)!important;
  top:0!important;bottom:0!important;left:calc(-1 * min(86vw,340px) - 32px)!important;
  width:min(86vw,340px)!important;min-width:0!important;max-width:340px!important;
  height:100dvh!important;max-height:100dvh!important;margin:0!important;
  overflow-x:hidden!important;overflow-y:auto!important;-webkit-overflow-scrolling:touch!important;
  overscroll-behavior:contain!important;touch-action:pan-y!important;
  z-index:1301!important;transform:none!important;
  box-shadow:16px 0 44px rgba(2,18,32,.34)!important;
  transition:left .22s cubic-bezier(.2,.8,.2,1)!important;
}
body.aq-protected-page .sidebar.open{left:0!important}
body.aq-protected-page .sidebar nav{
  width:100%!important;height:auto!important;min-height:100%!important;
  padding:18px 8px max(34px,env(safe-area-inset-bottom))!important;overflow:visible!important;
}
body.aq-protected-page>.layout>.overlay,
body.aq-protected-page>.overlay,
body.aq-protected-page .overlay{
  display:block!important;position:fixed!important;inset:0!important;
  top:0!important;bottom:0!important;width:100%!important;height:100dvh!important;
  margin:0!important;background:rgba(5,18,30,.58)!important;backdrop-filter:blur(2px)!important;
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  z-index:1300!important;transition:opacity .18s ease,visibility .18s ease!important;
}
body.aq-protected-page .overlay.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.aq-protected-page.aq-menu-open{overflow:hidden!important;touch-action:none!important}
body.aq-protected-page.aq-menu-open main.content{pointer-events:none!important;user-select:none!important}

/* Android Desktop-site uses a wide CSS viewport compressed onto a phone.
   Restore readable business text across every module, not one example page.
   Real computers (fine pointer) and normal mobile widths remain unchanged. */
@media (min-width:901px) and (hover:none), (min-width:901px) and (pointer:coarse){
  body.aq-protected-page main.content{font-size:18px!important;line-height:1.5!important}
  body.aq-protected-page main.content :is(p,.muted,.subtitle,.description,.architecture,.truth,.notice,.tip,.help-text){font-size:17px!important;line-height:1.55!important}
  body.aq-protected-page main.content :is(label,.field label,.tabs .tab,.tab,button,.btn,input,select,textarea){font-size:16px!important;line-height:1.4!important}
  body.aq-protected-page main.content :is(button,.btn,.tab,input,select){min-height:44px!important}
  body.aq-protected-page main.content :is(th,td){font-size:15px!important;line-height:1.45!important;padding:11px!important}
  body.aq-protected-page main.content :is(small,.card span,.metric span,.meta-box small,.sku){font-size:14px!important;line-height:1.4!important}
  body.aq-protected-page .sidebar nav>a{font-size:16px!important;line-height:1.35!important;min-height:46px!important}
}

/* =============================================================
   FILE 078 v18.4 — final header/drawer/readability lock
   These ID-based rules intentionally outrank legacy page patches.
============================================================= */
body.aq-protected-page #sidebar.sidebar{
  position:fixed!important;inset:0 auto 0 calc(-1 * min(86vw,340px) - 32px)!important;
  top:0!important;bottom:0!important;left:calc(-1 * min(86vw,340px) - 32px)!important;
  width:min(86vw,340px)!important;height:100dvh!important;max-height:100dvh!important;
  z-index:1301!important;transform:none!important;
}
body.aq-protected-page #sidebar.sidebar.open{left:0!important}
body.aq-protected-page #overlay.overlay{
  display:block!important;position:fixed!important;inset:0!important;top:0!important;bottom:0!important;
  width:100%!important;height:100dvh!important;z-index:1300!important;
}

/* The header is fixed on normal mobile and Android Desktop-site mode.
   Reserve its exact height so no page title/description/refresh status can
   sit invisibly underneath it. A real desktop keeps the sticky-header grid. */
@media (max-width:900px), (hover:none) and (pointer:coarse){
  body.aq-protected-page>.layout{display:block!important;padding-top:var(--aq-header-h)!important}
}
@media (min-width:901px) and (hover:hover) and (pointer:fine){
  body.aq-protected-page>.layout{display:block!important;padding-top:0!important}
}

/* Consistent readable secondary text on ordinary phones across every module. */
@media (max-width:900px){
  body.aq-protected-page main.content{font-size:16px!important;line-height:1.5!important}
  body.aq-protected-page main.content :is(p,.muted,.subtitle,.description,.architecture,.truth,.notice,.tip,.help-text,.aq-refresh-feedback){
    font-size:15px!important;line-height:1.5!important;color:#526273!important;font-weight:500!important;
  }
  body.aq-protected-page main.content :is(label,.field label,.tabs .tab,.tab,button,.btn,input,select,textarea){font-size:15px!important;line-height:1.4!important}
  body.aq-protected-page main.content :is(th,td){font-size:14px!important;line-height:1.45!important}
  body.aq-protected-page main.content :is(small,.card span,.metric span,.meta-box small,.sku){font-size:13.5px!important;line-height:1.4!important;color:#526273!important}
}

/* =============================================================
   FILE 078 v18.4 — visible unified page-opening state
   Large pages must never look frozen or completely blank while Firebase
   restores and verifies the existing signed-in session.
============================================================= */
html.auth-pending body.aq-protected-page>.aq-page-loader,
html.aq-navigating body.aq-protected-page>.aq-page-loader,
body.aq-protected-page>.aq-page-loader:not(.is-hidden){
  display:flex!important;align-items:center!important;justify-content:center!important;
  position:fixed!important;inset:0!important;padding:20px!important;
  background:rgba(244,247,250,.97)!important;z-index:9999!important;
  visibility:visible!important;opacity:1!important;
}
body.aq-protected-page>.aq-page-loader .aq-loader-card{
  position:relative!important;inset:auto!important;width:min(300px,calc(100% - 36px))!important;
  height:auto!important;min-height:112px!important;padding:22px 20px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  border:1px solid #d9e4ea!important;border-top:4px solid #d4aa2f!important;border-radius:14px!important;
  background:#fff!important;box-shadow:0 16px 42px rgba(15,35,50,.14)!important;overflow:visible!important;
}
body.aq-protected-page>.aq-page-loader .aq-loader-card::after{display:none!important;content:none!important}
body.aq-protected-page>.aq-page-loader :is(.aq-loader-mark,.aq-loader-title){display:none!important}
body.aq-protected-page>.aq-page-loader .aq-loader-text{
  display:block!important;color:#243746!important;font-size:15px!important;font-weight:750!important;
  line-height:1.45!important;text-align:center!important;
}
body.aq-protected-page>.aq-page-loader .aq-spinner{
  display:block!important;width:25px!important;height:25px!important;margin:14px auto 0!important;
  border:3px solid #d8e8ee!important;border-top-color:#079bc5!important;border-radius:50%!important;
  animation:aqSpin .75s linear infinite!important;
}


/* =========================================================
   FILE 079 v18.5 — FAST PAGE OPENING + MOBILE HORIZONTAL STABILITY
   - A previously verified tab shows its static shell immediately while auth
     re-validates in the background; Firebase-backed data still waits for auth-ready.
   - Internal navigation no longer blocks on the centered Opening... card.
   - Whole-page sideways drift is blocked; wide tables keep their own horizontal scroll.
========================================================= */
html.auth-pending.aq-session-known body.aq-protected-page{
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
html.auth-pending.aq-session-known body.aq-protected-page>*:not(.aq-page-loader){
  visibility:visible!important;
}
html.auth-pending.aq-session-known body.aq-protected-page>.aq-page-loader{
  display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
html.aq-navigating body.aq-protected-page>.aq-page-loader{
  display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}
body.aq-protected-page,
body.aq-protected-page>.layout,
body.aq-protected-page>.layout>main.content{
  max-width:100%!important;
  min-width:0!important;
}
body.aq-protected-page{overflow-x:hidden!important}
body.aq-protected-page>.layout{overflow-x:hidden!important}
body.aq-protected-page>.layout>main.content{overflow-x:hidden!important}
body.aq-protected-page :is(.card,.panel,.summary-card,.product-card,.toolbar,.table-box,.report-card,.table-card){
  min-width:0!important;max-width:100%!important;
}
body.aq-protected-page .table-wrap{
  width:100%!important;max-width:100%!important;overflow-x:auto!important;overscroll-behavior-x:contain!important;
}

/* Product page must fit the phone width even when Chrome "Desktop site" uses
   a wide CSS viewport. Do not let cards/toolbars create body-level horizontal scroll. */
body[data-aq-page="products.html"] .summary{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  width:100%!important;max-width:100%!important;
}
body[data-aq-page="products.html"] .toolbar{
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;max-width:100%!important;
}
body[data-aq-page="products.html"] .product-grid{
  grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;max-width:100%!important;
}
body[data-aq-page="products.html"] .product-card,
body[data-aq-page="products.html"] .product-body,
body[data-aq-page="products.html"] .product-top,
body[data-aq-page="products.html"] .meta,
body[data-aq-page="products.html"] .actions{min-width:0!important;max-width:100%!important}
body[data-aq-page="products.html"] .actions{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;
}
body[data-aq-page="products.html"] .actions .action-button{
  width:100%!important;min-width:0!important;min-height:42px!important;
  margin:0!important;padding:9px 6px!important;border-radius:7px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  font-weight:700!important;white-space:nowrap!important;
}
body[data-aq-page="products.html"] .actions .status-action{
  border:0!important;box-shadow:none!important;
}
@media(max-width:430px){
  body[data-aq-page="products.html"] .summary{grid-template-columns:1fr!important}
  body[data-aq-page="products.html"] .actions{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}


/* =========================================================
   FILE 084 v19.0 — NON-BLOCKING PAGE SHELL + PRODUCT ACTION CONSISTENCY
========================================================= */
body.aq-protected-page>.aq-page-loader{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
html.auth-pending body.aq-protected-page{visibility:visible!important;overflow-y:auto!important;overflow-x:hidden!important}
html.auth-pending body.aq-protected-page>*:not(.aq-page-loader){visibility:visible!important}
#aqSecureRetry{display:none!important}
body[data-aq-page="products.html"] .product-card .actions{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;align-items:stretch!important}
body[data-aq-page="products.html"] .product-card .actions>.action-button{box-sizing:border-box!important;width:100%!important;min-width:0!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0 6px!important;border:0!important;border-radius:7px!important;display:flex!important;align-items:center!important;justify-content:center!important;font:700 14px/1 Arial,Helvetica,sans-serif!important;white-space:nowrap!important}
body[data-aq-page="products.html"] .product-card .actions>.status-action{border-radius:7px!important}

/* FILE 084 v19.0 — secure non-blocking shell and low-power Android lock. */
html.auth-pending:not(.aq-session-known) body.aq-protected-page>*:not(.aq-page-loader){visibility:hidden!important}
html.auth-pending:not(.aq-session-known) body.aq-protected-page>.aq-page-loader{
  display:flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;
  background:#f4f7fa!important;
}
html.auth-ready body.aq-protected-page>.aq-page-loader,
html.auth-pending.aq-session-known body.aq-protected-page>.aq-page-loader{display:none!important}
@media (prefers-reduced-motion:reduce){
  body.aq-protected-page *,body.aq-protected-page *::before,body.aq-protected-page *::after{
    scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;
  }
}

/* FILE 084 v19.0 — low-power touch rendering.
   Keep drawer feedback, but remove decorative motion that can cause repeated
   repaints, visible page shimmer and unnecessary battery use on Android. */
body.aq-protected-page.aq-touch-device :is(.card,.panel,.metric-card,.summary-card,.product-card,tbody tr,input,select,textarea,button,.btn,.tab){
  transition:none!important;
}
body.aq-protected-page.aq-touch-device :is(.card,.panel,.metric-card,.summary-card,.product-card):hover{
  transform:none!important;
}
body.aq-protected-page.aq-touch-device .aq-page-loader,
body.aq-protected-page.aq-touch-device .aq-loader-card{
  animation:none!important;
}


/* ==========================================================
   AQUAZAL FILE 096 v21.0 — PREMIUM INTERNATIONAL UI LAYER
   Lightweight CSS-only polish. No webfonts, images or animation libraries.
   ========================================================== */
:root{
  --aq-ink:#101827;--aq-navy:#102033;--aq-navy-2:#162a42;--aq-blue:#087ea4;
  --aq-blue-dark:#06647f;--aq-gold:#b89545;--aq-paper:#f4f6f8;--aq-surface:#ffffff;
  --aq-line:#dfe5eb;--aq-muted:#647184;--aq-success:#177245;--aq-warning:#a86612;
  --aq-danger:#b4232d;--aq-radius:12px;--aq-shadow:0 8px 24px rgba(16,32,51,.075);
}
html{background:var(--aq-paper)}
body{background:var(--aq-paper)!important;color:var(--aq-ink)!important;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.header,header.header{background:var(--aq-navy)!important;color:#fff!important;box-shadow:0 1px 0 rgba(255,255,255,.08),0 5px 18px rgba(16,32,51,.12)!important;min-height:64px!important}
.header h2,.brand h2{font-weight:800!important;letter-spacing:.025em!important}
.header-clock{font-variant-numeric:tabular-nums;opacity:.86}
.sidebar{background:var(--aq-navy)!important;border-right:1px solid rgba(255,255,255,.06)!important}
.sidebar nav{padding:8px 0 18px}
.sidebar a{color:#dfe7ef!important;border-left:3px solid transparent!important;min-height:46px!important;padding:12px 18px!important;font-size:13.5px!important;font-weight:650!important;letter-spacing:.005em;transition:background .14s ease,color .14s ease,border-color .14s ease!important}
.sidebar a:hover{background:rgba(255,255,255,.065)!important;color:#fff!important}
.sidebar a.active,.sidebar a[aria-current="page"]{background:rgba(184,149,69,.12)!important;color:#fff!important;border-left-color:var(--aq-gold)!important}
.content,main.content{max-width:1500px;width:100%;margin-inline:auto!important}
:is(.card,.panel,.summary-card,.metric-card,.product-card,.table-box,.toolbar,.form-card,.report-card,.table-card){background:var(--aq-surface)!important;border:1px solid var(--aq-line)!important;box-shadow:var(--aq-shadow)!important;border-radius:var(--aq-radius)!important}
:is(.page-head,.head,.page-intro) h1{color:var(--aq-navy)!important;font-weight:850!important;letter-spacing:-.025em!important}
:is(.page-head,.head,.page-intro) p,.muted{color:var(--aq-muted)!important}
button,.btn,.primary-button,.save-button,.action-main,.apply-filter{border-radius:9px!important;min-height:40px;font-weight:750!important}
:is(.btn,.primary-button,.save-button,.action-main,.apply-filter):not(.secondary):not(.delete):not(.danger){background:var(--aq-blue)!important;color:#fff!important;border:1px solid var(--aq-blue)!important}
:is(.btn,.primary-button,.save-button,.action-main,.apply-filter):not(.secondary):not(.delete):not(.danger):hover{background:var(--aq-blue-dark)!important;border-color:var(--aq-blue-dark)!important}
.secondary,.action-secondary,.logout{background:#fff!important;color:var(--aq-navy)!important;border:1px solid #cfd7df!important}
.logout:hover,.secondary:hover,.action-secondary:hover{background:#f7f9fb!important}
.notification-button,.menu-button{background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.13)!important;color:#fff!important}
.notification-count{background:var(--aq-danger)!important;color:#fff!important;border:2px solid var(--aq-navy)!important}
input,select,textarea{background:#fff!important;color:var(--aq-ink)!important;border:1px solid #cfd7df!important;border-radius:9px!important;min-height:42px!important}
textarea{min-height:92px!important}
input:focus,select:focus,textarea:focus{outline:0!important;border-color:var(--aq-blue)!important;box-shadow:0 0 0 3px rgba(8,126,164,.12)!important}
input:disabled,select:disabled,textarea:disabled,input[readonly]{background:#f0f3f6!important;color:#667384!important;cursor:not-allowed}
table{background:#fff!important}
th{background:#f7f9fb!important;color:#425166!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.035em!important;white-space:nowrap}
td{color:#253246!important}
th,td{border-bottom:1px solid #e7ebef!important}
tbody tr:hover{background:#fafbfd!important}
.badge,.pill,.status{font-weight:750!important;box-shadow:none!important}
.modal{background:rgba(8,18,30,.58)!important;backdrop-filter:blur(4px)}
.modal-card{border:1px solid var(--aq-line)!important;box-shadow:0 24px 70px rgba(8,18,30,.25)!important;border-radius:15px!important}
.close-button{color:var(--aq-muted)!important;border-radius:8px!important}
.close-button:hover{background:#eef2f5!important;color:var(--aq-ink)!important}
.aq-page-loader{background:var(--aq-paper)!important}
.aq-loader-card{border:1px solid var(--aq-line)!important;box-shadow:var(--aq-shadow)!important}
.aq-loader-mark{background:var(--aq-navy)!important;color:#fff!important;border:1px solid rgba(184,149,69,.5)!important}
::selection{background:rgba(8,126,164,.2)}
:focus-visible{outline:3px solid rgba(8,126,164,.38)!important;outline-offset:2px!important}
@media(max-width:768px){
  .content,main.content{padding:16px!important}
  .header,header.header{padding:10px 12px!important}
  .header h2,.brand h2{font-size:17px!important}
  .header-clock{display:none!important}
  .sidebar{width:min(86vw,300px)!important}
  .page-head,.head,.page-intro{gap:10px!important;margin-bottom:16px!important}
  :is(.page-head,.head,.page-intro) h1{font-size:25px!important;line-height:1.15!important}
  .card,.panel,.summary-card,.metric-card,.product-card{border-radius:11px!important}
  button,.btn,.primary-button,.save-button,.action-button{min-height:42px!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(prefers-reduced-data:reduce){*{animation:none!important;transition:none!important}.aq-page-loader,.aq-spinner{animation:none!important}}
