body.is-admin{
  background:#f4f6f8;
}

body.is-admin #mainContent,
body.is-admin .content-wrapper,
body.is-admin main{
  background: transparent;
}

body.is-admin .container,
body.is-admin .container-fluid{
  max-width: 1360px;
}

body.is-admin .container > h1,
body.is-admin .container > h2,
body.is-admin .container-fluid > h1,
body.is-admin .container-fluid > h2{
  color: #0b2330;
  font-weight: 900;
  letter-spacing: 0;
  margin-bottom: 18px;
}

body.is-admin .container > h1::after,
body.is-admin .container > h2::after,
body.is-admin .container-fluid > h1::after,
body.is-admin .container-fluid > h2::after{
  content: "";
  display: block;
  width: 74px;
  height: 4px;
  border-radius: 999px;
  margin-top: 10px;
  background: linear-gradient(90deg, #2e5b68, #66b5fc);
}

body.is-admin .table-responsive,
body.is-admin form:not(.d-inline):not(.m-0){
  background: rgba(255, 255, 255, .88);
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
  padding: 18px;
  backdrop-filter: blur(12px);
}

body.is-admin .table{
  margin-bottom: 0;
  border-collapse: separate;
  border-spacing: 0;
  color: #1f2a2e;
}

body.is-admin .table-bordered,
body.is-admin .table-bordered td,
body.is-admin .table-bordered th{
  border-color: #e2e8f0;
}

body.is-admin .table thead th,
body.is-admin .thead-light th{
  background: linear-gradient(180deg, #f8fafc, #eef5f4);
  color: #314455;
  border-bottom: 1px solid #dbe6ea;
  font-size: .76rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
}

body.is-admin .table tbody tr{
  transition: background .18s ease, transform .18s ease;
}

body.is-admin .table-hover tbody tr:hover{
  background: rgba(102, 181, 252, .08);
}

body.is-admin .card,
body.is-admin .panel-card,
body.is-admin .metric-card{
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 8px;
  box-shadow: 0 18px 42px rgba(15, 23, 42, .08);
  overflow: hidden;
}

body.is-admin .card-header,
body.is-admin .panel-card .card-header{
  background: rgba(255, 255, 255, .92);
  border-bottom: 1px solid #edf2f7;
  color: #0b2330;
  font-weight: 900;
}

body.is-admin .form-control,
body.is-admin .custom-select,
body.is-admin select,
body.is-admin textarea{
  border-color: #cbd5e1;
  border-radius: 8px;
  color: #1f2a2e;
  min-height: 42px;
  box-shadow: none;
}

body.is-admin textarea.form-control,
body.is-admin textarea{
  min-height: 96px;
}

body.is-admin .form-control:focus,
body.is-admin .custom-select:focus,
body.is-admin select:focus,
body.is-admin textarea:focus{
  border-color: #66b5fc;
  box-shadow: 0 0 0 .18rem rgba(102, 181, 252, .18);
}

body.is-admin label{
  color: #314455;
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .035em;
}

body.is-admin .form-text,
body.is-admin .text-muted{
  color: #64748b !important;
}

body.is-admin .btn{
  border-radius: 8px;
  font-weight: 800;
  box-shadow: none;
}

body.is-admin .btn-primary,
body.is-admin .btn-success{
  border-color: transparent;
  background: linear-gradient(135deg, #2e5b68, #256d7b);
}

body.is-admin .btn-primary:hover,
body.is-admin .btn-success:hover{
  background: linear-gradient(135deg, #214653, #1f5d68);
}

body.is-admin .btn-outline-primary{
  color: #256d7b;
  border-color: rgba(37, 109, 123, .45);
}

body.is-admin .btn-outline-primary:hover{
  background: #256d7b;
  border-color: #256d7b;
  color: #ffffff;
}

body.is-admin .alert{
  border: 0;
  border-radius: 18px;
  box-shadow: 0 12px 28px rgba(15, 23, 42, .07);
}

body.is-admin code{
  color: #075985;
  background: #e0f2fe;
  border-radius: 8px;
  padding: 3px 7px;
  font-weight: 800;
}

body.is-admin .badge{
  border-radius: 999px;
  padding: 6px 9px;
}

body.is-admin .admin-topbar{
  border: 1px solid rgba(255,255,255,.14);
  background:#0b2330;
}

body.is-admin .admin-nav a{
  font-weight: 800;
}

body.is-admin .admin-nav a[href*="servicos-comerciais"]{
  background: rgba(102, 181, 252, .18);
  border-color: rgba(102, 181, 252, .34);
}

body.is-admin .admin-page-head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
  padding:22px;
  border:1px solid rgba(148, 163, 184, .28);
  border-radius:8px;
  background:rgba(255,255,255,.82);
  box-shadow:0 18px 42px rgba(15, 23, 42, .08);
}

body.is-admin .admin-page-head h2{
  color:#0b2330;
  font-weight:900;
  letter-spacing:0;
}

body.is-admin .admin-page-kicker{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(46,91,104,.08);
  color:#2e5b68;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}

body.is-admin .admin-page-actions,
body.is-admin .admin-step-nav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
}

body.is-admin .admin-global-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  max-width:1440px;
  margin:0 auto 16px;
  padding:10px 64px 10px 0;
}

body.is-admin .admin-global-nav a{
  display:inline-flex;
  align-items:center;
  gap:7px;
  min-height:36px;
  padding:7px 10px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  color:#344054;
  font-size:.84rem;
  font-weight:800;
  text-decoration:none;
  box-shadow:0 6px 16px rgba(15, 23, 42, .04);
}

body.is-admin .admin-global-nav a:hover,
body.is-admin .admin-global-nav a.is-active{
  border-color:#256d7b;
  background:#ecfeff;
  color:#174b57;
}

body.is-admin .admin-global-nav i{
  width:16px;
  text-align:center;
}

body.is-admin .page-head,
body.is-admin .detail-head,
body.is-admin .page-hero,
body.is-admin .access-head{
  border:1px solid #d7dee8 !important;
  border-radius:8px !important;
  background:#ffffff !important;
  color:#17202a !important;
  box-shadow:0 8px 20px rgba(15, 23, 42, .05) !important;
}

body.is-admin .page-head h2,
body.is-admin .detail-head h2,
body.is-admin .page-hero h2,
body.is-admin .access-head h2{
  color:#17202a !important;
  font-weight:850 !important;
}

body.is-admin .page-head p,
body.is-admin .detail-head p,
body.is-admin .page-hero p,
body.is-admin .access-head p{
  color:#667085 !important;
}

body.is-admin .premium-card,
body.is-admin .toolbar-card,
body.is-admin .table-card,
body.is-admin .stats-chip,
body.is-admin .access-metric,
body.is-admin .access-filters,
body.is-admin .access-table-card{
  border:1px solid #d7dee8 !important;
  border-radius:8px !important;
  background:#ffffff !important;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04) !important;
}

body.is-admin .filter-pill,
body.is-admin .badge-soft,
body.is-admin .action-stack .btn{
  border-radius:8px !important;
}

body.is-admin .detail-shell,
body.is-admin .page-shell,
body.is-admin .access-shell{
  padding-right:76px;
}

body.is-admin .admin-step-nav{
  justify-content:space-between;
  margin-top:22px;
}

body.is-admin .admin-plan-grid,
body.is-admin .admin-service-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:18px;
}

body.is-admin .admin-plan-card,
body.is-admin .admin-service-card{
  position:relative;
  display:flex;
  flex-direction:column;
  min-height:100%;
  border:1px solid rgba(148, 163, 184, .30);
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 18px 42px rgba(15, 23, 42, .08);
  padding:22px;
  overflow:hidden;
}

body.is-admin .admin-plan-card::after,
body.is-admin .admin-service-card::after{
  display:none;
}

body.is-admin .admin-plan-card--featured{
  border-color:rgba(250, 204, 21, .72);
  box-shadow:0 24px 54px rgba(15, 23, 42, .12);
}

body.is-admin .admin-plan-badge{
  position:absolute;
  right:0;
  top:0;
  z-index:2;
  background:#facc15;
  color:#111827;
  padding:8px 14px;
  border-radius:0 24px 0 18px;
  font-size:.72rem;
  font-weight:900;
  text-transform:uppercase;
}

body.is-admin .admin-plan-head,
body.is-admin .admin-service-top,
body.is-admin .admin-plan-price,
body.is-admin .admin-service-price{
  position:relative;
  z-index:1;
}

body.is-admin .admin-plan-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  margin-bottom:14px;
}

