/* DisplayMint unified control centre — alpha.23 */
:root{
  --dm-brand:#124b40;
  --dm-brand-2:#0e3f36;
  --dm-brand-3:#0a332d;
  --dm-mint:#42c9a5;
  --dm-mint-soft:#e8f7f2;
  --dm-ink:#182230;
  --dm-muted:#667085;
  --dm-border:#dfe6ed;
  --dm-surface:#ffffff;
  --dm-canvas:#f6f8fa;
  --dm-shadow-sm:0 1px 2px rgba(16,24,40,.035),0 5px 14px rgba(16,24,40,.035);
  --dm-shadow-md:0 10px 30px rgba(16,24,40,.075);
  --dm-shell-header:64px;
  --dm-shell-toolbar:52px;
}

body{background:var(--dm-canvas)!important;color:var(--dm-ink)!important}
.portal-modern{background:var(--dm-canvas)!important}

/* Primary navigation */
.portal-modern .sidebar{
  height:var(--dm-shell-header)!important;
  min-height:var(--dm-shell-header)!important;
  padding:0 18px!important;
  gap:10px!important;
  background:linear-gradient(110deg,var(--dm-brand-3),var(--dm-brand) 62%,var(--dm-brand-2))!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 5px 18px rgba(13,61,52,.18)!important;
}
.portal-modern .sidebar .brand{min-width:165px!important}
.portal-modern .sidebar .brand-logo{max-width:138px!important;max-height:36px!important}
.portal-modern .nav{gap:2px!important}
.portal-modern .nav>button{
  min-height:38px!important;
  padding:0 10px!important;
  border-radius:9px!important;
  color:rgba(255,255,255,.78)!important;
  font-size:11px!important;
}
.portal-modern .nav>button:hover{background:rgba(255,255,255,.08)!important;color:#fff!important}
.portal-modern .nav>button.active{
  background:rgba(255,255,255,.13)!important;
  box-shadow:inset 0 -2px 0 #74e5c2!important;
  color:#fff!important;
}
.portal-modern .user-chip{
  min-width:116px!important;
  max-width:160px!important;
  padding:7px 10px!important;
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.075)!important;
}
.portal-modern .user-chip strong{font-size:11px!important}
.portal-modern .user-chip span{font-size:8.5px!important}

