/* Mobile-first interaction layer – v0.33 */
.mobile-bottom-nav,.nav-backdrop{display:none}
button,input,select,textarea,.button{touch-action:manipulation}

@media(max-width:900px){
  body{padding-bottom:calc(72px + env(safe-area-inset-bottom));-webkit-text-size-adjust:100%}
  body.menu-open{overflow:hidden}
  .mobilebar{min-height:52px;justify-content:space-between;padding:max(10px,env(safe-area-inset-top)) 16px 10px}
  .mobile-user-actions{display:flex;align-items:center;gap:8px;min-width:0}.mobile-user-actions>a:first-child{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.mobile-logout{flex:0 0 auto;padding:7px 9px;border-radius:8px;background:var(--navy);color:#fff;font-size:.75rem;font-weight:750;white-space:nowrap}
  .mobile-bottom-nav{position:fixed;z-index:30;left:0;right:0;bottom:0;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:end;min-height:64px;padding:5px 6px calc(5px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -6px 22px #17384c1c}
  .mobile-bottom-nav a,.mobile-bottom-nav button{position:relative;min-width:0;min-height:52px;padding:5px 3px;background:transparent;color:var(--muted);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-weight:700}
  .mobile-bottom-nav span{font-size:1.35rem;line-height:1}.mobile-bottom-nav small{font-size:.66rem}
  .mobile-bottom-nav .active{color:var(--blue);background:var(--ice)}
  .mobile-bottom-nav .scan-action{align-self:center;width:64px;height:64px;min-height:64px;margin:-20px auto 0;border-radius:50%;background:var(--blue);color:#fff;border:5px solid var(--bg);box-shadow:0 5px 14px #17384c38}
  .mobile-bottom-nav .scan-action span{font-size:1.65rem}.mobile-bottom-nav .scan-action small{color:#fff}
  .nav-backdrop{position:fixed;inset:0;z-index:19;border:0;border-radius:0;background:#102a387d;padding:0}.nav-backdrop.open{display:block}
  .sidebar{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:calc(90px + env(safe-area-inset-bottom));box-shadow:12px 0 30px #102a3840;overflow-y:auto}
  .sidebar .qr-quick-access{display:none}
  .sidebar .userbox a[href="/logout"]{margin-top:8px;min-height:44px;padding:11px 13px;border:1px solid #ffffff55;border-radius:8px;background:#ffffff12;text-align:center;font-weight:750}
  .content{width:100%;overflow:hidden}
  button,.button,input,select{min-height:44px}
  input,select,textarea{font-size:16px}
  .pagehead{align-items:stretch}.pagehead>.actions,.pagehead>.button{width:100%}.pagehead>.actions>*{flex:1}.pagehead>.button{display:flex}
  .card{box-shadow:0 2px 10px #17384c0d}
  .tabs{scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tabs a{white-space:nowrap}
  dialog{max-height:calc(100dvh - 20px);overflow:auto;margin:10px auto}
}

@media(max-width:700px){
  .content{padding:12px 10px}.pagehead{gap:12px;margin-bottom:14px}.pagehead p{font-size:.9rem}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.stats a{padding:13px}.stats b{font-size:1.55rem}
  .actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.actions>*{width:100%}.actions form button{width:100%}.dashboard-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sectionhead{align-items:flex-start}.sectionhead>.actions{margin-top:8px}
  .mobile-card-table{min-width:0}.mobile-card-table thead{display:none}.mobile-card-table,.mobile-card-table tbody,.mobile-card-table tr,.mobile-card-table td{display:block;width:100%}
  .mobile-card-table tr{padding:11px 13px;border-bottom:1px solid var(--line)}.mobile-card-table td{display:grid;grid-template-columns:minmax(96px,34%) 1fr;gap:8px;border:0;padding:5px 0;overflow-wrap:anywhere}
  .mobile-card-table td::before{content:attr(data-label);color:var(--muted);font-size:.7rem;font-weight:750;text-transform:uppercase;letter-spacing:.02em}.mobile-card-table td:first-child{font-size:1rem}.mobile-card-table td[colspan]{display:block}
  .inline{flex-wrap:wrap}.inline>*{min-width:0}.inline input{flex:1 1 170px}
  dl,.details{grid-template-columns:minmax(95px,35%) 1fr}
  .workorder-image-grid{grid-template-columns:1fr}
  .planning-heading .button{display:none}.planning-controls{position:sticky;top:52px;z-index:9;margin:0 -10px 10px;border-radius:0;padding:7px 10px}.planning-controls>strong{font-size:.84rem}.view-buttons button,.period-buttons button{min-height:38px;padding:6px 9px}
  .scheduler{margin-left:-10px;margin-right:-10px;border-radius:0}.scheduler-scroll{max-height:62dvh}.scheduler-board{--resource-width:112px;--row-height:62px}.resource-row{padding:7px 8px}.resource-row b{font-size:.76rem}.resource-row small{font-size:.66rem}.calendar-event{top:8px;height:42px}.timeline-corner{padding:18px 8px}.day-head{padding-left:3px;padding-right:3px}
}

@media(max-width:420px){
  .actions{grid-template-columns:1fr}.dashboard-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.dashboard-actions .button{padding:9px 5px;font-size:.84rem}.stats span{font-size:.8rem}.card{padding:13px}.mobile-bottom-nav a,.mobile-bottom-nav button{padding-inline:1px}.mobile-bottom-nav small{font-size:.62rem}
}