body.is-admin .admin-plan-code,
body.is-admin .admin-service-category{
  color:#256d7b;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body.is-admin .admin-plan-status{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 9px;
  background:#e2e8f0;
  color:#334155;
  font-size:.72rem;
  font-weight:900;
}

body.is-admin .admin-plan-status--ativo{
  background:#dcfce7;
  color:#166534;
}

body.is-admin .admin-plan-status--pendente{
  background:#fef3c7;
  color:#92400e;
}

body.is-admin .admin-plan-status--teste{
  background:#e0f2fe;
  color:#075985;
}

body.is-admin .admin-plan-status--cortesia{
  background:#ede9fe;
  color:#5b21b6;
}

body.is-admin .admin-plan-status--inativo,
body.is-admin .admin-plan-status--cancelado,
body.is-admin .admin-plan-status--expirado{
  background:#fee2e2;
  color:#991b1b;
}

body.is-admin .admin-plan-card h3,
body.is-admin .admin-service-card h3{
  position:relative;
  z-index:1;
  color:#0b2330;
  font-size:1.35rem;
  font-weight:900;
  letter-spacing:0;
  margin:0 0 8px;
}

body.is-admin .admin-plan-description,
body.is-admin .admin-service-card p{
  position:relative;
  z-index:1;
  color:#64748b;
  line-height:1.55;
}

