
/* ==> relocated from the location record's lr-confirm dialog */
#lr-confirm[hidden]{display:none}
#lr-confirm{position:fixed;inset:0;z-index:70;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--shade) 42%,transparent)}
#lr-confirm .lrc-box{background:var(--card);border:1px solid var(--border);border-radius:var(--r-surface);box-shadow:var(--shadow,0 18px 50px rgba(16,29,58,.28));width:min(420px,92vw);padding:var(--sp5) var(--sp5)}
#lr-confirm .lrc-box :is(h2,h3){margin:0 0 var(--sp2);font-size:var(--t-title);}
#lr-confirm .lrc-body{font-size:var(--t-small);color:var(--ink);line-height:var(--lh-prose);margin-bottom:var(--sp4)}
#lr-confirm .lrc-actions{display:flex;justify-content:flex-end;gap:var(--sp2)}

/* ==> hover */
@media (hover:hover) and (pointer:fine){
.fab-row:hover{background:var(--surface-2)}
.fab-caret:hover{color:var(--ink);background:var(--surface-3)}
a:hover{text-decoration-color:currentColor}
.gres .gi:hover{background:var(--surface-2)}
.theme button:hover{color:var(--on-fill);background:color-mix(in srgb,var(--on-fill) 9%,transparent)}
.avatar:hover{background:#405071}
.gnav-tabs button:hover{color:var(--on-fill)}
.gnav-tabs button.stub:hover{color:#9AA4B2}
.btn:hover{background:var(--surface-2);border-color:var(--line)}
.v-confirmed:hover:not(:disabled){background:color-mix(in srgb,var(--red) 18%,var(--surface-1));border-color:var(--red)}
.v-unsure:hover:not(:disabled){background:color-mix(in srgb,var(--amber) 18%,var(--surface-1));border-color:var(--amber)}
.v-denied:hover:not(:disabled){background:color-mix(in srgb,var(--slate) 18%,var(--surface-1));border-color:var(--slate)}
.btn.pri:hover{background:color-mix(in srgb,var(--brand-cta) 88%,var(--shade));border-color:color-mix(in srgb,var(--brand-cta) 88%,var(--shade))}
.rtabs button:hover{color:var(--ink);background:var(--surface-2)}
.f:hover .pen{opacity:1}
.f .pen:hover{background:var(--surface-2);border-color:var(--border);color:var(--ink)}
.rp-menu .btn:hover{background:var(--surface-2)}
.f.ro:hover{cursor:default}
.f .der button:hover{background:var(--surface-2);color:var(--ink)}
.savebar button:hover{background:color-mix(in srgb,var(--on-fill) 10%,transparent)}
.savebar button.pri:hover{background:color-mix(in srgb,var(--brand-cta) 88%,var(--shade))}
tbody tr:hover{background:var(--surface-2)}
button.linkish:hover{text-decoration-color:var(--ink)}
.linkish:hover{text-decoration:underline}
.fbtn:hover{border-color:var(--line);color:var(--ink)}
.qa-zoom-ctl button:hover{background:var(--surface-2)}
.qa-teams-list label:hover{background:var(--surface-2)}
#terr-table tbody tr.terr-row:hover{background:var(--surface-2)}
.terrlist .tr:hover{border-color:var(--s1)}
#hp-ops.editing .rowlbl:hover{border-color:var(--s1)}
svg.hoverable:hover .mark{opacity:.5}
svg .mark:hover{opacity:1}
.ovmenu button:hover{background:var(--surface-2,var(--bg))}
.sortable th:hover{color:var(--ink)}
.step.clickable:hover{filter:brightness(.94)}
.trow:hover{background:var(--surface-2);border-color:var(--border-2)}
.trow .tick:hover{border-color:var(--green);color:var(--line)}
  #hp-ops.editing .kmove{display:none}
.vrail .gnav-tabs button:hover{color:var(--rail-ink);background:var(--rail-hover)}
.vrail .gnav-tabs button.on:hover{
  color:var(--rail-on-ink); background:var(--rail-on-bg);
  border-bottom-color:transparent;
}
.vrail .gnav-tabs button.stub:hover{color:var(--rail-stub);background:none}
.rgrp-h:hover{color:var(--rail-ink);background:var(--rail-hover)}
.rail-pin:hover{color:var(--rail-ink);background:var(--rail-hover)}
.btn.blocked:hover{ color:var(--muted); background:var(--card) }
.gnav .theme button:hover{color:var(--ink);background:var(--surface-3)}
.hnav button:not(:disabled):hover{color:var(--ink);background:var(--surface-3)}
.gnav .avatar:hover{background:var(--border)}
svg.usgeo .geost:hover{opacity:.82}
#view-status .stx-tile:hover{box-shadow:var(--shadow);border-color:var(--border-2)}
.acc-chk:hover{background:var(--surface-2)}
table.pmatrix tbody tr:hover td{background:var(--surface-2)}
table.pmatrix tbody tr:hover td.pm-role{background:var(--surface-2)}
.vrail .gnav-tabs button[data-role]:hover{color:var(--rail-ink)}
.fb-vote:hover{background:var(--surface-2);border-color:var(--line-strong);color:var(--ink)}
.fb-move button:hover:not(:disabled){background:var(--surface-2);color:var(--ink)}
.gate-row.click:hover{background:var(--surface-2)}
.aa-topbtn:hover{background:var(--surface-2)}
.aa-topbtn.aa-topbtn-secondary:hover{background:var(--surface-2);color:var(--ink)}
.aa-fab:hover{transform:translateY(-2px);box-shadow:var(--shadow-1)}
.aa-head button.aa-h-btn:hover{background:color-mix(in srgb,var(--on-fill) 20%,transparent)}
.aa-msg .aa-acts button:hover{background:var(--brand-soft,#e7edf7);border-color:var(--brand,#E4572E)}
.aa-chip:hover{border-color:var(--brand,#E4572E);color:var(--brand-text,#1f3d73);background:var(--brand-soft,#e7edf7)}
.aa-foot button.aa-send:hover{filter:brightness(1.05)}
.login-reveal:hover{color:var(--ink,#16233F)}
.login-link:hover{text-decoration:underline}
.login-google:hover{background:#f7f8f8;border-color:#d2d5da}
.login-back:hover{text-decoration:underline}
}
/* ==> breakpoints */
@media(min-width:641px){
  body:not(.rail-open) .vrail .gnav-tabs .rgrp>button:not(.rgrp-h){display:none}
  body.rail-open .vrail .rgrp.collapsed>button:not(.rgrp-h){display:none}
  .vrail .gnav-tabs button.rail-more,.vrail .gnav-tabs button.rail-ask{display:none}
}
@media(max-width:1024px){
  #hp-fleet,#hp-exec{display:block;height:auto}
  #hp-fleet .kpis,#hp-exec .kpis{grid-template-columns:repeat(auto-fit,minmax(152px,1fr));
    margin-bottom:var(--sp3)}
  #hp-fleet .grid2>.card,#hp-exec>.card{overflow:visible}
  #hp-fleet .grid2>.card>.card-b,#hp-exec>.card>.card-b{overflow:visible}
.fab-stations{grid-template-columns:1fr}
.grid,.grid[style]{grid-template-columns:1fr !important}
.fgrid{grid-template-columns:1fr}
.rp-body{grid-template-columns:1fr}.rp-side{display:none}.rp-tab-activity{display:inline-flex}.rp-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
.rp-hl-top{grid-template-columns:1fr}.rp-actions{justify-content:flex-start}
.rp-details-body .fgrid{grid-template-columns:1fr}
.fb-board{grid-template-columns:1fr}
#home-kpis{grid-template-columns:repeat(auto-fit,minmax(196px,1fr))}
#home-kpis{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}
.lb-in{flex-wrap:wrap}.lb-a{width:100%;justify-content:flex-end}
.health-top{grid-template-columns:repeat(auto-fit,minmax(152px,1fr));grid-auto-rows:auto}.health-top #health-hist-card{grid-column:auto;grid-row:auto;height:auto}.health-mid{grid-template-columns:1fr;grid-auto-rows:auto}.health-mid #health-adc-card{grid-column:auto;grid-row:auto}#hp-data #health-cost-card > .card-b{grid-template-columns:1fr}#hp-data #health-cost-card #data-leg{grid-column:1}
.grid2,.grid3{grid-template-columns:1fr}
.rulecard{grid-template-columns:1fr}
.gnav-tabs{
  -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 26px),transparent 100%);
          mask-image:linear-gradient(to right,#000 calc(100% - 26px),transparent 100%);
}
  .gnav-top{padding:var(--sp2) var(--sp3) var(--sp2) var(--sp2);gap:var(--sp2)}
  .logo small{display:none}
  .gnav.compact .gsearch{display:none}
  .gnav.compact .gnav-top{padding-top:var(--sp1);padding-bottom:var(--sp1)}
  .gnav.compact .gnav-tabs button{padding-top:var(--sp2);padding-bottom:var(--sp2)}
  .gnav-tabs{padding:0 var(--sp3)}
  .gnav-tabs button{padding:var(--sp2) var(--sp3)}
  .gsearch input{padding-inline:var(--sp3)}
  .wrap{padding:var(--sp3) var(--sp3) 48px}

  .rtabs{flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
  .rtabs::-webkit-scrollbar{display:none}
  .rtabs button{flex:0 0 auto;scroll-snap-align:start}

  table.sortable th:first-child,
  table.sortable td:first-child{
    position:sticky;left:0;z-index:2;
    background:var(--card);
    box-shadow:1px 0 0 var(--border-2);
  }
  table.sortable thead th:first-child{z-index:3}

  .grid2,.grid3{gap:var(--sp3)}
  .card-b{padding-left:var(--sp3);padding-right:var(--sp3)}

  .lb-in{gap:var(--sp2)}
.attn-wide{grid-template-columns:1fr}
  .grid2[style],.grid3[style]{grid-template-columns:1fr !important}
  html{scroll-padding-top:64px}
  .stx-row{grid-template-columns:minmax(0,1fr) auto;row-gap:var(--sp2)}
  .stx-row>span:nth-child(2){grid-column:1 / -1}
  .stx-strip{gap:var(--sp0);height:18px}
  .stx-strip i{min-width:1px}
.hl-body{grid-template-columns:1fr}
.hl-health{border-left:0;border-top:1px solid var(--border-2)}
  #view-terr .terr-grid{grid-template-columns:1fr}
  #view-terr .terr-mapwrap{height:380px}
#view-status .sp-groups{grid-template-columns:1fr}
.fb-board{grid-template-columns:repeat(5,minmax(200px,1fr))}
.aa-topbtn .aa-fab-lbl{display:none}.aa-topbtn{padding:0 var(--sp3)}
}
@media(max-width:640px){
.tele-cards{grid-template-columns:1fr}
  .inv-add-grid{grid-template-columns:1fr}
.fb-board{grid-template-columns:1fr}
  .card-h .sp{margin-left:0;width:100%}
  .filters{flex-wrap:wrap}
  .filters select{max-width:100%}
.health{grid-template-columns:1fr}
  .gnav-top{gap:var(--sp2);padding:var(--sp2) var(--sp3)}
  .gsearch{order:3;flex:1 0 100%;margin-left:0;max-width:none}
  .gnav-right{gap:var(--sp2)}
  .wstate{max-width:46vw;overflow:hidden}
  .theme button{width:40px;height:36px}
  .page-h .sp{margin-left:0;width:100%}
  .card-h .sp{margin-left:0;width:100%}
  .logo small{display:none}
  .gnav-top .logo-sys{display:none}
  .gnav-top{padding:var(--sp2) var(--sp3)}
  .kpi{padding:var(--sp3) var(--sp3)}
  .kpi .v{font-size:var(--t-page);}
  .kpi .v small{font-size:var(--t-label)}
  .kpi .k{font-size:var(--t-label);}
  .kpi .d{font-size:var(--t-label)}
  .rowlbl{font-size:var(--t-body)}
  .page-h h1{font-size:var(--t-page)}
  body,body.rail-open{ --rail:0px }
  .vrail{
    inset:auto 0 0 0; width:auto; height:auto; flex-direction:row; align-items:stretch;
    border-right:0; border-top:1px solid var(--rail-line);
    padding-bottom:env(safe-area-inset-bottom,0);
    box-shadow:var(--shadow-1);
  }
  .vrail-logo,.rail-pin{display:none}
  .gnav-top .logo{display:flex}
  .vrail .gnav-tabs{
    flex-direction:row; justify-content:space-around; align-items:stretch;
    padding:0; gap:0; overflow:visible;
    -webkit-mask-image:none; mask-image:none;
  }
  .rgrp{display:contents}
  .rgrp-h{display:none}
  .vrail .gnav-tabs button{display:none}
  .vrail .gnav-tabs button.mnav{
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--sp0);
    flex:1 1 0; min-width:0; min-height:55px; padding:var(--sp2) var(--sp0) var(--sp2); border-radius:0;
    white-space:normal; text-align:center; line-height:var(--lh-tight);
    color:var(--rail-icon); font-size:var(--t-small); font-weight:var(--w-med);
  }
  .vrail .gnav-tabs button.mnav .lbl{opacity:1; font-size:var(--t-small); max-width:70px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
  .vrail .gnav-tabs button.mnav svg{width:20px;height:20px;flex:0 0 22px}
  .vrail .gnav-tabs button.mnav:hover{background:none;color:var(--rail-icon)}
  .vrail .gnav-tabs button.mnav.on{color:var(--rail-on-ink);background:none}
  .vrail .gnav-tabs button.mnav.on::before{
    content:"";position:absolute;left:50%;top:2px;bottom:auto;transform:translateX(-50%);
    width:22px;height:3px;border-radius:var(--r-control);background:var(--ink-fill)}
  main.wrap{padding-bottom:calc(var(--bottom-bar) + env(safe-area-inset-bottom,0px) + var(--sp5))}
  .savebar{bottom:calc(63px + env(safe-area-inset-bottom,0px))}
  .toast{bottom:calc(132px + env(safe-area-inset-bottom,0px))}
  #rail-tip{display:none}
  #mnav-sheet[hidden]{display:none}
  #mnav-sheet{position:fixed;inset:0;z-index:200}
  .mnav-backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--shade) 45%,transparent)}
  .mnav-panel{position:absolute;left:0;right:0;bottom:0;background:var(--card);
    border-top-left-radius:var(--r-surface);border-top-right-radius:var(--r-surface);
    padding:8px 12px calc(18px + env(safe-area-inset-bottom,0px));max-height:80vh;overflow-y:auto;
    box-shadow:var(--shadow-2)}
  .mnav-grip{width:38px;height:4px;border-radius:var(--r-control);background:var(--border);margin:var(--sp2) auto var(--sp3)}
  .mnav-title{font-size:var(--t-title);font-weight:var(--w-bold);color:var(--ink);margin:0 var(--sp1) var(--sp2);font-family:var(--display)}
  .mnav-list{display:flex;flex-direction:column;gap:0}
  .mnav-item{display:flex;align-items:center;gap:var(--sp4);padding:var(--sp3) var(--sp2);border:0;border-bottom:1px solid var(--border-2);
    background:none;border-radius:0;font-size:var(--t-body);font-weight:var(--w-med);color:var(--ink);text-align:left;width:100%}
  .mnav-item:last-child{border-bottom:0}
  .mnav-item .mnav-ic{width:34px;height:34px;border-radius:var(--r-surface);display:grid;place-items:center;flex:0 0 34px;color:var(--on-fill)}
  .mnav-item .mnav-ic svg{width:20px;height:20px;stroke:#fff;stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
  .mnav-item .mnav-lbl{flex:1}
  .mnav-item.on .mnav-lbl{color:var(--ink);font-weight:var(--w-bold)}
  .mnav-item .mnav-chev{color:var(--muted-2);font-size:var(--t-page);font-weight:var(--w-body);line-height:1}
#mnav-sheet:not([hidden]){display:block}
.hl-health .factors{grid-template-columns:1fr}
#view-status #status-banner .sb-t{display:none}
    .aa-panel{right:10px;left:10px;top:60px;bottom:10px;width:auto;height:auto}
  
.login-card{padding:var(--sp5) var(--sp5)}
.gnav-top{padding:var(--sp2) var(--sp3);gap:var(--sp1)}
.gsearch{display:none}
#aa-fab,#slack-btn,#ninety-btn,#customer-platform-btn,#playbook-btn,#user-guide-btn,.gnav .theme{display:none}
.gsearch-open{display:inline-flex}
.hnav{margin-left:auto;padding:0;border:0;background:none;gap:0}
.gsearch-open{margin-left:0}
body.search-open .gsearch{display:flex;flex-direction:column;gap:var(--sp2);position:fixed;inset:0;z-index:300;
  max-width:none;margin:0;padding:var(--sp3);background:var(--card)}
body.search-open .gres{position:static;flex:1;max-height:none;border:0;box-shadow:none;padding:0}
body.search-open .gsearch-close{display:inline-flex;align-self:flex-end;order:-1}
.vrail .gnav-tabs .rgrp.single>button.mnav[data-v]{display:flex !important}
.page-more,.path-sheet-btn{display:inline-flex}
#edit-layout-btn,#home-sub{display:none}
#view-asset .hl-actions [data-action="ast-getgps"],#view-asset .hl-actions [data-action="ast-reboot"],#view-asset .hl-actions [data-action="ast-rma"]{display:none}
#view-asset .path .step:not(.now){display:none}
#view-asset .path .step.now{margin-left:0}
#view-asset .path .step.now::after{display:none}
.kpis,#home-kpis,#env-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
.fgrid,.rp-details-body .fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
.rp-hl,table.pmatrix thead th{position:static}
input:not([type=checkbox]):not([type=radio]):not([type=range]),select,textarea{font-size:16px !important}
table.t-cards,table.t-cards>tbody{display:block}
table.t-cards>thead{display:none}
table.t-cards>tbody>tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp1) var(--sp3);padding:var(--sp3) 0;border-bottom:1px solid var(--border-2)}
table.t-cards>tbody>tr>td{display:none;padding:0;border:0;white-space:normal;position:static;box-shadow:none;background:none}
table.t-cards>tbody>tr>td[data-card="id"]{display:block;grid-row:1;grid-column:1 / 3;font-weight:var(--w-med);min-width:0;overflow-wrap:anywhere}
table.t-cards>tbody>tr:not(:has(>td[data-card="chip"]))>td[data-card="id"]{grid-column:1 / -1}
table.t-cards>tbody>tr>td[data-card="chip"]{display:block;grid-row:1;grid-column:3;justify-self:end}
table.t-cards>tbody>tr>td[data-card="f"]{display:block;grid-row:2;font-size:var(--t-small);min-width:0}
table.t-cards>tbody>tr>td[data-card="f"]::before{content:attr(data-label);display:block;font-size:var(--t-label);color:var(--muted-2)}
table.t-cards>tbody>tr[data-card-row="span"]{display:block}
table.t-cards>tbody>tr[data-card-row="span"]>td{display:block;padding:var(--sp3) 0}
table.t-cards>tbody>tr>td:first-child{position:static;box-shadow:none;background:none}
table.t-cards>tbody>tr>td[data-card="chip"] .badge{white-space:normal;text-align:right;justify-content:flex-end}
}
/* ==> touch targets */
@media (pointer:coarse){
  .btn,.btn.sm,.rtabs button,.fbtn,.filters select,.filters input,
  select:not([multiple]):not([size]),
  input:is([type=text],[type=search],[type=email],[type=password],[type=number],[type=date],[type=tel],[type=url],[type=month],[type=time]),
  input:not([type]){padding-block:max(var(--sp1),calc((var(--tap) - 1lh) / 2))}
  .btn,.btn.sm,.rtabs button,.fbtn,
  select:not([multiple]):not([size]),
  input:is([type=text],[type=search],[type=email],[type=password],[type=number],[type=date],[type=tel],[type=url],[type=month],[type=time]),
  input:not([type]){min-height:var(--tap)}
  button,label:has(> input[type=checkbox]),label:has(> input[type=radio]),
  input[type=file]{min-height:var(--tap)}
  button,label.switch,.rtabs button,.qa-zoom-ctl button{min-width:var(--tap)}
  .gnav-top .logo,.crumb .linkish,#lab-host a{min-height:var(--tap);min-width:var(--tap);
    display:inline-flex;align-items:center}
  .page-more,[data-action="ast-overflow"],.btn.sm:not(:has(*)){min-width:var(--tap)}
  .aa-topbtn{height:auto;min-height:var(--tap)}
  #aa-panel .aa-h-btn,#aa-panel .aa-send{min-width:var(--tap);min-height:var(--tap)}
  select{min-width:var(--tap)}
  .avatar{width:var(--tap);height:var(--tap)}
  .gsearch-open,.theme button,.hnav button{min-width:var(--tap);min-height:var(--tap)}
  .skip{padding-block:var(--sp3)}
}

/* ==> print */
@media print{
  .vrail,.gnav,#stanchor-demo-banner,#mnav-sheet,#lc-sheet,#aa-panel,.toast,.savebar,#boot-veil,.skip{display:none !important}
  main.wrap{margin-left:0 !important;padding:0 !important;max-width:none !important}
  html[data-theme="dark"]{--ink:#16233F;--bg:#F5F0E8;--card:#FFFFFF;--border:#E7E1D4;--border-2:#F1EBDF;--muted:#4E5C77;--muted-2:#5A6780;--muted-3:#8792A6;--ink-fill:#16233F;--on-ink:#FFFFFF;--surface-2:#FAF7F0;--surface-3:#EFEADF;--line:#D0C9BA;--line-strong:#75808F;--control-line:#75808F;--brand:#E4572E;--brand-cta:#C4451F;--brand-text:#B33F1D;--on-brand:#fff;--brand-soft:#FDF0EB;--brand-deep:#101D3A;--green:#127C4E;--green-soft:#E7F5EE;--amber:#8A5200;--amber-soft:#FDF3E3;--red:#B3261E;--red-soft:#FCEDEC;--focus:#1B5FB8;--blue:#2A5FD0;--blue-soft:#EBF1FD;--blue-line:#C3D6F7;--violet:#6941C6;--violet-soft:#F2EDFC;--slate:#4E5C77;--slate-soft:#EAECF2;--done-soft:#D3E5DB;--done-ink:#0C5C39;--shadow:none}
  html,body{background:#FFFFFF !important;color-scheme:light !important}
}
