
/* CGElectrical responsive refinement — functional, restrained, mobile-first */
:root{--cge-ink:#eef0f5;--cge-secondary:#b4bdcc;--cge-line:#343a49;--cge-accent:#8866cf}
html{box-sizing:border-box;-webkit-text-size-adjust:100%;scroll-padding-top:16px}
*,*::before,*::after{box-sizing:inherit}
body{min-width:0;overflow-x:hidden;letter-spacing:0!important}
body,button,input,select,textarea{font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important}
h1,h2,h3,h4{letter-spacing:-.015em!important;line-height:1.3!important}
p,li,label,td,th{overflow-wrap:anywhere}
button,.btn,input,select,textarea{max-width:100%}
button,.btn{min-height:44px;touch-action:manipulation;transition:background-color .12s,border-color .12s!important}
button:active:not(:disabled){transform:none!important}
a{overflow-wrap:anywhere}
img,video,svg,canvas{max-width:100%}
table{max-width:100%}
[role=dialog],dialog{max-width:min(96vw,720px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
#admmenu{z-index:2000!important;max-width:min(92vw,340px);max-height:75dvh;overflow-y:auto}
.top,.head,header{min-width:0}
.toolbar,.actions,.acts,.button-row,.owner-job-actions,.tech-dispatch-actions{gap:10px!important}
.cge-workspace-nav{position:relative;gap:8px!important}
.cge-workspace-tab{font-weight:600!important;letter-spacing:0!important;min-width:0}
.cge-shortcuts{gap:8px!important}
.cge-shortcuts button,.cge-shortcuts a{font-weight:600!important}
.card,.panel,.owner-job-card,.tech-dispatch-card{box-shadow:none!important}
input,select,textarea{font-size:16px!important}
:focus-visible{outline-offset:2px}
@media(max-width:900px){
  .wrap,main,.shell{max-width:100%!important}
  .grid,.stats-grid,.portal-record-grid{min-width:0}
  .toolbar{flex-wrap:wrap}
  .toolbar>*{min-width:0}
  .activity-dialog{width:min(96vw,700px)!important}
}
@media(max-width:640px){
  html,body{width:100%;max-width:100%;overflow-x:clip}
  body{font-size:15px!important;line-height:1.55!important}
  .wrap,main,.shell{width:100%!important;padding-left:14px!important;padding-right:14px!important}
  header.top,.top,.head{gap:12px;flex-wrap:wrap;padding:14px!important}
  .top h1,.head h1{font-size:clamp(22px,6vw,28px)!important}
  h2{font-size:clamp(19px,5vw,24px)!important}
  h3{font-size:17px!important}
  .tabs{display:flex!important;gap:8px!important;flex-wrap:nowrap!important;overflow-x:auto!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-bottom:9px}
  .tabs button,.tabs a{flex:0 0 auto!important;min-width:105px!important;max-width:180px;white-space:normal}
  .cge-workspace-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:9px!important}
  .cge-workspace-tab{min-height:48px!important;padding:9px 7px!important;font-size:13px!important}
  .cge-shortcuts{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:10px!important}
  .cge-shortcuts strong{grid-column:1/-1}
  .cge-shortcuts button,.cge-shortcuts a{min-width:0!important;width:100%;font-size:13px!important;padding:10px 7px!important}
  .grid{grid-template-columns:minmax(0,1fr)!important}
  .grid>*{min-width:0!important}
  .toolbar,.actions,.acts,.button-row{display:flex;flex-wrap:wrap;gap:9px!important}
  .toolbar button,.actions button,.acts button,.button-row button{flex:1 1 135px;min-width:0}
  .owner-job-actions,.tech-dispatch-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .owner-job-actions button,.tech-dispatch-actions button{min-width:0!important;width:100%!important}
  .owner-job-card,.tech-dispatch-card,.panel,.card{padding:15px!important}
  .owner-job-info{grid-template-columns:minmax(0,1fr)!important}
  .front-clock{padding:14px!important;gap:12px!important}
  .front-clock-actions{width:100%}
  .front-clock-actions button{width:100%}
  .dispatch-grid{grid-template-columns:minmax(0,1fr)!important}
  .dispatch-buttons{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  .dispatch-buttons button{width:100%!important}
  .portal-record-grid{grid-template-columns:minmax(0,1fr)!important}
  .support-drawer{max-width:100vw!important}
  [role=dialog],dialog,.activity-dialog{width:calc(100vw - 20px)!important;max-width:calc(100vw - 20px)!important;max-height:calc(100dvh - 20px)!important;margin:10px!important}
  .activity-dialog{padding:16px!important}
  table{font-size:13px}
  th,td{padding:9px 7px!important}
  input,select,textarea{width:100%;min-width:0}
}
@media(max-width:390px){
  .wrap,main,.shell{padding-left:10px!important;padding-right:10px!important}
  .cge-workspace-tab{font-size:12px!important}
  .owner-job-actions,.tech-dispatch-actions{grid-template-columns:minmax(0,1fr)!important}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