body.is-admin .admin-plan-price,
body.is-admin .admin-service-price{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:12px;
  margin:12px 0 16px;
}

body.is-admin .admin-plan-price strong,
body.is-admin .admin-service-price strong{
  color:#0b2330;
  font-size:1.85rem;
  font-weight:900;
  letter-spacing:0;
}

body.is-admin .admin-ops-page{
  max-width:1440px;
  padding-right:64px;
}

body.is-admin .admin-ops-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:16px;
  margin-bottom:16px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 8px 20px rgba(15, 23, 42, .05);
}

body.is-admin .admin-ops-header h2{
  margin:0;
  color:#17202a;
  font-size:1.45rem;
  font-weight:850;
}

body.is-admin .admin-identity-line,
body.is-admin .admin-cell-sub{
  display:block;
  max-width:100%;
  margin-top:3px;
  color:#667085;
  font-size:.82rem;
  font-weight:600;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.is-admin .admin-ops-metrics,
body.is-admin .admin-command-grid,
body.is-admin .admin-contract-summary{
  display:grid;
  grid-template-columns:repeat(5, minmax(0, 1fr));
  gap:10px;
  margin-bottom:16px;
}

body.is-admin .admin-command-grid{
  grid-template-columns:repeat(6, minmax(0, 1fr));
}

body.is-admin .admin-ops-metric,
body.is-admin .admin-command-item,
body.is-admin .admin-contract-summary > div{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:82px;
  padding:14px;
  border:1px solid #d7dee8;
  border-left:4px solid #475467;
  border-radius:8px;
  background:#ffffff;
  color:#17202a;
  text-decoration:none;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04);
}

body.is-admin .admin-command-item{
  gap:8px;
}

body.is-admin .admin-command-item i{
  color:#475467;
  font-size:1rem;
}

body.is-admin .admin-ops-metric span,
body.is-admin .admin-command-item span,
body.is-admin .admin-contract-summary span{
  color:#667085;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
}

body.is-admin .admin-ops-metric strong,
body.is-admin .admin-command-item strong,
body.is-admin .admin-contract-summary strong{
  color:#17202a;
  font-size:1.5rem;
  font-weight:850;
}