/* Global venue scope. Native select remains as data source but custom combobox is shown. */
.portal-modern .dm-shell-venue-switcher{
  flex:0 1 320px!important;
  min-width:205px!important;
  max-width:320px!important;
  margin-left:auto!important;
  gap:0!important;
  position:relative;
}
.portal-modern .dm-shell-venue-switcher>span{display:none!important}
.portal-modern .dm-shell-venue-switcher>select{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
.dm-venue-combobox{position:relative;width:100%}
.dm-venue-combobox-button{
  width:100%;
  min-height:38px;
  display:grid;
  grid-template-columns:18px minmax(0,1fr) 16px;
  align-items:center;
  gap:7px;
  padding:7px 10px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:10px;
  background:rgba(255,255,255,.1);
  color:#fff;
  text-align:left;
  cursor:pointer;
}
.dm-venue-combobox-button:hover,
.dm-venue-combobox.open .dm-venue-combobox-button{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3)}
.dm-venue-combobox-icon{opacity:.72;font-size:12px}
.dm-venue-combobox-copy{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;font-weight:850}
.dm-venue-combobox-chevron{opacity:.72;text-align:right;font-size:10px}
.dm-venue-menu{
  position:absolute;
  z-index:220;
  top:calc(100% + 8px);
  right:0;
  width:min(390px,calc(100vw - 24px));
  padding:8px;
  border:1px solid #d6dee7;
  border-radius:14px;
  background:#fff;
  color:var(--dm-ink);
  box-shadow:0 22px 60px rgba(16,24,40,.23);
}
.dm-venue-menu[hidden]{display:none!important}
.dm-venue-search{
  width:100%;
  min-height:39px;
  padding:9px 11px;
  border:1px solid #d8e0e8;
  border-radius:9px;
  background:#f8fafc;
  color:var(--dm-ink);
  outline:none;
}
.dm-venue-search:focus{border-color:#65a997;box-shadow:0 0 0 3px rgba(30,140,121,.1)}
.dm-venue-options{display:grid;gap:3px;max-height:330px;overflow:auto;margin-top:7px}
.dm-venue-option{
  width:100%;
  display:grid;
  grid-template-columns:26px minmax(0,1fr) 18px;
  align-items:center;
  gap:8px;
  min-height:44px;
  padding:7px 8px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#344054;
  text-align:left;
  cursor:pointer;
}
.dm-venue-option:hover{background:#f3f7f6}
.dm-venue-option.active{background:var(--dm-mint-soft);color:#176e63}
.dm-venue-option-mark{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#eef4f2;color:#277c6c;font-size:11px}
.dm-venue-option-copy{min-width:0}
.dm-venue-option-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}
.dm-venue-option-copy small{display:block;margin-top:1px;color:#8792a2;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dm-venue-option-check{text-align:center;font-size:12px;color:#1e8c79}
.dm-venue-empty{padding:16px 10px;color:#7a8696;text-align:center;font-size:11px}

/* More and quick jump */
.dm-desktop-more-button,.dm-quick-jump-button{
  min-height:38px!important;
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:9px!important;
  background:rgba(255,255,255,.075)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:800!important;
}
.dm-desktop-more-button:hover,.dm-quick-jump-button:hover{background:rgba(255,255,255,.14)!important}
.dm-quick-jump-wrap{position:relative;flex:0 0 auto}
.dm-quick-jump-button{padding:0 10px;cursor:pointer}
.dm-quick-jump-button kbd{margin-left:6px;padding:2px 5px;border:1px solid rgba(255,255,255,.18);border-radius:5px;background:rgba(255,255,255,.07);font:700 8px/1.2 inherit;color:rgba(255,255,255,.7)}
.dm-jump-backdrop{
  position:fixed;inset:0;z-index:700;display:grid;place-items:start center;padding-top:min(16vh,150px);
  background:rgba(9,22,36,.38);backdrop-filter:blur(5px)
}
.dm-jump-backdrop[hidden]{display:none}
.dm-jump-dialog{width:min(610px,calc(100vw - 24px));overflow:hidden;border:1px solid #d8e0e8;border-radius:17px;background:#fff;box-shadow:0 30px 90px rgba(16,24,40,.28)}
.dm-jump-search{width:100%;min-height:58px;padding:0 18px;border:0;border-bottom:1px solid #e7ecf1;background:#fff;color:#182230;font-size:15px;outline:none}
.dm-jump-results{display:grid;gap:3px;max-height:min(58vh,520px);overflow:auto;padding:8px}
.dm-jump-group{padding:7px 9px 3px;color:#8a94a3;font-size:8.5px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.dm-jump-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:7px 9px;border:0;border-radius:10px;background:transparent;color:#344054;text-align:left;cursor:pointer}
.dm-jump-item:hover,.dm-jump-item.focused{background:#f2f7f5;color:#176e63}
.dm-jump-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#edf4f2;color:#277c6c}
.dm-jump-item strong{font-size:11px}.dm-jump-item small{color:#98a2b3;font-size:9px}

/* Secondary context bar */
.portal-modern .topbar{
  top:var(--dm-shell-header)!important;
  height:var(--dm-shell-toolbar)!important;
  padding:0 22px!important;
  border-bottom:1px solid #e1e7ed!important;
  background:rgba(255,255,255,.96)!important;
  color:var(--dm-ink)!important;
  box-shadow:0 3px 12px rgba(16,24,40,.045)!important;
  backdrop-filter:blur(14px)!important;
}
.portal-modern .topbar h1{font-size:12px!important;font-weight:900!important;color:#344054!important}
.portal-modern .top-actions{gap:7px!important}
.portal-modern .top-actions .btn{min-height:34px!important;padding:7px 11px!important;font-size:10.5px!important}
.portal-modern .dm-top-health{
  padding:6px 9px!important;
  border-color:#dbe6e1!important;
  background:#f6fbf9!important;
  color:#3f655c!important;
  font-size:9.5px!important;
}
.portal-modern .dm-top-health:before{width:6px;height:6px}

/* Canvas and hierarchy */
.portal-modern .content{
  width:min(1540px,100%)!important;
  padding:24px clamp(18px,2.5vw,34px) 54px!important;
}
.portal-modern .page-head,.portal-modern .suite-hero{
  align-items:flex-end!important;
  gap:18px!important;
  margin-bottom:18px!important;
  padding:0 0 14px!important;
  border-bottom:1px solid #dfe5eb;
}
.portal-modern .page-head h2{font-size:clamp(1.55rem,2vw,1.95rem)!important;line-height:1.08!important;color:#152132!important}
.portal-modern .page-head p{margin-top:6px!important;color:#657286!important;font-size:12px!important;line-height:1.5!important}
.portal-modern .suite-kicker,.portal-modern .dm-page-eyebrow,.portal-modern .dm-panel-kicker{
  color:#237b6b!important;font-size:8.5px!important;font-weight:950!important;letter-spacing:.13em!important
}
.portal-modern .suite-org-picker{display:none!important}

/* Cards, panels, stats */
.portal-modern .panel,.portal-modern .card,.portal-modern .stat,.portal-modern .suite-metric,.portal-modern .dm-page-metric{
  border:1px solid var(--dm-border)!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:var(--dm-shadow-sm)!important;
}
.portal-modern .panel-head{
  min-height:50px!important;
  padding:13px 15px!important;
  border-bottom:1px solid #edf1f4!important;
  background:#fff!important;
}
.portal-modern .panel-head h3{font-size:12px!important;color:#263346!important}
.portal-modern .panel-body{padding:15px!important;color:#425166!important}
.portal-modern .stats,.portal-modern .suite-metrics{gap:10px!important;margin-bottom:16px!important}
.portal-modern .stat,.portal-modern .suite-metric{padding:15px!important}
.portal-modern .stat span,.portal-modern .suite-metric span{font-size:8.5px!important;color:#7d8998!important;letter-spacing:.08em!important}
.portal-modern .stat strong,.portal-modern .suite-metric strong{margin-top:6px!important;font-size:1.5rem!important;color:#152132!important}
.portal-modern .cards{gap:10px!important}

/* Buttons and controls */
.portal-modern .btn{
  min-height:36px!important;
  padding:8px 12px!important;
  border-radius:9px!important;
  font-size:10.5px!important;
  font-weight:850!important;
}
.portal-modern .btn-primary{background:#1d8975!important;border-color:#177361!important;color:#fff!important}
.portal-modern .btn-primary:hover{background:#167462!important}
.portal-modern .btn-ghost,.portal-modern .btn:not(.btn-primary):not(.btn-danger){
  background:#fff!important;border-color:#d3dce6!important;color:#344054!important
}
.portal-modern .btn-ghost:hover,.portal-modern .btn:not(.btn-primary):not(.btn-danger):hover{background:#f7f9fb!important;border-color:#bac6d2!important}
.portal-modern input,.portal-modern select,.portal-modern textarea{
  min-height:39px!important;
  padding:9px 11px!important;
  border:1px solid #cfd8e3!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#182230!important;
  font-size:11px!important;
}
.portal-modern select option{background:#fff!important;color:#182230!important}
.portal-modern .field{gap:6px!important;margin:11px 0!important}
.portal-modern .field label,.portal-modern label.field{font-size:10.5px!important;color:#536174!important}
.portal-modern textarea{min-height:86px!important}

/* Tables and lists */
.portal-modern table{background:#fff!important}
.portal-modern th{padding:10px 13px!important;background:#f7f9fb!important;color:#6f7b8b!important;font-size:8.5px!important}
.portal-modern td{padding:11px 13px!important;color:#344054!important;font-size:10.5px!important}
.portal-modern tbody tr:hover td{background:#fbfcfd!important}
.portal-modern .suite-row{min-height:46px;padding:8px 0!important}
.portal-modern .suite-row strong{font-size:11px!important}.portal-modern .suite-row span{font-size:9.5px!important}
.portal-modern .pill{padding:4px 7px!important;font-size:9px!important}

/* Modals */
.modal-backdrop{padding:20px!important;background:rgba(12,25,40,.42)!important;backdrop-filter:blur(5px)!important}
.modal{
  width:min(760px,100%)!important;
  max-height:min(88vh,860px)!important;
  border:1px solid #d7e0e8!important;
  border-radius:17px!important;
  background:#fff!important;
  box-shadow:0 28px 80px rgba(16,24,40,.24)!important;
}
.modal-head{position:sticky;top:0;z-index:2;padding:15px 18px!important;background:#fff!important}
.modal-head h3{font-size:14px!important}
.modal-body{padding:16px 18px 18px!important}
.modal-actions{position:sticky;bottom:0;z-index:2;margin:18px -18px -18px!important;padding:12px 18px!important;border-top:1px solid #e7ecf1!important;background:rgba(255,255,255,.98)!important}
.field-grid{gap:12px!important}

/* Empty states and feedback */
.portal-modern .empty{padding:22px!important;border:1px dashed #d7e0e8!important;border-radius:11px!important;background:#fafbfc!important;color:#768394!important;font-size:10.5px!important}
.toast{border-radius:10px!important;font-size:11px!important}

/* Responsive */
@media(max-width:1180px){
  .portal-modern .sidebar .brand{min-width:135px!important}
  .portal-modern .sidebar .brand-logo{max-width:112px!important}
  .portal-modern .dm-shell-venue-switcher{max-width:260px!important;min-width:170px!important}
  .dm-quick-jump-button kbd{display:none}
}
@media(max-width:900px){
  :root{--dm-shell-header:60px;--dm-shell-toolbar:48px}
  .portal-modern .sidebar{padding:0 12px!important}
  .portal-modern .dm-shell-venue-switcher{flex:1 1 auto!important;max-width:240px!important;min-width:130px!important;margin-left:0!important}
  .portal-modern .sidebar-footer{margin-left:auto!important}
  .dm-quick-jump-wrap{display:none!important}
  .portal-modern .topbar{padding:0 12px!important}
  .portal-modern .topbar h1{font-size:11px!important}
  .portal-modern .content{padding:16px 12px calc(98px + env(safe-area-inset-bottom))!important}
  .portal-modern .page-head,.portal-modern .suite-hero{align-items:stretch!important;padding-bottom:12px!important}
  .portal-modern .page-head h2{font-size:1.45rem!important}
  .portal-modern .page-head .top-actions{display:flex!important;flex-wrap:wrap!important}
  .modal{max-height:94vh!important;border-radius:14px!important}
}
@media(max-width:620px){
  .portal-modern .sidebar .brand{min-width:0!important}
  .portal-modern .sidebar .brand-logo{max-width:92px!important}
  .portal-modern .dm-shell-venue-switcher{max-width:none!important}
  .dm-venue-menu{position:fixed;left:10px;right:10px;top:66px;width:auto}
  .portal-modern .topbar .dm-top-health{display:none!important}
  .portal-modern .top-actions .btn{padding:6px 9px!important}
  .field-grid{grid-template-columns:1fr!important}
}


/* Alpha.24: operator-console treatment. Less decorative, denser and more conventional. */
:root{
  --dm-border:#d9e0e7;
  --dm-shadow-sm:none;
  --dm-shadow-md:0 8px 24px rgba(16,24,40,.08);
}
.portal-modern .panel,
.portal-modern .card,
.portal-modern .stat,
.portal-modern .suite-metric,
.portal-modern .dm-page-metric{
  border-radius:7px!important;
  box-shadow:none!important;
}
.portal-modern .btn,
.portal-modern input,
.portal-modern select,
.portal-modern textarea{
  border-radius:6px!important;
}
.portal-modern .page-head,
.portal-modern .suite-hero{
  border-bottom:1px solid #dfe4ea!important;
}
.portal-modern .page-head h2{
  font-size:1.55rem!important;
  letter-spacing:-.02em!important;
}
.portal-modern .page-head p{
  max-width:680px!important;
}
.portal-modern .panel-head{
  min-height:46px!important;
  padding:11px 13px!important;
}
.portal-modern .panel-body{padding:13px!important}
.portal-modern .suite-kicker,
.portal-modern .dm-page-eyebrow,
.portal-modern .dm-panel-kicker{
  letter-spacing:.09em!important;
}
.portal-modern .dm-kpi-grid,
.portal-modern .dm-dashboard-hero,
.portal-modern .dm-dashboard-grid{
  display:none!important;
}

.dm-operator-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
  padding-bottom:13px;
  border-bottom:1px solid #dfe4ea;
}
.dm-operator-head h2{
  margin:0;
  color:#172233;
  font-size:1.55rem;
  line-height:1.1;
  letter-spacing:-.025em;
}
.dm-operator-head p{
  margin:5px 0 0;
  color:#6c7786;
  font-size:11px;
}
.dm-operator-actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
}
.dm-summary-strip{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  overflow:hidden;
  margin-bottom:14px;
  border:1px solid #d9e0e7;
  border-radius:7px;
  background:#fff;
}
.dm-summary-strip>button{
  min-width:0;
  display:grid;
  gap:3px;
  padding:13px 14px;
  border:0;
  border-right:1px solid #e5e9ee;
  background:#fff;
  color:#2f3b4d;
  text-align:left;
  cursor:pointer;
}
.dm-summary-strip>button:last-child{border-right:0}
.dm-summary-strip>button:hover{background:#f8fafb}
.dm-summary-strip span{
  color:#667085;
  font-size:9px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.055em;
}
.dm-summary-strip strong{
  color:#172233;
  font-size:1.35rem;
  line-height:1.05;
  letter-spacing:-.025em;
}
.dm-summary-strip small{
  overflow:hidden;
  color:#8490a0;
  font-size:9px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dm-operator-grid{
  display:grid;
  grid-template-columns:minmax(0,1.65fr) minmax(290px,.65fr);
  align-items:start;
  gap:12px;
}
.dm-operator-main{min-width:0}
.dm-panel-subtitle{
  display:block;
  margin-top:2px;
  color:#8a95a3;
  font-size:9px;
  font-weight:500;
}
.dm-operator-side{
  display:grid;
  gap:12px;
}
.dm-operator-list{
  display:grid;
}
.dm-operator-list>button{
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:9px 12px;
  border:0;
  border-bottom:1px solid #edf0f3;
  background:#fff;
  color:#3a4759;
  text-align:left;
  cursor:pointer;
}
.dm-operator-list>button:last-child{border-bottom:0}
.dm-operator-list>button:hover{background:#f8fafb}
.dm-operator-list>button span{font-size:10.5px;font-weight:650}
.dm-operator-list>button strong{font-size:12px;color:#172233}
.dm-operator-list>button.warn strong{color:#b54708}
.dm-operator-attention{padding:8px}
.dm-operator-attention>button{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 8px;
  border:0;
  border-bottom:1px solid #edf0f3;
  background:#fff;
  color:#344054;
  text-align:left;
  cursor:pointer;
}
.dm-operator-attention>button:last-child{border-bottom:0}
.dm-operator-attention>button:hover{background:#f8fafb}
.dm-operator-attention>button span{min-width:0}
.dm-operator-attention>button strong{
  display:block;
  overflow:hidden;
  font-size:10.5px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.dm-operator-attention>button small{
  display:block;
  margin-top:2px;
  color:#8a95a3;
  font-size:9px;
}
.dm-operator-attention>button b{
  flex:0 0 auto;
  color:#b42318;
  font-size:9px;
  text-transform:uppercase;
}
.dm-operator-ok{
  padding:13px 10px;
  color:#475467;
}
.dm-operator-ok strong{display:block;font-size:10.5px;color:#344054}
.dm-operator-ok span{display:block;margin-top:3px;color:#8a95a3;font-size:9px}

@media(max-width:1000px){
  .dm-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dm-summary-strip>button:nth-child(2){border-right:0}
  .dm-summary-strip>button:nth-child(-n+2){border-bottom:1px solid #e5e9ee}
  .dm-operator-grid{grid-template-columns:1fr}
  .dm-operator-side{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .dm-operator-head{align-items:stretch;display:grid}
  .dm-operator-actions{justify-content:flex-start}
  .dm-summary-strip{grid-template-columns:1fr 1fr}
  .dm-operator-side{grid-template-columns:1fr}
}


/* Alpha.25: restore comfortable scale and true centring */
.portal-modern .main{
  width:100%!important;
  min-width:0!important;
}
.portal-modern .content{
  width:100%!important;
  max-width:1460px!important;
  margin:0 auto!important;
  padding:30px 34px 64px!important;
}
.portal-modern .topbar{
  padding-left:28px!important;
  padding-right:28px!important;
}
.portal-modern .topbar h1{
  font-size:13px!important;
}
.portal-modern .top-actions .btn{
  min-height:38px!important;
  padding:8px 13px!important;
  font-size:11.5px!important;
}
.portal-modern .dm-top-health{
  font-size:10.5px!important;
}
.portal-modern .sidebar{
  padding-left:24px!important;
  padding-right:24px!important;
  gap:12px!important;
}
.portal-modern .sidebar .brand{
  min-width:175px!important;
}
.portal-modern .sidebar .brand-logo{
  max-width:145px!important;
}
.portal-modern .nav>button{
  min-height:40px!important;
  padding:0 11px!important;
  font-size:12px!important;
}
.portal-modern .user-chip{
  min-width:126px!important;
  max-width:175px!important;
  padding:8px 11px!important;
}
.portal-modern .user-chip strong{
  font-size:12px!important;
}
.portal-modern .user-chip span{
  font-size:9.5px!important;
}
.portal-modern .dm-shell-venue-switcher{
  min-width:240px!important;
  max-width:360px!important;
}
.dm-venue-combobox-button{
  min-height:40px!important;
  padding:8px 11px!important;
}
.dm-venue-combobox-copy{
  font-size:11.5px!important;
}
.dm-desktop-more-button,
.dm-quick-jump-button{
  min-height:40px!important;
  font-size:11.5px!important;
}

.dm-operator-head{
  align-items:center;
  margin-bottom:18px;
  padding-bottom:16px;
}
.dm-operator-head h2{
  font-size:2rem;
  letter-spacing:-.03em;
}
.dm-operator-head p{
  margin-top:6px;
  font-size:12.5px;
}
.dm-operator-actions{
  gap:8px;
}
.dm-operator-actions .btn{
  min-height:40px!important;
  padding:9px 14px!important;
  font-size:11.5px!important;
}

.dm-summary-strip{
  margin-bottom:18px;
  border-radius:9px;
}
.dm-summary-strip>button{
  min-height:92px;
  padding:16px 18px;
}
.dm-summary-strip span{
  font-size:10px;
}
.dm-summary-strip strong{
  font-size:1.7rem;
}
.dm-summary-strip small{
  font-size:10px;
}

.dm-operator-grid{
  grid-template-columns:minmax(0,1.8fr) minmax(320px,.7fr);
  gap:16px;
}
.portal-modern .panel{
  border-radius:9px!important;
}
.portal-modern .panel-head{
  min-height:54px!important;
  padding:14px 16px!important;
}
.portal-modern .panel-head h3{
  font-size:13px!important;
}
.dm-panel-subtitle{
  margin-top:3px;
  font-size:10px;
}
.portal-modern .panel-body{
  padding:16px!important;
}
.portal-modern th{
  padding:12px 14px!important;
  font-size:9.5px!important;
}
.portal-modern td{
  padding:13px 14px!important;
  font-size:11.5px!important;
}
.portal-modern .status{
  font-size:10.5px!important;
}
.portal-modern .empty{
  min-height:86px;
  display:grid;
  place-items:center;
  padding:24px!important;
  font-size:11.5px!important;
}
.dm-operator-list>button{
  min-height:48px;
  padding:11px 14px;
}
.dm-operator-list>button span{
  font-size:11.5px;
}
.dm-operator-list>button strong{
  font-size:13px;
}
.dm-operator-attention{
  padding:10px;
}
.dm-operator-attention>button{
  min-height:50px;
  padding:10px 9px;
}
.dm-operator-attention>button strong{
  font-size:11.5px;
}
.dm-operator-attention>button small,
.dm-operator-ok span{
  font-size:10px;
}
.dm-operator-ok strong{
  font-size:11.5px;
}

.portal-modern .page-head h2{
  font-size:1.8rem!important;
}
.portal-modern .page-head p{
  font-size:12.5px!important;
}
.portal-modern .suite-kicker,
.portal-modern .dm-page-eyebrow,
.portal-modern .dm-panel-kicker{
  font-size:9.5px!important;
}
.portal-modern .btn{
  min-height:38px!important;
  padding:8px 13px!important;
  font-size:11.5px!important;
}
.portal-modern input,
.portal-modern select,
.portal-modern textarea{
  min-height:42px!important;
  padding:10px 12px!important;
  font-size:12px!important;
}
.portal-modern .field label,
.portal-modern label.field{
  font-size:11.5px!important;
}
.portal-modern .pill{
  font-size:10px!important;
}

@media(max-width:1200px){
  .portal-modern .content{padding:24px 24px 56px!important}
  .portal-modern .sidebar{padding-left:16px!important;padding-right:16px!important}
  .portal-modern .dm-shell-venue-switcher{min-width:190px!important;max-width:280px!important}
  .portal-modern .nav>button{padding:0 9px!important;font-size:11.5px!important}
}
@media(max-width:1000px){
  .dm-operator-grid{grid-template-columns:1fr}
  .dm-operator-side{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
  .portal-modern .content{padding:18px 14px calc(100px + env(safe-area-inset-bottom))!important}
  .dm-operator-head h2{font-size:1.65rem}
  .dm-summary-strip>button{min-height:82px;padding:14px}
}
@media(max-width:700px){
  .dm-operator-side{grid-template-columns:1fr}
  .dm-summary-strip{grid-template-columns:1fr 1fr}
}


/* Alpha.26: make portal dialogs self-contained and remove dark-theme leakage */
body > .modal-backdrop{
  background:rgba(20,31,45,.42)!important;
  backdrop-filter:blur(5px)!important;
}
body > .modal-backdrop .modal{
  --line:#d9e1e8;
  --text:#172233;
  --muted:#667085;
  --panel:#ffffff;
  --panel-2:#f7f9fb;
  width:min(780px,calc(100vw - 32px))!important;
  max-height:min(88vh,880px)!important;
  overflow:auto!important;
  border:1px solid #d7dfe7!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#172233!important;
  box-shadow:0 26px 72px rgba(16,24,40,.24)!important;
}
body > .modal-backdrop .modal.modal-wide{
  width:min(880px,calc(100vw - 32px))!important;
}
body > .modal-backdrop .modal-head{
  position:sticky!important;
  top:0!important;
  z-index:4!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:60px!important;
  padding:16px 18px!important;
  border-bottom:1px solid #e5eaf0!important;
  background:#fff!important;
}
body > .modal-backdrop .modal-head h3{
  margin:0!important;
  color:#172233!important;
  font-size:15px!important;
  font-weight:800!important;
  letter-spacing:-.01em!important;
}
body > .modal-backdrop .close{
  width:34px!important;
  height:34px!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#667085!important;
  font-size:20px!important;
  line-height:1!important;
}
body > .modal-backdrop .close:hover{
  background:#f3f5f7!important;
  color:#344054!important;
}
body > .modal-backdrop .modal-body{
  padding:20px!important;
  background:#fff!important;
  color:#344054!important;
  font-size:13px!important;
  line-height:1.5!important;
}
body > .modal-backdrop .modal-body > .muted,
body > .modal-backdrop .modal-body .muted{
  color:#667085!important;
}
body > .modal-backdrop .modal .suite-row{
  min-height:64px!important;
  padding:12px 0!important;
  border-bottom:1px solid #e5e9ee!important;
  color:#344054!important;
}
body > .modal-backdrop .modal .suite-row:last-child{
  border-bottom:0!important;
}
body > .modal-backdrop .modal .suite-row strong{
  color:#172233!important;
  font-size:13px!important;
  font-weight:750!important;
}
body > .modal-backdrop .modal .suite-row span,
body > .modal-backdrop .modal .suite-row small{
  margin-top:2px!important;
  color:#7a8696!important;
  font-size:11px!important;
}
body > .modal-backdrop .modal .btn{
  min-height:38px!important;
  padding:8px 13px!important;
  border:1px solid #ccd6df!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#344054!important;
  box-shadow:none!important;
  text-shadow:none!important;
  font-size:11.5px!important;
  font-weight:750!important;
  opacity:1!important;
}
body > .modal-backdrop .modal .btn:hover{
  border-color:#aebbc7!important;
  background:#f7f9fb!important;
  color:#172233!important;
}
body > .modal-backdrop .modal .btn-primary{
  border-color:#177361!important;
  background:#1d8975!important;
  color:#fff!important;
}
body > .modal-backdrop .modal .btn-primary:hover{
  border-color:#126555!important;
  background:#167462!important;
  color:#fff!important;
}
body > .modal-backdrop .modal .btn-danger{
  border-color:#efc4c9!important;
  background:#fff3f4!important;
  color:#b4233c!important;
}
body > .modal-backdrop .modal .btn:disabled{
  border-color:#e1e6eb!important;
  background:#f5f7f9!important;
  color:#98a2b3!important;
  cursor:not-allowed!important;
  opacity:1!important;
}
body > .modal-backdrop .modal input,
body > .modal-backdrop .modal select,
body > .modal-backdrop .modal textarea{
  width:100%!important;
  min-height:42px!important;
  padding:10px 12px!important;
  border:1px solid #cbd5df!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#172233!important;
  box-shadow:none!important;
  font-size:12px!important;
  outline:none!important;
}
body > .modal-backdrop .modal input:focus,
body > .modal-backdrop .modal select:focus,
body > .modal-backdrop .modal textarea:focus{
  border-color:#579886!important;
  box-shadow:0 0 0 3px rgba(29,137,117,.1)!important;
}
body > .modal-backdrop .modal input[readonly]{
  background:#f6f8fa!important;
  color:#667085!important;
}
body > .modal-backdrop .modal label.field,
body > .modal-backdrop .modal .field label,
body > .modal-backdrop .modal .field > span{
  color:#475467!important;
  font-size:11.5px!important;
  font-weight:700!important;
}
body > .modal-backdrop .modal .field{
  gap:6px!important;
  margin:12px 0!important;
}
body > .modal-backdrop .modal .field-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
body > .modal-backdrop .modal .modal-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:4!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:8px!important;
  margin:20px -20px -20px!important;
  padding:13px 20px!important;
  border-top:1px solid #e5eaf0!important;
  background:#fff!important;
}
body > .modal-backdrop .modal .plan-feature-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  margin-top:8px!important;
}
body > .modal-backdrop .modal .plan-feature-grid .check,
body > .modal-backdrop .modal .check-list .check,
body > .modal-backdrop .modal .check-item{
  min-height:42px!important;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  padding:9px 10px!important;
  border:1px solid #dce3ea!important;
  border-radius:7px!important;
  background:#f8fafb!important;
  color:#344054!important;
}
body > .modal-backdrop .modal .plan-feature-grid .check input,
body > .modal-backdrop .modal .check-list .check input,
body > .modal-backdrop .modal .check-item input{
  width:16px!important;
  min-height:16px!important;
  height:16px!important;
  padding:0!important;
}
body > .modal-backdrop .modal code{
  border:0!important;
  border-radius:5px!important;
  background:#f1f4f7!important;
  color:#344054!important;
}
@media(max-width:720px){
  body > .modal-backdrop{padding:10px!important}
  body > .modal-backdrop .modal,
  body > .modal-backdrop .modal.modal-wide{
    width:100%!important;
    max-height:94vh!important;
  }
  body > .modal-backdrop .modal .field-grid,
  body > .modal-backdrop .modal .plan-feature-grid{
    grid-template-columns:1fr!important;
  }
}
