
/*
 Ameriteam OS v157
 Centered responsive application shell.
 Desktop philosophy: LinkedIn/Facebook-style full-width chrome + centered work canvas.
 Mobile/tablet philosophy: same hierarchy, progressively collapsed — never a second UI.
*/
:root{
  --amt-shell-max:1240px;
  --amt-shell-pad:20px;
  --amt-control-h:38px;
  --amt-nav-h:44px;
  --amt-radius:10px;
}
html,body,#root{width:100%;min-height:100%}
body{margin:0;overflow-x:hidden;background:#f4f6f9}

/* ---------- GLOBAL CENTERED SHELL ---------- */
.app-header{width:100%;background:rgba(255,255,255,.98)!important}
.app-header-main{
  width:calc(100% - (var(--amt-shell-pad) * 2))!important;
  max-width:var(--amt-shell-max)!important;
  height:64px!important;
  margin:0 auto!important;
  padding:0!important;
  gap:14px!important;
}
.linear-nav-shell{
  width:100%!important;
  height:var(--amt-nav-h)!important;
  padding:0!important;
  overflow:hidden!important;
}
.linear-nav{
  width:calc(100% - (var(--amt-shell-pad) * 2))!important;
  max-width:var(--amt-shell-max)!important;
  height:var(--amt-nav-h)!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-width:none!important;
}
.linear-nav::-webkit-scrollbar{display:none!important}

.content{
  width:100%!important;
  max-width:none!important;
  padding:20px var(--amt-shell-pad) 32px!important;
  overflow-x:hidden!important;
  animation:none!important;
}
.content>*{
  width:100%!important;
  max-width:var(--amt-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}
.ops-page{width:100%!important;max-width:var(--amt-shell-max)!important}

/* ---------- HEADER PROPORTIONS ---------- */
.header-brand{
  width:156px!important;
  flex:0 0 156px!important;
}
.header-brand-mark{font-size:18px!important}
.header-brand-sub{font-size:7px!important;letter-spacing:2.35px!important;margin-top:4px!important}
.header-search{
  flex:1 1 520px!important;
  min-width:260px!important;
  max-width:620px!important;
}
.header-search input{height:var(--amt-control-h)!important;font-size:12.5px!important}
.header-utilities{
  margin-left:auto!important;
  gap:6px!important;
  flex:0 0 auto!important;
}
.command-launcher,.header-action,.header-sync-button{
  height:var(--amt-control-h)!important;
  min-height:var(--amt-control-h)!important;
}
.header-user{
  height:var(--amt-control-h)!important;
  min-height:var(--amt-control-h)!important;
  padding:3px 7px!important;
  gap:7px!important;
}
.header-user .uchip,.header-avatar-photo{width:27px!important;height:27px!important}

/* Notification bell must read as a utility icon, not a primary CTA */
.amt150-bell{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  border-radius:9px!important;
  margin:0 2px 0 0!important;
  box-shadow:none!important;
}
.amt150-bell svg{width:18px!important;height:18px!important;stroke-width:1.8!important}
.amt150-badge{
  right:-5px!important;
  top:-5px!important;
  min-width:17px!important;
  height:17px!important;
  padding:0 4px!important;
  font-size:9px!important;
  line-height:13px!important;
}

/* ---------- NAV PROPORTIONS ---------- */
.linear-nav>button,.linear-more{
  height:var(--amt-nav-h)!important;
  min-height:var(--amt-nav-h)!important;
  padding:0 12px!important;
  font-size:11.5px!important;
}
.linear-nav .bid-room-nav{
  align-self:center!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 12px!important;
  margin:5px 0 5px 7px!important;
  border-radius:7px!important;
  box-shadow:none!important;
  font-style:normal!important;
}
.linear-nav .bid-room-nav .bid-word,
.linear-nav .bid-room-nav .room-word{
  font-size:11.5px!important;
  letter-spacing:.15px!important;
}

/* ---------- DESKTOP CONTENT DENSITY ---------- */
.page-head,.ops-page-head{margin-bottom:14px!important}
.ops-page-head{align-items:center!important}
.ops-page-head h1{font-size:28px!important;line-height:1.08!important}
.ops-head-actions{gap:10px!important}
.ops-summary{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  border-radius:var(--amt-radius)!important;
  margin-bottom:14px!important;
}
.ops-summary-item{padding:12px 13px!important}
.ops-summary-item>strong{font-size:18px!important}
.ops-primary-grid{
  grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr)!important;
  gap:14px!important;
  margin-bottom:14px!important;
}
.ops-secondary-grid{grid-template-columns:1fr 1fr!important;gap:14px!important}
.ops-panel,.card,.list-toolbar,.record-card,.report-section{
  border-radius:var(--amt-radius)!important;
  box-shadow:0 1px 4px rgba(15,30,70,.045)!important;
}
.ops-section-head{min-height:52px!important;padding:11px 14px!important}
.list-toolbar{padding:10px!important;margin-bottom:12px!important}
.title{font-size:30px!important}

/* ---------- TABLES / LISTS ---------- */
.record-table-wrap,.report-table-wrap,.table-wrap,.table-wrapper,.data-table-wrap,
.tbl-wrap,.opp-list-scroll{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch!important;
}
.tbl,.opp-list-table{width:100%!important}
.opp-list-table{min-width:1060px!important}
.opp-list-card{overflow:hidden!important}
.opp-list-head{min-height:50px!important;padding:11px 14px!important}
.opp-list-table td,.opp-list-table th{padding-top:10px!important;padding-bottom:10px!important}

/* ---------- AMT UI SCALE ---------- */
.amt150-command-trigger{
  height:34px!important;
  padding:0 11px!important;
  border-radius:8px!important;
  font-size:12px!important;
  box-shadow:none!important;
}
.amt150-command-panel{width:min(680px,calc(100vw - 32px))!important}
.amt150-drawer{width:min(460px,100vw)!important}
.amt151-detail{width:min(760px,calc(100vw - 32px))!important}

/* ---------- LARGE MONITORS ---------- */
@media (min-width:1600px){
  :root{--amt-shell-max:1280px;--amt-shell-pad:24px}
  .app-header-main{height:66px!important}
}

/* ---------- TABLET ---------- */
@media (max-width:1099px){
  :root{--amt-shell-max:100%;--amt-shell-pad:18px}
  .app-header-main{
    width:calc(100% - 36px)!important;
    height:auto!important;
    min-height:68px!important;
    padding:10px 0!important;
    flex-wrap:wrap!important;
  }
  .header-brand{width:150px!important;flex-basis:150px!important}
  .header-search{
    order:3!important;
    flex:1 0 100%!important;
    max-width:none!important;
    min-width:0!important;
  }
  .linear-nav{width:100%!important;padding:0 18px!important}
  .content{padding:18px!important}
  .ops-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ops-summary-item:last-child{grid-column:1/-1}
  .ops-primary-grid,.ops-secondary-grid{grid-template-columns:1fr!important}
  .list-toolbar{align-items:stretch!important}
  .list-toolbar .list-search{flex:1 0 100%!important}
}

/* ---------- PHONE / INSTALLED WEB APP ---------- */
@media (max-width:760px){
  :root{--amt-shell-pad:14px;--amt-control-h:38px}
  .app-header-main{
    width:100%!important;
    min-height:0!important;
    padding:12px 14px 10px!important;
    gap:10px!important;
  }
  .header-brand{width:auto!important;flex:1 1 auto!important}
  .header-brand-mark{font-size:18px!important}
  .header-user-copy{display:none!important}
  .header-search{order:3!important;flex:1 0 100%!important}
  .header-search input{height:44px!important;font-size:16px!important}
  .linear-nav{padding:0 14px!important;width:100%!important}
  .linear-nav>button,.linear-more{padding:0 11px!important;font-size:12px!important}
  .linear-nav .bid-room-nav{height:32px!important;min-height:32px!important;margin:6px 6px!important}
  .amt150-bell{width:36px!important;height:36px!important;flex-basis:36px!important}
  .content{padding:14px!important}
  .ops-page-head{align-items:flex-start!important;flex-direction:column!important}
  .ops-page-head h1{font-size:27px!important}
  .ops-head-actions{width:100%!important;justify-content:space-between!important}
  .ops-summary{grid-template-columns:1fr 1fr!important}
  .ops-summary-item{padding:11px!important}
  .ops-summary-item>strong{font-size:19px!important}
  .list-toolbar{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .list-toolbar .list-search{grid-column:1/-1!important;min-width:0!important}
  .list-toolbar .select{width:100%!important;min-width:0!important;max-width:none!important}
  .opp-list-table{min-width:1020px!important}
}

/* ---------- SMALL PHONE ---------- */
@media (max-width:430px){
  .header-brand-sub{display:block!important}
  .header-utilities{gap:4px!important}
  .amt150-command-trigger{padding:0 9px!important}
  .ops-summary{grid-template-columns:1fr 1fr!important}
}

/* v158 — AMT cluster + live command palette */
.command-launcher{display:none!important}
.amt158-universal-search{
  padding-right:0!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  overflow:visible!important;
}
.amt158-universal-search>input{flex:1 1 auto!important;min-width:0!important}
.amt158-command-cluster{
  position:static!important;
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
}
.amt158-command-cluster .amt150-command-trigger{
  position:static!important;
  transform:none!important;
  height:36px!important;
  padding:0 12px!important;
  border-radius:9px!important;
  box-shadow:none!important;
}
.amt158-command-cluster .amt150-command-trigger:active{transform:scale(.97)!important}
.amt158-command-cluster .amt150-bell{
  position:relative!important;
  width:36px!important;height:36px!important;flex:0 0 36px!important;
  margin:0!important;border-radius:9px!important;box-shadow:none!important;
}
.amt158-command-panel{width:min(700px,calc(100vw - 32px))!important}
.amt158-live-wrap{margin-top:12px}
.amt158-live-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:8px}
.amt158-live-head strong{font-size:13px;color:#14265b}
.amt158-live-head small{font-size:10px;color:#8792a3;text-align:right}
.amt158-live-list{
  display:flex;flex-direction:column;gap:7px;
  max-height:220px;overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:1px 3px 2px 1px;scrollbar-width:thin;
}
.amt158-live-list button{
  width:100%;display:grid;grid-template-columns:18px minmax(0,1fr);gap:8px;align-items:start;
  text-align:left;border:1px solid #dfe5ee;background:#fff;border-radius:10px;
  padding:10px 11px;color:#263858;cursor:pointer;font-family:'DM Sans',sans-serif;
}
.amt158-live-list button:hover,.amt158-live-list button:focus{
  outline:none;border-color:#9daac0;background:#f8fafc;box-shadow:0 0 0 2px rgba(20,38,91,.07)
}
.amt158-live-list button>span{color:#d50d2e;font-size:13px;line-height:1.35}
.amt158-live-list button>b{font-size:11.5px;line-height:1.42;font-weight:650}
.amt158-no-suggestions{padding:12px;border:1px dashed #dbe2ec;border-radius:10px;color:#7b8798;font-size:11px}
.amt158-command-panel .amt150-command-actions{margin-top:13px}
@media(max-width:1099px){
  .amt158-universal-search{width:100%!important}
}
@media(max-width:760px){
  .amt158-universal-search{gap:6px!important}
  .amt158-command-cluster{gap:4px!important}
  .amt158-command-cluster .amt150-command-trigger{height:40px!important;padding:0 10px!important}
  .amt158-command-cluster .amt150-bell{width:40px!important;height:40px!important;flex-basis:40px!important}
  .amt158-live-head{align-items:flex-start;flex-direction:column;gap:2px}
  .amt158-live-head small{text-align:left}
  .amt158-live-list{max-height:190px}
}

/* v159 — authoritative AMT header placement */
.command-launcher{display:none!important}
.header-utilities>.amt150-bell,
.header-menu-wrap>.amt150-bell{display:none!important}
.amt158-command-cluster>.amt150-bell{
  display:grid!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  margin:0!important;
  z-index:4!important;
}
.amt158-command-cluster{
  position:static!important;
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  gap:6px!important;
  overflow:visible!important;
}

/* v160 — native Settings > Connectors */
.connector-settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1120px}
.connector-setting-card{display:flex;flex-direction:column;justify-content:space-between;gap:16px;border:1px solid #dfe5ee;background:#fff;border-radius:12px;padding:16px;min-height:190px;box-shadow:0 1px 4px rgba(15,30,70,.04)}
.connector-setting-card.is-connected{border-color:#cce8d8;background:linear-gradient(180deg,#fff,#fbfefc)}
.connector-setting-main{display:flex;align-items:flex-start;gap:12px}
.connector-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;flex:0 0 42px;font-weight:950;font-size:17px;background:#f3f6fa;color:#14265b;border:1px solid #e0e6ee}
.connector-icon-gmail{color:#d93025}.connector-icon-google_calendar{color:#1a73e8}.connector-icon-docusign{color:#14265b}
.connector-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.connector-title-row strong{font-size:15px;color:#14265b}
.connector-status{font-size:9px;text-transform:uppercase;letter-spacing:.08em;font-weight:900;color:#8a95a6;background:#f1f4f7;padding:5px 7px;border-radius:99px}
.connector-status.connected{color:#167348;background:#eaf7ef}
.connector-setting-main p{margin:7px 0 0;color:#66748a;font-size:11px;line-height:1.45}
.connector-account{display:flex;flex-direction:column;gap:2px;margin-top:10px}
.connector-account b{font-size:11px;color:#273954}.connector-account small{font-size:9.5px;color:#7b8798}
.connector-config-warning{display:block;margin-top:10px;color:#a35c00;font-size:10px;line-height:1.4}
.connector-actions{display:flex;gap:8px;flex-wrap:wrap}
.connector-inline-error{max-width:1120px;margin-bottom:12px;border:1px solid #f0c8c8;background:#fff5f5;color:#9d2635;border-radius:9px;padding:10px 12px;font-size:11px}
.connector-loading{padding:18px;color:#6d7a8f}
.connector-settings-foot{margin-top:16px}
@media(max-width:1050px){.connector-settings-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.connector-settings-grid{grid-template-columns:1fr}.connector-setting-card{min-height:0}}

/* v162 — Notification Center is a centered review workspace, not a side drawer */
.amt150-drawer-backdrop{align-items:center!important;justify-content:center!important;padding:4vh 18px!important}
.amt150-drawer{
  position:relative!important;inset:auto!important;
  width:min(820px,calc(100vw - 36px))!important;height:auto!important;max-height:88vh!important;
  border:1px solid #dbe3ee!important;border-radius:22px!important;
  box-shadow:0 28px 80px rgba(8,20,49,.27)!important;
  overflow:auto!important;-webkit-overflow-scrolling:touch!important
}
.amt150-drawer header{position:sticky!important;top:0!important;border-radius:22px 22px 0 0!important}
@media(max-width:760px){
  .amt150-drawer-backdrop{align-items:center!important;padding:max(12px,env(safe-area-inset-top)) 10px max(12px,env(safe-area-inset-bottom))!important}
  .amt150-drawer{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 24px)!important;border-radius:18px!important}
  .amt150-drawer header{border-radius:18px 18px 0 0!important}
}

/* v163 estimate export + controlled metadata */
.record-hero-actions,.record-actions{flex-wrap:wrap!important}
@media(max-width:760px){.record-hero-actions .btn,.record-actions .btn{min-height:40px!important}}

/* v164 — workflow correction */
/* Notification Center stays the same physical workspace on every tab. */
.amt150-drawer{height:min(720px,88vh)!important;min-height:min(620px,88vh)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important}
.amt150-drawer>header{flex:0 0 auto!important}
.amt150-drawer>div,.amt150-drawer>section{min-height:0}
.amt150-drawer .amt150-drawer-body,.amt150-drawer .amt150-notification-body{flex:1 1 auto!important;overflow:auto!important}

/* Leads: 7 controls = 7 columns. Clear no longer wraps into a giant second row. */
.leads-filter-toolbar{grid-template-columns:minmax(280px,1fr) minmax(145px,auto) minmax(130px,auto) minmax(155px,auto) minmax(145px,auto) auto auto!important}
.leads-filter-toolbar>.btn{width:auto!important;min-width:64px!important;padding:0 12px!important;border-radius:0 8px 8px 0!important}

/* Opportunities: compact table, standard pagination, no wide Next Action column. */
.opp-list-table{min-width:860px!important}
.opp-list-table th:nth-child(1){width:30%}
.opp-list-table th:nth-child(2){width:19%}
.opp-list-table th:nth-child(3){width:12%}
.opp-list-table th:nth-child(4){width:9%}
.opp-list-table th:nth-child(5){width:12%}
.opp-list-table th:nth-child(6){width:10%}
.opp-list-table th:nth-child(7){width:8%}
.table-pager{display:flex;align-items:center;gap:5px}

/* Bid Room uses the same centered working width as the OS instead of edge-to-edge. */
.bid-project-header,.bid-command-tabs,.bid-command-content{width:min(1120px,calc(100% - 32px))!important;max-width:1120px!important;margin-left:auto!important;margin-right:auto!important}
.bid-command-content{padding-left:0!important;padding-right:0!important}
.bid-command-topbar{padding-left:max(16px,calc((100vw - 1120px)/2))!important;padding-right:max(16px,calc((100vw - 1120px)/2))!important}

@media(max-width:760px){
 .amt150-drawer{height:calc(100dvh - 24px)!important;min-height:0!important}
 .leads-filter-toolbar{grid-template-columns:1fr 1fr!important;gap:8px!important}
 .leads-filter-toolbar>.btn{border:1px solid var(--line)!important;border-radius:8px!important}
 .bid-project-header,.bid-command-tabs,.bid-command-content{width:calc(100% - 20px)!important}
}


/* v166 — cache-busted fixed AMT Notification Center frame */
.amt150-drawer-backdrop{
  display:flex!important;align-items:center!important;justify-content:center!important;
  padding:24px!important;box-sizing:border-box!important;
}
.amt150-drawer{
  position:relative!important;inset:auto!important;box-sizing:border-box!important;
  width:min(820px,calc(100vw - 48px))!important;
  height:min(680px,calc(100dvh - 48px))!important;
  min-height:0!important;max-height:none!important;
  display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;
  overflow:hidden!important;border-radius:20px!important;background:#f8fafc!important;
}
.amt150-drawer>header{position:relative!important;top:auto!important;z-index:3!important}
.amt150-drawer>.amt151-tabs{position:relative!important;top:auto!important;z-index:2!important}
.amt150-drawer>.amt150-drawer-body{
  min-height:0!important;height:100%!important;overflow-y:auto!important;overflow-x:hidden!important;
  overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important;
}
.amt150-drawer>.amt150-drawer-body>[data-pane]{min-height:100%!important;box-sizing:border-box!important}
@media(max-width:760px){
 .amt150-drawer-backdrop{padding:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom))!important}
 .amt150-drawer{width:calc(100vw - 20px)!important;height:calc(100dvh - 24px)!important;border-radius:18px!important}
}
.development-stage{white-space:nowrap!important}

/* v167 — one centered shell axis across AMT OS + Bid Room */
:root{--amt-shell-max:1240px}

/* Standalone Bid Room hub */
.bid-command-topbar{
  padding-left:max(18px,calc((100vw - var(--amt-shell-max))/2))!important;
  padding-right:max(18px,calc((100vw - var(--amt-shell-max))/2))!important;
}
.bid-hub-content{
  width:calc(100% - 36px)!important;
  max-width:var(--amt-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
}

/* Bid Room project/detail views use the same centered canvas. */
.bid-project-header,
.bid-command-tabs,
.bid-command-content{
  width:calc(100% - 36px)!important;
  max-width:var(--amt-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.bid-command-content{padding-left:0!important;padding-right:0!important}

@media(max-width:1099px){
  .bid-command-topbar{padding-left:18px!important;padding-right:18px!important}
  .bid-hub-content,
  .bid-project-header,
  .bid-command-tabs,
  .bid-command-content{width:calc(100% - 36px)!important}
}
@media(max-width:760px){
  .bid-command-topbar{padding-left:14px!important;padding-right:14px!important}
  .bid-hub-content,
  .bid-project-header,
  .bid-command-tabs,
  .bid-command-content{width:calc(100% - 20px)!important}
}

/* v168 production stability / proportion corrections */

/* No tiny horizontal drift on ordinary desktop list tables. Legacy v156 imposed min-width:900px. */
.content .card > .tbl{
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
}

/* Team identity */
.uchip.amy{background:linear-gradient(135deg,#7c3aed,#4f46e5)!important;color:#fff!important}

/* Bid Room list must fit the same centered canvas instead of clipping Edit/Open at right. */
@media (min-width:1051px){
  .bid-project-list-head,.bid-project-row{
    grid-template-columns:minmax(220px,1.8fr) 110px 100px 110px 105px 115px 140px!important;
    gap:10px!important;
  }
  .bid-project-row-actions{min-width:0!important;gap:6px!important}
  .bid-project-row-actions .btn{min-width:0!important;padding-left:10px!important;padding-right:10px!important}
}

/* Keep the Hub card entirely inside the centered working canvas. */
.bid-project-list{width:100%!important;max-width:100%!important}
.bid-project-list-head,.bid-project-row{box-sizing:border-box!important;width:100%!important}


/* ==========================================================================
   v170 — Dashboard readability + controlled panel scrolling
   ========================================================================== */

/* Keep paired work panels genuinely balanced. */
.ops-secondary-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:16px!important;
}
.ops-secondary-grid.single{
  grid-template-columns:minmax(0,1fr)!important;
}

/* My Work + Recent Activity become fixed work surfaces, not ever-growing cards. */
.ops-secondary-grid > .ops-panel{
  height:430px!important;
  min-height:430px!important;
  max-height:430px!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}

/* Panel title/action remains visible while only the records scroll. */
.ops-secondary-grid > .ops-panel > .ops-section-head{
  flex:0 0 auto!important;
  min-height:58px!important;
  padding:13px 16px!important;
}
.ops-secondary-grid > .ops-panel > .ops-work-list,
.ops-secondary-grid > .ops-panel > .ops-recent-list{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable!important;
}

/* The bid-deadline card also gets a controlled list when it has many bids. */
.ops-bid-list{
  max-height:300px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable!important;
}

/* Readability: the old dashboard rows were too small even on a 27" monitor. */
.ops-secondary-grid .ops-section-head strong,
.ops-primary-grid .ops-section-head strong{
  font-size:17px!important;
  line-height:1.25!important;
}
.ops-work-row,
.ops-recent-row{
  min-height:54px!important;
  padding:10px 14px!important;
  gap:12px!important;
}
.ops-work-copy strong,
.ops-recent-copy strong{
  font-size:14px!important;
  line-height:1.32!important;
  font-weight:700!important;
}
.ops-work-copy small,
.ops-recent-copy span{
  font-size:12.5px!important;
  line-height:1.38!important;
}
.ops-kind,
.ops-recent-copy small,
.ops-work-due,
.ops-recent-time{
  font-size:11.5px!important;
  line-height:1.3!important;
}
.ops-section-head .btn{
  font-size:12.5px!important;
  min-height:34px!important;
  padding:7px 12px!important;
}

/* Give rows breathing room and make the two lower cards visually equivalent. */
.ops-work-row + .ops-work-row,
.ops-recent-row + .ops-recent-row{
  border-top:1px solid var(--line)!important;
}
.ops-work-row,
.ops-recent-row{
  width:100%!important;
  box-sizing:border-box!important;
}

/* Scrollbars are visible enough to signal that the panel can scroll. */
.ops-work-list::-webkit-scrollbar,
.ops-recent-list::-webkit-scrollbar,
.ops-bid-list::-webkit-scrollbar{
  width:9px!important;
}
.ops-work-list::-webkit-scrollbar-thumb,
.ops-recent-list::-webkit-scrollbar-thumb,
.ops-bid-list::-webkit-scrollbar-thumb{
  background:rgba(24,46,92,.22)!important;
  border-radius:999px!important;
  border:2px solid transparent!important;
  background-clip:padding-box!important;
}
.ops-work-list,
.ops-recent-list,
.ops-bid-list{
  scrollbar-width:thin!important;
  scrollbar-color:rgba(24,46,92,.28) transparent!important;
}

/* Large desktop: slightly larger text and a little more vertical working room. */
@media (min-width:1500px){
  .ops-secondary-grid > .ops-panel{
    height:455px!important;
    min-height:455px!important;
    max-height:455px!important;
  }
  .ops-work-row,
  .ops-recent-row{
    min-height:58px!important;
    padding:11px 15px!important;
  }
  .ops-work-copy strong,
  .ops-recent-copy strong{font-size:14.5px!important}
  .ops-work-copy small,
  .ops-recent-copy span{font-size:13px!important}
  .ops-kind,
  .ops-recent-copy small,
  .ops-work-due,
  .ops-recent-time{font-size:12px!important}
}

/* Tablet / phone: keep the same behavior, but stack panels and reduce fixed height. */
@media (max-width:1099px){
  .ops-secondary-grid{
    grid-template-columns:1fr!important;
  }
  .ops-secondary-grid > .ops-panel{
    height:390px!important;
    min-height:390px!important;
    max-height:390px!important;
  }
  .ops-bid-list{max-height:280px!important}
}
@media (max-width:760px){
  .ops-secondary-grid > .ops-panel{
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
  }
  .ops-work-row,
  .ops-recent-row{
    min-height:58px!important;
    padding:10px 12px!important;
  }
  .ops-work-copy strong,
  .ops-recent-copy strong{font-size:14px!important}
  .ops-work-copy small,
  .ops-recent-copy span{font-size:12.5px!important}
}