body.is-admin .admin-ops-metric--success,
body.is-admin .admin-command-item--success{
  border-left-color:#16a34a;
}

body.is-admin .admin-ops-metric--warning,
body.is-admin .admin-command-item--warning{
  border-left-color:#ca8a04;
}

body.is-admin .admin-ops-metric--info{
  border-left-color:#0284c7;
}

body.is-admin .admin-ops-metric--danger,
body.is-admin .admin-command-item--danger{
  border-left-color:#dc2626;
}

body.is-admin .admin-ops-filter{
  display:grid;
  grid-template-columns:minmax(260px, 1fr) 180px 180px auto auto;
  gap:12px;
  align-items:end;
  margin-bottom:16px;
  padding:14px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04);
}

body.is-admin .admin-filter-input{
  position:relative;
}

body.is-admin .admin-filter-input i{
  position:absolute;
  left:12px;
  top:50%;
  color:#667085;
  transform:translateY(-50%);
}

body.is-admin .admin-filter-input .form-control{
  padding-left:34px;
}

body.is-admin .admin-filter-check{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:42px;
  margin:0;
  color:#344054;
  font-size:.86rem;
  text-transform:none;
}

body.is-admin .admin-filter-actions,
body.is-admin .admin-row-actions,
body.is-admin .admin-form-actions,
body.is-admin .admin-quick-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
}

body.is-admin .admin-row-actions{
  flex-wrap:nowrap;
  justify-content:flex-end;
}

body.is-admin .admin-row-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  padding:0;
}

body.is-admin .admin-empty-row{
  padding:30px 16px;
  text-align:center;
  color:#667085;
}

body.is-admin .admin-contract-table{
  padding:0;
  border-radius:8px;
  overflow:auto;
}

body.is-admin .admin-management-table{
  width:100%;
  min-width:0;
  table-layout:fixed;
  border-collapse:separate;
  border-spacing:0;
}

body.is-admin .admin-contract-table .table th,
body.is-admin .admin-contract-table .table td{
  padding:12px;
  vertical-align:middle;
  overflow:hidden;
}

body.is-admin .admin-contract-table .table tbody tr{
  background:#ffffff;
}

body.is-admin .admin-management-table th{
  white-space:nowrap;
}

body.is-admin .admin-management-table td{
  max-width:0;
}

body.is-admin .admin-cell-title{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.is-admin .admin-col-client{
  width:25%;
}

body.is-admin .admin-col-plan{
  width:13%;
}

body.is-admin .admin-col-limits{
  width:14%;
}

body.is-admin .admin-col-addons{
  width:20%;
}

body.is-admin .admin-col-period{
  width:12%;
}

body.is-admin .admin-col-status{
  width:9%;
}

body.is-admin .admin-col-actions{
  width:7%;
}

body.is-admin .admin-col-payment,
body.is-admin .admin-col-value{
  width:14%;
}

body.is-admin .admin-subscriptions-table .admin-col-client{
  width:27%;
}

body.is-admin .admin-subscriptions-table .admin-col-plan{
  width:14%;
}

body.is-admin .admin-subscriptions-table .admin-col-status{
  width:12%;
}

body.is-admin .admin-subscriptions-table .admin-col-actions{
  width:8%;
}

body.is-admin .admin-limit-stack{
  display:flex;
  flex-direction:column;
  gap:5px;
  color:#344054;
  font-weight:750;
}

body.is-admin .admin-limit-stack i{
  width:16px;
  color:#475467;
}

body.is-admin .admin-chip-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  max-width:100%;
  overflow:hidden;
}

body.is-admin .admin-chip{
  display:inline-flex;
  align-items:center;
  max-width:180px;
  border:1px solid #cfd8e3;
  border-radius:8px;
  padding:4px 7px;
  background:#f8fafc;
  color:#344054;
  font-size:.78rem;
  font-weight:750;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.is-admin .admin-chip--muted{
  background:#eef2f7;
  color:#475467;
}

body.is-admin .admin-empty-state{
  display:flex;
  align-items:center;
  gap:10px;
  padding:18px;
  border:1px dashed #aeb8c8;
  border-radius:8px;
  background:#ffffff;
  color:#475467;
}

body.is-admin .admin-empty-state i{
  color:#667085;
}

body.is-admin form.admin-contract-editor:not(.d-inline):not(.m-0){
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

body.is-admin .admin-editor-section,
body.is-admin .admin-workbench > section,
body.is-admin .admin-workbench-side{
  padding:16px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04);
}

body.is-admin .admin-editor-title,
body.is-admin .admin-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}

body.is-admin .admin-editor-title h3,
body.is-admin .admin-section-head h3{
  margin:0;
  color:#17202a;
  font-size:1rem;
  font-weight:850;
}

body.is-admin .admin-editor-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

body.is-admin .admin-editor-grid--four{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

body.is-admin .admin-effective-box{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:88px;
  padding:12px;
  border:1px solid #badbcc;
  border-radius:8px;
  background:#f0fdf4;
}

body.is-admin .admin-effective-box span,
body.is-admin .admin-effective-box small{
  color:#166534;
  font-weight:750;
}

body.is-admin .admin-effective-box strong{
  color:#14532d;
  font-size:1.8rem;
  font-weight:850;
}

body.is-admin .admin-module-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
}

body.is-admin .admin-module-option{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  margin:0;
  padding:8px 10px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#f8fafc;
  color:#344054;
  font-size:.86rem;
  font-weight:750;
  text-transform:none;
}

body.is-admin .admin-module-option input{
  margin:0;
}

body.is-admin .admin-form-actions{
  position:sticky;
  bottom:0;
  z-index:3;
  padding:12px 0 4px;
  background:#f4f6f8;
}

body.is-admin .admin-workbench{
  display:grid;
  grid-template-columns:minmax(0, 1.7fr) minmax(280px, .8fr);
  gap:16px;
  margin-bottom:16px;
}

body.is-admin .admin-workbench--split{
  grid-template-columns:repeat(2, minmax(0, 1fr));
}

body.is-admin .admin-action-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
}

body.is-admin .admin-action-list a{
  display:grid;
  grid-template-columns:26px minmax(0, 1fr) auto;
  gap:10px;
  align-items:center;
  padding:10px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#f8fafc;
  color:#17202a;
  text-decoration:none;
}

body.is-admin .admin-action-list i{
  color:#475467;
}

body.is-admin .admin-action-list span{
  font-weight:800;
}

body.is-admin .admin-action-list strong{
  color:#667085;
  font-size:.82rem;
}

body.is-admin .admin-data-list{
  display:flex;
  flex-direction:column;
  gap:0;
  margin:0;
}

body.is-admin .admin-data-list div{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:10px 0;
  border-bottom:1px solid #e5eaf1;
}

body.is-admin .admin-data-list div:last-child{
  border-bottom:0;
}

body.is-admin .admin-data-list dt{
  color:#667085;
  font-weight:750;
}

body.is-admin .admin-data-list dd{
  margin:0;
  color:#17202a;
  font-weight:850;
}

body.is-admin .admin-utility-nav{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

body.is-admin .admin-utility-nav a{
  padding:8px 10px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  color:#344054;
  font-weight:750;
  text-decoration:none;
}

body.is-admin .admin-calendar-page{
  max-width:1440px;
  padding-right:64px;
}

body.is-admin .admin-calendar-summary{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:10px;
  margin-bottom:16px;
}

body.is-admin .admin-calendar-summary > div{
  min-height:82px;
  padding:14px;
  border:1px solid #d7dee8;
  border-left:4px solid #256d7b;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04);
}

body.is-admin .admin-calendar-summary span{
  display:block;
  color:#667085;
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
}

body.is-admin .admin-calendar-summary strong{
  display:block;
  margin-top:6px;
  color:#17202a;
  font-size:1.55rem;
  font-weight:850;
}

body.is-admin form.admin-calendar-filter:not(.d-inline):not(.m-0),
body.is-admin form.admin-calendar-import-form:not(.d-inline):not(.m-0){
  box-shadow:none;
  backdrop-filter:none;
}

body.is-admin .admin-calendar-filter{
  display:grid;
  grid-template-columns:130px 130px 180px minmax(180px, 1fr) auto;
  gap:12px;
  align-items:end;
  margin-bottom:16px;
  padding:14px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
}

body.is-admin .admin-calendar-filter-actions{
  display:flex;
  gap:8px;
  align-items:center;
}

body.is-admin .admin-calendar-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.55fr) minmax(360px, .9fr);
  gap:16px;
  margin-bottom:16px;
}

body.is-admin .admin-calendar-panel{
  padding:16px;
  border:1px solid #d7dee8;
  border-radius:8px;
  background:#ffffff;
  box-shadow:0 8px 20px rgba(15, 23, 42, .04);
}

body.is-admin .admin-calendar-muted,
body.is-admin .admin-calendar-help{
  color:#667085;
  font-size:.84rem;
  font-weight:700;
}

body.is-admin .admin-calendar-table-wrap{
  overflow:auto;
  border:1px solid #e5eaf1;
  border-radius:8px;
}

body.is-admin .admin-calendar-table{
  width:100%;
  min-width:760px;
  border-collapse:collapse;
  color:#17202a;
}

body.is-admin .admin-calendar-table th,
body.is-admin .admin-calendar-table td{
  padding:11px 12px;
  border-bottom:1px solid #e5eaf1;
  vertical-align:top;
}

body.is-admin .admin-calendar-table th{
  background:#f8fafc;
  color:#314455;
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  white-space:nowrap;
}

body.is-admin .admin-calendar-table td small{
  display:block;
  max-width:260px;
  margin-top:5px;
  color:#667085;
  font-size:.76rem;
  line-height:1.35;
}

body.is-admin .admin-calendar-row--missing{
  background:#fff7ed;
}

body.is-admin .admin-calendar-badge{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:5px 9px;
  font-size:.78rem;
  font-weight:850;
}

body.is-admin .admin-calendar-badge--ok{
  background:#dcfce7;
  color:#166534;
}

body.is-admin .admin-calendar-badge--missing{
  background:#fee2e2;
  color:#991b1b;
}

body.is-admin .admin-calendar-import-form{
  display:flex;
  flex-direction:column;
  gap:12px;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

body.is-admin .admin-calendar-textarea{
  min-height:180px;
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.9rem;
}

body.is-admin .admin-calendar-recent-list{
  display:flex;
  flex-direction:column;
  gap:10px;
}

body.is-admin .admin-calendar-recent-list > div{
  padding-bottom:10px;
  border-bottom:1px solid #e5eaf1;
}

body.is-admin .admin-calendar-recent-list > div:last-child{
  padding-bottom:0;
  border-bottom:0;
}

body.is-admin .admin-calendar-recent-list strong,
body.is-admin .admin-calendar-recent-list span{
  display:block;
}

body.is-admin .admin-calendar-recent-list strong{
  color:#17202a;
  font-weight:850;
}

body.is-admin .admin-calendar-recent-list span{
  margin-top:3px;
  color:#667085;
  font-size:.82rem;
  font-weight:650;
}

body.is-admin .admin-calendar-governance{
  margin-bottom:0;
}

@media (max-width: 1180px){
  body.is-admin .admin-ops-metrics,
  body.is-admin .admin-command-grid,
  body.is-admin .admin-contract-summary,
  body.is-admin .admin-calendar-summary{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  body.is-admin .admin-ops-filter,
  body.is-admin .admin-calendar-filter,
  body.is-admin .admin-editor-grid,
  body.is-admin .admin-editor-grid--four,
  body.is-admin .admin-module-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body.is-admin .admin-calendar-layout{
    grid-template-columns:1fr;
  }
}

@media (max-width: 768px){
  body.is-admin .admin-ops-header,
  body.is-admin .admin-editor-title,
  body.is-admin .admin-section-head{
    align-items:stretch;
    flex-direction:column;
  }

  body.is-admin .admin-ops-metrics,
  body.is-admin .admin-command-grid,
  body.is-admin .admin-contract-summary,
  body.is-admin .admin-calendar-summary,
  body.is-admin .admin-calendar-filter,
  body.is-admin .admin-ops-filter,
  body.is-admin .admin-editor-grid,
  body.is-admin .admin-editor-grid--four,
  body.is-admin .admin-module-grid,
  body.is-admin .admin-workbench,
  body.is-admin .admin-workbench--split,
  body.is-admin .admin-action-list{
    grid-template-columns:1fr;
  }

  body.is-admin .admin-page-actions,
  body.is-admin .admin-filter-actions,
  body.is-admin .admin-form-actions,
  body.is-admin .admin-quick-actions{
    align-items:stretch;
    flex-direction:column;
  }

  body.is-admin .admin-ops-page,
  body.is-admin .admin-calendar-page{
    padding-right:12px;
  }

  body.is-admin .detail-shell,
  body.is-admin .page-shell,
  body.is-admin .access-shell{
    padding-right:12px;
  }

  body.is-admin .admin-global-nav{
    padding-right:12px;
  }

  body.is-admin .admin-management-table{
    min-width:860px;
  }
}

body.is-admin .admin-plan-price span,
body.is-admin .admin-service-price span{
  color:#64748b;
  font-size:.84rem;
  font-weight:800;
}

body.is-admin .admin-plan-metrics{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  margin-bottom:14px;
}

body.is-admin .admin-plan-metrics div{
  background:#f8fafc;
  border:1px solid #e2e8f0;
  border-radius:8px;
  padding:10px;
}

body.is-admin .admin-plan-metrics small{
  display:block;
  color:#64748b;
  font-weight:800;
  font-size:.72rem;
  text-transform:uppercase;
}

body.is-admin .admin-plan-metrics strong{
  color:#0b2330;
  font-size:1.1rem;
  font-weight:900;
}

body.is-admin .admin-plan-storage,
body.is-admin .admin-plan-modules,
body.is-admin .admin-plan-actions,
body.is-admin .admin-service-actions{
  position:relative;
  z-index:1;
}

body.is-admin .admin-plan-storage{
  display:flex;
  align-items:center;
  gap:8px;
  color:#475569;
  font-weight:800;
  margin-bottom:12px;
}

body.is-admin .admin-plan-modules{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-bottom:18px;
}

body.is-admin .admin-plan-modules span{
  border:1px solid rgba(46,91,104,.18);
  background:rgba(46,91,104,.07);
  color:#2e5b68;
  border-radius:999px;
  padding:5px 9px;
  font-size:.74rem;
  font-weight:800;
}

body.is-admin .admin-plan-actions,
body.is-admin .admin-service-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:auto;
}

body.is-admin .admin-service-top{
  display:flex;
  gap:14px;
  align-items:flex-start;
  margin-bottom:14px;
}

body.is-admin .admin-service-icon{
  width:48px;
  height:48px;
  border-radius:8px;
  background:rgba(46,91,104,.09);
  color:#256d7b;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  font-size:1.2rem;
}

body.is-admin .admin-service-list{
  position:relative;
  z-index:1;
  padding-left:18px;
  color:#334155;
  font-size:.9rem;
  line-height:1.5;
  margin-bottom:18px;
}

@media (max-width: 768px){
  body.is-admin .table-responsive,
  body.is-admin form:not(.d-inline):not(.m-0){
    border-radius: 8px;
    padding: 12px;
  }

  body.is-admin .container,
  body.is-admin .container-fluid{
    padding-left: 12px;
    padding-right: 12px;
  }

  body.is-admin .admin-plan-grid,
  body.is-admin .admin-service-grid{
    grid-template-columns:1fr;
  }

  body.is-admin .admin-page-head{
    padding:16px;
  }

  body.is-admin .admin-page-actions,
  body.is-admin .admin-step-nav{
    flex-direction:column;
    align-items:stretch;
  }
}

@media (min-width: 769px) and (max-width: 1199px){
  body.is-admin .admin-plan-grid,
  body.is-admin .admin-service-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
