
/* ==========================================================================
   OSPro - folha de estilo unica
   Gerada pela fusao de style.css + mc-force-ui.css. A ordem de carga
   original foi preservada, entao o resultado visual e o mesmo: o que
   vinha do mc-force-ui.css continua vindo depois e continua vencendo.
   Nao recrie um segundo arquivo de correcao - edite a regra aqui.
   ========================================================================== */
:root {
  --bg:#07101c;
  --bg2:#0b1524;
  --panel:#101d30;
  --panel2:#16243a;
  --line:#243b5b;
  --text:#f6f9ff;
  --muted:#8fa5c7;
  --blue:#3388ff;
  --blue2:#1b64d8;
  --yellow:#ffd52a;
  --green:#21d783;
  --purple:#9566ff;
  --red:#ff5263;
  --shadow:0 20px 50px rgba(0,0,0,.28);
  --radius:16px;
}
* {
  box-sizing:border-box;
}
html {
  background:var(--bg);
  color-scheme:dark;
}
body {
  margin:0;
  font-family:'Plus Jakarta Sans',ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  background:radial-gradient(circle at 85% 5%,rgba(51,136,255,.10),transparent 25%),linear-gradient(145deg,#06101b,#091321 45%,#07101c);
  color:var(--text);
  min-height:100vh;
  font-size:14px;
}
button,
input,
select,
textarea {
  font:inherit;
}
button {
  cursor:pointer;
}
.hidden {
  display:none!important;
}
.login-view,
.install-body {
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
}
.login-card,
.install-card {
  width:min(440px,95vw);
  background:linear-gradient(180deg,rgba(20,36,58,.98),rgba(9,18,31,.98));
  border:1px solid #28466d;
  border-radius:22px;
  padding:28px;
  box-shadow:var(--shadow);
}
.login-brand,
.install-brand,
.brand {
  display:flex;
  gap:12px;
  align-items:center;
}
.login-brand>span,
.install-brand>span,
.brand>span {
  font-size:28px;
}
.login-brand b,
.install-brand b,
.brand b {
  font-size:19px;
}
.login-brand small,
.install-brand small,
.brand small {
  display:block;
  color:var(--muted);
  margin-top:2px;
}
.login-card h1,
.install-card h1 {
  margin:25px 0 6px;
}
.login-card p,
.install-card p {
  color:var(--muted);
}
.login-card form,
.install-form {
  display:grid;
  gap:13px;
  margin-top:22px;
}
label {
  display:flex;
  flex-direction:column;
  gap:7px;
}
label>span {
  font-size:11px;
  color:#a8b9d2;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}
input,
select,
textarea {
  width:100%;
  background:#0d1929!important;
  color:#f7fbff!important;
  border:1px solid #29405f;
  border-radius:10px;
  padding:11px 12px;
  outline:none;
  min-height:42px;
}
input:focus,
select:focus,
textarea:focus {
  border-color:#438ffb;
  box-shadow:0 0 0 3px rgba(51,136,255,.12);
}
select option {
  background:#101b2a!important;
  color:#fff!important;
}
textarea {
  min-height:74px;
  resize:vertical;
}
.btn {
  height:40px;
  border:1px solid #2c4364;
  background:#14233a;
  color:#edf5ff;
  border-radius:10px;
  padding:0 14px;
  font-weight:800;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  white-space:nowrap;
}
.btn:hover {
  filter:brightness(1.1);
  transform:translateY(-1px);
}
.btn.primary {
  background:linear-gradient(180deg,#ffe051,#ffc91e);
  border-color:#ffe06b;
  color:#10151d;
}
.widebtn {
  width:100%;
}
.error-box,
.success-box,
.security-note {
  padding:12px;
  border-radius:10px;
  margin:12px 0;
}
.error-box {
  background:#35141b;
  border:1px solid #7b2a38;
  color:#ffc6cd;
}
.success-box {
  background:#0d3527;
  border:1px solid #1d7350;
}
.security-note {
  background:#101e33;
  border:1px solid #294261;
  color:#9fb3d3;
  font-size:12px;
}
.hint,
.muted {
  color:var(--muted);
}
.app {
  display:flex;
  min-height:100vh;
}
.sidebar {
  position:fixed;
  z-index:10;
  left:0;
  top:0;
  bottom:0;
  width:220px;
  padding:17px 12px;
  background:rgba(10,19,32,.96);
  border-right:1px solid #233854;
  backdrop-filter:blur(18px);
}
.brand {
  padding:4px 8px 24px;
}
.sidebar nav {
  display:flex;
  flex-direction:column;
  gap:4px;
}
.sidebar nav button {
  border:0;
  background:transparent;
  color:#a2b4ce;
  border-radius:10px;
  text-align:left;
  padding:11px 12px;
  display:flex;
  align-items:center;
  gap:11px;
  font-weight:700;
  position:relative;
}
.sidebar nav button:hover,
.sidebar nav button.active {
  background:linear-gradient(90deg,rgba(51,136,255,.18),rgba(51,136,255,.03));
  color:#fff;
  box-shadow:inset 3px 0 var(--yellow);
}
.nav-badge {
  margin-left:auto;
  background:var(--red);
  color:white;
  border-radius:999px;
  font-size:10px;
  padding:2px 6px;
}
.session-box {
  position:absolute;
  left:12px;
  right:12px;
  bottom:15px;
  background:#0d1929;
  border:1px solid #253a59;
  padding:10px;
  border-radius:12px;
}
.session-box span {
  display:block;
  font-weight:800;
}
.session-box small {
  color:var(--muted);
}
.session-box button {
  float:right;
  margin-top:-25px;
  background:none;
  border:0;
  color:#98b8e7;
}
.main {
  margin-left:220px;
  width:calc(100% - 220px);
  padding:0 24px 90px;
}
.topbar {
  display:flex;
  justify-content:space-between;
  align-items:center;
}
.topbar h1 {
  margin:0;
  font-size:23px;
}
.topbar p {
  margin:4px 0 0;
  color:var(--muted);
  font-size:12px;
}
.top-actions {
  display:flex;
  gap:8px;
}
.page {
  display:none;
}
.page.active {
  display:block;
}
.panel {
  background:linear-gradient(180deg,rgba(16,29,48,.94),rgba(10,19,32,.94));
  border:1px solid #243b5c;
  border-radius:var(--radius);
  padding:18px;
}
.panel-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:13px;
}
.panel-head h2 {
  margin:0;
  font-size:17px;
}
.toolbar {
  display:grid;
  grid-template-columns:1fr auto auto;
  gap:10px;
  align-items:center;
}
.search {
  height:42px;
  border:1px solid #29415f;
  background:#0d1929;
  border-radius:10px;
  display:flex;
  align-items:center;
  padding:0 11px;
  color:#8ba3c6;
}
.inline-search {
  max-width:480px;
  margin:8px 0;
}
.muted-line {
  color:var(--muted);
  font-size:12px;
  margin:10px 4px 14px;
}
.kanban {
  display:grid;
  grid-template-columns:repeat(5,minmax(235px,1fr));
  gap:12px;
  overflow-x:auto;
  padding-bottom:12px;
}
.column {
  min-width:235px;
}
.column-head {
  padding:11px 12px;
  border:1px solid #273b5b;
  border-top:3px solid var(--blue);
  background:#101d2f;
  border-radius:12px 12px 0 0;
  display:flex;
  justify-content:space-between;
  font-size:12px;
  font-weight:900;
}
.column-head b {
  background:#182943;
  padding:3px 8px;
  border-radius:999px;
  color:#a9bbd4;
}
.cards {
  min-height:450px;
  padding-top:10px;
}
.os-card {
  border:1px solid #29405f;
  border-top:3px solid var(--green);
  border-radius:12px;
  background:linear-gradient(180deg,#142238,#101b2d);
  padding:13px;
  margin-bottom:10px;
}
.os-card:hover {
  transform:translateY(-2px);
  border-color:#396293;
}
.os-card .id {
  color:#8da3c2;
  font-size:11px;
}
.os-card h3 {
  font-size:14px;
  margin:10px 0 4px;
}
.os-card .device {
  color:#4394ff;
  font-size:12px;
  font-weight:800;
}
.os-card .problem {
  color:#9aacC4;
  font-size:12px;
  margin:6px 0;
}
.moneybox {
  margin-top:10px;
  background:#18283e;
  border-radius:8px;
  padding:8px;
}
.moneybox b {
  display:block;
}
.moneybox span {
  color:var(--green);
  font-size:12px;
}
.card-footer {
  display:flex;
  justify-content:space-between;
  color:#8fa3c2;
  font-size:10px;
  margin-top:9px;
}
.stats {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin-bottom:14px;
}
.stat {
  border-radius:14px;
  padding:16px;
}
.stat span {
  font-size:11px;
  text-transform:uppercase;
}
.stat b {
  display:block;
  font-size:24px;
  margin-top:6px;
}
.list-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:12px;
  border-bottom:1px solid #233954;
}
.list-row:last-child {
  border-bottom:0;
}
.list-row small {
  display:block;
  color:var(--muted);
  margin-top:3px;
}
.table-wrap {
  overflow:auto;
}
table {
  width:100%;
  border-collapse:collapse;
}
th,
td {
  text-align:left;
  padding:12px;
  border-bottom:1px solid #263d5d;
  white-space:nowrap;
}
th {
  font-size:10px;
  color:#8fa7c8;
  text-transform:uppercase;
}
tr:hover td {
  background:rgba(51,136,255,.035);
}
.form-grid {
  display:grid;
  gap:12px;
  margin-bottom:14px;
}
.form-grid.four {
  grid-template-columns:repeat(4,minmax(160px,1fr));
}
.form-grid.two {
  grid-template-columns:repeat(2,minmax(180px,1fr));
}
.form-grid.one {
  grid-template-columns:1fr;
}
.wide {
  grid-column:1/-1;
}
.modal {
  display:none;
  position:fixed;
  z-index:50;
  inset:0;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(7px);
  padding:18px;
  overflow:auto;
}
.modal.show {
  display:flex;
  align-items:flex-start;
  justify-content:center;
}
.modal-card {
  width:min(620px,96vw);
  margin:auto;
  background:linear-gradient(180deg,#101d30,#091421);
  border:1px solid #315077;
  border-radius:18px;
  padding:20px;
  box-shadow:0 25px 70px rgba(0,0,0,.45);
}
.modal-card.xl {
  width:min(1220px,97vw);
}
.modal-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  margin-bottom:18px;
}
.modal-head h2 {
  margin:0;
}
.modal-head p {
  margin:5px 0 0;
  color:var(--muted);
}
.icon-btn {
  width:38px;
  height:38px;
  border-radius:10px;
  border:1px solid #2b4364;
  background:#14243a;
  color:white;
}
.modal-actions {
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:17px;
  flex-wrap:wrap;
}
.photo-section {
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  background:#0d1929;
  border:1px solid #28415f;
  border-radius:12px;
  padding:14px;
  margin-top:10px;
}
.photo-section h3 {
  margin:0 0 3px;
}
.photo-section p {
  margin:0;
  color:var(--muted);
  font-size:12px;
}
.camera-btn {
  margin-left:auto;
  background:#173055;
  border:1px solid #3566a1;
  border-radius:10px;
  padding:10px 14px;
  font-weight:800;
  cursor:pointer;
}
.photo-preview {
  display:flex;
  gap:8px;
  width:100%;
  flex-wrap:wrap;
}
.photo-thumb {
  width:82px;
  height:82px;
  object-fit:cover;
  border-radius:9px;
  border:1px solid #365373;
}
.alert-item {
  border:1px solid #2c4464;
  background:#101d30;
  border-radius:12px;
  padding:13px;
  margin:9px 0;
}
.alert-item.warning {
  border-left:4px solid var(--yellow);
}
.alert-item.danger {
  border-left:4px solid var(--red);
}
.alert-item b {
  display:block;
}
.alert-item span {
  color:var(--muted);
  font-size:12px;
}
.context-menu {
  display:none;
  position:fixed;
  z-index:80;
  min-width:210px;
  background:#101b2c;
  border:1px solid #315071;
  border-radius:12px;
  padding:6px;
  box-shadow:0 18px 50px rgba(0,0,0,.45);
}
.context-menu.show {
  display:block;
}
.context-menu button {
  display:block;
  width:100%;
  text-align:left;
  border:0;
  background:transparent;
  color:#eef5ff;
  padding:10px;
  border-radius:8px;
}
.context-menu button:hover {
  background:#193150;
}
.toast {
  display:none;
  position:fixed;
  z-index:100;
  right:20px;
  bottom:20px;
  background:#152844;
  border:1px solid #376297;
  color:white;
  padding:12px 16px;
  border-radius:12px;
  box-shadow:var(--shadow);
}
.toast.show {
  display:block;
}
.mobile-nav {
  display:none;
}
.install-form h3 {
  margin:16px 0 0;
  color:#bdd0ea;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.06em;
}

@media(max-width:1050px) {
  .stats {
    grid-template-columns:repeat(2,1fr);
  }
  .form-grid.four {
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:768px) {
  body {
    padding-bottom:70px;
  }
  .sidebar {
    display:none;
  }
  .main {
    margin-left:0;
    width:100%;
    padding:0 12px 80px;
  }
  .topbar {
    padding:13px 3px 10px;
  }
  .topbar h1 {
    font-size:20px;
  }
  .topbar p {
    display:none;
  }
  .top-actions .btn {
    width:42px;
    padding:0;
  }
  .top-actions .btn:first-child {
    width:auto;
    padding:0 10px;
  }
  .toolbar {
    grid-template-columns:1fr auto;
  }
  .toolbar .search {
    grid-column:1/-1;
  }
  .toolbar .btn {
    height:44px;
  }
  .toolbar #newOrder {
    background:linear-gradient(180deg,#ffe051,#ffc91e);
  }
  .kanban {
    display:block;
    overflow:visible;
  }
  .column {
    min-width:0;
    margin-bottom:15px;
  }
  .column .cards {
    min-height:0;
  }
  .column:not(:has(.os-card)) {
    display:none;
  }
  .os-card {
    padding:15px;
  }
  .stats {
    grid-template-columns:repeat(2,1fr);
    gap:8px;
  }
  .stat {
    padding:13px;
  }
  .stat b {
    font-size:20px;
  }
  .form-grid.four,
  .form-grid.two {
    grid-template-columns:1fr;
  }
  .modal {
    padding:0;
  }
  .modal-card,
  .modal-card.xl {
    width:100%;
    min-height:100vh;
    border-radius:0;
    border-left:0;
    border-right:0;
    padding:16px;
  }
  .modal-actions {
    position:sticky;
    bottom:0;
    background:linear-gradient(180deg,rgba(9,20,33,.5),#091421 30%);
    padding:12px 0 4px;
  }
  .modal-actions .btn {
    flex:1;
    min-width:120px;
  }
  .mobile-nav {
    display:grid;
    grid-template-columns:1fr 1fr 64px 1fr 1fr;
    position:fixed;
    z-index:20;
    left:0;
    right:0;
    bottom:0;
    background:rgba(9,18,31,.96);
    border-top:1px solid #29415f;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom));
    backdrop-filter:blur(18px);
  }
  .mobile-nav button {
    background:none;
    border:0;
    color:#8fa5c5;
    font-size:18px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:2px;
  }
  .mobile-nav span {
    font-size:9px;
  }
  .mobile-nav button.active {
    color:white;
  }
  .mobile-new {
    width:54px;
    height:54px;
    border-radius:17px!important;
    background:linear-gradient(180deg,#ffe051,#ffc91e)!important;
    color:#111!important;
    font-size:28px!important;
    margin:-18px auto 0;
    box-shadow:0 10px 28px rgba(255,205,27,.25);
  }
  .panel {
    padding:13px;
  }
  .panel-head {
    align-items:center;
  }
  .panel-head .btn {
    height:38px;
  }
  .table-wrap {
    margin:0 -13px;
  }
  .table-wrap table {
    min-width:700px;
  }
  .camera-btn {
    margin-left:0;
    width:100%;
    text-align:center;
  }
  .photo-section {
    align-items:flex-start;
  }
}
/* ===== OSPro Cloud 3.1 ===== */
.dashboard-grid {
  display:grid;
  grid-template-columns:1.4fr .8fr;
  gap:14px;
}
.recent-row {
  width:100%;
  border:0;
  background:transparent;
  color:inherit;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  text-align:left;
  padding:12px;
  border-bottom:1px solid #233954;
  border-radius:8px;
}
.recent-row:hover {
  background:rgba(51,136,255,.06);
}
.recent-row small {
  display:block;
  color:var(--muted);
  margin-top:3px;
}
.card-topline {
  display:flex;
  justify-content:space-between;
}
.paid-dot {
  color:var(--green);
  font-size:10px;
  font-weight:800;
}
.warranty-mini {
  display:block;
  margin-top:8px;
  color:#9eb9dd;
  font-size:10px;
}
.history-card {
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  border:1px solid #263d5d;
  background:linear-gradient(180deg,#111f32,#0d1828);
  border-radius:12px;
  padding:14px;
  margin:9px 0;
  cursor:pointer;
}
.history-card:hover {
  border-color:#3c6799;
  transform:translateY(-1px);
}
.history-main b,
.history-main span,
.history-main small,
.history-side b,
.history-side span,
.history-side small {
  display:block;
}
.history-main span {
  color:#4597ff;
  font-weight:700;
  margin-top:4px;
}
.history-main small,
.history-side span,
.history-side small {
  color:var(--muted);
  margin-top:4px;
}
.history-side {
  text-align:right;
}
.cash-summary {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin-bottom:14px;
}
.cash-summary div {
  background:#0d1929;
  border:1px solid #29405f;
  border-radius:12px;
  padding:14px;
}
.cash-summary span {
  display:block;
  color:var(--muted);
  font-size:11px;
}
.cash-summary b {
  display:block;
  margin-top:4px;
  font-size:19px;
}
.settings-actions {
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
}
.order-tabs {
  display:flex;
  gap:6px;
  border-bottom:1px solid #263d5d;
  margin:-4px 0 16px;
  overflow:auto;
}
.order-tab {
  border:0;
  background:transparent;
  color:#8fa5c6;
  padding:11px 13px;
  border-bottom:2px solid transparent;
  white-space:nowrap;
}
.order-tab.active {
  color:white;
  border-bottom-color:var(--yellow);
}
.order-tab-panel {
  display:none;
}
.order-tab-panel.active {
  display:block;
}
.check-layout {
  display:grid;
  grid-template-columns:1.4fr .8fr;
  gap:20px;
}
.checklist {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px 20px;
  background:#0d1929;
  border:1px solid #28415f;
  border-radius:12px;
  padding:10px;
}
.check-item {
  display:grid;
  grid-template-columns:1fr 52px 52px;
  align-items:center;
  min-height:34px;
  gap:5px;
}
.check-item span {
  font-size:12px;
}
.check-item button,
.chips button {
  background:#142239;
  color:#9db1cf;
  border:1px solid #243a58;
  border-radius:8px;
  padding:7px 8px;
}
.check-item button.on,
.chips button.on {
  background:#244f86;
  color:white;
  border-color:#4389df;
}
.pattern-grid {
  display:grid;
  grid-template-columns:repeat(3,54px);
  gap:9px;
  margin:10px 0;
}
.pattern-grid button {
  height:54px;
  background:#101d30;
  border:1px solid #2b466b;
  border-radius:10px;
  position:relative;
}
.pattern-grid button:after {
  content:"";
  width:12px;
  height:12px;
  border:2px solid #9db3d3;
  border-radius:50%;
  position:absolute;
  inset:0;
  margin:auto;
}
.pattern-grid button.selected {
  background:#204b80;
}
.pattern-grid button.selected:before {
  content:attr(data-order);
  position:absolute;
  right:5px;
  top:3px;
  color:#fff;
  font-size:10px;
  font-weight:900;
}
.chips {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:8px;
}
.warranty-box {
  border:1px solid #3d6c61;
  background:#0f2c26;
  color:#b7ead9;
  border-radius:10px;
  padding:10px 12px;
  margin:8px 0;
}
.empty-state {
  border:1px dashed #355171;
  border-radius:12px;
  padding:18px;
  color:var(--muted);
  text-align:center;
}
.parts-add-row {
  display:grid;
  grid-template-columns:1fr 100px 150px auto;
  gap:10px;
  align-items:end;
  margin-bottom:12px;
}
.profit-box {
  margin-top:12px;
  padding:12px;
  border-radius:10px;
  background:#0d1929;
  border:1px solid #28415f;
  color:#a9bbd3;
}
.profit-box strong {
  color:var(--green);
}
.mini {
  border:1px solid #304969;
  background:#16273f;
  color:white;
  border-radius:7px;
  padding:6px 8px;
  font-size:11px;
}
.mini.danger {
  border-color:#693842;
  color:#ff9ba5;
  background:#2a151b;
}
.photo-card {
  width:110px;
  background:#101d2f;
  border:1px solid #2f4a6b;
  border-radius:10px;
  overflow:hidden;
  position:relative;
}
.photo-card img {
  display:block;
  width:110px;
  height:92px;
  object-fit:cover;
}
.photo-card span {
  display:block;
  padding:5px 7px;
  color:#a8b9d1;
  font-size:10px;
  text-transform:capitalize;
}
.photo-card.pending {
  border-style:dashed;
}
.photo-card button {
  position:absolute;
  right:4px;
  top:4px;
  width:24px;
  height:24px;
  border:0;
  border-radius:50%;
  background:#291319;
  color:white;
}
.low-stock td {
  background:rgba(255,213,42,.04);
}
.low-stock td:nth-child(3) {
  color:#ffd52a;
  font-weight:900;
}
.mini-alert {
  padding:10px 0;
  border-bottom:1px solid #233954;
}
.mini-alert:last-child {
  border:0;
}
.mini-alert b,
.mini-alert span {
  display:block;
}
.mini-alert span {
  color:var(--muted);
  font-size:11px;
  margin-top:3px;
}
.alert-item[onclick] {
  cursor:pointer;
}
.finance-priv.hidden {
  display:none!important;
}

@media(max-width:1000px) {
  .dashboard-grid {
    grid-template-columns:1fr;
  }
  .check-layout {
    grid-template-columns:1fr;
  }
  .checklist {
    grid-template-columns:1fr;
  }
  .parts-add-row {
    grid-template-columns:1fr 90px 130px;
  }
  .parts-add-row .btn {
    grid-column:1/-1;
  }
}

@media(max-width:768px) {
  .history-card {
    align-items:flex-start;
  }
  .history-side {
    min-width:95px;
  }
  .cash-summary {
    grid-template-columns:1fr;
  }
  .order-tabs {
    position:sticky;
    top:0;
    z-index:4;
    background:#0b1726;
    padding-top:4px;
  }
  .checklist {
    padding:8px;
  }
  .check-item {
    grid-template-columns:1fr 48px 48px;
  }
  .parts-add-row {
    grid-template-columns:1fr 1fr;
  }
  .parts-add-row label:first-child {
    grid-column:1/-1;
  }
  .parts-add-row .btn {
    grid-column:1/-1;
  }
  .photo-card,
  .photo-card img {
    width:96px;
  }
  .photo-card img {
    height:82px;
  }
}
/* ===== 3.2 Premium: financeiro, WhatsApp, push e backup ===== */
.finance-kpis {
  display:grid;
  grid-template-columns:repeat(6,minmax(135px,1fr));
  gap:10px;
  margin:0 0 14px;
}
.finance-kpi {
  display:flex;
  align-items:center;
  gap:11px;
  background:linear-gradient(160deg,#15263d,#0d1929);
  border:1px solid #2b4669;
  border-radius:14px;
  padding:13px;
}
.finance-kpi i {
  font-style:normal;
  font-size:23px;
}
.finance-kpi span {
  display:block;
  color:#91a7c7;
  font-size:10px;
  text-transform:uppercase;
}
.finance-kpi b {
  display:block;
  margin-top:4px;
  font-size:17px;
}
.cash-chart {
  height:220px;
  display:flex;
  align-items:stretch;
  gap:7px;
  padding:12px 4px 0;
}
.chart-day {
  flex:1;
  display:flex;
  flex-direction:column;
  min-width:22px;
}
.chart-bars {
  height:180px;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:3px;
  border-bottom:1px solid #2a4161;
}
.chart-bars i {
  display:block;
  width:38%;
  min-height:3px;
  border-radius:5px 5px 0 0;
}
.chart-bars .income {
  background:linear-gradient(#37e49a,#18ad68);
}
.chart-bars .expense {
  background:linear-gradient(#ff7683,#e54455);
}
.chart-day small {
  text-align:center;
  color:#8198bb;
  font-size:9px;
  margin-top:5px;
}
.pay-row {
  display:grid;
  grid-template-columns:110px 1fr 95px;
  gap:10px;
  align-items:center;
  margin:12px 0;
}
.pay-row>div {
  height:9px;
  background:#122039;
  border-radius:99px;
  overflow:hidden;
}
.pay-row i {
  display:block;
  height:100%;
  background:linear-gradient(90deg,#3388ff,#79adff);
  border-radius:99px;
}
.pay-row b {
  text-align:right;
}
.cash-summary.premium {
  grid-template-columns:repeat(4,1fr);
}
.finance-note {
  color:#8fa5c7;
  font-size:11px;
  margin:10px 0 5px;
}
.settings-stack {
  display:grid;
  gap:14px;
}
.status-pill {
  padding:6px 10px;
  border-radius:999px;
  border:1px solid #385274;
  color:#9eb3d3;
  font-size:11px;
}
.status-pill.good {
  border-color:#1f7b57;
  color:#6af0ad;
  background:#0b2b21;
}
.status-pill.bad {
  border-color:#833341;
  color:#ff9baa;
  background:#32151b;
}
.help-text {
  font-size:11px;
  color:#899fbe;
  margin:10px 0 0;
}
.whatsapp-templates textarea {
  min-height:105px;
}
.cron-box {
  margin:14px 0;
  padding:13px;
  border:1px solid #2b4669;
  border-radius:12px;
  background:#0c1828;
}
.cron-box b {
  display:block;
  margin-bottom:7px;
}
.cron-box code {
  display:block;
  white-space:normal;
  word-break:break-all;
  color:#8fd0ff;
  background:#07121f;
  padding:9px;
  border-radius:8px;
  margin-bottom:8px;
}
.backup-list {
  margin-top:12px;
}
.backup-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  padding:10px;
  border-bottom:1px solid #263d5d;
}
.backup-row small {
  display:block;
  color:#879dbd;
  margin-top:3px;
}
.field-action {
  display:flex;
  align-items:flex-end;
}
.wa-quick-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
  margin-bottom:14px;
}
.wa-quick {
  border:1px solid #304d72;
  background:#12223a;
  color:#dbe9ff;
  border-radius:10px;
  padding:10px;
  font-weight:800;
}
.wa-quick.active {
  background:#214b82;
  border-color:#438ffb;
}
.wa-message {
  min-height:170px;
}
.alert-item {
  cursor:pointer;
}

@media(max-width:1200px) {
  .finance-kpis {
    grid-template-columns:repeat(3,1fr);
  }
}

@media(max-width:768px) {
  .finance-kpis {
    grid-template-columns:repeat(2,1fr);
  }
  .dashboard-grid {
    grid-template-columns:1fr;
  }
  .cash-chart {
    height:180px;
    overflow-x:auto;
  }
  .chart-bars {
    height:140px;
  }
  .chart-day {
    min-width:34px;
  }
  .cash-summary.premium {
    grid-template-columns:repeat(2,1fr);
  }
  .wa-quick-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .backup-row {
    align-items:flex-start;
  }
  .pay-row {
    grid-template-columns:90px 1fr 82px;
  }
  .settings-actions {
    display:grid;
    grid-template-columns:1fr;
  }
  .settings-actions .btn {
    width:100%;
  }
}
/* OSPro 3.2.1 - Mobile navigation improvements */
.mobile-menu-btn {
  display:none;
  position:fixed;
  top:12px;
  left:12px;
  z-index:9999;
  width:44px;
  height:44px;
  border-radius:12px;
  border:1px solid var(--line);
  background:var(--panel);
  color:var(--text);
  font-size:22px;
}

@media(max-width:768px) {
  .mobile-menu-btn {
    display:flex;
  }
  .sidebar {
    left:-320px;
    top:0;
    height:100vh;
    z-index:9998;
  }
  .sidebar.open {
    left:0;
  }
  .main {
    padding-top:70px!important;
  }
  .card,
  .panel {
    border-radius:14px;
  }
  .btn,
  button {
    min-height:42px;
  }
}
/* ===== OSPro Cloud 4.0 Web Professional ===== */
:root {
  --mc-gold:#ffd52a;
  --mc-blue:#3388ff;
  --mc-panel-soft:rgba(16,29,48,.92);
}
body {
  letter-spacing:.01em;
}
.brand b,
.login-brand b {
  letter-spacing:.02em;
}
.brand small,
.login-brand small {
  color:#bfd1ec;
}
.topbar {
  position:sticky;
  top:0;
  z-index:6;
  background:linear-gradient(180deg,rgba(7,16,28,.96),rgba(7,16,28,.72));
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(41,70,108,.32);
  margin:-26px -26px 22px;
  padding:22px 26px 14px;
}
.topbar h1 {
  letter-spacing:-.03em;
}
.topbar p {
  margin-top:4px;
}
.panel,
.stat,
.os-card,
.login-card {
  box-shadow:0 18px 50px rgba(0,0,0,.22);
}
.stat {
  background:linear-gradient(180deg,#172942,#101d30);
  border:1px solid #2e4b70;
}
.stat b {
  color:#fff;
}
.stat span {
  color:#aecaef;
}
.btn {
  transition:.16s ease;
}
.btn:active {
  transform:translateY(0);
}
.btn.primary {
  box-shadow:0 10px 28px rgba(255,213,42,.20);
}
.desktop-only {
  display:inline;
}
.mobile-backdrop {
  display:none;
}
/* Mobile real: menu lateral funcional e não preso em display:none */

@media(max-width:768px) {
  body.menu-open {
    overflow:hidden;
  }
  .desktop-only {
    display:none!important;
  }
  .mobile-menu-btn {
    align-items:center;
    justify-content:center;
    position:fixed;
    top:12px;
    left:12px;
    z-index:10001;
    width:46px;
    height:46px;
    border-radius:14px;
    border:1px solid #36567e;
    background:#101d30;
    color:#fff;
    font-size:22px;
    box-shadow:0 14px 34px rgba(0,0,0,.35);
  }
  .mobile-backdrop {
    display:block;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.48);
    z-index:9997;
    opacity:0;
    pointer-events:none;
    transition:.22s ease;
    backdrop-filter:blur(2px);
  }
  .mobile-backdrop.show {
    opacity:1;
    pointer-events:auto;
  }
  .sidebar {
    transform:translateX(-110%);
    transition:transform .24s ease;
    overflow-y:auto;
    padding-top:72px;
    background:rgba(10,19,32,.98);
    box-shadow:20px 0 60px rgba(0,0,0,.42);
  }
  .topbar {
    margin:-72px -12px 16px;
    padding:72px 12px 12px 66px;
    border-radius:0;
  }
  .topbar h1 {
    font-size:21px;
  }
  .topbar p {
    display:block;
    font-size:12px;
    max-width:260px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .top-actions {
    gap:7px;
  }
  .top-actions .btn {
    height:40px;
    min-height:40px;
    width:42px;
    padding:0;
  }
  .top-actions .btn span {
    display:none;
  }
  .toolbar {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .toolbar .search {
    grid-column:1/-1;
  }
  .toolbar .btn {
    width:100%;
    justify-content:center;
  }
  .panel-head {
    gap:10px;
    align-items:flex-start;
  }
  .panel-head h2 {
    font-size:18px;
  }
  .modal-card {
    padding-bottom:calc(18px + env(safe-area-inset-bottom));
  }
  .context-menu {
    max-width:calc(100vw - 24px);
  }
}
/* Ajuste para celular pequeno */

@media(max-width:420px) {
  .stats {
    grid-template-columns:1fr!important;
  }
  .finance-kpis {
    grid-template-columns:1fr!important;
  }
  .mobile-nav span {
    font-size:8px;
  }
  .mobile-new {
    width:52px;
    height:52px;
  }
}
/* ===== OSPro Cloud 4.0.1 Mobile Refinado =====
   Correção visual específica para Mesa de Reparo no celular:
   - topo compacto
   - remove botões grandes do header mobile
   - busca e ações com melhor proporção
   - cards de OS mais limpos
   - evita estouro horizontal
*/
html,
body {
  max-width:100%;
  overflow-x:hidden;
}

@media(max-width:768px) {
  :root {
    --radius:14px;
  }
  body {
    font-size:13px;
    padding-bottom:calc(76px + env(safe-area-inset-bottom));
  }
  .mobile-menu-btn {
    border-color:#36567e!important;
  }
  .topbar>div:first-child {
    min-width:0;
    flex:1;
  }
  .topbar h1 {
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    letter-spacing:-.04em!important;
  }
  #installPwaBtn,
  #pushQuickEnable {
    display:none!important;
  }
  #quickAlerts {
    width:40px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0!important;
    border-radius:13px!important;
    background:#12223a!important;
    border-color:#36567e!important;
    font-size:18px!important;
  }
  #page-orders {
    padding-top:2px;
  }
  .toolbar .search {
    background:#0b1727!important;
    border-color:#2e4b70!important;
  }
  .toolbar .search span {
    font-size:16px;
    color:#94aac9;
  }
  .toolbar .search input {
    font-size:14px!important;
    min-height:44px!important;
    line-height:44px!important;
  }
  .toolbar .search input::placeholder {
    color:#7389a8;
  }
  #toggleArchived {
    background:#11223a!important;
    border-color:#35547b!important;
    color:#dbe8fb!important;
  }
  #newOrder {
    font-weight:900!important;
    box-shadow:0 12px 24px rgba(255,213,42,.14)!important;
  }
  .muted-line {
    font-size:12px!important;
    color:#94a9c8!important;
  }
  .kanban {
    overflow:visible!important;
    padding-bottom:6px!important;
  }
  .column {
    min-width:0!important;
    margin-bottom:13px!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  .column-head {
    border:1px solid #284260!important;
    border-top:3px solid var(--green)!important;
    background:linear-gradient(180deg,#101d30,#0d1929)!important;
    letter-spacing:.04em!important;
  }
  .column-head b {
    min-width:28px;
    text-align:center;
    background:#1a2b46!important;
    color:#cfe0f7!important;
    padding:4px 8px!important;
  }
  .cards {
    padding-top:8px!important;
    min-height:0!important;
  }
  .os-card {
    background:linear-gradient(180deg,#132238,#0f1b2c)!important;
    border:1px solid #33547c!important;
    border-top:0!important;
  }
  .card-topline {
    margin-bottom:6px!important;
  }
  .os-card .id {
    font-size:12px!important;
    color:#9fb4d3!important;
  }
  .os-card h3 {
    margin:8px 0 4px!important;
    line-height:1.2!important;
    color:#f6f9ff!important;
  }
  .os-card .device {
    color:#4aa0ff!important;
  }
  .os-card .problem {
    margin:6px 0 8px!important;
    color:#9fb1ca!important;
    line-height:1.35!important;
  }
  .moneybox {
    margin-top:9px!important;
    padding:10px 12px!important;
    border-radius:13px!important;
    background:#17283f!important;
  }
  .moneybox b {
    letter-spacing:.01em!important;
  }
  .moneybox span {
    font-size:13px!important;
    color:#35e79b!important;
  }
  .card-footer {
    font-size:12px!important;
    margin-top:10px!important;
    color:#9eb1cf!important;
    align-items:center!important;
  }
  .warranty-mini {
    font-size:12px!important;
    margin-top:8px!important;
    color:#a9bcda!important;
  }
}

@media(max-width:390px) {
  .topbar h1 {
    font-size:18px!important;
  }
  .toolbar .btn {
    font-size:13px!important;
  }
  .os-card h3 {
    font-size:15px!important;
  }
}
/* ===== OSPro Cloud 4.0.2 OS Professional ===== */
.os-pro-header {
  display:grid;
  grid-template-columns:1.05fr 1fr 1fr .75fr auto;
  gap:10px;
  align-items:stretch;
  margin:0 0 14px;
  padding:12px;
  border:1px solid #29466c;
  border-radius:16px;
  background:linear-gradient(160deg,#14263f,#0d1929);
  box-shadow:0 16px 40px rgba(0,0,0,.2);
}
.os-pro-id,
.os-pro-info {
  border:1px solid #263f61;
  background:#0b1726;
  border-radius:12px;
  padding:10px 12px;
  min-width:0;
}
.os-pro-id span,
.os-pro-info span {
  display:block;
  color:#8ea5c6;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.os-pro-id b,
.os-pro-info b {
  display:block;
  margin-top:4px;
  color:#fff;
  font-size:14px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.os-pro-id b {
  color:#21d783;
}
.os-pro-actions {
  display:flex;
  align-items:center;
}
.os-pro-actions .mini {
  height:100%;
  min-height:44px;
  border-radius:12px;
  background:#11243c;
  border-color:#355a86;
  color:#dcecff;
  font-weight:900;
}
.modal-actions {
  position:sticky;
  bottom:-1px;
  background:linear-gradient(180deg,rgba(13,25,41,.82),#0d1929 42%);
  border-top:1px solid #263f61;
  padding-top:12px;
  z-index:5;
}
.order-tab {
  font-weight:900;
}
.order-tab.active {
  background:#ffd52a!important;
  color:#101010!important;
  border-color:#ffd52a!important;
}
.os-card {
  transition:.16s ease;
}
.os-card:active {
  transform:scale(.99);
}

@media(max-width:920px) {
  .os-pro-header {
    grid-template-columns:1fr 1fr;
  }
  .os-pro-actions {
    grid-column:1/-1;
  }
  .os-pro-actions .mini {
    width:100%;
    height:42px;
  }
}

@media(max-width:620px) {
  .modal-card.xl {
    width:100vw!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
    margin:0!important;
  }
  .modal-head {
    position:sticky;
    top:0;
    z-index:7;
    background:#0d1929;
    border-bottom:1px solid #263f61;
    margin:-18px -18px 12px;
    padding:16px 18px 12px;
  }
  .modal-head h2 {
    font-size:20px;
  }
  .modal-head p {
    font-size:12px;
  }
  .os-pro-header {
    grid-template-columns:1fr;
    gap:8px;
    padding:10px;
  }
  .os-pro-id,
  .os-pro-info {
    padding:9px 10px;
  }
  .order-tabs {
    display:flex;
    overflow-x:auto;
    gap:8px;
    padding:8px 0 10px;
  }
  .order-tab {
    flex:0 0 auto;
    min-width:104px;
  }
  .form-grid.four,
  .form-grid.three,
  .form-grid.two {
    grid-template-columns:1fr!important;
  }
  .modal-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    padding:12px 0 calc(12px + env(safe-area-inset-bottom));
  }
  .modal-actions .btn {
    width:100%;
    min-height:43px;
    font-size:12px;
  }
  .modal-actions .btn.primary {
    grid-column:1/-1;
  }
  .photo-section {
    gap:12px;
  }
  .check-layout {
    gap:12px;
  }
}
/* OSPro 4.0.5.2 - correção emergencial: restaura renderização da Mesa de Reparo */
/* ===== OSPro Cloud 4.0.6: botão seguro "Mover para" ===== */
.quick-card-actions {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:7px;
  margin-top:10px;
}
.quick-card-actions button {
  border:1px solid #36557a;
  background:#13243a;
  color:#eef5ff;
  border-radius:9px;
  padding:8px;
  font-weight:900;
  font-size:11px;
}
.quick-card-actions button:first-child {
  background:linear-gradient(180deg,#1b385b,#13243a);
  border-color:#4773a7;
  color:#dbeaff;
}
.move-menu {
  min-width:235px;
}
.context-menu .move-title {
  padding:9px 10px 7px;
  color:#9fb3d2;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  border-bottom:1px solid #263d5d;
  margin-bottom:4px;
}
.context-menu button.active,
.context-menu button:disabled {
  background:#14365b!important;
  color:#ffd52a;
  cursor:default;
  opacity:1;
}

@media(max-width:768px) {
  .quick-card-actions {
    grid-template-columns:1fr 1fr;
  }
  .quick-card-actions button {
    min-height:39px;
    font-size:12px;
  }
  .context-menu.move-menu {
    position:fixed!important;
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:86px!important;
    width:auto!important;
    z-index:10050;
    border-radius:18px;
    padding:10px;
  }
  .context-menu.move-menu button {
    min-height:44px;
    font-size:14px;
  }
}
/* ===== OSPro Cloud 4.0.7: Web App instalável ===== */

@media(display-mode:standalone) {
  .topbar {
    padding-top:calc(16px + env(safe-area-inset-top));
  }
  body {
    background:#07101c;
  }
}
#installPwaBtn {
  font-weight:900;
}
/* ===== OSPro Cloud 4.0.8: Produção Estável ===== */
.stable-panel {
  border-color:#315a82;
}
.stable-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.stable-actions .btn {
  text-decoration:none;
}
.diagnostic-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
}
.diag-card {
  background:#101d30;
  border:1px solid #29415f;
  border-radius:15px;
  padding:14px;
}
.diag-card span {
  display:block;
  color:#8fa5c7;
  font-size:11px;
  text-transform:uppercase;
}
.diag-card b {
  display:block;
  margin-top:6px;
  font-size:19px;
}

@media(max-width:900px) {
  .diagnostic-grid {
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:520px) {
  .diagnostic-grid {
    grid-template-columns:1fr;
  }
  .stable-actions {
    display:grid;
  }
  .stable-actions .btn {
    width:100%;
  }
}
/* ===== OSPro Cloud 4.0.9: Mesa de Reparo Professional ===== */
.professional-toolbar {
  align-items:center;
}
.order-filter-bar,
.order-summary-strip {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin:10px 0 10px;
}
.order-filter-bar button,
.order-summary-strip button {
  border:1px solid #2d496c;
  background:#101d30;
  color:#b9cce6;
  border-radius:999px;
  padding:8px 11px;
  font-weight:900;
  font-size:12px;
  cursor:pointer;
}
.order-filter-bar button.active,
.order-summary-strip button.active {
  background:linear-gradient(180deg,#ffe15b,#ffd52a);
  color:#111;
  border-color:#ffd52a;
}
.order-summary-strip {
  display:grid;
  grid-template-columns:repeat(7,minmax(90px,1fr));
  gap:9px;
  margin-bottom:13px;
}
.order-summary-strip button {
  border-radius:13px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  text-align:left;
  min-height:44px;
}
.order-summary-strip button span {
  font-size:11px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.order-summary-strip button b {
  font-size:17px;
}
.professional-kanban {
  grid-template-columns:repeat(5,minmax(250px,1fr));
}
.professional-column .cards {
  min-height:360px;
}
.empty-column {
  border:1px dashed #2b476b;
  border-radius:12px;
  color:#7387a5;
  text-align:center;
  padding:18px 10px;
  font-size:12px;
  background:rgba(255,255,255,.015);
}
.professional-card {
  position:relative;
  overflow:hidden;
}
.professional-card:before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:#3c6999;
}
.professional-card.late:before {
  background:#ff6172;
}
.professional-card.waiting:before {
  background:#ffd52a;
}
.professional-card.ready:before {
  background:#21d783;
}
.professional-card.paid:before {
  background:#4ba3ff;
}
.professional-card.warranty:before {
  background:#9b7cff;
}
.status-chip {
  border:1px solid #385d87;
  background:#0f2036;
  color:#dbeaff;
  border-radius:999px;
  padding:4px 8px;
  font-size:10px;
  font-weight:900;
  max-width:135px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.card-meta {
  display:grid;
  grid-template-columns:1fr;
  gap:3px;
  margin-top:7px;
  color:#8fa6c5;
  font-size:11px;
}
.flags {
  display:flex;
  gap:5px;
  flex-wrap:wrap;
  margin:8px 0 0;
}
.flag,
.mini-pill {
  display:inline-flex;
  align-items:center;
  gap:4px;
  border-radius:999px;
  padding:4px 7px;
  font-size:10px;
  font-weight:900;
  border:1px solid transparent;
}
.flag.late {
  background:rgba(255,97,114,.12);
  border-color:rgba(255,97,114,.35);
  color:#ff9aa4;
}
.flag.waiting {
  background:rgba(255,213,42,.11);
  border-color:rgba(255,213,42,.35);
  color:#ffe582;
}
.flag.unpaid {
  background:rgba(255,153,51,.11);
  border-color:rgba(255,153,51,.35);
  color:#ffbd7a;
}
.flag.warranty,
.mini-pill.warranty {
  background:rgba(155,124,255,.12);
  border-color:rgba(155,124,255,.35);
  color:#cbbdff;
}
.mini-pill.paid {
  background:rgba(33,215,131,.12);
  color:#82efba;
  border-color:rgba(33,215,131,.35);
}
.mini-pill.pending {
  background:rgba(255,213,42,.10);
  color:#ffe582;
  border-color:rgba(255,213,42,.25);
}
.professional-actions {
  grid-template-columns:1fr 1fr 1fr;
}
.professional-actions button {
  min-height:36px;
}
.professional-actions button:nth-child(2) {
  background:linear-gradient(180deg,#1b385b,#13243a);
  border-color:#4773a7;
  color:#dbeaff;
}
.professional-actions button:nth-child(3) {
  background:linear-gradient(180deg,#193b2a,#132b20);
  border-color:#2f7d57;
  color:#cfffdf;
}

@media(max-width:1050px) {
  .order-summary-strip {
    grid-template-columns:repeat(4,1fr);
  }
  .professional-kanban {
    grid-template-columns:repeat(5,minmax(235px,1fr));
  }
}

@media(max-width:768px) {
  .order-filter-bar {
    overflow:auto;
    flex-wrap:nowrap;
    padding-bottom:4px;
  }
  .order-filter-bar button {
    white-space:nowrap;
  }
  .order-summary-strip {
    grid-template-columns:repeat(2,1fr);
  }
  .professional-card {
    padding:13px 13px 12px 16px;
  }
  .professional-card h3 {
    font-size:15px;
  }
  .professional-actions {
    grid-template-columns:1fr 1fr 1fr;
  }
  .professional-actions button {
    font-size:11px;
    padding:8px 4px;
  }
  .status-chip {
    max-width:120px;
  }
}
/* ===== OSPro Cloud 4.1.1: PDF Professional ===== */
.modal-actions .btn[id="printPdf"],
.modal-actions .btn[id="printPdfClient"] {
  border-color:#426b9b;
}

@media(max-width:768px) {
  .modal-actions .btn[id="printPdf"],
  .modal-actions .btn[id="printPdfClient"] {
    min-width:145px;
  }
}
/* ===== OSPro Cloud 4.2.1: Financeiro Avançado ===== */
.finance-head-pro {
  align-items:flex-start;
}
.finance-head-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.finance-filters-pro {
  display:grid;
  grid-template-columns:1.2fr repeat(4,1fr) auto;
  gap:10px;
  margin:12px 0 14px;
}
.finance-filters-pro label span {
  display:block;
  color:#9fb3d2;
  font-size:11px;
  font-weight:900;
  margin-bottom:5px;
  text-transform:uppercase;
}
.finance-filters-pro input,
.finance-filters-pro select {
  width:100%;
  height:42px;
  border-radius:10px;
  border:1px solid #2b466a;
  background:#0d1a2b;
  color:#eef5ff;
  padding:0 10px;
}
.finance-summary-pro {
  grid-template-columns:repeat(6,1fr);
}
.finance-card.income b,
.type-pill.income {
  color:#21d783;
}
.finance-card.expense b,
.type-pill.expense {
  color:#ff6172;
}
.finance-card.warn b {
  color:#ffd52a;
}
.finance-grid-pro {
  display:grid;
  grid-template-columns:1.3fr .85fr;
  gap:12px;
  margin:14px 0;
}
.finance-box-pro {
  background:#101d30;
  border:1px solid #29415f;
  border-radius:15px;
  padding:13px;
  min-height:160px;
}
.finance-box-pro .box-title {
  font-weight:950;
  margin-bottom:10px;
  color:#dceaff;
}
.wide-chart {
  grid-row:span 2;
}
.finance-daily-chart {
  height:235px;
  display:flex;
  align-items:end;
  gap:7px;
  overflow-x:auto;
  padding:8px 2px;
}
.finance-day {
  min-width:34px;
}
.finance-breakdown {
  display:grid;
  gap:8px;
}
.finance-row-bar {
  display:grid;
  grid-template-columns:110px 1fr 82px;
  gap:8px;
  align-items:center;
  font-size:12px;
}
.finance-row-bar span {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.finance-row-bar small {
  color:#8fa5c5;
}
.finance-row-bar div {
  height:9px;
  background:#0b1524;
  border-radius:999px;
  overflow:hidden;
}
.finance-row-bar i {
  display:block;
  height:100%;
  background:#3388ff;
  border-radius:999px;
}
.finance-row-bar.payment i {
  background:#21d783;
}
.finance-receivables {
  display:grid;
  gap:7px;
  max-height:270px;
  overflow:auto;
}
.receivable-row {
  border:1px solid #263f61;
  background:#0d1a2b;
  color:#eef5ff;
  border-radius:12px;
  padding:10px;
  display:flex;
  justify-content:space-between;
  gap:10px;
  text-align:left;
}
.receivable-row small {
  display:block;
  color:#9fb3d2;
  margin-top:3px;
}
.receivable-row strong {
  color:#ffd52a;
}
.type-pill {
  font-weight:900;
}
.linked-os {
  display:inline-flex;
  margin-left:6px;
  color:#9fb3d2;
}
.row-actions {
  white-space:nowrap;
}
.mini-btn {
  border:1px solid #36557a;
  background:#13243a;
  color:#eef5ff;
  border-radius:8px;
  padding:6px 8px;
  font-weight:850;
  margin:2px;
}
.mini-btn.danger {
  color:#ff8c96;
  border-color:#6b2f3c;
  background:#2a1420;
}

@media(max-width:1050px) {
  .finance-filters-pro {
    grid-template-columns:repeat(2,1fr);
  }
  .finance-filters-pro #financeRefresh {
    grid-column:1/-1;
  }
  .finance-summary-pro {
    grid-template-columns:repeat(2,1fr);
  }
  .finance-grid-pro {
    grid-template-columns:1fr;
  }
  .wide-chart {
    grid-row:auto;
  }
}

@media(max-width:620px) {
  .finance-head-actions {
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .finance-filters-pro {
    grid-template-columns:1fr;
  }
  .finance-summary-pro {
    grid-template-columns:1fr;
  }
  .finance-row-bar {
    grid-template-columns:1fr;
  }
  .finance-row-bar b {
    text-align:right;
  }
  .finance-daily-chart {
    height:180px;
  }
  .receivable-row {
    display:block;
  }
  .receivable-row strong {
    display:block;
    margin-top:5px;
  }
  .row-actions {
    white-space:normal;
  }
}
/* ===== OSPro Cloud 4.2.2: Backup e Segurança ===== */
.backup-security-panel {
  border-color:#315f89;
}
.security-summary {
  margin:10px 0 14px;
}
.security-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}
.security-grid>div {
  background:#101d30;
  border:1px solid #29415f;
  border-radius:14px;
  padding:12px;
}
.security-grid span {
  display:block;
  color:#90a8c9;
  font-size:11px;
  text-transform:uppercase;
}
.security-grid b {
  display:block;
  margin-top:5px;
}
.security-grid .ok,
.diag-ok {
  color:#21d783;
}
.security-grid .warn,
.diag-warn {
  color:#ffd52a;
}
.diag-bad {
  color:#ff6172;
}
.security-pill {
  display:inline-flex;
  align-items:center;
  gap:4px;
  border:1px solid #315071;
  border-radius:999px;
  padding:3px 7px;
  margin:2px;
  font-size:11px;
}
.security-pill.ok {
  color:#21d783;
}
.security-pill.warn {
  color:#ffd52a;
}
.backup-row.pro {
  align-items:flex-start;
}
.backup-actions {
  display:flex;
  gap:6px;
  justify-content:flex-end;
}

@media(max-width:900px) {
  .security-grid {
    grid-template-columns:repeat(2,1fr);
  }
  .backup-row.pro {
    display:block;
  }
  .backup-actions {
    justify-content:flex-start;
    margin-top:10px;
  }
}

@media(max-width:520px) {
  .security-grid {
    grid-template-columns:1fr;
  }
  .backup-actions {
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
  }
  .backup-actions .btn {
    width:100%;
    padding-left:8px;
    padding-right:8px;
  }
}
/* ===== OSPro Cloud 4.2.3: Relatórios Gerenciais ===== */
.reports-panel {
  border-color:#315a82;
}
.reports-head {
  align-items:flex-start;
}
.reports-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.reports-filters {
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  gap:10px;
  margin:12px 0 14px;
}
.reports-filters label {
  display:grid;
  gap:5px;
}
.reports-filters span {
  color:#91a7c7;
  font-size:11px;
  text-transform:uppercase;
  font-weight:800;
}
.reports-summary {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin-bottom:14px;
}
.report-card {
  background:linear-gradient(180deg,#13243a,#0f1c2f);
  border:1px solid #29415f;
  border-radius:15px;
  padding:13px;
}
.report-card span {
  display:block;
  color:#95abc9;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
}
.report-card b {
  display:block;
  font-size:19px;
  margin-top:6px;
}
.report-card.good b {
  color:#21d783;
}
.report-card.bad b {
  color:#ff6172;
}
.report-card.warn b {
  color:#ffd52a;
}
.reports-grid {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:13px;
}
.reports-box {
  background:#101d30;
  border:1px solid #29415f;
  border-radius:16px;
  padding:14px;
  min-height:180px;
}
.reports-wide {
  grid-column:1/-1;
}
.reports-daily-chart {
  height:230px;
  display:flex;
  align-items:end;
  gap:8px;
  overflow-x:auto;
  padding:10px 4px 2px;
}
.report-day {
  min-width:34px;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  align-items:center;
  gap:5px;
}
.report-day-bars {
  height:184px;
  width:28px;
  display:flex;
  align-items:end;
  gap:3px;
  justify-content:center;
}
.report-day-bars i {
  display:block;
  width:7px;
  border-radius:8px 8px 0 0;
  background:#21d783;
  min-height:3px;
}
.report-day-bars .expense {
  background:#ff6172;
}
.report-day-bars .orders {
  background:#4394ff;
}
.report-day small {
  color:#8fa3c2;
  font-size:10px;
}
.reports-row-bar {
  display:grid;
  grid-template-columns:130px 1fr 86px;
  gap:9px;
  align-items:center;
  margin:8px 0;
}
.reports-row-bar span {
  font-size:12px;
  color:#dce8f8;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.reports-row-bar small {
  color:#8fa3c2;
}
.reports-row-bar div {
  height:10px;
  background:#152844;
  border-radius:999px;
  overflow:hidden;
}
.reports-row-bar i {
  display:block;
  height:100%;
  background:#4394ff;
  border-radius:999px;
}
.reports-row-bar b {
  text-align:right;
  font-size:12px;
}
.mini-report-table table {
  min-width:100%;
  font-size:12px;
}
.mini-report-table th,
.mini-report-table td {
  padding:8px;
}

@media(max-width:1080px) {
  .reports-summary {
    grid-template-columns:repeat(2,1fr);
  }
  .reports-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:700px) {
  .reports-filters {
    grid-template-columns:1fr;
  }
  .reports-actions {
    display:grid;
    width:100%;
  }
  .reports-actions .btn {
    width:100%;
  }
  .reports-summary {
    grid-template-columns:1fr 1fr;
  }
  .reports-row-bar {
    grid-template-columns:105px 1fr 72px;
  }
  .reports-daily-chart {
    height:210px;
  }
}

@media(max-width:420px) {
  .reports-summary {
    grid-template-columns:1fr;
  }
  .reports-box {
    padding:11px;
  }
  .reports-row-bar {
    grid-template-columns:1fr;
  }
  .reports-row-bar b {
    text-align:left;
  }
}
/* ===== OSPro Cloud 4.3.0: Estoque Avançado ===== */
.stock-pro-panel {
  border-color:#315a82;
}
.stock-head-pro {
  align-items:flex-start;
}
.stock-head-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.stock-summary {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin:14px 0;
}
.stock-card {
  background:linear-gradient(180deg,#13243a,#0f1c2f);
  border:1px solid #29415f;
  border-radius:15px;
  padding:13px;
}
.stock-card span {
  display:block;
  color:#95abc9;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
}
.stock-card b {
  display:block;
  font-size:18px;
  margin-top:6px;
}
.stock-card.good b {
  color:#21d783;
}
.stock-card.warn b {
  color:#ffd52a;
}
.stock-card.bad b {
  color:#ff6172;
}
.stock-filters {
  display:grid;
  grid-template-columns:1.8fr .8fr .9fr .9fr;
  gap:10px;
  margin:12px 0;
}
.stock-filters label {
  display:grid;
  gap:5px;
}
.stock-filters span {
  color:#91a7c7;
  font-size:11px;
  text-transform:uppercase;
  font-weight:800;
}
.stock-table-wrap table {
  min-width:1180px;
}
.stock-row td small {
  display:block;
  color:#8197b8;
  font-size:10px;
  margin-top:3px;
  max-width:220px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.stock-row.low {
  background:rgba(255,213,42,.045);
}
.stock-row.out {
  background:rgba(255,97,114,.055);
}
.stock-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  border-radius:999px;
  padding:4px 8px;
  background:#173456;
  color:#dce9ff;
  font-weight:900;
}
.stock-badge.low {
  background:rgba(255,213,42,.15);
  color:#ffd52a;
}
.stock-badge.out {
  background:rgba(255,97,114,.15);
  color:#ff8b96;
}
.stock-badge.ok {
  background:rgba(33,215,131,.13);
  color:#21d783;
}
.positive {
  color:#21d783;
}
.negative {
  color:#ff6172;
}
.stock-grid-bottom {
  display:grid;
  grid-template-columns:1.35fr .65fr;
  gap:14px;
  margin-top:14px;
}
.stock-alert {
  border:1px solid #2c4464;
  background:#101d30;
  border-radius:12px;
  padding:12px;
  margin:8px 0;
}
.stock-alert b {
  display:block;
}
.stock-alert span {
  display:block;
  color:#9fb3d2;
  font-size:12px;
  margin-top:3px;
}
.stock-alert.low {
  border-left:4px solid #ffd52a;
}
.stock-alert.out {
  border-left:4px solid #ff6172;
}
.stock-type {
  display:inline-flex;
  border-radius:999px;
  padding:4px 8px;
  background:#173456;
  color:#dce9ff;
  font-size:11px;
  font-weight:900;
}
.stock-type.in {
  background:rgba(33,215,131,.12);
  color:#21d783;
}
.stock-type.out {
  background:rgba(255,97,114,.12);
  color:#ff8b96;
}
.stock-type.return {
  background:rgba(255,213,42,.12);
  color:#ffd52a;
}

@media(max-width:1150px) {
  .stock-summary {
    grid-template-columns:repeat(3,1fr);
  }
  .stock-grid-bottom {
    grid-template-columns:1fr;
  }
  .stock-filters {
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:700px) {
  .stock-head-actions {
    display:grid;
    width:100%;
  }
  .stock-head-actions .btn {
    width:100%;
  }
  .stock-summary {
    grid-template-columns:1fr 1fr;
  }
  .stock-filters {
    grid-template-columns:1fr;
  }
  .stock-table-wrap {
    margin:0 -13px;
  }
}

@media(max-width:430px) {
  .stock-summary {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.3.1: Garantia e Retorno ===== */
.warranty-panel {
  border-color:#315a82;
}
.warranty-head {
  align-items:flex-start;
}
.warranty-summary {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin:14px 0;
}
.warranty-card {
  border:1px solid #29415f;
  background:linear-gradient(180deg,#13243a,#0f1c2f);
  border-radius:15px;
  padding:13px;
  text-align:left;
  color:#eef5ff;
  cursor:pointer;
}
.warranty-card span {
  display:block;
  color:#95abc9;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
}
.warranty-card b {
  display:block;
  font-size:20px;
  margin-top:6px;
}
.warranty-card.active b,
.warranty-pill.active {
  color:#21d783;
}
.warranty-card.expiring b,
.warranty-pill.expiring {
  color:#ffd52a;
}
.warranty-card.expired b,
.warranty-pill.expired {
  color:#ff6172;
}
.warranty-card.return b {
  color:#4394ff;
}
.warranty-card.none b,
.warranty-pill.none {
  color:#9fb3d2;
}
.warranty-filters {
  display:grid;
  grid-template-columns:1.6fr .7fr;
  gap:10px;
  margin:12px 0;
}
.warranty-filters label {
  display:grid;
  gap:5px;
}
.warranty-filters span {
  color:#91a7c7;
  font-size:11px;
  text-transform:uppercase;
  font-weight:800;
}
.warranty-table-wrap table {
  min-width:980px;
}
.warranty-row td small {
  display:block;
  color:#8197b8;
  font-size:10px;
  margin-top:3px;
}
.warranty-row.expiring {
  background:rgba(255,213,42,.045);
}
.warranty-row.expired {
  background:rgba(255,97,114,.055);
}
.warranty-pill {
  display:inline-flex;
  border-radius:999px;
  background:#173456;
  padding:5px 9px;
  font-weight:900;
  font-size:11px;
}
.warranty-return-row {
  width:100%;
  border:1px solid #29415f;
  background:#101d30;
  color:#eef5ff;
  border-radius:12px;
  padding:12px;
  margin:8px 0;
  display:flex;
  justify-content:space-between;
  gap:12px;
  text-align:left;
}
.warranty-return-row small {
  display:block;
  color:#91a7c7;
  margin-top:3px;
}
.warranty-return-info {
  border:1px solid #29415f;
  background:#101d30;
  border-radius:13px;
  padding:12px;
}
.warranty-return-info b,
.warranty-return-info span,
.warranty-return-info small {
  display:block;
}
.warranty-return-info span {
  color:#9fb3d2;
  margin-top:3px;
}
.warranty-return-info small {
  margin-top:6px;
  font-weight:900;
}
.warranty-return-info .active {
  color:#21d783;
}
.warranty-return-info .expiring {
  color:#ffd52a;
}
.warranty-return-info .expired {
  color:#ff6172;
}

@media(max-width:1000px) {
  .warranty-summary {
    grid-template-columns:repeat(2,1fr);
  }
  .warranty-filters {
    grid-template-columns:1fr;
  }
}

@media(max-width:520px) {
  .warranty-summary {
    grid-template-columns:1fr;
  }
  .warranty-return-row {
    display:block;
  }
  .warranty-return-row strong {
    display:block;
    margin-top:8px;
  }
}
/* ===== OSPro Cloud 4.3.2: Compras e Fornecedores ===== */
.purchases-panel {
  border-color:#315a82;
}
.purchases-head {
  align-items:flex-start;
}
.purchases-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.purchases-summary {
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:10px;
  margin:14px 0;
}
.purchase-card {
  background:linear-gradient(180deg,#13243a,#0f1c2f);
  border:1px solid #29415f;
  border-radius:15px;
  padding:13px;
}
.purchase-card span {
  display:block;
  color:#95abc9;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
}
.purchase-card b {
  display:block;
  font-size:18px;
  margin-top:6px;
}
.purchase-card.good b {
  color:#21d783;
}
.purchase-card.warn b {
  color:#ffd52a;
}
.purchases-filters {
  display:grid;
  grid-template-columns:.9fr .75fr .75fr 1fr .8fr 1.4fr;
  gap:10px;
  margin:12px 0;
}
.purchases-filters label {
  display:grid;
  gap:5px;
}
.purchases-filters span {
  color:#91a7c7;
  font-size:11px;
  text-transform:uppercase;
  font-weight:800;
}
.purchases-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.purchases-box {
  background:#101d30;
  border:1px solid #29415f;
  border-radius:16px;
  padding:14px;
}
.purchases-wide {
  grid-column:1/-1;
}
.purchases-box table {
  min-width:100%;
}
.purchases-box td small {
  display:block;
  color:#8197b8;
  font-size:10px;
  margin-top:3px;
}
.purchase-status {
  display:inline-flex;
  border-radius:999px;
  padding:4px 8px;
  font-size:11px;
  font-weight:900;
}
.purchase-status.paid {
  background:rgba(33,215,131,.13);
  color:#21d783;
}
.purchase-status.pending {
  background:rgba(255,213,42,.13);
  color:#ffd52a;
}
.purchase-bar {
  display:grid;
  grid-template-columns:130px 1fr 86px;
  gap:9px;
  align-items:center;
  margin:8px 0;
}
.purchase-bar span {
  font-size:12px;
  color:#dce8f8;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.purchase-bar small {
  color:#8fa3c2;
}
.purchase-bar div {
  height:10px;
  background:#152844;
  border-radius:999px;
  overflow:hidden;
}
.purchase-bar i {
  display:block;
  height:100%;
  background:#4394ff;
  border-radius:999px;
}
.purchase-bar b {
  text-align:right;
  font-size:12px;
}

@media(max-width:1180px) {
  .purchases-summary {
    grid-template-columns:repeat(3,1fr);
  }
  .purchases-filters {
    grid-template-columns:1fr 1fr 1fr;
  }
  .purchases-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:720px) {
  .purchases-actions {
    display:grid;
    width:100%;
  }
  .purchases-actions .btn {
    width:100%;
  }
  .purchases-summary {
    grid-template-columns:1fr 1fr;
  }
  .purchases-filters {
    grid-template-columns:1fr;
  }
  .purchase-bar {
    grid-template-columns:1fr;
  }
  .purchase-bar b {
    text-align:left;
  }
}

@media(max-width:430px) {
  .purchases-summary {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.4.0: Painel Administrativo Premium ===== */
.admin-premium-hero {
  background:linear-gradient(135deg,#0d1d34,#122c4e 55%,#163d66);
  border:1px solid #315a82;
  border-radius:22px;
  padding:22px;
  margin-bottom:14px;
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:flex-start;
  box-shadow:0 18px 50px rgba(0,0,0,.18);
}
.admin-kicker {
  display:inline-flex;
  background:rgba(255,213,42,.12);
  color:#ffd52a;
  border:1px solid rgba(255,213,42,.25);
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
}
.admin-premium-hero h2 {
  margin:10px 0 4px;
  font-size:28px;
}
.admin-premium-hero p {
  margin:0;
  color:#b5c6df;
  max-width:760px;
}
.admin-hero-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.admin-summary {
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin-bottom:14px;
}
.admin-card {
  background:linear-gradient(180deg,#13243a,#0f1c2f);
  border:1px solid #29415f;
  border-radius:15px;
  padding:13px;
}
.admin-card span {
  display:block;
  color:#95abc9;
  font-size:11px;
  text-transform:uppercase;
  font-weight:900;
}
.admin-card b {
  display:block;
  font-size:18px;
  margin-top:6px;
}
.admin-card.good b {
  color:#21d783;
}
.admin-card.warn b {
  color:#ffd52a;
}
.admin-card.bad b {
  color:#ff6172;
}
.admin-premium-grid {
  display:grid;
  grid-template-columns:1.25fr .75fr;
  gap:14px;
}
.admin-panel-wide {
  grid-column:1/-1;
}
.admin-checks {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
}
.admin-check {
  border:1px solid #29415f;
  background:#101d30;
  border-radius:14px;
  padding:12px;
}
.admin-check b {
  display:block;
  font-size:13px;
}
.admin-check span {
  display:block;
  color:#9fb3d2;
  font-size:12px;
  margin-top:4px;
}
.admin-check.ok {
  border-color:rgba(33,215,131,.35);
}
.admin-check.warn {
  border-color:rgba(255,213,42,.38);
}
.admin-check.bad {
  border-color:rgba(255,97,114,.38);
}
.admin-storage-line {
  display:flex;
  justify-content:space-between;
  gap:10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:9px 0;
}
.admin-storage-line span {
  color:#9fb3d2;
}
.admin-storage-line b {
  text-align:right;
}
.admin-progress {
  height:10px;
  background:#152844;
  border-radius:999px;
  overflow:hidden;
  margin:8px 0 12px;
}
.admin-progress i {
  display:block;
  height:100%;
  background:#4394ff;
  border-radius:999px;
}
.admin-user {
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:9px 0;
}
.admin-user small {
  display:block;
  color:#8fa3c2;
  margin-top:2px;
}
.admin-user em {
  font-style:normal;
  color:#93a9c8;
  font-size:12px;
  text-align:right;
}
.admin-user.off {
  opacity:.55;
}
.admin-table-row {
  display:grid;
  grid-template-columns:120px 1fr 46px;
  gap:8px;
  align-items:center;
  margin:8px 0;
}
.admin-table-row span {
  font-size:12px;
  color:#dbe8fb;
}
.admin-table-row div {
  height:9px;
  background:#152844;
  border-radius:999px;
  overflow:hidden;
}
.admin-table-row i {
  display:block;
  height:100%;
  background:#4394ff;
  border-radius:999px;
}
.admin-table-row b {
  text-align:right;
  font-size:12px;
}
.admin-audit-row {
  display:grid;
  grid-template-columns:1fr auto;
  gap:12px;
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:10px 0;
}
.admin-audit-row span {
  color:#dbe8fb;
}
.admin-audit-row small {
  color:#8fa3c2;
  text-align:right;
}
.admin-shortcuts {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.admin-shortcuts .btn {
  width:100%;
  justify-content:center;
}

@media(max-width:1160px) {
  .admin-summary {
    grid-template-columns:repeat(2,1fr);
  }
  .admin-checks {
    grid-template-columns:repeat(2,1fr);
  }
  .admin-premium-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:768px) {
  .admin-premium-hero {
    display:grid;
  }
  .admin-hero-actions {
    display:grid;
    width:100%;
  }
  .admin-hero-actions .btn {
    width:100%;
  }
  .admin-summary {
    grid-template-columns:1fr 1fr;
  }
  .admin-checks {
    grid-template-columns:1fr;
  }
  .admin-audit-row {
    grid-template-columns:1fr;
  }
  .admin-audit-row small {
    text-align:left;
  }
  .admin-shortcuts {
    grid-template-columns:1fr;
  }
}

@media(max-width:430px) {
  .admin-summary {
    grid-template-columns:1fr;
  }
  .admin-premium-hero h2 {
    font-size:23px;
  }
}
/* ===== OSPro Cloud 4.4.1: Acesso Simples ===== */
body:not(.x) .hidden {
  display:none!important;
}
.status-basic-ok select option[hidden] {
  display:none;
}
/* ===== OSPro Cloud 4.4.2 - White Label / Revenda ===== */
.brand-mark {
  width:34px;
  height:34px;
  border-radius:10px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#0d1929;
  border:1px solid #2a4162;
  flex:0 0 auto;
}
.brand-mark img {
  width:100%;
  height:100%;
  object-fit:contain;
  display:block;
  padding:2px;
}
.login-brand .brand-mark {
  width:42px;
  height:42px;
  border-radius:13px;
}
.white-label-panel {
  border-color:color-mix(in srgb,var(--yellow) 40%,#243b5c);
  background:linear-gradient(180deg,rgba(255,213,42,.08),rgba(16,29,48,.94));
}
.brand-preview {
  display:flex;
  gap:12px;
  align-items:center;
  border:1px dashed #3b5c83;
  background:#0d1929;
  border-radius:14px;
  padding:12px;
}
.brand-preview img {
  width:64px;
  height:64px;
  object-fit:contain;
  border-radius:14px;
  background:#07101c;
  border:1px solid #243b5b;
}
.brand-preview b {
  display:block;
  font-size:18px;
}
.brand-preview small {
  display:block;
  color:var(--muted);
  margin-top:3px;
}
.muted-row {
  opacity:.55;
}
.btn.slim {
  height:32px;
  padding:0 10px;
  font-size:12px;
}

@media(max-width:768px) {
  .brand-preview {
    align-items:center;
  }
  .brand-preview img {
    width:56px;
    height:56px;
  }
  .login-brand .brand-mark {
    width:38px;
    height:38px;
  }
}
/* OSPro 4.4.2.2 - orçamento autorizado pelo portal */
.flag.approved {
  background:rgba(33,215,131,.14);
  border-color:rgba(33,215,131,.50);
  color:#8cf4c8;
}
.flag.declined {
  background:rgba(255,97,114,.12);
  border-color:rgba(255,97,114,.50);
  color:#ffc1c8;
}
.portal-decision-box {
  margin-top:10px;
  border-radius:14px;
  padding:12px 14px;
  border:1px solid #2f4d72;
  background:#101d30;
  display:grid;
  gap:4px;
}
.portal-decision-box b {
  font-size:13px;
  color:#f5f8ff;
}
.portal-decision-box span {
  color:#b7cae6;
  font-size:12px;
}
.portal-decision-box small {
  color:#93a7c5;
  font-size:12px;
}
.portal-decision-box.approved {
  border-color:rgba(33,215,131,.55);
  background:rgba(33,215,131,.08);
}
.portal-decision-box.declined {
  border-color:rgba(255,97,114,.55);
  background:rgba(255,97,114,.08);
}
.alert-item.info {
  border-left:4px solid var(--blue);
}
/* OSPro Cloud 4.4.3 - Base de preço de fornecedores */
.price-last {
  color:#ffd52a;
  font-size:14px;
}
.price-range {
  white-space:nowrap;
  color:#b8cced;
}
.price-base-hint {
  border:1px dashed #365a84;
  background:#101d30;
  color:#9fb5d6;
  border-radius:10px;
  padding:10px;
  font-size:12px;
}
.purchases-panel .box-title {
  letter-spacing:.01em;
}
.purchase-card b {
  white-space:nowrap;
}

@media(max-width:768px) {
  .price-range {
    white-space:normal;
  }
  .price-base-hint {
    font-size:11px;
  }
  .purchases-actions {
    flex-wrap:wrap;
  }
  .purchases-actions .btn {
    flex:1;
  }
}
/* OSPro 4.4.3.1 - WhatsApp fornecedor com saudação + peça + valor */
.wa-quote-preview {
  display:block;
  color:#8fa8cc;
  font-size:10px;
  margin-top:5px;
  line-height:1.25;
}
/* ===== OSPro 4.4.3.2: peça rápida dentro de Preços fornecedor ===== */
.purchase-part-field {
  display:grid;
  grid-template-columns:1fr;
  gap:7px;
  align-self:end;
}
.purchase-part-field .btn {
  justify-self:start;
  height:34px;
  font-size:11px;
  border-color:#3a608d;
  background:#132946;
  color:#dcecff;
}
.quick-part-box {
  border:1px dashed #3f6fa7;
  background:rgba(51,136,255,.06);
  border-radius:13px;
  padding:12px;
  margin-top:-4px;
}
.quick-part-title {
  font-weight:900;
  margin-bottom:10px;
  color:#eaf3ff;
}
.quick-part-grid {
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr .8fr auto;
  gap:10px;
  align-items:end;
}
.quick-part-box small {
  display:block;
  color:#9fb6d6;
  margin-top:8px;
}

@media(max-width:900px) {
  .quick-part-grid {
    grid-template-columns:1fr 1fr;
  }
  .quick-part-grid .btn {
    grid-column:1/-1;
    width:100%;
  }
}

@media(max-width:620px) {
  .quick-part-grid {
    grid-template-columns:1fr;
  }
  .purchase-part-field .btn {
    width:100%;
  }
}
/* OSPro Cloud 4.4.3.3 - base manual de preço sem estoque */
.no-stock-warning {
  border:1px dashed #3e6da0;
  background:rgba(51,136,255,.08);
  color:#b9d4f7;
  border-radius:10px;
  padding:11px;
  font-size:12px;
  font-weight:800;
}
.purchase-card.ok b {
  color:#1ee28b;
}
#purchaseItemName {
  font-weight:800;
}
/* ======================================================================
   OSPro Cloud 4.4.6 — Mobile Unificado
   Camada final de responsividade. Mantém o conteúdo do desktop acessível
   no celular e neutraliza regras móveis antigas que se sobrepunham.
   ====================================================================== */

@media(max-width:768px) {
  html,
  body {
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }
  body {
    font-size:14px!important;
    padding:0 0 calc(82px + env(safe-area-inset-bottom))!important;
  }
  body.menu-open {
    overflow:hidden!important;
  }
  .main {
    margin-left:0!important;
    width:100%!important;
    max-width:100vw!important;
  }
  .mobile-menu-btn {
    align-items:center!important;
    justify-content:center!important;
    position:fixed!important;
    top:calc(10px + env(safe-area-inset-top))!important;
    left:12px!important;
    z-index:10001!important;
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
    background:#101d30!important;
    border:1px solid #36567e!important;
    color:#fff!important;
    font-size:21px!important;
    box-shadow:0 10px 26px rgba(0,0,0,.3)!important;
  }
  .mobile-backdrop {
    display:block!important;
    position:fixed!important;
    inset:0!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:.2s ease!important;
  }
  .mobile-backdrop.show {
    opacity:1!important;
    pointer-events:auto!important;
  }
  .sidebar {
    display:block!important;
    position:fixed!important;
    z-index:9998!important;
  }
  .session-box {
    position:static!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin:16px 0 0!important;
    min-height:62px!important;
  }
  .topbar {
    position:sticky!important;
    top:0!important;
    z-index:90!important;
    margin:calc(-64px - env(safe-area-inset-top)) -12px 14px!important;
    padding:calc(10px + env(safe-area-inset-top)) 10px 10px 66px!important;
    align-items:center!important;
    gap:8px!important;
    background:rgba(7,16,28,.97)!important;
    border-bottom:1px solid #29415f!important;
    box-shadow:0 8px 24px rgba(0,0,0,.16)!important;
    backdrop-filter:blur(16px)!important;
  }
  .topbar>div:first-child {
    min-width:0!important;
    flex:1!important;
  }
  .topbar h1 {
    margin:0!important;
    line-height:1.1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .topbar p {
    display:none!important;
  }
  .top-actions {
    display:flex!important;
    gap:6px!important;
    align-items:center!important;
    flex:0 0 auto!important;
    margin-left:auto!important;
  }
  .top-actions .btn {
    width:39px!important;
    height:39px!important;
    min-height:39px!important;
    padding:0!important;
    border-radius:12px!important;
    font-size:17px!important;
  }
  .top-actions .btn span.desktop-only {
    display:none!important;
  }
  #pushQuickEnable {
    display:inline-flex!important;
  }
  #installPwaBtn:not([hidden]) {
    display:inline-flex!important;
  }
  #quickAlerts {
    display:inline-flex!important;
  }
  #quickAlerts span {
    display:none!important;
  }
  .panel {
    padding:13px!important;
    border-radius:15px!important;
    overflow:hidden!important;
  }
  .panel-head {
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:10px!important;
    flex-wrap:wrap!important;
    margin-bottom:12px!important;
  }
  .panel-head>div:first-child {
    min-width:0!important;
    flex:1 1 190px!important;
  }
  .panel-head h2 {
    font-size:17px!important;
    line-height:1.2!important;
  }
  .panel-head p,
  .panel-head .muted {
    font-size:11px!important;
    line-height:1.4!important;
  }
  .professional-toolbar,
  .toolbar {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin-bottom:9px!important;
  }
  .professional-toolbar .search,
  .toolbar .search {
    grid-column:1/-1!important;
    width:100%!important;
    height:46px!important;
    border-radius:14px!important;
    padding:0 12px!important;
  }
  .professional-toolbar .btn,
  .toolbar .btn {
    width:100%!important;
    height:43px!important;
    min-height:43px!important;
    padding:0 9px!important;
    border-radius:13px!important;
    font-size:13px!important;
    justify-content:center!important;
  }
  .order-filter-bar {
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:7px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    padding:2px 1px 9px!important;
    margin:0 -1px!important;
    scrollbar-width:none!important;
  }
  .order-filter-bar::-webkit-scrollbar {
    display:none;
  }
  .order-filter-bar button {
    flex:0 0 auto!important;
    scroll-snap-align:start;
    min-height:38px!important;
    padding:0 12px!important;
    white-space:nowrap!important;
  }
  .order-summary-strip {
    display:flex!important;
    grid-template-columns:none!important;
    gap:8px!important;
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    padding-bottom:8px!important;
    scrollbar-width:none!important;
  }
  .order-summary-strip::-webkit-scrollbar {
    display:none;
  }
  .order-summary-strip>* {
    flex:0 0 150px!important;
    min-width:150px!important;
    scroll-snap-align:start;
  }
  .muted-line {
    margin:7px 3px 9px!important;
  }
  .kanban,
  .professional-kanban {
    display:flex!important;
    grid-template-columns:none!important;
    gap:11px!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x mandatory;
    padding:2px 2px 10px!important;
    margin:0 -2px!important;
    scrollbar-width:thin!important;
  }
  .kanban .column,
  .professional-kanban .column {
    display:block!important;
    flex:0 0 min(88vw,390px)!important;
    width:min(88vw,390px)!important;
    min-width:min(88vw,390px)!important;
    margin:0!important;
    scroll-snap-align:start;
    overflow:visible!important;
  }
  .column:not(:has(.os-card)) {
    display:block!important;
  }
  .column .cards {
    min-height:120px!important;
    padding-top:8px!important;
  }
  .column-head {
    position:sticky!important;
    left:0!important;
    padding:10px 12px!important;
    border-radius:14px 14px 0 0!important;
    font-size:12px!important;
  }
  .os-card {
    padding:13px!important;
    border-radius:15px!important;
    margin-bottom:9px!important;
    box-shadow:0 10px 26px rgba(0,0,0,.16)!important;
  }
  .os-card:hover {
    transform:none!important;
  }
  .os-card h3 {
    font-size:16px!important;
  }
  .os-card .device,
  .os-card .problem {
    font-size:13px!important;
  }
  .moneybox b {
    font-size:17px!important;
  }
  .stats,
  .finance-kpis,
  .cash-summary.premium,
  .finance-summary-pro,
  .reports-summary,
  .stock-summary,
  .warranty-summary,
  .purchases-summary,
  .admin-summary,
  .security-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .dashboard-grid,
  .finance-grid-pro,
  .stock-grid-bottom,
  .purchases-grid,
  .reports-grid,
  .admin-premium-grid {
    grid-template-columns:1fr!important;
  }
  .stat,
  .finance-kpi {
    min-width:0!important;
    padding:12px!important;
  }
  .stat b {
    font-size:20px!important;
  }
  .cash-chart,
  .finance-daily-chart,
  .reports-daily-chart {
    overflow-x:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .finance-filters-pro,
  .reports-filters,
  .stock-filters,
  .warranty-filters,
  .purchases-filters {
    grid-template-columns:1fr!important;
    gap:8px!important;
  }
  .finance-head-actions,
  .stock-head-actions,
  .purchases-actions,
  .reports-actions,
  .admin-hero-actions {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
    gap:8px!important;
  }
  .finance-head-actions .btn,
  .stock-head-actions .btn,
  .purchases-actions .btn,
  .reports-actions .btn,
  .admin-hero-actions .btn {
    width:100%!important;
    min-width:0!important;
  }
  .table-wrap,
  .stock-table-wrap,
  .warranty-table-wrap,
  .mini-report-table {
    width:100%!important;
    max-width:100%!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    -webkit-overflow-scrolling:touch;
    margin:0!important;
    border-radius:12px!important;
    scrollbar-width:thin!important;
  }
  .table-wrap table,
  .stock-table-wrap table,
  .warranty-table-wrap table,
  .mini-report-table table,
  .purchases-box table {
    width:max-content!important;
    min-width:760px!important;
    max-width:none!important;
  }
  th,
  td {
    padding:10px!important;
    font-size:12px!important;
  }
  th {
    font-size:9px!important;
  }
  .row-actions {
    white-space:nowrap!important;
  }
  .history-card,
  .list-row,
  .recent-row,
  .receivable-row,
  .warranty-return-row,
  .backup-row {
    align-items:flex-start!important;
    gap:9px!important;
  }
  .history-card {
    display:grid!important;
    grid-template-columns:1fr auto!important;
    padding:12px!important;
  }
  .history-side {
    text-align:right!important;
  }
  .modal {
    padding:0!important;
    overflow:hidden!important;
    align-items:stretch!important;
  }
  .modal.show {
    align-items:stretch!important;
  }
  .modal-card,
  .modal-card.xl {
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    border-radius:0!important;
    border-left:0!important;
    border-right:0!important;
    padding:14px!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }
  .modal-head {
    position:sticky!important;
    top:-14px!important;
    z-index:8!important;
    margin:-14px -14px 12px!important;
    padding:calc(13px + env(safe-area-inset-top)) 14px 11px!important;
    background:#0d1929!important;
    border-bottom:1px solid #263f61!important;
  }
  .modal-head h2 {
    font-size:19px!important;
    line-height:1.2!important;
  }
  .modal-head p {
    font-size:11px!important;
    line-height:1.35!important;
  }
  .form-grid,
  .form-grid.one,
  .form-grid.two,
  .form-grid.three,
  .form-grid.four {
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .wide {
    grid-column:1!important;
  }
  input,
  select,
  textarea {
    font-size:16px!important;
    min-height:44px!important;
  }
  textarea {
    min-height:82px!important;
  }
  .order-tabs {
    position:sticky!important;
    top:58px!important;
    z-index:7!important;
    display:flex!important;
    gap:6px!important;
    overflow-x:auto!important;
    white-space:nowrap!important;
    padding:7px 0 9px!important;
    background:#0d1929!important;
    scrollbar-width:none!important;
  }
  .order-tabs::-webkit-scrollbar {
    display:none;
  }
  .order-tab {
    flex:0 0 auto!important;
    min-width:100px!important;
    padding:10px 11px!important;
  }
  .modal-actions {
    position:sticky!important;
    bottom:-14px!important;
    z-index:8!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    margin:14px -14px -14px!important;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important;
    background:rgba(9,20,33,.98)!important;
    border-top:1px solid #263f61!important;
    backdrop-filter:blur(14px)!important;
  }
  .modal-actions .btn {
    width:100%!important;
    min-width:0!important;
    min-height:43px!important;
    font-size:12px!important;
  }
  .modal-actions .btn.primary {
    grid-column:1/-1!important;
  }
  .check-layout {
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .checklist {
    grid-template-columns:1fr!important;
  }
  .photo-section {
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .camera-btn {
    width:100%!important;
    margin-left:0!important;
    text-align:center!important;
  }
  .photo-preview {
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    padding-bottom:4px!important;
  }
  .photo-thumb {
    flex:0 0 78px!important;
  }
  .mobile-nav {
    display:grid!important;
    grid-template-columns:1fr 1fr 64px 1fr 1fr!important;
    position:fixed!important;
    z-index:9990!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    min-height:68px!important;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
    background:rgba(7,16,28,.98)!important;
    border-top:1px solid #29415f!important;
    backdrop-filter:blur(18px)!important;
    box-shadow:0 -10px 30px rgba(0,0,0,.18)!important;
  }
  .mobile-nav button {
    min-width:0!important;
    background:none!important;
    border:0!important;
    color:#8fa5c5!important;
    font-size:18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    padding:2px!important;
  }
  .mobile-nav button.active {
    color:#fff!important;
  }
  .mobile-nav span {
    font-size:9px!important;
    font-weight:800!important;
  }
  .mobile-new {
    width:54px!important;
    height:54px!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,#ffe051,#ffc91e)!important;
    color:#111!important;
    font-size:28px!important;
    margin:-18px auto 0!important;
    box-shadow:0 10px 28px rgba(255,205,27,.25)!important;
  }
  .toast {
    left:12px!important;
    right:12px!important;
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    text-align:center!important;
  }
  .context-menu {
    max-width:calc(100vw - 24px)!important;
  }
}

@media(max-width:430px) {
  .stats,
  .finance-kpis,
  .cash-summary.premium,
  .finance-summary-pro,
  .reports-summary,
  .stock-summary,
  .warranty-summary,
  .purchases-summary,
  .admin-summary,
  .security-grid {
    grid-template-columns:1fr!important;
  }
  .finance-head-actions,
  .stock-head-actions,
  .purchases-actions,
  .reports-actions,
  .admin-hero-actions {
    grid-template-columns:1fr!important;
  }
  .kanban .column,
  .professional-kanban .column {
    flex-basis:90vw!important;
    width:90vw!important;
    min-width:90vw!important;
  }
  .topbar h1 {
    font-size:18px!important;
  }
}
/* ======================================================================
   OSPro Cloud 4.4.8.1 — Hotfix Mobile
   - Remove botão flutuante superior de menu no celular.
   - Mantém o menu pelo botão "Mais" inferior.
   - Transforma a base de preço fornecedor em cards no celular,
     deixando Editar e WhatsApp sempre visíveis.
   ====================================================================== */

@media(max-width:768px) {
  .topbar {
    padding-left:12px!important;
    min-height:58px!important;
  }
  .topbar h1 {
    font-size:18px!important;
    max-width:100%!important;
  }
  .sidebar {
    padding-top:calc(18px + env(safe-area-inset-top))!important;
  }
  #page-purchases .purchases-box {
    overflow:hidden!important;
  }
  #page-purchases .purchases-box .box-title {
    font-size:18px!important;
    line-height:1.22!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  #page-purchases .purchases-wide .table-wrap {
    overflow:visible!important;
    margin:0!important;
    border-radius:0!important;
  }
  #purchasesTable,
  #purchasesTable tbody,
  #purchasesTable tr,
  #purchasesTable td,
  #suppliersTable,
  #suppliersTable tbody,
  #suppliersTable tr,
  #suppliersTable td {
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
  #purchasesTable,
  #suppliersTable {
    display:block!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
  }
  #purchasesTable thead,
  #suppliersTable thead {
    display:none!important;
  }
  #purchasesTable tbody,
  #suppliersTable tbody {
    display:grid!important;
    gap:10px!important;
  }
  #purchasesTable tr,
  #suppliersTable tr {
    display:block!important;
    background:linear-gradient(180deg,#13243a,#0d192b)!important;
    border:1px solid #29415f!important;
    border-radius:16px!important;
    padding:10px!important;
    box-shadow:0 10px 24px rgba(0,0,0,.14)!important;
  }
  #purchasesTable td,
  #suppliersTable td {
    display:grid!important;
    grid-template-columns:94px minmax(0,1fr)!important;
    gap:8px!important;
    align-items:start!important;
    border:0!important;
    border-bottom:1px solid rgba(69,101,146,.35)!important;
    padding:8px 2px!important;
    font-size:13px!important;
    white-space:normal!important;
    word-break:break-word;
  }
  #purchasesTable td:last-child,
  #suppliersTable td:last-child {
    border-bottom:0!important;
  }
  #purchasesTable td::before,
  #suppliersTable td::before {
    display:block;
    color:#8fa5c5;
    font-size:10px;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.06em;
    line-height:1.25;
    padding-top:2px;
  }
  #purchasesTable td:nth-child(1)::before {
    content:'Peça';
  }
  #purchasesTable td:nth-child(2)::before {
    content:'Fornecedor';
  }
  #purchasesTable td:nth-child(3)::before {
    content:'Último valor';
  }
  #purchasesTable td:nth-child(4)::before {
    content:'Data';
  }
  #purchasesTable td:nth-child(5)::before {
    content:'Qtd.';
  }
  #purchasesTable td:nth-child(6)::before {
    content:'Mín/Méd/Máx';
  }
  #purchasesTable td:nth-child(7)::before {
    content:'Venda';
  }
  #purchasesTable td:nth-child(8)::before {
    content:'Ações';
  }
  #suppliersTable td:nth-child(1)::before {
    content:'Fornecedor';
  }
  #suppliersTable td:nth-child(2)::before {
    content:'WhatsApp';
  }
  #suppliersTable td:nth-child(3)::before {
    content:'Cidade';
  }
  #suppliersTable td:nth-child(4)::before {
    content:'Ações';
  }
  #purchasesTable td b,
  #suppliersTable td b {
    font-size:14px!important;
    line-height:1.25!important;
    color:#fff!important;
  }
  #purchasesTable td small,
  #suppliersTable td small {
    display:block!important;
    margin-top:3px!important;
    font-size:11px!important;
    line-height:1.28!important;
    color:#8fa5c5!important;
  }
  #purchasesTable .price-last {
    font-size:20px!important;
    color:#ffd52a!important;
    line-height:1.1!important;
  }
  #purchasesTable .price-range {
    white-space:normal!important;
    line-height:1.35!important;
  }
  #purchasesTable td:nth-child(8),
  #suppliersTable td:nth-child(4) {
    display:block!important;
    background:#091625!important;
    border:1px solid rgba(69,101,146,.42)!important;
    border-radius:13px!important;
    margin-top:6px!important;
    padding:10px!important;
  }
  #purchasesTable td:nth-child(8)::before,
  #suppliersTable td:nth-child(4)::before {
    margin-bottom:8px;
  }
  #purchasesTable .row-actions,
  #suppliersTable .row-actions {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    white-space:normal!important;
    width:100%!important;
  }
  #purchasesTable .mini-btn,
  #suppliersTable .mini-btn {
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:44px!important;
    margin:0!important;
    border-radius:12px!important;
    font-size:13px!important;
    font-weight:950!important;
    padding:9px 10px!important;
  }
  #purchasesTable .wa-quote-preview {
    display:block!important;
    margin-top:8px!important;
    font-size:11px!important;
    line-height:1.35!important;
    color:#9fb8dc!important;
  }
}
/* ===== OSPro Cloud 4.4.8.2: Mobile OS Ações Rápidas ===== */
.card-topline {
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
}
.card-top-link {
  margin-left:auto;
  border:1px solid #3b6fa8;
  background:linear-gradient(180deg,#143258,#0f2340);
  color:#eaf4ff;
  border-radius:999px;
  padding:7px 10px;
  font-weight:1000;
  font-size:11px;
  cursor:pointer;
}
.card-top-link:hover {
  filter:brightness(1.08);
}
.professional-actions .link-client-action {
  border-color:#3b6fa8;
  background:linear-gradient(180deg,#143258,#0f2340);
  color:#eaf4ff;
}
.order-final-actions .save-os-mobile-main {
  box-shadow:0 10px 26px rgba(255,213,42,.22);
}
.order-final-actions .warranty-return-mobile {
  opacity:.92;
}

@media(max-width:768px) {
  .professional-actions {
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .professional-actions button {
    min-height:42px!important;
    font-size:12px!important;
  }
  .card-topline .status-chip {
    max-width:none!important;
  }
  .card-top-link {
    width:100%;
    margin-left:0;
    min-height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:12px;
    border-radius:12px;
  }
  #orderModal .modal-card.xl {
    padding-bottom:96px!important;
  }
  #orderModal .modal-actions.order-final-actions {
    position:static!important;
    bottom:auto!important;
    z-index:auto!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
    margin:22px 0 10px!important;
    padding:14px!important;
    background:#0d1929!important;
    border:1px solid #263f61!important;
    border-radius:18px!important;
    backdrop-filter:none!important;
    box-shadow:none!important;
  }
  #orderModal .modal-actions.order-final-actions .btn {
    width:100%!important;
    min-width:0!important;
    min-height:48px!important;
    font-size:13px!important;
    border-radius:14px!important;
  }
  #orderModal .modal-actions.order-final-actions .save-os-mobile-main {
    grid-column:1/-1!important;
    min-height:56px!important;
    font-size:16px!important;
  }
  #orderModal .modal-actions.order-final-actions .warranty-return-mobile {
    grid-column:1/-1!important;
    background:#13243a!important;
  }
  #orderModal .modal-actions.order-final-actions #printPdfClient {
    order:6;
  }
  #orderModal .modal-actions.order-final-actions #printPdf {
    order:5;
  }
  #orderModal .modal-actions.order-final-actions #whatsappOrder {
    order:3;
  }
  #orderModal .modal-actions.order-final-actions #printLabel {
    order:4;
  }
  #orderModal .modal-actions.order-final-actions #copyTrackingLink {
    order:2;
  }
  #orderModal .modal-actions.order-final-actions [data-close="orderModal"] {
    order:1;
  }
}

@media(max-width:380px) {
  .professional-actions {
    grid-template-columns:1fr!important;
  }
}
.top-actions-clean {
  display:none!important;
}
/* ======================================================================
   OSPro Cloud 4.4.8.7 — Mobile limpo + menu Mais organizado
   ====================================================================== */
.nav-section-title {
  margin:12px 0 4px;
  padding:0 8px;
  color:#7f98ba;
  font-size:10px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.09em;
}
.settings-shortcuts-panel {
  border-color:#31557e!important;
  background:radial-gradient(circle at 0 0,rgba(255,213,42,.10),transparent 28%),
    linear-gradient(180deg,rgba(17,32,53,.98),rgba(10,19,32,.98))!important;
}
.settings-shortcut-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.settings-shortcut-card {
  min-height:92px;
  border:1px solid #2e4b70;
  border-radius:16px;
  background:linear-gradient(180deg,#13243a,#0d192b);
  color:#f5f8ff;
  padding:13px;
  text-align:left;
  cursor:pointer;
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}
.settings-shortcut-card b {
  display:block;
  font-size:14px;
  line-height:1.2;
}
.settings-shortcut-card span {
  display:block;
  margin-top:7px;
  color:#9fb4d3;
  font-size:11px;
  line-height:1.35;
}
.settings-shortcut-card:hover {
  border-color:#4d86c7;
  transform:translateY(-1px);
}

@media(max-width:980px) {
  .settings-shortcut-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:768px) {
  .topbar {
    display:none!important;
    visibility:hidden;
    pointer-events:none!important;
  }
  .main {
    padding:calc(10px + env(safe-area-inset-top)) 14px calc(96px + env(safe-area-inset-bottom))!important;
  }
  #page-orders {
    padding-top:0!important;
  }
  .mobile-menu-btn {
    display:none!important;
    visibility:hidden;
    opacity:0!important;
    pointer-events:none!important;
  }
  .mobile-backdrop {
    z-index:9980!important;
    background:rgba(0,0,0,.56)!important;
    backdrop-filter:blur(4px)!important;
  }
  .sidebar {
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    max-height:72vh!important;
    min-height:0!important;
    padding:14px!important;
    border:1px solid #315174!important;
    border-radius:24px!important;
    background:linear-gradient(180deg,rgba(13,27,46,.98),rgba(7,17,31,.98))!important;
    box-shadow:0 -18px 60px rgba(0,0,0,.45)!important;
    overflow-y:auto!important;
    transform:translateY(calc(100% + 120px))!important;
    transition:transform .24s ease!important;
  }
  .sidebar.open {
    transform:translateY(0)!important;
  }
  .sidebar .brand {
    padding:4px 4px 13px!important;
    margin:0 0 8px!important;
    border-bottom:1px solid rgba(67,104,150,.38)!important;
  }
  .sidebar .brand .brand-mark {
    width:42px!important;
    height:42px!important;
  }
  .side-nav,
  .sidebar nav {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .side-nav .nav-section-title,
  .sidebar nav .nav-section-title {
    grid-column:1/-1!important;
    margin:8px 0 0!important;
    padding:0 2px!important;
    color:#8fa5c5!important;
    font-size:10px!important;
    font-weight:1000!important;
    text-transform:uppercase!important;
    letter-spacing:.09em!important;
  }
  .sidebar nav button {
    width:100%!important;
    min-height:48px!important;
    margin:0!important;
    padding:10px!important;
    border:1px solid #2e4b70!important;
    border-radius:15px!important;
    background:#101d30!important;
    color:#eaf2ff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:8px!important;
    font-size:13px!important;
    font-weight:900!important;
    text-align:left!important;
  }
  .sidebar nav button.active {
    background:linear-gradient(180deg,#ffe051,#ffc91e)!important;
    color:#111!important;
    border-color:#ffe051!important;
  }
  .sidebar nav button span {
    white-space:normal!important;
    line-height:1.15!important;
  }
  .sidebar .nav-badge {
    margin-left:auto!important;
    min-width:22px!important;
    height:22px!important;
    border-radius:999px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:11px!important;
  }
  .sidebar .nav-badge.hidden {
    display:none!important;
  }
  .session-box {
    margin-top:12px!important;
    display:grid!important;
    grid-template-columns:1fr auto!important;
    align-items:center!important;
    gap:8px!important;
    border-radius:16px!important;
    background:#091625!important;
  }
  .session-box small {
    grid-column:1/2!important;
  }
  .session-box button {
    float:none;
    margin:0!important;
    grid-row:1/3;
    grid-column:2/3!important;
    padding:8px 10px!important;
    border:1px solid #36567e!important;
    border-radius:12px!important;
    background:#13243a!important;
    color:#eaf2ff!important;
  }
  .settings-stack {
    gap:12px!important;
  }
  .settings-shortcut-grid {
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .settings-shortcut-card {
    min-height:84px!important;
    border-radius:15px!important;
    padding:12px!important;
  }
  .settings-shortcut-card b {
    font-size:13px!important;
  }
  .settings-shortcut-card span {
    font-size:10.5px!important;
  }
}

@media(max-width:390px) {
  .sidebar nav {
    grid-template-columns:1fr!important;
  }
}
/* ===== OSPro Cloud 4.4.9 - Retirada, Caixa e Alertas Inteligentes ===== */
.checkout-summary {
  display:grid;
  gap:4px;
  padding:14px;
  border:1px solid #315174;
  border-radius:16px;
  background:linear-gradient(180deg,#13243a,#0d192b);
}
.checkout-summary b {
  font-size:18px;
}
.checkout-summary span {
  color:#9fb4d3;
  font-size:12px;
}
.checkout-summary strong {
  color:var(--yellow);
  font-size:24px;
}
.checkout-actions {
  display:grid;
  grid-template-columns:1fr 1fr 1.25fr;
  gap:10px;
}
.finish-pickup-action {
  border-color:#2d8f61!important;
  background:linear-gradient(180deg,#123b2a,#0d291e)!important;
  color:#91f7bd!important;
}
.catalog-bridge-box {
  display:grid;
  gap:12px;
  color:#b9c9e1;
}
.catalog-bridge-box p {
  margin:0;
  line-height:1.5;
}
.alert-item.info {
  border-color:#31609a;
  background:rgba(51,136,255,.08);
}
.alert-item.warning {
  border-color:#776024;
  background:rgba(255,213,42,.07);
}
.alert-item.danger {
  border-color:#873244;
  background:rgba(255,80,110,.07);
}

@media(max-width:768px) {
  .checkout-actions {
    grid-template-columns:1fr!important;
  }
  #orderModal .modal-actions.order-final-actions .finish-pickup-action {
    grid-column:1/-1!important;
    order:7;
    min-height:52px!important;
  }
  #orderModal .modal-actions.order-final-actions .save-os-mobile-main {
    order:8;
  }
  #orderModal .modal-actions.order-final-actions .warranty-return-mobile {
    order:9;
  }
  .settings-shortcut-grid {
    grid-template-columns:1fr 1fr!important;
  }
}

@media(max-width:390px) {
  .settings-shortcut-grid {
    grid-template-columns:1fr!important;
  }
}
/* ===== OSPro Cloud 4.4.9.1 - Mover OS corrigido + arrastar ===== */
.os-card[draggable="true"] {
  cursor:grab;
}
.os-card.dragging {
  opacity:.58;
  transform:scale(.985)!important;
  cursor:grabbing!important;
  outline:2px dashed rgba(255,213,42,.75);
}
.professional-column.drag-over {
  border-color:#ffd52a!important;
  box-shadow:0 0 0 2px rgba(255,213,42,.26),0 18px 42px rgba(0,0,0,.24)!important;
  background:linear-gradient(180deg,rgba(255,213,42,.07),rgba(16,29,48,.92))!important;
}
.professional-column.drag-over .column-head {
  background:linear-gradient(180deg,#273348,#152338)!important;
}
.move-title {
  padding:9px 10px 7px;
  color:#9fb4d3;
  font-size:11px;
  font-weight:1000;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.context-menu.move-menu button.active {
  opacity:.55;
  cursor:not-allowed;
}

@media(max-width:768px) {
  .os-card[draggable="true"] {
    cursor:default;
  }
}
/* ===== OSPro Cloud 4.4.9.3 - Botão excluir cliente ===== */
.client-row-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.client-row-actions .mini-btn {
  min-width:74px;
  text-align:center;
  justify-content:center;
}
.client-modal-actions {
  display:grid!important;
  grid-template-columns:1fr 1fr 1.25fr;
  gap:10px;
  width:100%;
}
.client-modal-actions .danger,
.client-row-actions .danger {
  border-color:#8a3343!important;
  background:linear-gradient(180deg,#401823,#2a0f17)!important;
  color:#ffb0bc!important;
}

@media(max-width:768px) {
  .client-modal-actions {
    grid-template-columns:1fr!important;
  }
  #clientsTable .client-row-actions {
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  #clientsTable {
    min-width:760px;
  }
}
/* ===== OSPro Cloud 4.5.0 - Segurança, Lixeira e Busca Global ===== */
.global-search-panel,
.trash-panel {
  border-color:#31557e!important;
}
.global-search-box {
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  margin-bottom:14px;
}
.global-results {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.global-result-section {
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:linear-gradient(180deg,#102039,#0b1727);
}
.global-result-section h3 {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:0 0 10px;
  font-size:14px;
}
.global-result-section h3 span {
  min-width:25px;
  height:25px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:#162b49;
  color:#bcd2f0;
  font-size:11px;
}
.global-item {
  width:100%;
  display:block;
  text-align:left;
  border:1px solid rgba(75,111,160,.34);
  background:#0c192a;
  color:#eef5ff;
  border-radius:13px;
  padding:11px;
  margin:8px 0;
  cursor:pointer;
}
.global-item:hover {
  border-color:#4c86c6;
  background:#13243a;
}
.global-item b,
.trash-card b {
  display:block;
  font-size:13px;
}
.global-item span,
.trash-card span {
  display:block;
  color:#9fb4d3;
  font-size:12px;
  margin-top:4px;
}
.global-item small,
.trash-card small {
  display:block;
  color:#8199ba;
  font-size:11px;
  margin-top:4px;
}
.trash-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.trash-box {
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:#0c192a;
}
.trash-card {
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  padding:11px;
  border:1px solid rgba(75,111,160,.34);
  border-radius:14px;
  background:linear-gradient(180deg,#112039,#0c1728);
  margin-bottom:9px;
}
.trash-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.trash-actions .danger {
  border-color:#8a3343!important;
  color:#ffb0bc!important;
  background:#32131b!important;
}

@media(max-width:900px) {
  .global-results,
  .trash-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:768px) {
  .global-search-box {
    grid-template-columns:1fr;
  }
  .trash-card {
    grid-template-columns:1fr;
  }
  .trash-actions {
    display:grid;
    grid-template-columns:1fr;
    justify-content:stretch;
  }
}
/* ===== OSPro Cloud 4.5.1 - Fechamento Diario + Hoje + Cobranca ===== */
.today-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
  background:radial-gradient(circle at 0 0,rgba(255,213,42,.12),transparent 30%),linear-gradient(180deg,#13243a,#0d192b)!important;
}
.today-hero h2 {
  margin:2px 0 4px;
  font-size:27px;
}
.today-hero p {
  margin:0;
  color:#9fb4d3;
}
.today-actions,
.closing-actions {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.closing-actions input {
  height:42px;
  border:1px solid #29415f;
  border-radius:11px;
  background:#0d1929;
  color:#eef5ff;
  padding:0 10px;
}
.today-cards {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.today-card,
.collection-kpi {
  border:1px solid #29415f;
  border-radius:16px;
  padding:13px;
  background:linear-gradient(180deg,#13243a,#0d192b);
}
.today-card span,
.collection-kpi span {
  display:block;
  color:#9fb4d3;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.today-card b,
.collection-kpi b {
  display:block;
  margin-top:7px;
  font-size:22px;
  color:#fff;
}
.today-grid,
.closing-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.today-list,
.collection-list {
  display:grid;
  gap:8px;
}
.today-row,
.collection-card {
  width:100%;
  border:1px solid rgba(75,111,160,.36);
  border-radius:14px;
  background:#0c192a;
  color:#eef5ff;
  padding:11px;
  text-align:left;
}
.today-row:hover {
  border-color:#4d86c7;
  background:#13243a;
}
.today-row b,
.collection-card b {
  display:block;
  font-size:13px;
}
.today-row span,
.collection-card span {
  display:block;
  color:#9fb4d3;
  font-size:12px;
  margin-top:4px;
}
.today-row small,
.collection-card small {
  display:block;
  color:#8199ba;
  font-size:11px;
  margin-top:4px;
}
.closing-box {
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:#0c192a;
}
.close-line {
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  padding:9px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.close-line:last-child {
  border-bottom:0;
}
.close-line span {
  color:#dfeaff;
}
.close-line b {
  color:#fff;
}
.close-line small {
  grid-column:1/-1;
  color:#8199ba;
}
.close-line.income b {
  color:#83f0b1;
}
.close-line.expense b {
  color:#ff9aaa;
}
.collection-summary {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.collection-card {
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:12px;
}
.collection-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.collection-actions .primary {
  border-color:#2d8f61!important;
  background:linear-gradient(180deg,#123b2a,#0d291e)!important;
  color:#91f7bd!important;
}

@media(max-width:980px) {
  .today-cards {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .today-grid,
  .closing-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:768px) {
  .today-hero {
    display:grid;
  }
  .today-actions,
  .closing-actions {
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .today-actions .btn,
  .closing-actions .btn,
  .closing-actions input {
    width:100%;
  }
  .collection-summary {
    grid-template-columns:1fr;
  }
  .collection-card {
    grid-template-columns:1fr;
  }
  .collection-actions {
    display:grid;
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.5.2 - Fechamento salvo, permissões e backup seguro ===== */
.close-cash-conference {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin:12px 0 16px;
  padding:14px;
  border:1px solid #2b486b;
  border-radius:16px;
  background:linear-gradient(180deg,#0f2138,#0b1727);
}
.close-cash-conference .wide {
  grid-column:1/-1;
}
.saved-close-badge {
  padding:10px 12px;
  border:1px solid #2d8f61;
  border-radius:13px;
  background:rgba(45,143,97,.12);
  color:#91f7bd;
  margin:8px 0 12px;
}
.closing-history-box {
  margin-top:16px;
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:#0c192a;
}
.close-history-list {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.close-history-row {
  display:block;
  text-align:left;
  border:1px solid rgba(75,111,160,.35);
  background:#0f1f34;
  color:#eef5ff;
  border-radius:13px;
  padding:10px;
  cursor:pointer;
}
.close-history-row:hover {
  border-color:#4c86c6;
  background:#13243a;
}
.close-history-row b,
.close-history-row span,
.close-history-row small {
  display:block;
}
.close-history-row span {
  color:#9fb4d3;
  font-size:12px;
}
.close-history-row small {
  color:#8199ba;
  font-size:11px;
  margin-top:4px;
}
.permissions-panel {
  border-color:#31557e!important;
}
.permissions-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.permission-card {
  border:1px solid #29415f;
  border-radius:16px;
  padding:13px;
  background:linear-gradient(180deg,#102039,#0b1727);
  display:grid;
  gap:10px;
}
.permission-card b,
.permission-card span {
  display:block;
}
.permission-card span {
  color:#9fb4d3;
  font-size:12px;
}
.permission-checks {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
}
.permission-checks label {
  display:flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(75,111,160,.25);
  border-radius:10px;
  padding:8px;
  background:#0c192a;
  color:#dce9fb;
  font-size:12px;
}
.permission-card.admin-lock {
  opacity:.75;
}

@media(max-width:900px) {
  .close-history-list,
  .permissions-grid {
    grid-template-columns:1fr;
  }
  .close-cash-conference {
    grid-template-columns:1fr;
  }
  .permission-checks {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.5.3 - Checklist, Garantia, Lucro Real, Ranking e IMEI ===== */
.delivery-checklist-box {
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:#0c192a;
}
.delivery-checklist {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.delivery-check {
  display:flex;
  align-items:center;
  gap:9px;
  padding:9px;
  border:1px solid rgba(75,111,160,.34);
  border-radius:12px;
  background:#101d30;
  color:#dbe8fb;
  font-size:13px;
}
.delivery-check input {
  width:18px;
  height:18px;
  accent-color:#ffd52a;
}
.warranty-advanced-summary,
.profit-summary,
.parts-ranking-summary,
.imei-summary {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:12px 0;
}
.warranty-adv-card,
.profit-card,
.ranking-card,
.imei-card {
  border:1px solid #29415f;
  border-radius:16px;
  padding:13px;
  background:linear-gradient(180deg,#13243a,#0d192b);
}
.warranty-adv-card span,
.profit-card span,
.ranking-card span,
.imei-card span {
  display:block;
  color:#9fb4d3;
  font-size:12px;
}
.warranty-adv-card b,
.profit-card b,
.ranking-card b,
.imei-card b {
  display:block;
  font-size:20px;
  margin-top:4px;
  color:#eef5ff;
}
.imei-history-list,
.profit-list,
#partsRankingList,
#partsByModelList {
  display:grid;
  gap:9px;
}
.imei-row,
.profit-line,
.ranking-row {
  display:block;
  width:100%;
  text-align:left;
  border:1px solid rgba(75,111,160,.34);
  border-radius:14px;
  padding:12px;
  background:#0c192a;
  color:#eef5ff;
}
.imei-row:hover,
.profit-line:hover {
  border-color:#4c86c6;
  background:#13243a;
}
.imei-row b,
.profit-line b,
.ranking-row b {
  display:block;
}
.imei-row span,
.profit-line span,
.ranking-row span {
  display:block;
  color:#9fb4d3;
  font-size:12px;
  margin-top:4px;
}
.imei-row small,
.profit-line small,
.ranking-row small {
  display:block;
  color:#8199ba;
  font-size:11px;
  margin-top:4px;
}
.imei-row em,
.ranking-row em,
.warranty-return-row em {
  display:block;
  color:#8fa6c8;
  font-size:11px;
  margin-top:5px;
  font-style:normal;
  line-height:1.35;
}
.profit-reading-box {
  border:1px solid #29415f;
  border-radius:16px;
  padding:14px;
  background:#0c192a;
}
.profit-reading-box p {
  color:#b7c9e3;
  line-height:1.5;
}
.profit-reading-box strong {
  color:#ffd52a;
  font-size:22px;
}

@media(max-width:900px) {
  .warranty-advanced-summary,
  .profit-summary,
  .parts-ranking-summary,
  .imei-summary {
    grid-template-columns:1fr 1fr;
  }
  .delivery-checklist {
    grid-template-columns:1fr;
  }
}

@media(max-width:520px) {
  .warranty-advanced-summary,
  .profit-summary,
  .parts-ranking-summary,
  .imei-summary {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.5.3.1 - Hotfix menu lateral mobile sem barra feia ===== */

@media(max-width:768px) {
  .sidebar {
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none;
  }
  .sidebar::-webkit-scrollbar {
    width:0!important;
    height:0!important;
    display:none;
  }
  .sidebar .brand {
    background:linear-gradient(180deg,rgba(13,27,46,.99),rgba(13,27,46,.96))!important;
  }
  .side-nav,
  .sidebar nav {
    overscroll-behavior:contain!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .session-box {
    margin-top:10px!important;
    padding:10px 12px!important;
    border:1px solid rgba(59,93,133,.55)!important;
  }
}
/* ===== OSPro Cloud 4.5.3.2 - Menu mobile premium ===== */

@media(max-width:768px) {
  .sidebar {
    background:radial-gradient(circle at 18% 0,rgba(51,136,255,.18),transparent 30%),
      radial-gradient(circle at 92% 12%,rgba(255,213,42,.10),transparent 24%),
      linear-gradient(180deg,rgba(10,20,34,.99),rgba(5,12,22,.99))!important;
  }
  .premium-mobile-menu {
    border-bottom:1px solid rgba(72,112,160,.32)!important;
  }
  .premium-menu-title b {
    letter-spacing:.01em!important;
  }
  .premium-menu-actions button {
    box-shadow:0 10px 22px rgba(0,0,0,.16)!important;
  }
  .premium-menu-search {
    color:#8aa6c8!important;
  }
  .premium-menu-search input {
    width:100%!important;
  }
  .sidebar nav .nav-section-title i,
  .side-nav .nav-section-title i {
    transition:transform .18s ease!important;
  }
  .sidebar nav .nav-section-title.collapsed i,
  .side-nav .nav-section-title.collapsed i {
    transform:rotate(-90deg)!important;
  }
  .sidebar nav button,
  .side-nav button {
    transition:transform .14s ease,border-color .14s ease,background .14s ease!important;
  }
  .sidebar nav button:active,
  .side-nav button:active {
    transform:scale(.985)!important;
  }
}

@media(max-width:380px) {
  .sidebar nav .nav-section-title,
  .side-nav .nav-section-title {
    top:172px!important;
  }
}
/* ===== OSPro Cloud 4.5.3.3 - Correção menu premium PC + mobile ===== */
/* Segurança: o bloco premium nunca aparece no desktop */
.premium-mobile-menu {
  display:none!important;
}

@media(min-width:769px) {
  .sidebar .premium-mobile-menu {
    display:none!important;
  }
  .sidebar nav button.section-hidden,
  .sidebar nav button.search-hidden,
  .side-nav button.section-hidden,
  .side-nav button.search-hidden {
    display:flex!important;
  }
  .sidebar nav .nav-section-title.search-hidden,
  .side-nav .nav-section-title.search-hidden {
    display:block!important;
  }
}
/* ===== OSPro 4.7.7 - Menu rápido da Mesa de Reparo ===== */
.context-menu {
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:#3a5678 transparent;
}
.context-menu::-webkit-scrollbar {
  width:7px;
}
.context-menu::-webkit-scrollbar-track {
  background:transparent;
}
.context-menu::-webkit-scrollbar-thumb {
  background:#3a5678;
  border:2px solid #0b1728;
  border-radius:999px;
}
.context-menu.order-context-menu {
  width:278px;
  min-width:278px;
  max-width:calc(100vw - 24px)!important;
  padding:8px;
  overflow-x:hidden!important;
  background:linear-gradient(160deg,rgba(19,35,57,.985),rgba(8,19,33,.99));
  border:1px solid #3a5f88;
  border-radius:18px;
  box-shadow:0 24px 70px rgba(0,0,0,.55),0 0 0 1px rgba(94,151,216,.06) inset;
  backdrop-filter:blur(20px);
}
.context-menu-head {
  position:sticky;
  top:-8px;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin:-8px -8px 5px;
  padding:14px 14px 12px;
  background:linear-gradient(180deg,rgba(20,39,64,.99),rgba(14,29,49,.97));
  border-bottom:1px solid #2d4868;
  border-radius:17px 17px 0 0;
}
.context-menu-head>div {
  min-width:0;
  display:grid;
  gap:2px;
}
.context-menu-head small {
  color:#7f9bbb;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
}
.context-menu-head b {
  color:#fff;
  font-size:15px;
  line-height:1.2;
}
.context-menu-head span {
  max-width:205px;
  color:#9eb1ca;
  font-size:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.context-menu .context-menu-close {
  flex:0 0 29px!important;
  width:29px!important;
  height:29px!important;
  min-height:29px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #385776!important;
  border-radius:9px!important;
  background:#12243a!important;
  color:#aebfd4!important;
  font-size:19px!important;
  line-height:1!important;
}
.context-menu .context-menu-close:hover {
  border-color:#527ca8!important;
  background:#1a3454!important;
  color:#fff!important;
}
.context-menu-section {
  padding:8px 9px 4px;
  color:#718aa9;
  font-size:9px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.context-menu-manage-title {
  margin-top:6px;
  padding-top:10px;
  border-top:1px solid #263d5a;
}
.context-menu .context-menu-action {
  display:grid;
  grid-template-columns:30px minmax(0,1fr) 14px;
  align-items:center;
  gap:9px;
  width:100%;
  min-height:40px;
  margin:2px 0;
  padding:5px 8px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:#dce7f6;
  font-size:12px;
  font-weight:760;
  text-align:left;
  transition:background .14s ease,border-color .14s ease,transform .14s ease;
}
.context-menu .context-menu-action:hover {
  transform:translateX(2px);
  border-color:#315376;
  background:linear-gradient(90deg,#173252,#132942);
  color:#fff;
}
.context-menu-icon {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid #2c496a;
  border-radius:9px;
  background:#0d2036;
  color:#a9c5e8;
  font-size:14px;
}
.context-menu-label {
  min-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.context-menu-arrow {
  color:#6f8cab;
  font-size:20px;
  text-align:right;
}
.context-menu .whatsapp-action .context-menu-icon {
  border-color:#25734f;
  background:#103725;
  color:#6ce5a6;
}
.context-menu .portal-action .context-menu-icon {
  border-color:#2d639a;
  background:#102d4a;
  color:#78baff;
}
.context-menu .archive-action {
  color:#ffd979;
}
.context-menu .archive-action .context-menu-icon {
  border-color:#79672c;
  background:#352d12;
  color:#ffe178;
}
.context-menu .danger {
  margin-top:5px;
  border-color:rgba(255,97,114,.18);
  background:rgba(255,97,114,.055);
  color:#ff9ca7;
}
.context-menu .danger .context-menu-icon {
  border-color:#713340;
  background:#351821;
  color:#ff94a0;
}
.context-menu .danger:hover {
  border-color:#9c4050;
  background:#3b1b25;
  color:#ffd8dc;
}
.context-menu .context-menu-action:focus-visible,
.context-menu .context-menu-close:focus-visible {
  outline:2px solid #5ca3f5!important;
  outline-offset:1px;
}

@media(max-width:768px) {
  .context-menu.order-context-menu {
    left:10px!important;
    right:10px!important;
    top:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    max-height:calc(100dvh - 106px - env(safe-area-inset-bottom))!important;
    border-radius:20px;
  }
  .sidebar {
    display:flex!important;
    flex-direction:column!important;
    left:14px!important;
    right:14px!important;
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    max-height:min(84dvh, calc(100dvh - 100px - env(safe-area-inset-bottom)))!important;
    min-height:0!important;
    overflow:hidden!important;
    padding:12px!important;
    border-radius:26px!important;
  }
  .sidebar .brand {
    flex:0 0 auto!important;
    position:relative!important;
    top:auto!important;
    z-index:2!important;
    padding:4px 6px 12px!important;
    margin:0 0 10px!important;
    border-bottom:1px solid rgba(67,104,150,.34)!important;
  }
  .premium-mobile-menu {
    display:grid!important;
    flex:0 0 auto!important;
    position:relative!important;
    top:auto!important;
    z-index:3!important;
    gap:9px!important;
    padding:12px!important;
    margin:0 0 10px!important;
    border:1px solid rgba(61,96,140,.48)!important;
    border-radius:20px!important;
    background:radial-gradient(circle at 10% 0,rgba(255,213,42,.10),transparent 34%),
      linear-gradient(180deg,rgba(13,27,46,.98),rgba(8,18,31,.98))!important;
    box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
    backdrop-filter:blur(12px)!important;
  }
  .premium-menu-title {
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    min-height:20px!important;
    padding:0!important;
  }
  .premium-menu-title b {
    color:#f5f8ff!important;
    font-size:15px!important;
    line-height:1.1!important;
    font-weight:1000!important;
    white-space:nowrap!important;
  }
  .premium-menu-title span {
    color:#91a7c7!important;
    font-size:9.5px!important;
    line-height:1!important;
    font-weight:1000!important;
    text-transform:uppercase!important;
    letter-spacing:.10em!important;
    white-space:nowrap!important;
  }
  .premium-menu-actions {
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:7px!important;
    width:100%!important;
  }
  .premium-menu-actions button {
    min-width:0!important;
    width:100%!important;
    height:48px!important;
    min-height:48px!important;
    padding:0 5px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:15px!important;
    border:1px solid rgba(67,104,150,.68)!important;
    background:linear-gradient(180deg,#12233a,#0b1829)!important;
    color:#eef5ff!important;
    font-size:11px!important;
    line-height:1.05!important;
    font-weight:1000!important;
    white-space:nowrap!important;
    text-align:center!important;
    overflow:hidden!important;
  }
  .premium-menu-actions button:first-child {
    background:linear-gradient(180deg,#ffe45a,#ffc91e)!important;
    color:#111!important;
    border-color:#ffe45a!important;
    box-shadow:0 12px 26px rgba(255,213,42,.20)!important;
  }
  .premium-menu-search {
    width:100%!important;
    height:46px!important;
    min-height:46px!important;
    max-height:46px!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    margin:0!important;
    padding:0 13px!important;
    box-sizing:border-box;
    overflow:hidden!important;
    border:1px solid rgba(72,112,160,.58)!important;
    border-radius:17px!important;
    background:#071421!important;
  }
  .premium-menu-search span {
    flex:0 0 auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:20px!important;
    height:46px!important;
    padding:0!important;
    margin:0!important;
    color:#85a1c4!important;
    font-size:17px!important;
    line-height:46px!important;
  }
  .premium-menu-search input {
    flex:1 1 auto!important;
    min-width:0!important;
    height:46px!important;
    line-height:46px!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    color:#eef5ff!important;
    font-size:14px!important;
    font-weight:800!important;
    transform:none!important;
  }
  .premium-menu-search input::placeholder {
    color:#7f95b4;
    opacity:1;
  }
  .sidebar nav,
  .side-nav {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    display:block!important;
    padding:0 0 8px!important;
    margin:0!important;
    scrollbar-width:none!important;
    -ms-overflow-style:none;
  }
  .sidebar nav::-webkit-scrollbar,
  .side-nav::-webkit-scrollbar {
    width:0!important;
    height:0!important;
    display:none;
  }
  .sidebar nav .nav-section-title,
  .side-nav .nav-section-title {
    position:relative!important;
    top:auto!important;
    z-index:1!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    min-height:34px!important;
    height:auto!important;
    padding:8px 11px!important;
    margin:10px 0 7px!important;
    border:1px solid rgba(63,96,136,.40)!important;
    border-radius:14px!important;
    background:linear-gradient(90deg,rgba(15,31,53,.96),rgba(9,20,34,.92))!important;
    color:#9fb7d8!important;
    box-shadow:none!important;
    clear:both;
  }
  .sidebar nav .nav-section-title span,
  .side-nav .nav-section-title span {
    font-size:10px!important;
    line-height:1!important;
    font-weight:1000!important;
    text-transform:uppercase!important;
    letter-spacing:.10em!important;
  }
  .sidebar nav .nav-section-title i,
  .side-nav .nav-section-title i {
    font-style:normal!important;
    color:#ffd52a!important;
    line-height:1!important;
  }
  .sidebar nav button,
  .side-nav button {
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-height:54px!important;
    margin:0 0 8px!important;
    padding:12px 14px!important;
    border-radius:18px!important;
    border:1px solid rgba(70,108,154,.40)!important;
    background:linear-gradient(180deg,rgba(16,31,52,.98),rgba(10,20,34,.98))!important;
    box-shadow:0 8px 18px rgba(0,0,0,.12)!important;
  }
  .sidebar nav button span,
  .side-nav button span {
    display:inline!important;
    min-width:0!important;
    white-space:normal!important;
    line-height:1.14!important;
    font-size:13.5px!important;
    font-weight:1000!important;
  }
  .sidebar nav button.active,
  .side-nav button.active {
    background:linear-gradient(90deg,rgba(255,213,42,.24),rgba(51,136,255,.14)),
      linear-gradient(180deg,#172b47,#102038)!important;
    border-color:#ffd52a!important;
    color:#fff!important;
    box-shadow:inset 4px 0 #ffd52a,0 10px 24px rgba(255,213,42,.09)!important;
  }
  .sidebar nav button.section-hidden,
  .sidebar nav button.search-hidden,
  .sidebar nav .nav-section-title.search-hidden {
    display:none!important;
  }
  .session-box {
    flex:0 0 auto!important;
    position:relative!important;
    bottom:auto!important;
    z-index:2!important;
    margin:10px 0 0!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(16,31,52,.98),rgba(8,18,31,.98))!important;
    box-shadow:0 -8px 20px rgba(0,0,0,.12)!important;
  }
}

@media(max-width:380px) {
  .premium-menu-actions {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .premium-menu-title {
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
}
/* ===== OSPro Cloud 4.5.3.4 - Menu desktop premium inspirado no mobile ===== */
.desktop-premium-menu {
  display:none;
}

@media(min-width:769px) {
  .app {
    min-height:100vh!important;
    background:radial-gradient(circle at 16% 0,rgba(51,136,255,.10),transparent 30%),
      radial-gradient(circle at 80% 8%,rgba(255,213,42,.055),transparent 25%),
      var(--bg)!important;
  }
  .sidebar {
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
  }
  .sidebar .brand {
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
  }
  .sidebar .brand b {
    line-height:1.08!important;
  }
  .desktop-premium-menu {
    flex:0 0 auto!important;
    margin:0 0 12px!important;
    border:1px solid rgba(72,112,160,.38)!important;
    background:radial-gradient(circle at 10% 0,rgba(255,213,42,.12),transparent 35%),
      linear-gradient(180deg,rgba(15,29,49,.98),rgba(8,18,31,.98))!important;
    box-shadow:0 16px 34px rgba(0,0,0,.20)!important;
  }
  .desktop-premium-title {
    display:flex!important;
    justify-content:space-between!important;
    gap:8px!important;
  }
  .desktop-premium-title b {
    display:block!important;
    color:#f6f9ff!important;
    font-weight:1000!important;
  }
  .desktop-premium-title span {
    margin-top:3px!important;
    color:#8da4c3!important;
    font-size:10px!important;
    font-weight:900!important;
    text-transform:uppercase!important;
    letter-spacing:.10em!important;
  }
  .desktop-premium-title i {
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-style:normal!important;
    color:#111!important;
    background:linear-gradient(180deg,#ffe45a,#ffc91e)!important;
    box-shadow:0 10px 22px rgba(255,213,42,.18)!important;
  }
  .desktop-premium-actions button {
    border:1px solid rgba(67,104,150,.50)!important;
    background:linear-gradient(180deg,#13243a,#0b1727)!important;
    color:#eef5ff!important;
    box-shadow:0 10px 20px rgba(0,0,0,.14)!important;
    cursor:pointer!important;
    align-content:center!important;
    justify-items:start;
  }
  .desktop-premium-actions button:hover {
    border-color:#4c86c6!important;
    transform:translateY(-1px)!important;
  }
  .desktop-premium-actions button:first-child {
    background:linear-gradient(180deg,#ffe45a,#ffc91e)!important;
    color:#111!important;
    border-color:#ffe45a!important;
  }
  .desktop-premium-search {
    border:1px solid rgba(72,112,160,.45)!important;
    background:#071421!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    color:#85a1c4!important;
  }
  .desktop-premium-search input {
    flex:1 1 auto!important;
    min-width:0!important;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    color:#eef5ff!important;
    font-weight:800!important;
  }
  .desktop-premium-search input::placeholder {
    color:#6f83a1;
  }
  .sidebar nav,
  .side-nav {
    -ms-overflow-style:none;
  }
  .sidebar nav::-webkit-scrollbar,
  .side-nav::-webkit-scrollbar {
    height:0!important;
  }
  .side-nav .nav-section-title,
  .sidebar nav .nav-section-title {
    display:block!important;
    margin:13px 0 7px!important;
    padding:0 6px!important;
    color:#8fa5c5!important;
    font-size:10px!important;
    font-weight:1000!important;
    text-transform:uppercase!important;
    letter-spacing:.11em!important;
  }
  .side-nav .nav-section-title i,
  .sidebar nav .nav-section-title i {
    display:none!important;
  }
  .sidebar nav button:hover,
  .side-nav button:hover {
    border-color:rgba(72,112,160,.28)!important;
  }
  .sidebar nav button.active,
  .side-nav button.active {
    border-color:rgba(255,213,42,.72)!important;
  }
  .sidebar nav button span,
  .side-nav button span {
    white-space:normal!important;
    line-height:1.15!important;
  }
  .sidebar nav button.desktop-search-hidden,
  .sidebar nav .nav-section-title.desktop-search-hidden {
    display:none!important;
  }
}

@media(min-width:769px) and (max-width:1180px) {
  :root {
    --desktop-sidebar-w:268px;
  }
  .desktop-premium-actions button {
    min-height:58px;
  }
}
/* ===== OSPro Cloud 4.5.3.5 - Hotfix menu desktop compacto e sem quebra ===== */

@media(min-width:769px) {
  .desktop-premium-menu {
    padding:10px!important;
    gap:9px!important;
    border-radius:18px!important;
  }
  .desktop-premium-title {
    align-items:center!important;
  }
  .desktop-premium-title b {
    font-size:13px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }
  .desktop-premium-title span {
    display:none!important;
  }
  .desktop-premium-title i {
    width:28px!important;
    height:28px!important;
    min-width:28px!important;
    border-radius:999px!important;
    font-size:14px!important;
  }
  .desktop-premium-actions {
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:7px!important;
  }
  .desktop-premium-actions button {
    width:100%!important;
    min-width:0!important;
    min-height:42px!important;
    height:42px!important;
    padding:0 11px!important;
    border-radius:13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:9px!important;
    text-align:left!important;
    overflow:hidden!important;
  }
  .desktop-premium-actions button b {
    width:25px!important;
    min-width:25px!important;
    height:25px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border-radius:9px!important;
    font-size:16px!important;
    line-height:1!important;
    background:rgba(255,255,255,.08)!important;
  }
  .desktop-premium-actions button span {
    display:block!important;
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:1000!important;
  }
  .desktop-premium-actions button:first-child b {
    background:rgba(0,0,0,.12)!important;
  }
  .desktop-premium-search {
    height:39px!important;
    min-height:39px!important;
    padding:0 10px!important;
    border-radius:13px!important;
    overflow:hidden!important;
  }
  .desktop-premium-search span {
    width:18px!important;
    min-width:18px!important;
    height:39px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    line-height:39px!important;
    font-size:14px!important;
  }
  .desktop-premium-search input {
    height:39px!important;
    line-height:39px!important;
    font-size:12px!important;
    padding:0!important;
    transform:none!important;
  }
  .sidebar {
    min-width:240px!important;
  }
}
/* desktop muito estreito: remove o card rápido para não poluir */

@media(min-width:769px) and (max-height:690px) {
  .desktop-premium-actions button {
    min-height:38px!important;
    height:38px!important;
  }
  .desktop-premium-search {
    height:36px!important;
    min-height:36px!important;
  }
}
/* ===== OSPro Cloud 4.5.4 - Balcão rápido, duplicidade e resumo do cliente ===== */
.counter-hero {
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  padding:20px;
  border:1px solid #31557e;
  border-radius:22px;
  background:radial-gradient(circle at 10% 0,rgba(255,213,42,.13),transparent 34%),
    linear-gradient(180deg,#13243a,#0b1727);
  box-shadow:0 18px 42px rgba(0,0,0,.18);
  margin-bottom:14px;
}
.counter-hero h2 {
  margin:4px 0;
  font-size:25px;
}
.counter-hero p {
  margin:0;
  color:#9fb4d3;
}
.counter-actions {
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}
.counter-grid {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:14px;
}
.counter-panel {
  border-color:#31557e!important;
}
.counter-search-row {
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
}
.counter-results {
  display:grid;
  gap:12px;
  margin-top:13px;
}
.counter-result-section {
  border:1px solid #29415f;
  border-radius:16px;
  padding:12px;
  background:#0c192a;
}
.counter-result-section h3 {
  margin:0 0 8px;
  font-size:13px;
  color:#dce9fb;
}
.counter-result-card {
  display:block;
  width:100%;
  text-align:left;
  border:1px solid rgba(75,111,160,.34);
  border-radius:13px;
  background:linear-gradient(180deg,#102039,#0b1727);
  color:#eef5ff;
  padding:11px;
  margin:7px 0;
  cursor:pointer;
}
.counter-result-card:hover {
  border-color:#4c86c6;
  background:#13243a;
}
.counter-result-card b,
.counter-result-card span {
  display:block;
}
.counter-result-card span {
  color:#9fb4d3;
  font-size:12px;
  margin-top:4px;
}
.counter-submit-actions {
  display:grid!important;
  grid-template-columns:1fr 1.4fr!important;
  gap:10px!important;
}
.client-context-warning {
  border:1px solid #735f22;
  border-radius:16px;
  padding:12px;
  background:linear-gradient(180deg,rgba(255,213,42,.10),rgba(13,25,43,.95));
  color:#eef5ff;
  margin:10px 0;
}
.client-context-warning.hidden {
  display:none!important;
}
.context-block {
  display:grid;
  gap:8px;
  margin:0 0 10px;
}
.context-block:last-child {
  margin-bottom:0;
}
.context-block>b {
  display:block;
  color:#ffd52a;
  font-size:13px;
}
.context-block button,
.client-context-order {
  display:block;
  width:100%;
  text-align:left;
  border:1px solid rgba(75,111,160,.35);
  border-radius:12px;
  background:#0d1b2e;
  color:#eef5ff;
  padding:9px 10px;
  margin:5px 0;
  cursor:pointer;
}
.context-block button:hover,
.client-context-order:hover {
  border-color:#4c86c6;
  background:#13243a;
}
.context-block small,
.client-context-order span {
  display:block;
  color:#9fb4d3;
  font-size:11px;
  margin-top:3px;
}
.context-block.danger>b {
  color:#ff8fa3;
}
.context-block.warning>b {
  color:#ffd52a;
}
.context-picked {
  border:1px solid #2d8f61;
  border-radius:13px;
  padding:10px;
  background:rgba(45,143,97,.12);
  color:#91f7bd;
}
.client-summary-box {
  border:1px solid #31557e;
  border-radius:16px;
  padding:12px;
  background:linear-gradient(180deg,#102039,#0b1727);
  margin-bottom:10px;
}
.client-summary-box.hidden {
  display:none!important;
}
.client-summary-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.client-summary-grid div {
  border:1px solid rgba(75,111,160,.28);
  border-radius:13px;
  padding:9px;
  background:#0c192a;
}
.client-summary-grid span {
  display:block;
  color:#9fb4d3;
  font-size:11px;
}
.client-summary-grid b {
  display:block;
  color:#eef5ff;
  font-size:16px;
  margin-top:3px;
}
.client-summary-last {
  margin:9px 0;
  color:#b7c9e3;
  font-size:12px;
}
.client-summary-orders {
  display:grid;
  gap:6px;
}
.client-summary-orders button {
  display:block;
  width:100%;
  text-align:left;
  border:1px solid rgba(75,111,160,.28);
  border-radius:11px;
  padding:8px 9px;
  background:#0b1727;
  color:#eef5ff;
}
.client-summary-orders small {
  display:block;
  color:#9fb4d3;
  margin-top:2px;
}
.reopen-os-action {
  border-color:#4c86c6!important;
  background:linear-gradient(180deg,#102d4b,#0b2038)!important;
  color:#cfe7ff!important;
}

@media(max-width:980px) {
  .counter-hero {
    display:grid;
  }
  .counter-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:768px) {
  .counter-hero {
    padding:15px;
    border-radius:18px;
  }
  .counter-actions {
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }
  .counter-actions .btn {
    width:100%;
  }
  .counter-search-row {
    grid-template-columns:1fr;
  }
  .counter-submit-actions {
    grid-template-columns:1fr!important;
  }
  .client-summary-grid {
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:420px) {
  .client-summary-grid {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro Cloud 4.5.3.7 - Seções recolhíveis no menu desktop ===== */

@media(min-width:769px) {
  .side-nav .nav-section-title.desktop-section-toggle {
    position:relative!important;
    justify-content:space-between!important;
    user-select:none;
    transition:background .16s ease,border-color .16s ease,color .16s ease!important;
  }
  .side-nav .nav-section-title.desktop-section-toggle::after {
    content:'⌄';
    position:absolute;
    right:9px;
    top:50%;
    transform:translateY(-52%) rotate(0deg);
    transform-origin:center;
    font-size:13px;
    line-height:1;
    color:#8ea5c4;
    transition:transform .18s ease,color .18s ease;
  }
  .side-nav .nav-section-title.desktop-section-toggle:hover {
    border-color:rgba(92,131,181,.20)!important;
  }
  .side-nav .nav-section-title.desktop-section-toggle:hover::after {
    color:#ffd52a;
  }
  .side-nav .nav-section-title.desktop-section-toggle:focus-visible {
    outline:2px solid rgba(255,213,42,.62)!important;
    outline-offset:1px!important;
  }
  .side-nav .nav-section-title.desktop-section-toggle.desktop-section-collapsed::after {
    transform:translateY(-52%) rotate(-90deg);
  }
  .side-nav button.desktop-section-item-hidden {
    display:none!important;
  }
  .side-nav.desktop-searching button.desktop-section-item-hidden:not(.desktop-search-hidden) {
    display:flex!important;
  }
}
/* OSPro 4.6.2 - boot sem piscar tela de login no F5 */
body.mc-auth-boot {
  overflow:hidden;
}
body.mc-auth-boot #loginView,
body.mc-auth-boot #appView {
  visibility:hidden;
  pointer-events:none!important;
}
.mc-auth-boot-screen {
  position:fixed;
  inset:0;
  z-index:99999;
  display:none;
  align-items:center;
  justify-content:center;
  background:radial-gradient(circle at top,#102a4a 0,#071426 48%,#050b14 100%);
  color:#eef5ff;
}
body.mc-auth-boot .mc-auth-boot-screen {
  display:flex;
}
.mc-auth-boot-screen.hidden {
  display:none!important;
}
.mc-auth-boot-card {
  min-width:260px;
  max-width:90vw;
  padding:26px 24px;
  border-radius:18px;
  background:rgba(15,34,58,.92);
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 18px 60px rgba(0,0,0,.35);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
  text-align:center;
}
.mc-auth-boot-card b {
  font-size:18px;
}
.mc-auth-boot-card small {
  color:#a9bad1;
}
.mc-auth-spinner {
  width:34px;
  height:34px;
  border-radius:50%;
  border:4px solid rgba(255,255,255,.18);
  border-top-color:var(--yellow,#ffd52a);
  animation:mcAuthSpin .8s linear infinite;
}
@keyframes mcAuthSpin{to{transform:rotate(360deg)}}
/* OSPro 4.6.3 - WhatsApp rapido OS */
.order-wa-quick {
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:16px 0 4px;
  padding:12px;
  border:1px solid #294664;
  border-radius:14px;
  background:linear-gradient(145deg,#0c192a,#10243b);
}
.order-wa-quick-title {
  font-size:12px;
  font-weight:900;
  color:#99afd0;
  margin-right:2px;
  text-transform:uppercase;
  letter-spacing:.45px;
}
.wa-direct-btn {
  border:1px solid #315779;
  background:#122a42;
  color:#e7f2ff;
  border-radius:10px;
  padding:9px 11px;
  font-weight:800;
  cursor:pointer;
  transition:.16s ease;
}
.wa-direct-btn:hover {
  transform:translateY(-1px);
  border-color:#4b8bc0;
  background:#173653;
}
.wa-direct-btn[data-wa-direct="ready"] {
  border-color:#287455;
  background:#123a2e;
}
.wa-direct-btn[data-wa-direct="tracking"] {
  border-color:#375f9f;
  background:#142f59;
}
.wa-direct-btn[data-wa-direct="warranty"] {
  border-color:#6d5793;
  background:#2b2144;
}
.wa-direct-more {
  margin-left:auto;
}
.security-grid {
  grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
}

@media(max-width:768px) {
  .order-wa-quick {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
  }
  .order-wa-quick-title {
    grid-column:1/-1;
  }
  .wa-direct-btn {
    width:100%;
    min-height:44px;
  }
  .wa-direct-more {
    margin-left:0;
  }
}
/* ===== OSPro 4.6.4 - Panic Full iPhone ===== */
.panicfull-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:16px;
  padding:20px 22px;
  border:1px solid #294b70;
  border-radius:20px;
  background:radial-gradient(circle at 85% 0,rgba(51,136,255,.22),transparent 38%),linear-gradient(145deg,#0b1829,#102640);
  box-shadow:0 16px 42px rgba(0,0,0,.22);
}
.panicfull-hero h2 {
  margin:4px 0 5px;
  font-size:26px;
  color:#f4f8ff;
}
.panicfull-hero p {
  margin:0;
  color:#a9bedb;
  max-width:720px;
}
.panicfull-hero-actions {
  display:flex;
  gap:9px;
  flex-wrap:wrap;
}
.panicfull-stats {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:16px;
}
.panicfull-stat {
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  padding:13px 15px;
  border:1px solid #294866;
  border-radius:15px;
  background:linear-gradient(155deg,#0d1b2d,#10233a);
}
.panicfull-stat i {
  display:grid;
  place-items:center;
  width:32px;
  height:32px;
  border-radius:10px;
  background:#17304e;
  color:#9cc8ff;
  font-style:normal;
  font-weight:950;
}
.panicfull-stat span {
  color:#9fb4d2;
  font-size:12px;
  font-weight:800;
}
.panicfull-stat b {
  font-size:23px;
  color:#edf5ff;
}
.panicfull-stat.approved {
  border-color:rgba(44,172,111,.45);
}
.panicfull-stat.approved i {
  background:#123b2c;
  color:#72e6a8;
}
.panicfull-stat.attention {
  border-color:rgba(255,213,42,.42);
}
.panicfull-stat.attention i {
  background:#3d3414;
  color:#ffe56e;
}
.panicfull-stat.rejected {
  border-color:rgba(239,84,107,.42);
}
.panicfull-stat.rejected i {
  background:#421a24;
  color:#ff9aae;
}
.panicfull-layout {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(320px,.75fr);
  gap:16px;
  align-items:start;
}
.panicfull-form-panel,
.panicfull-history-panel {
  min-width:0;
}
.panicfull-fields.form-grid.three {
  grid-template-columns:repeat(3,minmax(150px,1fr));
}
.panicfull-history-panel {
  position:sticky;
  top:14px;
  max-height:calc(100vh - 28px);
  overflow:auto;
}
.panicfull-section-title {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin:20px 0 11px;
  padding:0 2px 9px;
  border-bottom:1px solid #294664;
}
.panicfull-section-title:first-of-type {
  margin-top:8px;
}
.panicfull-section-title>b,
.panicfull-section-title>div>b {
  display:block;
  color:#f2f7ff;
  font-size:15px;
}
.panicfull-section-title>span,
.panicfull-section-title>div>span {
  display:block;
  margin-top:2px;
  color:#91a9c9;
  font-size:11px;
}
.panicfull-check-title {
  align-items:center;
}
.panicfull-mark-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.panicfull-checklist {
  display:grid;
  gap:12px;
}
.panicfull-check-group {
  overflow:hidden;
  border:1px solid #294764;
  border-radius:15px;
  background:#0a1727;
}
.panicfull-check-group h3 {
  margin:0;
  padding:10px 12px;
  border-bottom:1px solid #26425e;
  background:#10243a;
  color:#dceaff;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.panicfull-check-rows {
  display:grid;
}
.panicfull-check-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-height:47px;
  padding:7px 9px 7px 12px;
  border-bottom:1px solid rgba(45,76,106,.54);
}
.panicfull-check-row:last-child {
  border-bottom:0;
}
.panicfull-check-row>span {
  color:#d7e5f7;
  font-size:12px;
  line-height:1.3;
}
.panicfull-check-buttons {
  display:grid;
  grid-template-columns:repeat(3,57px);
  gap:5px;
}
.panicfull-check-buttons button {
  min-height:32px;
  border:1px solid #31506e;
  border-radius:9px;
  background:#102238;
  color:#94aac6;
  font-size:11px;
  font-weight:900;
  cursor:pointer;
  transition:.15s ease;
}
.panicfull-check-buttons button:hover {
  border-color:#527ca5;
  color:#e4effc;
}
.panicfull-check-buttons button.active.ok {
  border-color:#2f9b67;
  background:#123d2d;
  color:#85edb4;
}
.panicfull-check-buttons button.active.fail {
  border-color:#ce5064;
  background:#421b26;
  color:#ff9bad;
}
.panicfull-check-buttons button.active.na {
  border-color:#70839b;
  background:#2a3442;
  color:#d8e0eb;
}
.panicfull-fields textarea {
  min-height:88px;
}
.panicfull-form-actions {
  display:flex;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap;
  margin-top:18px;
  padding-top:15px;
  border-top:1px solid #294664;
}
.panicfull-form-actions button:disabled {
  opacity:.45;
  cursor:not-allowed;
}
.panicfull-history {
  display:grid;
  gap:10px;
  margin-top:11px;
}
.panicfull-history-card {
  padding:12px;
  border:1px solid #294965;
  border-radius:14px;
  background:linear-gradient(145deg,#0b1828,#0f2136);
}
.panicfull-history-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:9px;
}
.panicfull-history-top>div {
  min-width:0;
}
.panicfull-history-top b {
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#eef6ff;
  font-size:13px;
}
.panicfull-history-top span {
  display:block;
  margin-top:3px;
  color:#93aaca;
  font-size:11px;
}
.panicfull-result {
  flex:0 0 auto;
  padding:5px 7px;
  border:1px solid #3b5673;
  border-radius:999px;
  background:#17273a;
  color:#bdcce0;
  font-size:9px;
  font-style:normal;
  font-weight:950;
  text-transform:uppercase;
}
.panicfull-result.approved {
  border-color:#2d895c;
  background:#12392a;
  color:#81e8af;
}
.panicfull-result.attention {
  border-color:#9e8426;
  background:#3b3316;
  color:#ffe36b;
}
.panicfull-result.rejected {
  border-color:#a64154;
  background:#411b25;
  color:#ff9daf;
}
.panicfull-device-line {
  margin-top:9px;
  color:#8fa7c7;
  font-size:10px;
  line-height:1.45;
  word-break:break-word;
}
.panicfull-device-line b {
  color:#cbdcf1;
}
.panicfull-history-counts {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  margin-top:9px;
}
.panicfull-history-counts span {
  padding:5px 7px;
  border-radius:8px;
  background:#14263a;
  color:#a8bad2;
  font-size:10px;
  font-weight:800;
}
.panicfull-history-counts .good {
  background:#12372a;
  color:#7ee4ad;
}
.panicfull-history-counts .bad {
  background:#3c1b24;
  color:#ff98aa;
}
.panicfull-history-actions {
  display:flex;
  justify-content:flex-end;
  gap:7px;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid rgba(48,77,106,.55);
}

@media(max-width:1180px) {
  .panicfull-layout {
    grid-template-columns:1fr;
  }
  .panicfull-history-panel {
    position:static;
    max-height:none;
  }
  .panicfull-stats {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .panicfull-fields.form-grid.three {
    grid-template-columns:repeat(2,minmax(150px,1fr));
  }
}

@media(max-width:768px) {
  .panicfull-hero {
    display:grid;
    padding:15px;
    border-radius:17px;
  }
  .panicfull-hero-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .panicfull-hero-actions .btn {
    width:100%;
  }
  .panicfull-stats {
    grid-template-columns:1fr 1fr;
    gap:7px;
  }
  .panicfull-stat {
    grid-template-columns:auto 1fr;
    padding:10px;
  }
  .panicfull-stat b {
    grid-column:2;
    font-size:19px;
  }
  .panicfull-stat i {
    grid-row:1/3;
  }
  .panicfull-section-title {
    display:grid;
    align-items:start;
  }
  .panicfull-mark-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .panicfull-mark-actions .btn {
    width:100%;
  }
  .panicfull-check-row {
    grid-template-columns:1fr;
    padding:10px;
  }
  .panicfull-check-buttons {
    grid-template-columns:repeat(3,1fr);
  }
  .panicfull-check-buttons button {
    min-height:38px;
  }
  .panicfull-fields.form-grid.three {
    grid-template-columns:1fr;
  }
  .panicfull-form-actions {
    display:grid;
    grid-template-columns:1fr;
  }
  .panicfull-form-actions .btn {
    width:100%;
  }
  .panicfull-history-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .panicfull-history-actions .btn {
    width:100%;
  }
}

@media(max-width:430px) {
  .panicfull-stats {
    grid-template-columns:1fr;
  }
  .panicfull-hero-actions,
  .panicfull-history-actions {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro 4.6.5 - Analisador de logs Panic Full ===== */
.panic-analyzer-window {
  max-width:1080px;
  margin:0 auto 18px;
  overflow:hidden;
  border:1px solid #2a3e59;
  border-radius:18px;
  background:#f7f9fc;
  box-shadow:0 24px 70px rgba(0,0,0,.32);
}
.panic-analyzer-titlebar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  padding:13px 16px;
  background:#20242d;
  color:#fff;
  border-bottom:1px solid #111820;
}
.panic-analyzer-titlebar>div {
  display:flex;
  align-items:center;
  gap:10px;
}
.panic-analyzer-titlebar b {
  display:block;
  font-size:15px;
}
.panic-analyzer-titlebar small {
  display:block;
  margin-top:2px;
  color:#aab5c5;
  font-size:10px;
}
.panic-analyzer-mark {
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border-radius:9px;
  background:linear-gradient(145deg,#0876ef,#055bc5);
  font-size:12px;
  font-weight:950;
  box-shadow:0 7px 18px rgba(0,105,230,.3);
}
.panic-local-badge {
  padding:6px 9px;
  border:1px solid #3e4d61;
  border-radius:999px;
  color:#b9c5d4;
  font-size:10px;
  font-weight:800;
}
.panic-analyzer-body {
  padding:20px 22px 17px;
  color:#172033;
  background:linear-gradient(180deg,#f9fbfd,#f1f4f8);
}
.panic-drop-zone {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  width:100%;
  min-height:190px;
  padding:19px;
  border:2px dashed #9da5ae;
  border-radius:4px;
  background:#fff;
  color:#111827;
  cursor:pointer;
  transition:.18s ease;
}
.panic-drop-zone:hover,
.panic-drop-zone.dragging {
  border-color:#0878f5;
  background:#eff7ff;
  box-shadow:inset 0 0 0 2px rgba(8,120,245,.09);
}
.panic-drop-zone>b {
  font-size:16px;
  margin-top:4px;
}
.panic-drop-zone>span:not(.panic-upload-icon) {
  margin-top:4px;
  font-size:13px;
}
.panic-drop-zone>small {
  margin-top:9px;
  color:#6a7482;
  font-size:10px;
}
.panic-upload-icon {
  position:relative;
  display:block;
  width:92px;
  height:62px;
  color:#0878f5;
}
.panic-upload-icon::before {
  content:'☁';
  position:absolute;
  inset:-24px 0 0;
  text-align:center;
  font-size:88px;
  line-height:1;
  color:#0878f5;
  font-family:Arial,sans-serif;
}
.panic-upload-icon i::before {
  content:'↑';
  position:absolute;
  z-index:2;
  left:50%;
  top:25px;
  transform:translateX(-50%);
  color:#fff;
  font-style:normal;
  font-size:31px;
  font-weight:950;
  line-height:1;
}
.panic-selected-files {
  display:grid;
  gap:7px;
  margin-top:10px;
}
.panic-selected-files>div {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto auto;
  align-items:center;
  gap:8px;
  padding:8px 10px;
  border:1px solid #cdd5df;
  border-radius:9px;
  background:#fff;
}
.panic-selected-files b {
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:11px;
}
.panic-selected-files small {
  color:#667282;
  font-size:9px;
}
.panic-selected-files button {
  width:27px;
  height:27px;
  border:0;
  border-radius:7px;
  background:#e9eef5;
  color:#334155;
  font-size:18px;
  cursor:pointer;
}
.panic-paste-wrap {
  position:relative;
  margin-top:14px;
}
.panic-paste-wrap textarea {
  width:100%;
  min-height:165px;
  resize:vertical;
  padding:17px 18px 30px;
  border:1px solid #bdc7d3;
  border-radius:7px;
  background:#fff;
  color:#1d2a3c;
  font:13px/1.55 Consolas,monospace;
  text-align:left;
  outline:0;
}
.panic-paste-wrap textarea::placeholder {
  text-align:center;
  color:#6b7788;
  font-family:Arial,sans-serif;
  font-size:14px;
}
.panic-paste-wrap textarea:focus {
  border-color:#0878f5;
  box-shadow:0 0 0 3px rgba(8,120,245,.12);
}
.panic-paste-wrap>span {
  position:absolute;
  right:10px;
  bottom:8px;
  color:#8290a1;
  font-size:9px;
}
.panic-analyzer-actions {
  display:flex;
  justify-content:center;
  gap:6px;
  flex-wrap:wrap;
  margin-top:14px;
}
.panic-analyzer-actions button {
  min-height:44px;
  border:0;
  border-radius:7px;
  font-weight:900;
  cursor:pointer;
}
.panic-analyze-primary {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-width:190px;
  padding:0 20px;
  background:linear-gradient(90deg,#075ecb 0 31%,#0878f5 31%);
  color:#fff;
  font-size:13px;
  box-shadow:0 9px 22px rgba(8,120,245,.23);
}
.panic-analyze-primary span {
  font-size:22px;
}
.panic-analyze-primary:disabled {
  opacity:.65;
  cursor:wait;
}
.panic-square-action {
  width:45px;
  background:#28303d;
  color:#fff;
  font-size:21px;
}
.panic-square-action.blue {
  background:#0878f5;
}
.panic-square-action:hover,
.panic-analyze-primary:hover {
  filter:brightness(1.08);
  transform:translateY(-1px);
}
.panic-analyzer-help {
  max-width:720px;
  margin:14px auto 0;
  padding:13px 15px;
  border:1px solid #a9ccee;
  border-radius:10px;
  background:#eaf5ff;
  color:#203044;
  font-size:12px;
}
.panic-analyzer-help>b {
  display:block;
  color:#075fbd;
}
.panic-analyzer-help ol {
  margin:8px 0 0;
  padding-left:19px;
  line-height:1.7;
}
.panic-privacy-note {
  margin:12px 0 0;
  text-align:center;
  color:#697789;
  font-size:10px;
}
.panic-analyzer-results {
  max-width:1080px;
  margin:0 auto 18px;
}
.panic-result-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:17px 19px;
  border:1px solid #8b6d1b;
  border-radius:17px;
  background:linear-gradient(140deg,#332b12,#161f2c);
  box-shadow:0 15px 38px rgba(0,0,0,.2);
}
.panic-result-summary.danger {
  border-color:#8f3545;
  background:linear-gradient(140deg,#3d1822,#161f2c);
}
.panic-result-summary.neutral {
  border-color:#40536b;
  background:linear-gradient(140deg,#1c2a3b,#151e2a);
}
.panic-result-summary span {
  font-size:9px;
  font-weight:950;
  letter-spacing:.8px;
  color:#ffd95a;
}
.panic-result-summary.danger span {
  color:#ff93a7;
}
.panic-result-summary h2 {
  margin:5px 0 3px;
  color:#f4f8ff;
  font-size:19px;
}
.panic-result-summary p {
  margin:0;
  color:#a9bdd7;
  font-size:11px;
}
.panic-result-summary-actions {
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.panic-result-cards {
  display:grid;
  gap:13px;
  margin-top:13px;
}
.panic-result-card {
  overflow:hidden;
  border:1px solid #8b6d1b;
  border-radius:17px;
  background:linear-gradient(165deg,#101e30,#0b1726);
}
.panic-result-card.danger {
  border-color:#8c3949;
}
.panic-result-card.neutral {
  border-color:#344d6b;
}
.panic-result-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border-bottom:1px solid rgba(120,148,180,.2);
  background:rgba(255,255,255,.025);
}
.panic-result-card-head small {
  display:block;
  color:#8299b7;
  font-size:8px;
  font-weight:950;
}
.panic-result-card-head b {
  display:block;
  margin-top:2px;
  color:#eaf3ff;
  font-size:12px;
}
.panic-result-card-head em {
  padding:5px 8px;
  border-radius:999px;
  background:#2f2813;
  color:#ffe076;
  font-size:9px;
  font-style:normal;
  font-weight:950;
}
.panic-result-card.danger .panic-result-card-head em {
  background:#3f1923;
  color:#ff9cae;
}
.panic-meta-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  padding:12px;
}
.panic-meta-grid>div {
  padding:9px;
  border:1px solid #28425e;
  border-radius:10px;
  background:#0b1929;
}
.panic-meta-grid span {
  display:block;
  color:#7f98b8;
  font-size:8px;
  text-transform:uppercase;
  font-weight:900;
}
.panic-meta-grid b {
  display:block;
  margin-top:4px;
  color:#deebfb;
  font-size:11px;
  word-break:break-word;
}
.panic-cause-box {
  margin:0 12px 12px;
  padding:13px;
  border-left:4px solid #ffd52a;
  border-radius:9px;
  background:#18263a;
}
.panic-result-card.danger .panic-cause-box {
  border-left-color:#ff6172;
}
.panic-cause-box span {
  color:#8199b9;
  font-size:8px;
  text-transform:uppercase;
  font-weight:900;
}
.panic-cause-box h3 {
  margin:4px 0;
  color:#f2f7ff;
  font-size:15px;
}
.panic-cause-box p {
  margin:0;
  color:#a9bdd7;
  font-size:10px;
}
.panic-evidence {
  margin:0 12px 12px;
}
.panic-evidence>span {
  display:block;
  margin-bottom:5px;
  color:#8ea6c4;
  font-size:9px;
  font-weight:900;
}
.panic-evidence code {
  display:block;
  max-height:130px;
  overflow:auto;
  padding:10px;
  border:1px solid #293f59;
  border-radius:9px;
  background:#07121f;
  color:#b9cbe2;
  font-size:10px;
  line-height:1.5;
  white-space:pre-wrap;
  word-break:break-word;
}
.panic-diagnostic-columns {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  padding:0 12px 14px;
}
.panic-diagnostic-columns>div {
  padding:11px;
  border:1px solid #29425d;
  border-radius:11px;
  background:#0b1929;
}
.panic-diagnostic-columns h4 {
  margin:0 0 7px;
  color:#dceaff;
  font-size:11px;
}
.panic-diagnostic-columns ul,
.panic-diagnostic-columns ol {
  margin:0;
  padding-left:18px;
  color:#a9bdd6;
  font-size:10px;
  line-height:1.65;
}
.panic-save-analysis {
  max-width:1080px;
  margin:0 auto 18px;
}
.panic-save-analysis .form-grid.three {
  grid-template-columns:repeat(3,minmax(150px,1fr));
}
.panic-save-actions {
  display:flex;
  justify-content:flex-end;
  gap:8px;
}
.panic-analysis-stats {
  max-width:1080px;
  margin-left:auto;
  margin-right:auto;
}
.panic-analysis-history-panel {
  max-width:1080px;
  margin:0 auto;
}
.panic-analysis-history {
  grid-template-columns:repeat(2,minmax(0,1fr));
}
.panic-history-signature {
  margin-top:9px;
  padding:8px;
  border-left:3px solid #3388ff;
  border-radius:7px;
  background:#101f32;
  color:#cfe0f4;
  font-size:10px;
  line-height:1.4;
}

@media(max-width:768px) {
  .panic-analyzer-window {
    border-radius:15px;
  }
  .panic-analyzer-titlebar {
    align-items:flex-start;
  }
  .panic-local-badge {
    font-size:8px;
  }
  .panic-analyzer-body {
    padding:13px;
  }
  .panic-drop-zone {
    min-height:170px;
    padding:15px;
  }
  .panic-drop-zone>b {
    text-align:center;
    font-size:14px;
  }
  .panic-drop-zone>small {
    text-align:center;
  }
  .panic-paste-wrap textarea {
    min-height:180px;
    font-size:11px;
  }
  .panic-analyzer-actions {
    display:grid;
    grid-template-columns:1fr repeat(3,44px);
  }
  .panic-analyze-primary {
    min-width:0;
    width:100%;
  }
  .panic-result-summary {
    display:grid;
  }
  .panic-result-summary-actions {
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .panic-result-summary-actions .btn {
    width:100%;
  }
  .panic-meta-grid {
    grid-template-columns:1fr 1fr;
  }
  .panic-diagnostic-columns {
    grid-template-columns:1fr;
  }
  .panic-save-analysis .form-grid.three {
    grid-template-columns:1fr;
  }
  .panic-save-actions {
    display:grid;
    grid-template-columns:1fr;
  }
  .panic-save-actions .btn {
    width:100%;
  }
  .panic-analysis-history {
    grid-template-columns:1fr;
  }
}

@media(max-width:420px) {
  .panic-analyzer-titlebar small {
    display:none;
  }
  .panic-local-badge {
    padding:5px 7px;
  }
  .panic-analyzer-actions {
    grid-template-columns:1fr repeat(3,40px);
  }
  .panic-square-action {
    width:40px;
  }
  .panic-meta-grid {
    grid-template-columns:1fr;
  }
}
/* ===== OSPro 4.6.9 - Películas compatíveis com catálogo ampliado ===== */
.film-compat-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:15px;
  padding:22px 24px;
  border:1px solid #285b73;
  border-radius:21px;
  background:radial-gradient(circle at 86% 0,rgba(43,211,180,.22),transparent 36%),linear-gradient(145deg,#0b192b,#102d3b);
  box-shadow:0 18px 46px rgba(0,0,0,.23);
}
.film-compat-kicker {
  display:block;
  color:#63e0c8;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.9px;
}
.film-compat-hero h2 {
  margin:5px 0 6px;
  color:#f4fbff;
  font-size:27px;
}
.film-compat-hero p {
  margin:0;
  max-width:680px;
  color:#a9c3d7;
  font-size:12px;
  line-height:1.5;
}
.film-compat-hero .btn {
  flex:0 0 auto;
  min-height:45px;
}
.film-compat-search-panel {
  margin-bottom:13px;
}
.film-compat-search-row {
  display:grid;
  grid-template-columns:minmax(300px,1fr) 180px 180px auto;
  align-items:end;
  gap:10px;
}
.film-compat-main-search {
  width:100%;
  min-height:45px;
}
.film-compat-search-row label {
  min-width:0;
}
.film-compat-search-row select {
  min-height:45px;
}
.film-compat-search-row>.btn {
  min-height:45px;
}
.film-compat-stats {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px;
}
.film-compat-stats>div {
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:11px;
  padding:13px 15px;
  border:1px solid #294d62;
  border-radius:15px;
  background:linear-gradient(150deg,#0d1c2e,#10283a);
}
.film-compat-stats i {
  display:grid;
  place-items:center;
  width:35px;
  height:35px;
  border-radius:11px;
  background:#123a42;
  color:#67e0ca;
  font-style:normal;
  font-size:17px;
}
.film-compat-stats span {
  color:#9fb7ca;
  font-size:11px;
  font-weight:850;
}
.film-compat-stats b {
  color:#f2f9ff;
  font-size:23px;
}
.film-compat-results {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.film-compat-card {
  min-width:0;
  overflow:hidden;
  border:1px solid #294a60;
  border-radius:17px;
  background:linear-gradient(155deg,#0b1828,#102438);
  box-shadow:0 12px 30px rgba(0,0,0,.14);
}
.film-compat-card-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:14px 15px;
  border-bottom:1px solid rgba(62,103,134,.4);
}
.film-compat-card-head>div:first-child {
  min-width:0;
}
.film-compat-card-head span {
  display:block;
  color:#65d9c4;
  font-size:9px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.5px;
}
.film-compat-card-head h3 {
  margin:4px 0 0;
  color:#eff8ff;
  font-size:15px;
  line-height:1.3;
  word-break:break-word;
}
.film-compat-badges {
  display:flex;
  align-items:flex-end;
  gap:5px;
  flex-direction:column;
}
.film-compat-badges em,
.film-compat-badges b {
  padding:5px 8px;
  border-radius:999px;
  font-size:8px;
  font-style:normal;
  font-weight:950;
  white-space:nowrap;
}
.film-compat-badges em {
  background:#143c46;
  color:#77e7d1;
}
.film-compat-badges b {
  background:#162e48;
  color:#a7cbf3;
}
.film-compat-reference {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:11px 13px 0;
  padding:9px 11px;
  border:1px solid #2b4b64;
  border-radius:10px;
  background:#0b1929;
}
.film-compat-reference span {
  color:#839db7;
  font-size:9px;
}
.film-compat-reference b {
  color:#dcecff;
  font-size:11px;
  text-align:right;
}
.film-compat-models {
  padding:13px 14px 11px;
}
.film-compat-models>span {
  display:block;
  margin-bottom:7px;
  color:#8aa4be;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.film-compat-models>div {
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
.film-compat-models b {
  padding:7px 9px;
  border:1px solid #305671;
  border-radius:9px;
  background:#112b42;
  color:#cde3f7;
  font-size:10px;
}
.film-compat-models b.match {
  border-color:#54dec3;
  background:#133e3e;
  color:#92ffe8;
  box-shadow:0 0 0 2px rgba(84,222,195,.08);
}
.film-compat-meta {
  display:flex;
  gap:7px 13px;
  flex-wrap:wrap;
  padding:0 14px 11px;
  color:#829bb5;
  font-size:9px;
}
.film-compat-meta b {
  color:#c5d9ec;
}
.film-compat-notes {
  margin:0 14px 12px;
  padding:9px 10px;
  border-left:3px solid #3388ff;
  border-radius:7px;
  background:#0a1726;
  color:#9db4cc;
  font-size:10px;
  line-height:1.5;
  white-space:pre-wrap;
}
.film-compat-actions {
  display:flex;
  justify-content:flex-end;
  gap:7px;
  padding:11px 13px;
  border-top:1px solid rgba(58,96,126,.4);
  background:rgba(4,12,21,.22);
}
.film-compat-actions .danger {
  border-color:#8a3b4b;
  color:#ff9bad;
}
.film-compat-empty {
  grid-column:1/-1;
  padding:38px 18px;
  border:1px dashed #35546b;
  border-radius:18px;
  background:#0c1928;
  text-align:center;
}
.film-compat-empty i {
  display:block;
  color:#66dec8;
  font-size:42px;
  font-style:normal;
}
.film-compat-empty h3 {
  margin:8px 0 5px;
  color:#edf6ff;
}
.film-compat-empty p {
  margin:0 0 15px;
  color:#8fa8bf;
}
.film-compat-modal-card {
  max-width:780px;
}
.film-compat-modal-card textarea {
  min-height:115px;
}
.film-compat-modal-card label small {
  display:block;
  margin-top:5px;
  color:#7f96ad;
  font-size:9px;
  line-height:1.4;
}

@media(max-width:1050px) {
  .film-compat-search-row {
    grid-template-columns:1fr 1fr;
  }
  .film-compat-main-search {
    grid-column:1/-1;
  }
  .film-compat-search-row>.btn {
    width:100%;
  }
}

@media(max-width:768px) {
  .film-compat-hero {
    display:grid;
    padding:16px;
    border-radius:17px;
  }
  .film-compat-hero h2 {
    font-size:22px;
  }
  .film-compat-hero .btn {
    width:100%;
  }
  .film-compat-search-row {
    grid-template-columns:1fr;
  }
  .film-compat-main-search {
    grid-column:auto;
  }
  .film-compat-stats {
    grid-template-columns:1fr;
  }
  .film-compat-stats>div {
    padding:11px 13px;
  }
  .film-compat-results {
    grid-template-columns:1fr;
  }
  .film-compat-card-head {
    display:grid;
  }
  .film-compat-badges {
    align-items:flex-start;
    flex-direction:row;
    flex-wrap:wrap;
  }
  .film-compat-reference {
    align-items:flex-start;
    flex-direction:column;
  }
  .film-compat-reference b {
    text-align:left;
  }
  .film-compat-actions {
    display:grid;
    grid-template-columns:repeat(2,1fr);
  }
  .film-compat-actions .btn {
    width:100%;
  }
  .film-compat-actions .danger {
    grid-column:1/-1;
  }
}
/* ===== OSPro 4.7.0 - Navegação lateral clara e compacta no desktop ===== */

@media(min-width:769px) {
  :root {
    --desktop-sidebar-w:248px;
  }
  .sidebar {
    width:var(--desktop-sidebar-w)!important;
    padding:16px 12px 14px!important;
    gap:0!important;
    color-scheme:light!important;
    color:#42526b!important;
    background:#fff!important;
    border-right:1px solid #e4eaf2!important;
    box-shadow:8px 0 28px rgba(30,64,175,.045)!important;
    backdrop-filter:none!important;
  }
  .main {
    margin-left:var(--desktop-sidebar-w)!important;
    width:calc(100% - var(--desktop-sidebar-w))!important;
  }
  .sidebar .brand {
    min-height:48px!important;
    padding:0 5px 14px!important;
    margin:0 0 8px!important;
    gap:10px!important;
    border:0!important;
    border-bottom:1px solid #edf1f6!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .sidebar .brand .brand-mark {
    width:38px!important;
    height:38px!important;
    border:1px solid #dce5f0!important;
    border-radius:11px!important;
    background:#f8fafc!important;
    box-shadow:0 3px 10px rgba(15,23,42,.06)!important;
  }
  .sidebar .brand b {
    color:#17233a!important;
    font-size:15px!important;
    font-weight:800!important;
  }
  .sidebar .brand small {
    color:#8290a6!important;
    font-size:10px!important;
    font-weight:600!important;
  }
  .desktop-premium-menu {
    display:none!important;
  }
  .sidebar nav,
  .side-nav {
    flex:1 1 auto!important;
    min-height:0!important;
    display:block!important;
    padding:0 2px 12px!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    scrollbar-width:thin!important;
    scrollbar-color:#dce5f0 transparent!important;
  }
  .sidebar nav::-webkit-scrollbar,
  .side-nav::-webkit-scrollbar {
    display:block;
    width:4px!important;
  }
  .sidebar nav::-webkit-scrollbar-thumb,
  .side-nav::-webkit-scrollbar-thumb {
    border-radius:999px;
    background:#dce5f0;
  }
  .side-nav .nav-section-title.desktop-section-toggle,
  .sidebar nav .nav-section-title {
    min-height:25px!important;
    display:grid!important;
    grid-template-columns:auto minmax(18px,1fr) 12px!important;
    align-items:center!important;
    gap:9px!important;
    margin:17px 3px 5px!important;
    padding:3px 2px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#667895!important;
    font-size:9px!important;
    font-weight:800!important;
    letter-spacing:.12em!important;
    line-height:1.2!important;
    text-transform:uppercase!important;
    cursor:pointer!important;
  }
  .side-nav .nav-section-title:first-child {
    margin-top:4px!important;
  }
  .side-nav .nav-section-title.desktop-section-toggle:hover {
    color:#315f9f!important;
    background:transparent!important;
  }
  .side-nav .nav-section-title.desktop-section-toggle::after {
    content:none;
  }
  .side-nav .nav-section-title>span {
    white-space:nowrap!important;
  }
  .side-nav .nav-section-title .desktop-section-line {
    display:block!important;
    width:100%!important;
    height:1px!important;
    background:#e7ecf3!important;
    transition:background-color .16s ease!important;
  }
  .side-nav .nav-section-title:hover .desktop-section-line {
    background:#cfd9e6!important;
  }
  .side-nav .nav-section-title .desktop-section-chevron {
    display:block!important;
    width:6px!important;
    height:6px!important;
    justify-self:center;
    border-right:1.5px solid #9aabc0!important;
    border-bottom:1.5px solid #9aabc0!important;
    transform:rotate(45deg) translate(-1px,-1px)!important;
    transition:transform .18s ease,border-color .18s ease!important;
  }
  .side-nav .nav-section-title.desktop-section-collapsed .desktop-section-chevron {
    transform:rotate(-45deg)!important;
  }
  .sidebar nav button,
  .side-nav button {
    width:100%!important;
    min-height:40px!important;
    margin:0 0 2px!important;
    padding:8px 10px!important;
    border:0!important;
    border-radius:12px!important;
    background:transparent!important;
    color:#5b6d88!important;
    display:flex!important;
    align-items:center!important;
    gap:11px!important;
    font-size:13px!important;
    font-weight:500!important;
    line-height:1.2!important;
    text-align:left!important;
    box-shadow:none!important;
    transition:background-color .16s ease,color .16s ease,transform .16s ease!important;
  }
  .sidebar nav button:hover,
  .side-nav button:hover {
    border:0!important;
    background:#f4f7fb!important;
    color:#27466f!important;
    transform:translateX(1px)!important;
  }
  .sidebar nav button.active,
  .side-nav button.active {
    border:0!important;
    background:#edf5ff!important;
    color:#2563eb!important;
    font-weight:700!important;
    box-shadow:none!important;
    transform:none!important;
  }
  .sidebar nav button.active::before,
  .side-nav button.active::before {
    content:'';
    position:absolute;
    left:0;
    top:6px;
    bottom:6px;
    width:4px;
    border-radius:0 5px 5px 0;
    background:#2563eb;
    box-shadow:0 2px 7px rgba(37,99,235,.24);
  }
  .sidebar nav button.active::after,
  .side-nav button.active::after {
    content:'›';
    margin-left:auto;
    color:#3b82f6;
    font-size:20px;
    font-weight:400;
    line-height:1;
  }
  .desktop-nav-icon {
    width:19px!important;
    height:19px!important;
    flex:0 0 19px!important;
    display:grid!important;
    place-items:center!important;
    color:#667895!important;
  }
  .desktop-nav-icon svg {
    display:block!important;
    width:19px!important;
    height:19px!important;
  }
  .sidebar nav button:hover .desktop-nav-icon {
    color:#315f9f!important;
  }
  .sidebar nav button.active .desktop-nav-icon {
    color:#2563eb!important;
  }
  .sidebar nav button>span:not(.desktop-nav-icon),
  .side-nav button>span:not(.desktop-nav-icon) {
    min-width:0!important;
    overflow:hidden!important;
    color:inherit!important;
    font-size:13px!important;
    font-weight:inherit!important;
    line-height:1.2!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  .sidebar .nav-badge {
    min-width:30px!important;
    min-height:21px!important;
    margin-left:auto!important;
    padding:3px 7px!important;
    border:1px solid #d8e2ef!important;
    border-radius:6px!important;
    background:#f8fafc!important;
    color:#52657e!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-size:8px!important;
    font-weight:800!important;
    box-shadow:0 2px 5px rgba(15,23,42,.05)!important;
  }
  .sidebar .nav-badge.hidden {
    display:none!important;
  }
  .session-box {
    position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    flex:0 0 auto!important;
    min-height:54px!important;
    margin-top:8px!important;
    padding:10px 11px!important;
    border:1px solid #e1e8f1!important;
    border-radius:12px!important;
    background:#f8fafc!important;
    color:#283952!important;
    box-shadow:none!important;
  }
  .session-box span {
    color:#283952!important;
    font-size:12px!important;
    font-weight:750!important;
  }
  .session-box small {
    color:#8391a5!important;
    font-size:9px!important;
  }
  .session-box button {
    margin-top:-24px!important;
    padding:4px 7px!important;
    border:0!important;
    border-radius:7px!important;
    background:transparent!important;
    color:#64748b!important;
    font-size:10px!important;
  }
  .session-box button:hover {
    background:#eaf1f8!important;
    color:#315f9f!important;
  }
}
/* Continuidade visual caso a janela cruze o breakpoint sem recarregar. */

@media(max-width:768px) {
  .desktop-nav-icon {
    width:19px!important;
    height:19px!important;
    flex:0 0 19px!important;
    display:grid!important;
    place-items:center!important;
  }
  .desktop-nav-icon svg {
    display:block!important;
    width:19px!important;
    height:19px!important;
  }
}
/* ===== OSPro 4.7.1 - Dashboard claro inspirado no painel de referência ===== */
.dashboard-new-order {
  display:none!important;
}
body.dashboard-light {
  background:#f7f9fc!important;
  color:#162033!important;
}
body.dashboard-light .app {
  background:#f7f9fc!important;
}
body.dashboard-light .main {
  min-height:100vh!important;
  background:#f7f9fc!important;
  color:#162033!important;
}
body.dashboard-light .topbar {
  position:relative!important;
  top:auto!important;
  width:100%!important;
  max-width:920px!important;
  margin:0 auto!important;
  padding:24px 0 18px!important;
  border:0!important;
  background:#f7f9fc!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
body.dashboard-light .topbar h1 {
  color:#111827!important;
  font-size:25px!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
body.dashboard-light .topbar p {
  color:#66758d!important;
  font-size:12px!important;
}
body.dashboard-light .dashboard-new-order {
  display:inline-flex!important;
  height:42px!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#2d73f7,#1d5ee8)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:800!important;
  box-shadow:0 7px 18px rgba(37,99,235,.28)!important;
}
body.dashboard-light .dashboard-new-order:hover {
  filter:none!important;
  transform:translateY(-1px)!important;
  box-shadow:0 10px 22px rgba(37,99,235,.32)!important;
}
#page-dashboard {
  width:100%;
  max-width:920px;
  margin:0 auto;
  padding-bottom:36px;
}
.dashboard-welcome-card {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  min-height:64px;
  margin-bottom:25px;
  padding:12px 18px;
  border:1px solid #b9ecda;
  border-radius:13px;
  background:linear-gradient(90deg,#ecfdf7,#e9fbfb);
  color:#15382f;
  box-shadow:0 4px 12px rgba(5,150,105,.07);
}
.dashboard-welcome-icon {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:linear-gradient(145deg,#16b889,#009f78);
  color:#fff;
  box-shadow:0 6px 13px rgba(5,150,105,.22);
}
.dashboard-welcome-icon svg {
  width:21px;
  height:21px;
}
.dashboard-welcome-card>div {
  min-width:0;
}
.dashboard-welcome-card b {
  display:block;
  color:#123f34;
  font-size:13px;
  font-weight:850;
}
.dashboard-welcome-card small {
  display:block;
  margin-top:2px;
  color:#21826b;
  font-size:10px;
}
.dashboard-welcome-card>button {
  min-height:31px;
  padding:0;
  border:0;
  background:transparent;
  color:#068463;
  display:flex;
  align-items:center;
  gap:9px;
  font-size:9px;
  font-weight:850;
  text-transform:uppercase;
}
.dashboard-welcome-card>button>span {
  padding:6px 9px;
  border:1px solid #aee7d4;
  border-radius:7px;
  background:rgba(255,255,255,.46);
}
.dashboard-welcome-card>button i {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#07966f;
  color:#fff;
  font-size:16px;
  font-style:normal;
  box-shadow:0 5px 10px rgba(5,150,105,.18);
}
.dashboard-finance-card {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:230px;
  margin-bottom:26px;
  padding:19px 20px 18px;
  border:1px solid #253248;
  border-radius:14px;
  background:linear-gradient(145deg,#172235,#1e2a3c);
  color:#f8fbff;
  box-shadow:0 13px 30px rgba(15,23,42,.15);
}
.dashboard-finance-card>*:not(.dashboard-finance-watermark) {
  position:relative;
  z-index:1;
}
.dashboard-finance-watermark {
  position:absolute;
  z-index:0;
  right:27px;
  top:29px;
  color:rgba(255,255,255,.075);
  font-size:70px;
  font-weight:900;
  letter-spacing:-7px;
  user-select:none;
}
.dashboard-finance-head,
.dashboard-profit-row {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:20px;
}
.dashboard-finance-head span,
.dashboard-profit-row span {
  display:block;
  color:#9eb2cd;
  font-size:10px;
  font-weight:800;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.dashboard-finance-head strong {
  display:block;
  margin-top:3px;
  color:#fff;
  font-size:27px;
  line-height:1;
}
.dashboard-balance {
  text-align:right;
  padding-right:1px;
}
.dashboard-balance b {
  display:block;
  margin-top:3px;
  color:#f4f8ff;
  font-size:14px;
}
.dashboard-balance b.negative {
  color:#ff8190;
}
.dashboard-health-track {
  width:100%;
  height:9px;
  overflow:hidden;
  margin:12px 0 6px;
  border:1px solid #4a586b;
  border-radius:99px;
  background:#273447;
}
.dashboard-health-track i {
  display:block;
  width:4%;
  height:100%;
  border-radius:99px;
  background:linear-gradient(90deg,#2a73ff,#37d6ac);
  transition:width .35s ease;
}
.dashboard-finance-card>p {
  margin:0 0 16px;
  padding-bottom:8px;
  border-bottom:1px solid rgba(142,163,190,.22);
  color:#a9bad1;
  font-size:10px;
}
.dashboard-profit-row strong {
  display:block;
  margin-top:5px;
  color:#19d39d;
  font-size:22px;
  line-height:1;
}
.dashboard-profit-row strong.negative {
  color:#ff7180;
}
.dashboard-margin {
  text-align:right;
  padding-top:1px;
}
.dashboard-margin b {
  display:inline-flex;
  align-items:center;
  min-height:21px;
  margin-top:5px;
  padding:3px 7px;
  border-radius:6px;
  background:#0d765e;
  color:#74f0ca;
  font-size:10px;
}
.dashboard-cost-note {
  display:block;
  margin-top:9px;
  color:#8599b5;
  font-size:10px;
}
.dashboard-cost-note b {
  color:#c9d5e5;
  font-weight:750;
}
.dashboard-finance-link {
  min-height:31px;
  margin-top:15px;
  padding:0 11px;
  border:1px solid #46556a;
  border-radius:7px;
  background:#222e40;
  color:#bdc9d9;
  font-size:10px;
  font-weight:700;
}
.dashboard-finance-link:hover {
  border-color:#71839b;
  color:#fff;
}
.dashboard-finance-link span {
  margin-left:4px;
  font-size:15px;
}
.dashboard-status-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:13px;
  margin-bottom:26px;
}
.dashboard-status-card {
  min-width:0;
  min-height:104px;
  padding:12px 9px 10px;
  border:1px solid #d9e2ee;
  border-radius:11px;
  background:#fff;
  color:#172033;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 4px rgba(15,23,42,.025);
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
}
.dashboard-status-card:hover {
  transform:translateY(-2px);
  border-color:#b9c9dd;
  box-shadow:0 8px 18px rgba(15,23,42,.07);
}
.dashboard-status-card i {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  font-style:normal;
}
.dashboard-status-card i svg {
  width:18px;
  height:18px;
}
.dashboard-status-card.analysis i {
  background:#edf4ff;
  color:#3678f5;
}
.dashboard-status-card.parts i {
  background:#fff7e3;
  color:#ef9d12;
}
.dashboard-status-card.service i {
  background:#f6edff;
  color:#9747e8;
}
.dashboard-status-card.done i {
  background:#eafaf3;
  color:#11aa70;
}
.dashboard-status-card>b {
  margin-top:7px;
  color:#050b15;
  font-size:20px;
  line-height:1;
}
.dashboard-status-card>span {
  margin-top:4px;
  color:#526784;
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
}
.dashboard-lists-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.dashboard-light-panel {
  min-width:0;
  min-height:310px;
  overflow:hidden;
  border:1px solid #d9e2ee;
  border-radius:12px;
  background:#fff;
  color:#111827;
  display:flex;
  flex-direction:column;
  box-shadow:0 2px 5px rgba(15,23,42,.02);
}
.dashboard-light-panel>header {
  min-height:49px;
  padding:0 15px;
  border-bottom:1px solid #e1e7f0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.dashboard-light-panel>header h2 {
  margin:0;
  color:#111827;
  font-size:12px;
  font-weight:850;
  text-transform:uppercase;
}
.dashboard-light-panel>header h2 span {
  margin-right:6px;
  color:#3575f4;
}
.dashboard-light-panel>header button {
  padding:5px;
  border:0;
  background:transparent;
  color:#2563eb;
  font-size:10px;
  font-weight:800;
}
.dashboard-list-content {
  flex:1 1 auto;
  min-height:0;
  padding:8px 14px;
}
.dashboard-light-panel>footer {
  min-height:36px;
  padding:0 15px;
  border-top:1px solid #e7ecf2;
  background:#fcfdff;
  color:#7d8da3;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  font-size:9px;
}
.dashboard-light-panel>footer b {
  color:#152033;
}
#page-dashboard .recent-row {
  min-height:48px;
  padding:8px 2px;
  border:0;
  border-bottom:1px solid #edf1f5;
  border-radius:0;
  background:transparent;
  color:#1d293b;
}
#page-dashboard .recent-row:last-child {
  border-bottom:0;
}
#page-dashboard .recent-row:hover {
  background:#f7faff;
  transform:none;
}
#page-dashboard .recent-row b {
  font-size:11px;
}
#page-dashboard .recent-row small {
  color:#718096;
  font-size:9px;
}
#page-dashboard .recent-row>div:last-child {
  color:#1c3558;
  font-size:10px;
  font-weight:850;
}
#page-dashboard .mini-alert {
  min-height:48px;
  padding:8px 2px;
  border:0;
  border-bottom:1px solid #edf1f5;
  display:grid;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:7px;
}
#page-dashboard .mini-alert:last-child {
  border-bottom:0;
}
#page-dashboard .mini-alert>i {
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff3dd;
  color:#d6890a;
  font-size:10px;
  font-style:normal;
  font-weight:900;
}
#page-dashboard .mini-alert b {
  color:#1b2739;
  font-size:10px;
}
#page-dashboard .mini-alert span {
  margin-top:2px;
  color:#718096;
  font-size:9px;
}
.dashboard-empty-state {
  min-height:195px;
  margin:0;
  color:#7c8ca2;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  text-align:center;
  font-size:10px;
}
.dashboard-empty-state i {
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eafaf3;
  color:#13a770;
  font-size:15px;
  font-style:normal;
}
.dashboard-empty-state b {
  color:#45556d;
  font-size:11px;
}
.dashboard-empty-state span {
  display:block;
  color:#8391a5;
  font-size:10px;
}

@media(max-width:980px) {
  .dashboard-lists-grid {
    grid-template-columns:1fr;
  }
}

@media(max-width:768px) {
  body.dashboard-light .main {
    padding-top:0!important;
  }
  body.dashboard-light .topbar {
    padding:15px 2px 13px!important;
  }
  body.dashboard-light .topbar h1 {
    font-size:21px!important;
  }
  body.dashboard-light .topbar p {
    display:block!important;
    font-size:10px!important;
  }
  body.dashboard-light .dashboard-new-order {
    width:auto!important;
    height:38px!important;
    padding:0 11px!important;
    font-size:11px!important;
  }
  #page-dashboard {
    padding-bottom:20px;
  }
  .dashboard-welcome-card {
    grid-template-columns:auto 1fr;
    padding:11px 12px;
    margin-bottom:16px;
  }
  .dashboard-welcome-card>button {
    grid-column:1/-1;
    justify-content:flex-end;
  }
  .dashboard-finance-card {
    min-height:0;
    margin-bottom:17px;
    padding:16px;
  }
  .dashboard-finance-head strong {
    font-size:23px;
  }
  .dashboard-finance-watermark {
    right:17px;
    top:46px;
    font-size:55px;
  }
  .dashboard-cost-note {
    line-height:1.6;
  }
  .dashboard-status-grid {
    grid-template-columns:1fr 1fr;
    gap:9px;
    margin-bottom:17px;
  }
  .dashboard-status-card {
    min-height:96px;
  }
  .dashboard-lists-grid {
    grid-template-columns:1fr;
    gap:11px;
  }
  .dashboard-light-panel {
    min-height:280px;
  }
}

@media(max-width:420px) {
  body.dashboard-light .topbar {
    align-items:flex-start;
  }
  body.dashboard-light .dashboard-new-order {
    padding:0 9px!important;
  }
  .dashboard-welcome-card small {
    line-height:1.35;
  }
  .dashboard-finance-head {
    display:grid;
  }
  .dashboard-balance {
    text-align:left;
  }
  .dashboard-profit-row {
    align-items:flex-end;
  }
}
/* ===== OSPro 4.7.2 - Tema global claro/escuro e páginas centralizadas ===== */
body.theme-light {
  --bg:#f6f8fb;
  --bg2:#eef2f7;
  --panel:#ffffff;
  --panel2:#f8fafc;
  --line:#dbe3ee;
  --text:#172033;
  --muted:#68788f;
  --shadow:0 14px 34px rgba(15,23,42,.08);
  color-scheme:light;
  background:#f6f8fb!important;
  color:#172033!important;
}
body.theme-dark {
  --bg:#07101c;
  --bg2:#0b1524;
  --panel:#101d30;
  --panel2:#16243a;
  --line:#243b5b;
  --text:#f6f9ff;
  --muted:#8fa5c7;
  --shadow:0 20px 50px rgba(0,0,0,.28);
  color-scheme:dark;
}
body.theme-light .app,
body.theme-light .main {
  background:#f6f8fb!important;
  color:#172033!important;
}
body.theme-light .main>.topbar,
body.theme-dark .main>.topbar,
body.theme-light .main>.page,
body.theme-dark .main>.page {
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.theme-light.dashboard-view .main>.topbar,
body.theme-light .main>#page-dashboard,
body.theme-dark.dashboard-view .main>.topbar,
body.theme-dark .main>#page-dashboard {
  max-width:920px!important;
}
body.theme-light .topbar {
  position:relative!important;
  top:auto!important;
  margin-top:0!important;
  margin-bottom:18px!important;
  padding:23px 2px 17px!important;
  border:0!important;
  border-bottom:1px solid #e7ecf3!important;
  border-radius:0!important;
  background:#f6f8fb!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
}
body.theme-light .topbar h1 {
  color:#111827!important;
  font-weight:850!important;
  letter-spacing:-.025em!important;
}
body.theme-light .topbar p {
  color:#697990!important;
}
body.theme-dark .main>.topbar {
  max-width:1180px!important;
  margin:0 auto 20px!important;
  padding:22px 2px 15px!important;
  border-bottom:1px solid rgba(52,82,119,.45)!important;
}
body.dashboard-view .dashboard-new-order {
  display:inline-flex!important;
  height:42px!important;
  padding:0 17px!important;
  border:0!important;
  border-radius:9px!important;
  background:linear-gradient(180deg,#2f76f8,#1e5ee7)!important;
  color:#fff!important;
  font-size:13px!important;
  font-weight:850!important;
  box-shadow:0 7px 18px rgba(37,99,235,.28)!important;
}
body.dashboard-view .dashboard-new-order:hover {
  filter:none!important;
  transform:translateY(-1px)!important;
}
/* Superfícies do modo claro */
body.theme-light .page.active :where(.panel,[class*="-card"],[class*="-panel"],[class*="-box"],[class*="-kpi"],[class*="-hero"],.stat,.column-head,.os-card):not(.dashboard-finance-card):not(.panic-analyzer-titlebar) {
  border-color:#dbe3ee!important;
  background:#fff!important;
  color:#172033!important;
  box-shadow:0 5px 16px rgba(15,23,42,.045)!important;
}
body.theme-light .page.active :where([class*="-row"],.list-row,.recent-row,.receivable-row,.ranking-row,.profit-line,.imei-row) {
  border-color:#e4eaf2!important;
  background:transparent!important;
  color:#22324a!important;
  box-shadow:none!important;
}
body.theme-light .page.active :where([class*="-row"],.list-row,.recent-row,.receivable-row,.ranking-row,.profit-line,.imei-row):hover {
  background:#f5f8fc!important;
}
body.theme-light .page.active :where(h1,h2,h3,h4),
body.theme-light .page.active .panel-head h2,
body.theme-light .page.active .panel-head h3 {
  color:#111827!important;
}
body.theme-light .page.active :where(.panel,[class*="-card"],[class*="-box"],[class*="-row"]):not(.dashboard-finance-card) :where(b,strong) {
  color:#1b2a40!important;
}
body.theme-light .page.active :where(.muted,.hint,.help-text,.finance-note,.muted-line) {
  color:#718096!important;
}
body.theme-light .page.active label>span {
  color:#64748b!important;
}
body.theme-light .page.active input:not([type="color"]),
body.theme-light .page.active select,
body.theme-light .page.active textarea,
body.theme-light .modal input:not([type="color"]),
body.theme-light .modal select,
body.theme-light .modal textarea {
  border-color:#d5deea!important;
  background:#fff!important;
  color:#172033!important;
  box-shadow:none!important;
}
body.theme-light .page.active input:focus,
body.theme-light .page.active select:focus,
body.theme-light .page.active textarea:focus,
body.theme-light .modal input:focus,
body.theme-light .modal select:focus,
body.theme-light .modal textarea:focus {
  border-color:#4c8bf5!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.11)!important;
}
body.theme-light select option {
  background:#fff!important;
  color:#172033!important;
}
body.theme-light .page.active :where(.toolbar,.professional-toolbar,.search,.inline-search,.global-search-box) {
  border-color:#dbe3ee!important;
  background:#fff!important;
  color:#51657f!important;
  box-shadow:none!important;
}
body.theme-light .page.active .search input,
body.theme-light .page.active .inline-search input {
  background:transparent!important;
}
body.theme-light .page.active .btn:not(.primary):not(.danger),
body.theme-light .modal .btn:not(.primary):not(.danger) {
  border-color:#d6dfeb!important;
  background:#fff!important;
  color:#3f526d!important;
  box-shadow:none!important;
}
body.theme-light .page.active .btn:not(.primary):not(.danger):hover,
body.theme-light .modal .btn:not(.primary):not(.danger):hover {
  border-color:#aebed2!important;
  background:#f6f9fd!important;
  color:#1d4f91!important;
}
body.theme-light .page.active .btn.primary,
body.theme-light .modal .btn.primary,
body.theme-light .page.active #newOrder {
  border-color:#2563eb!important;
  background:linear-gradient(180deg,#337af8,#1f60e8)!important;
  color:#fff!important;
  box-shadow:0 6px 16px rgba(37,99,235,.18)!important;
}
body.theme-light .page.active .btn.danger {
  border-color:#f1c5cc!important;
  background:#fff5f6!important;
  color:#c33d51!important;
}
body.theme-light .page.active table {
  color:#24344b!important;
}
body.theme-light .page.active th {
  border-color:#e2e8f0!important;
  background:#f7f9fc!important;
  color:#64748b!important;
}
body.theme-light .page.active td {
  border-color:#e7ecf2!important;
  color:#33445d!important;
}
body.theme-light .page.active tr:hover td {
  background:#f7faff!important;
}
body.theme-light .page.active .table-wrap {
  border-color:#dce4ee!important;
  background:#fff!important;
}
body.theme-light .page.active .column-head {
  border-top-color:#3b82f6;
  background:#f8fafc!important;
  color:#263750!important;
}
body.theme-light .page.active .column-head b {
  background:#eaf0f7!important;
  color:#52657e!important;
}
body.theme-light .page.active .cards {
  background:transparent!important;
}
body.theme-light .page.active .os-card {
  border-color:#d9e2ed!important;
  border-top-color:#20b77a;
  background:#fff!important;
}
body.theme-light .page.active .os-card:hover {
  border-color:#aebed2!important;
  box-shadow:0 9px 20px rgba(15,23,42,.08)!important;
}
body.theme-light .page.active .os-card .device {
  color:#2563eb!important;
}
body.theme-light .page.active .os-card .problem,
body.theme-light .page.active .os-card .id,
body.theme-light .page.active .card-footer {
  color:#718096!important;
}
body.theme-light .page.active .moneybox {
  background:#f3f6fa!important;
  color:#26364d!important;
}
body.theme-light .page.active :where(.income,.good,.ok) b,
body.theme-light .page.active :where(.income,.good,.ok) strong {
  color:#0f9f69!important;
}
body.theme-light .page.active :where(.expense,.bad,.danger) b,
body.theme-light .page.active :where(.expense,.bad,.danger) strong {
  color:#d74659!important;
}
body.theme-light .page.active .status-pill {
  border-color:#d6dfeb!important;
  background:#f7f9fc!important;
  color:#5f718a!important;
}
body.theme-light .page.active .status-pill.good {
  border-color:#a9dfc8!important;
  background:#eaf9f2!important;
  color:#0b8f5d!important;
}
body.theme-light .page.active .status-pill.bad {
  border-color:#efbdc5!important;
  background:#fff2f4!important;
  color:#c23a4e!important;
}
body.theme-light .page.active :where(.cash-summary,.finance-summary-pro,.reports-summary,.stock-summary,.warranty-summary,.purchases-summary,.admin-summary,.profit-summary,.parts-ranking-summary,.imei-summary)>div {
  border-color:#dbe3ee!important;
  background:#fff!important;
  color:#213149!important;
  box-shadow:0 4px 14px rgba(15,23,42,.04)!important;
}
body.theme-light .page.active :where(.chart-bars,.cash-chart,.finance-daily-chart,.reports-daily-chart) {
  border-color:#dce5ef!important;
}
body.theme-light .page.active .chart-bars {
  border-bottom-color:#dce5ef;
}
body.theme-light .page.active .pay-row>div {
  background:#eaf0f6!important;
}
body.theme-light .page.active .alert-item {
  border-color:#dde5ef!important;
  background:#fff!important;
  color:#26364d!important;
}
body.theme-light .page.active .order-tabs {
  border-color:#dbe3ee!important;
  background:#fff!important;
}
body.theme-light .page.active .order-tab {
  color:#65758c!important;
}
body.theme-light .page.active .order-tab.active {
  border-bottom-color:#2563eb;
  color:#2563eb!important;
}
body.theme-light .page.active .checklist,
body.theme-light .page.active .delivery-checklist {
  border-color:#dce4ef!important;
  background:#f8fafc!important;
}
body.theme-light .page.active .check-item,
body.theme-light .page.active .delivery-check {
  border-color:#dce4ef!important;
  background:#fff!important;
  color:#314159!important;
}
body.theme-light .page.active .cron-box,
body.theme-light .page.active .security-note {
  border-color:#d8e2ee!important;
  background:#f7f9fc!important;
  color:#53657e!important;
}
body.theme-light .page.active .cron-box code {
  background:#eef3f8!important;
  color:#245788!important;
}
body.theme-light .settings-shortcut-card:hover {
  border-color:#a9bdd5!important;
  background:#f7faff!important;
}
body.theme-light .theme-setting-field {
  padding:12px 13px!important;
  border:1px solid #cfe0f2!important;
  border-radius:12px!important;
  background:#f4f8fd!important;
}
body.theme-light .theme-setting-field small {
  color:#718096!important;
  font-size:10px!important;
  line-height:1.35!important;
}
body.theme-light .modal-card {
  border-color:#d8e2ed!important;
  background:#fff!important;
  color:#172033!important;
  box-shadow:0 25px 70px rgba(15,23,42,.2)!important;
}
body.theme-light .modal-card :where(h1,h2,h3,h4,b,strong) {
  color:#1b2a40!important;
}
body.theme-light .modal-head p,
body.theme-light .modal-card .muted {
  color:#718096!important;
}
body.theme-light .context-menu {
  border-color:#d7e1ec!important;
  background:#fff!important;
  box-shadow:0 18px 50px rgba(15,23,42,.18)!important;
}
body.theme-light .context-menu button {
  color:#33445d!important;
}
body.theme-light .context-menu button:hover {
  background:#f3f7fb!important;
}
body.theme-light .toast {
  border-color:#bfcee0!important;
  background:#fff!important;
  color:#25364f!important;
}
/* Navegação e Dashboard no modo escuro */

@media(min-width:769px) {
  body.theme-dark .sidebar {
    background:linear-gradient(180deg,#0b1728,#07111f)!important;
    border-right-color:#223955;
    box-shadow:12px 0 32px rgba(0,0,0,.22)!important;
    color-scheme:dark!important;
  }
  body.theme-dark .sidebar .brand {
    border-bottom-color:#20354f;
  }
  body.theme-dark .sidebar .brand .brand-mark {
    border-color:#29415f!important;
    background:#0b1828!important;
  }
  body.theme-dark .sidebar .brand b {
    color:#f4f8ff!important;
  }
  body.theme-dark .sidebar .brand small {
    color:#8fa5c4!important;
  }
  body.theme-dark .side-nav .nav-section-title {
    color:#849bb9!important;
  }
  body.theme-dark .side-nav .nav-section-title .desktop-section-line {
    background:#263b55!important;
  }
  body.theme-dark .side-nav .nav-section-title .desktop-section-chevron {
    border-color:#7f97b5!important;
  }
  body.theme-dark .sidebar nav button,
  body.theme-dark .side-nav button {
    color:#a7b9d1!important;
  }
  body.theme-dark .sidebar nav button:hover,
  body.theme-dark .side-nav button:hover {
    background:#12243a!important;
    color:#fff!important;
  }
  body.theme-dark .sidebar nav button.active,
  body.theme-dark .side-nav button.active {
    background:linear-gradient(90deg,rgba(37,99,235,.28),rgba(20,39,65,.92))!important;
    color:#fff!important;
  }
  body.theme-dark .desktop-nav-icon {
    color:#8fa4bf!important;
  }
  body.theme-dark .sidebar nav button.active .desktop-nav-icon {
    color:#68a2ff!important;
  }
  body.theme-dark .session-box {
    border-color:#263d59!important;
    background:#0e1c2e!important;
    color:#e9f1fb!important;
  }
  body.theme-dark .session-box span {
    color:#edf4fc!important;
  }
  body.theme-dark .session-box small {
    color:#8097b5!important;
  }
  body.theme-dark .session-box button {
    color:#94aac5!important;
  }
  body.theme-dark .sidebar nav::-webkit-scrollbar-thumb,
  body.theme-dark .side-nav::-webkit-scrollbar-thumb {
    background:#314761;
  }
}
body.theme-dark .dashboard-welcome-card {
  border-color:#1e705e!important;
  background:linear-gradient(90deg,#0d302b,#102f36)!important;
  color:#dffbf2!important;
}
body.theme-dark .dashboard-welcome-card b {
  color:#e7fff7!important;
}
body.theme-dark .dashboard-welcome-card small {
  color:#7bcbb5!important;
}
body.theme-dark .dashboard-welcome-card>button>span {
  border-color:#286d5e!important;
  background:#123c35!important;
  color:#8ee4ca!important;
}
body.theme-dark .dashboard-status-card,
body.theme-dark .dashboard-light-panel {
  border-color:#29415f!important;
  background:#101d30!important;
  color:#eef5ff!important;
  box-shadow:0 8px 22px rgba(0,0,0,.13)!important;
}
body.theme-dark .dashboard-status-card>b,
body.theme-dark .dashboard-light-panel h2 {
  color:#f3f7fc!important;
}
body.theme-dark .dashboard-status-card>span {
  color:#9fb2cc!important;
}
body.theme-dark .dashboard-light-panel>header,
body.theme-dark .dashboard-light-panel>footer {
  border-color:#29415f!important;
  background:#0d1929!important;
  color:#849bb9!important;
}
body.theme-dark .dashboard-list-content {
  background:#101d30!important;
}
body.theme-dark #page-dashboard .recent-row,
body.theme-dark #page-dashboard .mini-alert {
  border-color:#263d59!important;
  color:#e7eff9!important;
}
body.theme-dark #page-dashboard .recent-row:hover {
  background:#14243a!important;
}
body.theme-dark #page-dashboard .recent-row b,
body.theme-dark #page-dashboard .mini-alert b {
  color:#eef5ff!important;
}
body.theme-dark #page-dashboard .recent-row small,
body.theme-dark #page-dashboard .mini-alert span {
  color:#8ea4c1!important;
}
body.theme-dark .dashboard-empty-state b {
  color:#cbd8e9!important;
}
body.theme-dark .dashboard-empty-state span {
  color:#849bb9!important;
}
body.theme-dark .theme-setting-field {
  padding:12px 13px!important;
  border:1px solid #304966!important;
  border-radius:12px!important;
  background:#0c1929!important;
}
body.theme-dark .theme-setting-field small {
  color:#8ea4c1!important;
  font-size:10px!important;
  line-height:1.35!important;
}

@media(max-width:768px) {
  body.theme-light .mobile-nav {
    border-top-color:#d8e1ec;
    background:rgba(255,255,255,.97)!important;
    box-shadow:0 -8px 24px rgba(15,23,42,.08)!important;
  }
  body.theme-light .mobile-nav button {
    color:#64748b!important;
  }
  body.theme-light .mobile-nav button.active {
    color:#2563eb!important;
  }
  body.theme-light .mobile-new {
    background:linear-gradient(180deg,#337af8,#1f60e8)!important;
    color:#fff!important;
  }
  body.theme-light .main>.page,
  body.theme-dark .main>.page {
    max-width:100%!important;
  }
}
/* ===== OSPro 4.7.3 - Tema escuro fixo e Mesa de Reparo centralizada ===== */
html,
body,
body.theme-dark,
body.theme-dark .app,
body.theme-dark .main {
  color-scheme:dark!important;
  background:#07101c!important;
  color:#f6f9ff!important;
}
body.theme-dark .main>#page-orders {
  width:100%!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

@media(min-width:769px) {
  body.theme-dark #page-orders .professional-toolbar,
  body.theme-dark #page-orders .order-filter-bar,
  body.theme-dark #page-orders .order-summary-strip,
  body.theme-dark #page-orders .muted-line,
  body.theme-dark #page-orders .professional-kanban {
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body.theme-dark #page-orders .professional-kanban {
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:10px!important;
    overflow-x:visible!important;
    padding:2px 0 18px!important;
  }
  body.theme-dark #page-orders .professional-column {
    width:auto!important;
    min-width:0!important;
  }
  body.theme-dark #page-orders .column-head {
    min-width:0!important;
    gap:7px!important;
    padding:10px 9px!important;
  }
  body.theme-dark #page-orders .column-head span {
    min-width:0!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body.theme-dark #page-orders .professional-card {
    min-width:0!important;
    padding:12px 10px 11px 13px!important;
  }
  body.theme-dark #page-orders .professional-actions {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
  }
  body.theme-dark #page-orders .professional-actions button {
    width:100%!important;
    min-width:0!important;
    padding:7px 4px!important;
    font-size:10px!important;
  }
}
/* ======================================================================
   OSPro Cloud 4.7.8 — identidade do desktop no celular
   Mantém a navegação própria do mobile, mas usa as mesmas superfícies,
   bordas, cores, cartões e hierarquia visual da versão desktop.
   ====================================================================== */

@media(max-width:768px) {
  :root {
    --mobile-edge:12px;
    --mobile-surface:#101d30;
    --mobile-surface-2:#0c1929;
    --mobile-border:#29415f;
  }
  html,
  body,
  body.theme-dark,
  body.theme-dark .app,
  body.theme-dark .main {
    background:radial-gradient(circle at 92% 2%,rgba(51,136,255,.11),transparent 25%),
      linear-gradient(145deg,#06101b,#091321 48%,#07101c)!important;
  }
  body.theme-dark {
    color:#f6f9ff!important;
  }
  body.theme-dark .main {
    padding:calc(66px + env(safe-area-inset-top)) var(--mobile-edge) calc(102px + env(safe-area-inset-bottom))!important;
  }
  body.theme-dark .main>.page {
    width:100%!important;
    max-width:560px!important;
    margin-inline:auto;
  }
  body.theme-dark .main>.topbar {
    display:flex!important;
    visibility:visible;
    pointer-events:auto!important;
    width:calc(100% + 24px)!important;
    max-width:none!important;
    min-height:66px!important;
    margin:calc(-66px - env(safe-area-inset-top)) calc(-1 * var(--mobile-edge)) 14px!important;
    padding:calc(10px + env(safe-area-inset-top)) var(--mobile-edge) 9px!important;
    background:linear-gradient(180deg,rgba(7,16,28,.98),rgba(8,18,31,.94))!important;
    border-bottom:1px solid #243b5b!important;
    box-shadow:0 12px 30px rgba(0,0,0,.24)!important;
    backdrop-filter:blur(20px)!important;
  }
  body.theme-dark .main>.topbar h1 {
    color:#f7faff!important;
    font-size:19px!important;
    font-weight:900!important;
    letter-spacing:-.025em!important;
  }
  body.theme-dark .main>.topbar p {
    display:block!important;
    max-width:68vw!important;
    margin:3px 0 0!important;
    color:#8fa5c7!important;
    font-size:9px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark .sidebar {
    background:linear-gradient(180deg,rgba(12,23,39,.995),rgba(7,16,28,.995))!important;
    border-right:1px solid #2a4363!important;
    box-shadow:24px 0 70px rgba(0,0,0,.58)!important;
    scrollbar-color:#34577f transparent!important;
  }
  body.theme-dark .sidebar .brand {
    border-bottom:1px solid #263d5b!important;
  }
  body.theme-dark .sidebar .brand b {
    color:#f6f9ff!important;
    font-size:16px!important;
  }
  body.theme-dark .sidebar .brand small {
    color:#7f96b7!important;
    font-size:9px!important;
  }
  body.theme-dark .sidebar .nav-section-title {
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    margin:14px 8px 6px!important;
    color:#728aaa!important;
    font-size:9px!important;
    font-weight:950!important;
    letter-spacing:.11em!important;
    text-transform:uppercase!important;
  }
  body.theme-dark .sidebar .nav-section-title::after {
    content:"";
    flex:1;
    height:1px;
    background:#223752;
  }
  body.theme-dark .sidebar nav button {
    padding:9px 11px!important;
    color:#9fb2cc!important;
    border:1px solid transparent!important;
    border-radius:12px!important;
    font-size:12px!important;
    font-weight:750!important;
  }
  body.theme-dark .sidebar nav button:hover,
  body.theme-dark .sidebar nav button.active {
    color:#fff!important;
    background:linear-gradient(90deg,rgba(51,136,255,.22),rgba(51,136,255,.06))!important;
    border-color:rgba(59,132,232,.2)!important;
    box-shadow:inset 3px 0 #ffd52a!important;
  }
  body.theme-dark .sidebar .session-box {
    margin-top:18px!important;
    background:linear-gradient(180deg,#122138,#0d1929)!important;
    border-color:#2b4567!important;
    box-shadow:0 10px 28px rgba(0,0,0,.22)!important;
  }
  body.theme-dark .premium-mobile-menu {
    border:1px solid #29415f!important;
    background:#0d1929!important;
  }
  body.theme-dark .panel,
  body.theme-dark .stat,
  body.theme-dark .dashboard-status-card,
  body.theme-dark .dashboard-light-panel,
  body.theme-dark .today-hero,
  body.theme-dark .today-card,
  body.theme-dark .counter-hero,
  body.theme-dark .admin-hero,
  body.theme-dark .finance-hero,
  body.theme-dark .purchases-hero,
  body.theme-dark .reports-hero {
    background:linear-gradient(180deg,rgba(16,29,48,.98),rgba(10,19,32,.98))!important;
    border:1px solid var(--mobile-border)!important;
    border-radius:16px!important;
    box-shadow:0 14px 36px rgba(0,0,0,.22)!important;
  }
  body.theme-dark .panel {
    padding:14px!important;
  }
  body.theme-dark input,
  body.theme-dark select,
  body.theme-dark textarea,
  body.theme-dark .search {
    background:#0d1929!important;
    border-color:#29415f!important;
    color:#f7fbff!important;
  }
  body.theme-dark .btn {
    border-color:#315071!important;
    background:linear-gradient(180deg,#172a44,#112139)!important;
    color:#edf5ff!important;
    box-shadow:0 6px 16px rgba(0,0,0,.14)!important;
  }
  body.theme-dark .btn.primary {
    border-color:#ffe06b!important;
    background:linear-gradient(180deg,#ffe052,#ffc91e)!important;
    color:#111720!important;
    box-shadow:0 9px 22px rgba(255,205,30,.18)!important;
  }
  body.theme-dark .dashboard-welcome-card {
    min-height:68px!important;
    padding:11px 12px!important;
    border-color:#265a57!important;
    border-radius:15px!important;
    background:linear-gradient(100deg,#102d33,#10243a)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
  }
  body.theme-dark .dashboard-welcome-card b {
    color:#e8fff8!important;
  }
  body.theme-dark .dashboard-welcome-card small {
    color:#84cbbb!important;
  }
  body.theme-dark .dashboard-welcome-card>button {
    min-width:38px!important;
    height:38px!important;
    padding:0 10px!important;
  }
  body.theme-dark .dashboard-welcome-card>button>span {
    display:none!important;
  }
  body.theme-dark .dashboard-finance-card {
    margin-top:12px!important;
    padding:16px!important;
    border-radius:17px!important;
    border-color:#2d4564!important;
    box-shadow:0 18px 42px rgba(0,0,0,.28)!important;
  }
  body.theme-dark .dashboard-finance-head strong {
    font-size:25px!important;
  }
  body.theme-dark .dashboard-status-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px!important;
    margin-top:12px!important;
  }
  body.theme-dark .dashboard-status-card {
    min-height:104px!important;
    padding:13px 10px!important;
  }
  body.theme-dark .dashboard-status-card>b {
    font-size:21px!important;
  }
  body.theme-dark .dashboard-lists-grid {
    grid-template-columns:1fr!important;
    gap:11px!important;
  }
  body.theme-dark #page-orders .professional-toolbar {
    gap:8px!important;
    margin-bottom:10px!important;
  }
  body.theme-dark #page-orders .professional-toolbar .search {
    height:45px!important;
    border-radius:12px!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
  }
  body.theme-dark #page-orders .professional-toolbar .btn {
    border-radius:11px!important;
  }
  body.theme-dark #page-orders .order-filter-bar {
    margin:0 calc(-1 * var(--mobile-edge)) 2px!important;
    padding:2px var(--mobile-edge) 9px!important;
  }
  body.theme-dark #page-orders .order-filter-bar button {
    min-height:35px!important;
    border-color:#2d496c!important;
    background:#101d30!important;
    color:#b9c9df!important;
    border-radius:999px!important;
    font-size:10px!important;
    font-weight:850!important;
  }
  body.theme-dark #page-orders .order-filter-bar button.active {
    background:linear-gradient(180deg,#ffe052,#ffc91e)!important;
    border-color:#ffe06b!important;
    color:#111720!important;
  }
  body.theme-dark #page-orders .order-summary-strip {
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    margin:0 calc(-1 * var(--mobile-edge)) 2px!important;
    padding:0 var(--mobile-edge) 9px!important;
  }
  body.theme-dark #page-orders .order-summary-strip>* {
    flex-basis:138px!important;
    min-width:138px!important;
    min-height:54px!important;
    background:linear-gradient(180deg,#12223a,#0e1c30)!important;
    border-color:#315071!important;
    border-radius:12px!important;
  }
  body.theme-dark #page-orders .order-summary-strip button.active {
    background:linear-gradient(180deg,#ffe052,#ffc91e)!important;
    color:#111720!important;
  }
  body.theme-dark #page-orders .muted-line {
    color:#8fa5c7!important;
    font-size:10px!important;
  }
  body.theme-dark #page-orders .professional-kanban {
    gap:10px!important;
    margin:0 calc(-1 * var(--mobile-edge))!important;
    padding:2px var(--mobile-edge) 16px!important;
    scroll-padding-inline:var(--mobile-edge);
  }
  body.theme-dark #page-orders .professional-column {
    flex:0 0 calc(100vw - 40px)!important;
    width:calc(100vw - 40px)!important;
    min-width:calc(100vw - 40px)!important;
    max-width:390px!important;
  }
  body.theme-dark #page-orders .column-head {
    min-height:43px!important;
    padding:10px 11px!important;
    background:linear-gradient(180deg,#14253c,#0f1d31)!important;
    border:1px solid #2c476a!important;
    border-top:3px solid #3388ff!important;
    border-radius:13px 13px 0 0!important;
    color:#f3f7fd!important;
    box-shadow:0 8px 20px rgba(0,0,0,.12)!important;
  }
  body.theme-dark #page-orders .professional-column .cards {
    min-height:136px!important;
    padding:8px 0 0!important;
  }
  body.theme-dark #page-orders .professional-card {
    padding:14px 12px 12px 15px!important;
    border:1px solid #2d486b!important;
    border-radius:14px!important;
    background:linear-gradient(180deg,#14243a,#0f1c2f)!important;
    box-shadow:0 12px 28px rgba(0,0,0,.2)!important;
  }
  body.theme-dark #page-orders .professional-card h3 {
    font-size:15px!important;
  }
  body.theme-dark #page-orders .professional-card .device {
    color:#4a98ff!important;
  }
  body.theme-dark #page-orders .professional-actions {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body.theme-dark #page-orders .professional-actions button {
    width:100%!important;
    min-height:38px!important;
    border-radius:9px!important;
  }
  body.theme-dark .table-wrap,
  body.theme-dark .stock-table-wrap,
  body.theme-dark .warranty-table-wrap {
    background:#0c1929!important;
    border:1px solid #29415f!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
  }
  body.theme-dark .modal {
    background:rgba(2,8,15,.82)!important;
    backdrop-filter:blur(10px)!important;
  }
  body.theme-dark .modal-card,
  body.theme-dark .modal-card.xl {
    background:linear-gradient(180deg,#101d30,#081421)!important;
  }
  body.theme-dark .modal-head {
    background:linear-gradient(180deg,#122139,#0d1929)!important;
    box-shadow:0 9px 24px rgba(0,0,0,.22)!important;
  }
  body.theme-dark .mobile-nav {
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    min-height:66px!important;
    padding:7px 8px!important;
    border:1px solid #2b4567!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(17,31,51,.98),rgba(9,18,31,.985))!important;
    box-shadow:0 14px 42px rgba(0,0,0,.52),inset 0 1px 0 rgba(255,255,255,.035)!important;
  }
  body.theme-dark .mobile-nav button:not(.mobile-new) {
    min-height:49px!important;
    border-radius:12px!important;
    color:#8198b9!important;
    transition:background .15s ease,color .15s ease!important;
  }
  body.theme-dark .mobile-nav button:not(.mobile-new).active {
    color:#fff!important;
    background:linear-gradient(180deg,rgba(51,136,255,.24),rgba(51,136,255,.08))!important;
    box-shadow:inset 0 -2px #3388ff!important;
  }
  body.theme-dark .mobile-nav span {
    font-size:9px!important;
    letter-spacing:.01em!important;
  }
  body.theme-dark .mobile-new {
    width:54px!important;
    height:54px!important;
    margin:-18px auto 0!important;
    border:1px solid #ffe77b!important;
    border-radius:17px!important;
    background:linear-gradient(180deg,#ffe052,#ffc91e)!important;
    color:#101720!important;
    box-shadow:0 11px 28px rgba(255,205,30,.28)!important;
  }
  body.theme-dark .toast {
    bottom:calc(90px + env(safe-area-inset-bottom))!important;
  }
}

@media(max-width:420px) {
  body.theme-dark .dashboard-finance-head,
  body.theme-dark .dashboard-profit-row {
    gap:10px!important;
  }
  body.theme-dark .dashboard-balance,
  body.theme-dark .dashboard-margin {
    max-width:42%!important;
  }
  body.theme-dark #page-orders .professional-column {
    flex-basis:calc(100vw - 34px)!important;
    width:calc(100vw - 34px)!important;
    min-width:calc(100vw - 34px)!important;
  }
  body.theme-dark .mobile-nav {
    left:6px!important;
    right:6px!important;
  }
}
/* ======================================================================
   OSPro Cloud 4.7.9 — janela da OS alinhada no mobile
   A janela fica acima do cabeçalho e do dock, respeita a área segura do
   iPhone e mantém Fechar, Finalizar e Salvar sempre ao alcance.
   ====================================================================== */
.order-mobile-fixed-actions {
  display:none;
}

@media(max-width:768px) {
  body.modal-open {
    overflow:hidden!important;
    padding-bottom:0!important;
  }
  body.modal-open .mobile-nav,
  body.modal-open .mobile-menu-btn {
    display:none!important;
    visibility:hidden;
    pointer-events:none!important;
  }
  body.theme-dark .modal.show {
    z-index:30000!important;
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    padding:0!important;
    align-items:stretch!important;
    overflow:hidden!important;
    background:#07101c!important;
  }
  body.theme-dark .modal.show>.modal-card,
  body.theme-dark .modal.show>.modal-card.xl {
    position:relative!important;
    inset:auto!important;
    width:100vw!important;
    max-width:100vw!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    margin:0!important;
    padding:0 14px calc(142px + env(safe-area-inset-bottom))!important;
    border:0!important;
    border-radius:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
    background:linear-gradient(180deg,#101d30,#081421)!important;
  }
  body.theme-dark #orderModal .modal-head {
    position:sticky!important;
    top:0!important;
    z-index:32!important;
    min-height:70px!important;
    margin:0 -14px!important;
    padding:calc(12px + env(safe-area-inset-top)) 14px 11px!important;
    align-items:center!important;
    gap:10px!important;
    border-bottom:1px solid #2d496c!important;
    background:linear-gradient(180deg,rgba(17,31,51,.995),rgba(11,23,39,.99))!important;
    box-shadow:0 9px 24px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(18px)!important;
  }
  body.theme-dark #orderModal .modal-head>div {
    min-width:0!important;
    flex:1!important;
  }
  body.theme-dark #orderModal .modal-head h2 {
    max-width:100%!important;
    margin:0!important;
    font-size:18px!important;
    line-height:1.12!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark #orderModal .modal-head p {
    max-width:100%!important;
    margin:4px 0 0!important;
    color:#8fa5c7!important;
    font-size:10px!important;
    line-height:1.25!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark #orderModal .modal-head .icon-btn {
    flex:0 0 44px!important;
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    border-radius:13px!important;
    border-color:#395a82!important;
    background:linear-gradient(180deg,#182b45,#112139)!important;
    font-size:19px!important;
    box-shadow:0 8px 20px rgba(0,0,0,.2)!important;
  }
  body.theme-dark #orderModal .order-tabs {
    position:sticky!important;
    top:calc(70px + env(safe-area-inset-top))!important;
    z-index:30!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:5px!important;
    width:auto!important;
    margin:0 -14px 14px!important;
    padding:8px 10px!important;
    border-bottom:1px solid #29415f!important;
    overflow:visible!important;
    background:rgba(9,20,34,.985)!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
    backdrop-filter:blur(16px)!important;
  }
  body.theme-dark #orderModal .order-tab {
    min-width:0!important;
    width:100%!important;
    min-height:42px!important;
    padding:8px 3px!important;
    border:1px solid transparent!important;
    border-radius:10px!important;
    color:#95aaca!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark #orderModal .order-tab.active {
    border-color:#ffe477!important;
    background:linear-gradient(180deg,#ffe052,#ffc91e)!important;
    color:#111720!important;
    box-shadow:0 7px 18px rgba(255,205,30,.17)!important;
  }
  body.theme-dark #orderModal .order-mobile-fixed-actions {
    position:fixed!important;
    z-index:30020!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    padding:9px!important;
    border:1px solid #365577!important;
    border-radius:17px!important;
    background:linear-gradient(180deg,rgba(18,34,56,.99),rgba(8,18,31,.995))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.035)!important;
    backdrop-filter:blur(20px)!important;
  }
  body.theme-dark #orderModal .order-mobile-fixed-actions .btn {
    width:100%!important;
    min-width:0!important;
    min-height:45px!important;
    padding:0 9px!important;
    border-radius:11px!important;
    font-size:12px!important;
  }
  body.theme-dark #orderModal .order-mobile-fixed-actions .mobile-save-order {
    grid-column:1/-1!important;
    min-height:49px!important;
    font-size:14px!important;
  }
  body.theme-dark #orderModal .order-mobile-fixed-actions .mobile-finish-order {
    border-color:#2d8f61!important;
    background:linear-gradient(180deg,#16452f,#0d2d21)!important;
    color:#9af4bf!important;
  }
  body.nested-modal-open #orderModal .order-mobile-fixed-actions {
    display:none!important;
  }
  body.theme-dark #orderModal .order-tab-panel,
  body.theme-dark #orderModal .os-pro-header,
  body.theme-dark #orderModal .order-wa-quick {
    position:relative!important;
    z-index:1!important;
  }
}

@media(max-width:380px) {
  body.theme-dark #orderModal .modal-head h2 {
    font-size:16px!important;
  }
  body.theme-dark #orderModal .order-tab {
    font-size:10px!important;
    padding-inline:2px;
  }
  body.theme-dark #orderModal .order-mobile-fixed-actions {
    left:6px!important;
    right:6px!important;
  }
}
/* ======================================================================
   OSPro Cloud 4.8.0 — ações contextuais e Menu Mais alinhado
   ====================================================================== */

@media(max-width:768px) {
  body.theme-dark #orderModal .order-mobile-fixed-actions {
    display:none!important;
  }
  body.theme-dark .modal.show>.modal-card,
  body.theme-dark .modal.show>.modal-card.xl {
    padding-bottom:calc(24px + env(safe-area-inset-bottom))!important;
  }
  body.theme-dark #orderModal.new-order-mode .order-existing-only {
    display:none!important;
  }
  body.theme-dark #orderModal .modal-actions.order-final-actions {
    margin:22px 0 4px!important;
  }
  body.theme-dark #orderModal .modal-actions.order-final-actions .finish-pickup-action.hidden,
  body.theme-dark #orderModal .modal-actions.order-final-actions .warranty-return-mobile.hidden,
  body.theme-dark #orderModal .modal-actions.order-final-actions .reopen-os-action.hidden {
    display:none!important;
  }
  body.theme-dark .sidebar {
    left:12px!important;
    right:12px!important;
    top:auto!important;
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:calc(100vw - 24px)!important;
    height:auto!important;
    max-height:calc(100dvh - 104px - env(safe-area-inset-top) - env(safe-area-inset-bottom))!important;
    margin:0!important;
    padding:12px!important;
    border-radius:23px!important;
    transform:translateY(calc(100% + 120px))!important;
  }
  body.theme-dark .sidebar.open {
    transform:translateY(0)!important;
  }
  body.theme-dark .sidebar .brand {
    margin:0 0 9px!important;
    padding:4px 5px 11px!important;
  }
  body.theme-dark .premium-mobile-menu {
    margin:0 0 10px!important;
    padding:10px!important;
    border-radius:16px!important;
  }
  body.theme-dark .premium-menu-title {
    justify-content:flex-start!important;
    align-items:center!important;
    gap:8px!important;
  }
  body.theme-dark .premium-menu-title span {
    margin-left:auto!important;
  }
  body.theme-dark .premium-menu-close {
    flex:0 0 34px!important;
    width:34px!important;
    height:34px!important;
    min-height:34px!important;
    margin-left:2px!important;
    padding:0!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #36577e!important;
    border-radius:10px!important;
    background:linear-gradient(180deg,#172a44,#102039)!important;
    color:#eef5ff!important;
    font-size:15px!important;
    line-height:1!important;
  }
  body.theme-dark .premium-menu-actions {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  body.theme-dark .premium-menu-actions button {
    min-height:44px!important;
    height:44px!important;
    padding:0 9px!important;
    justify-content:flex-start!important;
    border-radius:12px!important;
    font-size:11px!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  body.theme-dark .premium-menu-search {
    height:43px!important;
    min-height:43px!important;
    max-height:43px!important;
    border-radius:13px!important;
  }
  body.theme-dark .sidebar nav,
  body.theme-dark .sidebar .side-nav {
    width:100%!important;
    padding-bottom:5px!important;
  }
  body.theme-dark .sidebar nav button {
    width:100%!important;
    min-height:43px!important;
    margin-bottom:5px!important;
  }
  body.theme-dark .sidebar .session-box {
    margin:10px 0 0!important;
  }
}

@media(max-width:390px) {
  body.theme-dark .premium-menu-title span {
    display:none!important;
  }
  body.theme-dark .premium-menu-close {
    margin-left:auto!important;
  }
}
/* ======================================================================
   OSPro Cloud 4.8.2 — PDF do cliente pronto para compartilhar
   ====================================================================== */
.checkout-wizard-card {
  width:min(760px,96vw);
}
.checkout-wizard-progress {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:7px;
  margin:0 0 14px;
  padding:9px;
  border:1px solid #29415f;
  border-radius:15px;
  background:#0a1728;
}
.checkout-wizard-progress button {
  min-width:0;
  min-height:52px;
  padding:6px 3px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  border:1px solid transparent;
  border-radius:11px;
  background:transparent;
  color:#7f96b7;
  font-size:10px;
  font-weight:850;
}
.checkout-wizard-progress button i {
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border:1px solid #365579;
  border-radius:999px;
  background:#112139;
  color:#a9bad2;
  font-size:10px;
  font-style:normal;
}
.checkout-wizard-progress button.active {
  border-color:#395b82;
  background:linear-gradient(180deg,#152944,#102038);
  color:#fff;
}
.checkout-wizard-progress button.active i {
  border-color:#ffe36b;
  background:linear-gradient(180deg,#ffe052,#ffc91e);
  color:#111720;
}
.checkout-wizard-progress button.completed {
  color:#8fe4b5;
}
.checkout-wizard-progress button.completed i {
  border-color:#238258;
  background:#123d2b;
  color:#8fe4b5;
}
.checkout-wizard-form {
  display:grid;
  gap:14px;
}
.checkout-wizard-step {
  display:none;
}
.checkout-wizard-step.active {
  display:grid;
  gap:14px;
  animation:checkoutStepIn .16s ease-out;
}
@keyframes checkoutStepIn{from{opacity:.35;transform:translateY(5px)}to{opacity:1;transform:none}}
.checkout-step-heading {
  display:flex;
  align-items:center;
  gap:11px;
}
.checkout-step-heading>i {
  flex:0 0 38px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid #ffe36b;
  border-radius:12px;
  background:linear-gradient(180deg,#ffe052,#ffc91e);
  color:#111720;
  font-size:15px;
  font-style:normal;
  font-weight:950;
  box-shadow:0 8px 20px rgba(255,205,30,.15);
}
.checkout-step-heading h3 {
  margin:0;
  color:#f4f8ff;
  font-size:18px;
}
.checkout-step-heading p {
  margin:3px 0 0;
  color:#8fa5c7;
  font-size:11px;
}
.checkout-step-fields {
  margin:0;
}
.checkout-confirm-row {
  min-height:48px;
  padding:11px 12px;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10px;
  border:1px solid #315174;
  border-radius:13px;
  background:#102039;
  color:#dce8f8;
  cursor:pointer;
}
.checkout-confirm-row input {
  flex:0 0 20px;
  width:20px;
  min-height:20px;
  height:20px;
  padding:0;
  accent-color:#ffd52a;
}
.checkout-confirm-row span {
  font-size:12px;
  font-weight:800;
  line-height:1.35;
}
.checkout-warranty-options {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.checkout-warranty-options button {
  min-height:42px;
  border:1px solid #315174;
  border-radius:11px;
  background:linear-gradient(180deg,#14263f,#0e1d31);
  color:#b7c8de;
  font-size:11px;
  font-weight:900;
}
.checkout-warranty-options button.active {
  border-color:#ffe36b;
  background:linear-gradient(180deg,#ffe052,#ffc91e);
  color:#111720;
}
.checkout-step-note,
.checkout-release-note {
  margin:0;
  padding:11px 12px;
  border:1px dashed #3b5f89;
  border-radius:12px;
  background:rgba(51,136,255,.06);
  color:#9fb5d4;
  font-size:11px;
  line-height:1.4;
}
.checkout-review {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.checkout-review>div {
  min-width:0;
  padding:11px;
  border:1px solid #29415f;
  border-radius:12px;
  background:#0d1929;
}
.checkout-review>div.wide {
  grid-column:1/-1;
}
.checkout-review span {
  display:block;
  color:#8299b9;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.checkout-review b {
  display:block;
  margin-top:5px;
  color:#edf5ff;
  font-size:12px;
  line-height:1.4;
  word-break:break-word;
}
.checkout-wizard-nav {
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:8px;
  margin-top:2px;
  padding-top:12px;
  border-top:1px solid #263f61;
}
.checkout-wizard-nav .btn {
  width:100%;
}
.checkout-wizard-nav #checkoutNext,
.checkout-wizard-nav #checkoutSubmit {
  grid-column:2/3;
}
.checkout-wizard-nav #checkoutPrev.hidden + #checkoutNext {
  grid-column:1/-1;
}
.checkout-success {
  min-height:390px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px 12px;
}
.checkout-success.hidden {
  display:none!important;
}
.checkout-success-icon {
  width:76px;
  height:76px;
  display:grid;
  place-items:center;
  border:1px solid #36a96f;
  border-radius:24px;
  background:linear-gradient(180deg,#1d6c48,#10422d);
  color:#b2ffd3;
  font-size:38px;
  box-shadow:0 18px 38px rgba(22,160,96,.2);
}
.checkout-success h3 {
  margin:18px 0 5px;
  font-size:24px;
}
.checkout-success p {
  max-width:470px;
  margin:0;
  color:#9fb4d1;
  font-size:12px;
  line-height:1.5;
}
.checkout-success-actions {
  width:min(440px,100%);
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:9px;
  margin-top:22px;
}
.checkout-success-actions .btn {
  width:100%;
  min-height:46px;
}
.checkout-success-actions .btn.primary {
  grid-column:1/-1;
}
.checkout-success-actions .whatsapp {
  border-color:#25875b;
  background:linear-gradient(180deg,#174b35,#0e3023);
  color:#9af4bf;
}
.checkout-success-actions .checkout-share-pdf {
  grid-column:1/-1;
  min-height:52px;
  font-weight:900;
}
.checkout-success-actions .checkout-share-pdf:disabled {
  opacity:.72;
  cursor:wait;
}
.checkout-success-actions small {
  grid-column:1/-1;
  color:#8fa8ca;
  font-size:10px;
  line-height:1.4;
  text-align:center;
}
.checkout-completed .checkout-wizard-progress {
  display:none!important;
}

@media(max-width:768px) {
  body.theme-dark #checkoutModal .checkout-wizard-card {
    padding:0 12px calc(98px + env(safe-area-inset-bottom))!important;
  }
  body.theme-dark #checkoutModal.checkout-completed .checkout-wizard-card {
    padding-bottom:calc(22px + env(safe-area-inset-bottom))!important;
  }
  body.theme-dark #checkoutModal .modal-head {
    position:sticky!important;
    top:0!important;
    z-index:34!important;
    min-height:70px!important;
    margin:0 -12px!important;
    padding:calc(12px + env(safe-area-inset-top)) 12px 11px!important;
    align-items:center!important;
    background:linear-gradient(180deg,rgba(17,31,51,.995),rgba(11,23,39,.99))!important;
    border-bottom:1px solid #2d496c!important;
  }
  body.theme-dark #checkoutModal .modal-head>div {
    min-width:0!important;
    flex:1!important;
  }
  body.theme-dark #checkoutModal .modal-head h2 {
    font-size:18px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark #checkoutModal .modal-head p {
    font-size:10px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  body.theme-dark #checkoutModal .checkout-wizard-progress {
    position:sticky!important;
    top:calc(70px + env(safe-area-inset-top))!important;
    z-index:32!important;
    gap:3px!important;
    margin:0 -12px 12px!important;
    padding:7px 8px!important;
    border-width:0 0 1px;
    border-radius:0!important;
    background:rgba(9,20,34,.985)!important;
    box-shadow:0 8px 20px rgba(0,0,0,.18)!important;
    backdrop-filter:blur(16px)!important;
  }
  body.theme-dark #checkoutModal .checkout-wizard-progress button {
    min-height:49px!important;
    padding:5px 1px!important;
    font-size:8px!important;
  }
  body.theme-dark #checkoutModal .checkout-wizard-progress button i {
    width:22px!important;
    height:22px!important;
    font-size:9px!important;
  }
  body.theme-dark #checkoutModal .checkout-summary {
    margin-top:0!important;
    padding:11px!important;
    border-radius:13px!important;
  }
  body.theme-dark #checkoutModal .checkout-summary b {
    font-size:15px!important;
  }
  body.theme-dark #checkoutModal .checkout-summary strong {
    font-size:19px!important;
  }
  body.theme-dark #checkoutModal .checkout-step-heading h3 {
    font-size:16px!important;
  }
  body.theme-dark #checkoutModal .checkout-step-heading p {
    font-size:10px!important;
  }
  body.theme-dark #checkoutModal .delivery-checklist-box {
    padding:9px!important;
    border-radius:13px!important;
  }
  body.theme-dark #checkoutModal .delivery-check {
    min-height:44px!important;
    padding:9px!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    font-size:12px!important;
    text-align:left!important;
  }
  body.theme-dark #checkoutModal .delivery-check input {
    flex:0 0 20px!important;
    width:20px!important;
    height:20px!important;
    min-height:20px!important;
    margin:0!important;
    padding:0!important;
  }
  body.theme-dark #checkoutModal .checkout-warranty-options {
    grid-template-columns:1fr 1fr!important;
  }
  body.theme-dark #checkoutModal .checkout-review {
    grid-template-columns:1fr!important;
  }
  body.theme-dark #checkoutModal .checkout-review>div.wide {
    grid-column:auto!important;
  }
  body.theme-dark #checkoutModal .checkout-wizard-nav {
    position:fixed!important;
    z-index:30030!important;
    left:8px!important;
    right:8px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    margin:0!important;
    padding:9px!important;
    border:1px solid #365577!important;
    border-radius:17px!important;
    background:linear-gradient(180deg,rgba(18,34,56,.99),rgba(8,18,31,.995))!important;
    box-shadow:0 18px 48px rgba(0,0,0,.58)!important;
    backdrop-filter:blur(20px)!important;
  }
  body.theme-dark #checkoutModal .checkout-wizard-nav .btn {
    min-height:47px!important;
    border-radius:11px!important;
  }
  body.theme-dark #checkoutModal .checkout-success {
    min-height:calc(100dvh - 90px)!important;
    padding:24px 8px!important;
  }
  body.theme-dark #checkoutModal .checkout-success-actions {
    grid-template-columns:1fr!important;
  }
  body.theme-dark #checkoutModal .checkout-success-actions .btn.primary {
    grid-column:auto!important;
  }
}

@media(max-width:380px) {
  body.theme-dark #checkoutModal .checkout-wizard-progress button span {
    font-size:7.5px!important;
  }
  body.theme-dark #checkoutModal .checkout-step-heading>i {
    flex-basis:34px;
    width:34px;
    height:34px;
  }
}
/* ===== 4.9 SaaS, assinatura por Pix e aprovação manual ===== */
.saas-auth-card {
  width:min(780px,96vw);
}
.auth-switch {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5px;
  margin:22px 0 18px;
  padding:5px;
  background:#0a1626;
  border:1px solid #29415f;
  border-radius:13px;
}
.auth-switch button {
  min-height:42px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#91a8c8;
  font-weight:900;
}
.auth-switch button.active {
  background:#193458;
  color:#fff;
  box-shadow:0 6px 18px rgba(0,0,0,.2);
}
.saas-signup-form {
  margin-top:16px!important;
}
.saas-signup-form label small {
  color:#8299b9;
  font-size:10px;
}
.saas-plan-picker {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:4px 0 6px;
}
.saas-plan-picker label {
  cursor:pointer;
}
.saas-plan-picker input {
  position:absolute;
  opacity:0;
  pointer-events:none;
  width:1px;
  height:1px;
  min-height:1px;
}
.saas-plan-picker label>span {
  min-height:112px;
  padding:15px;
  border:1px solid #2a4569;
  border-radius:14px;
  background:linear-gradient(160deg,#14253c,#0d192a);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  text-transform:none;
  letter-spacing:0;
  transition:.15s;
}
.saas-plan-picker b,
.saas-plan-picker strong,
.saas-plan-picker small {
  display:block;
}
.saas-plan-picker b {
  font-size:14px;
  color:#fff;
}
.saas-plan-picker strong {
  font-size:22px;
  color:#ffd52a;
  margin:5px 0;
}
.saas-plan-picker small {
  color:#8fa6c6;
  font-size:10px;
}
.saas-plan-picker input:checked+span {
  border-color:#ffd52a;
  box-shadow:0 0 0 2px rgba(255,213,42,.12),0 12px 28px rgba(0,0,0,.18);
  background:linear-gradient(160deg,#253143,#142033);
}
.subscription-view {
  min-height:100vh;
  padding:24px;
  background:radial-gradient(circle at 50% 0,rgba(51,136,255,.13),transparent 34%),#07101c;
}
.subscription-shell {
  width:min(1000px,100%);
  margin:0 auto;
}
.subscription-public-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:20px;
  padding:14px 16px;
  border:1px solid #294462;
  border-radius:16px;
  background:#0d1929;
}
.billing-hero {
  display:grid;
  grid-template-columns:1fr auto;
  gap:18px;
  align-items:center;
  padding:24px;
  border:1px solid #315279;
  border-radius:20px;
  background:linear-gradient(145deg,#152842,#0b1728);
  box-shadow:0 24px 60px rgba(0,0,0,.25);
}
.billing-hero .billing-kicker,
.saas-owner-hero>div>span {
  display:block;
  color:#75aaff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.billing-hero h2 {
  margin:7px 0 5px;
  font-size:27px;
}
.billing-hero p {
  margin:0;
  color:#91a7c6;
  max-width:620px;
}
.billing-status {
  padding:9px 13px;
  border-radius:999px;
  border:1px solid #806f28;
  background:#332c12;
  color:#ffe277;
  font-weight:900;
  font-size:11px;
}
.billing-status.good {
  border-color:#247b58;
  background:#0e3225;
  color:#86efb7;
}
.billing-status.bad {
  border-color:#7d3443;
  background:#32171e;
  color:#ffa0aa;
}
.billing-layout {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(290px,.9fr);
  gap:14px;
  margin-top:14px;
}
.billing-card {
  padding:20px;
  border:1px solid #284565;
  border-radius:17px;
  background:linear-gradient(180deg,#111f34,#0a1626);
}
.billing-card h3 {
  margin:0 0 5px;
}
.billing-card>p {
  color:#8fa5c5;
  margin:0 0 16px;
  font-size:12px;
}
.billing-plan-list {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:8px;
}
.billing-plan-button {
  min-height:104px;
  text-align:left;
  border:1px solid #2a4568;
  border-radius:13px;
  background:#13243a;
  color:#fff;
  padding:13px;
}
.billing-plan-button b,
.billing-plan-button span,
.billing-plan-button small {
  display:block;
}
.billing-plan-button span {
  font-size:20px;
  color:#ffd52a;
  margin:5px 0;
  font-weight:900;
}
.billing-plan-button small {
  color:#8da4c4;
}
.billing-plan-button.active {
  border-color:#ffd52a;
  background:#202c3e;
  box-shadow:inset 0 0 0 1px rgba(255,213,42,.2);
}
.pix-box {
  display:grid;
  grid-template-columns:178px 1fr;
  gap:18px;
  align-items:center;
}
.pix-qr {
  width:178px;
  height:178px;
  padding:8px;
  background:#fff;
  border-radius:13px;
}
.pix-info strong {
  display:block;
  font-size:23px;
  color:#ffd52a;
  margin-bottom:5px;
}
.pix-info small {
  display:block;
  color:#8fa6c7;
  line-height:1.45;
}
.pix-copy {
  display:flex;
  gap:7px;
  margin-top:12px;
}
.pix-copy input {
  min-width:0;
  font-size:10px;
}
.pix-copy .btn {
  flex:0 0 auto;
}
.proof-form {
  display:grid;
  gap:10px;
  margin-top:16px;
  padding-top:15px;
  border-top:1px solid #263e5d;
}
.proof-form input[type=file] {
  padding:8px;
  height:auto;
}
.proof-state {
  margin-top:14px;
  padding:13px;
  border-radius:12px;
  border:1px solid #315071;
  background:#0d1b2e;
}
.proof-state b,
.proof-state small {
  display:block;
}
.proof-state small {
  color:#91a7c6;
  margin-top:5px;
  line-height:1.45;
}
.proof-state.review {
  border-color:#806d26;
  background:#302a13;
}
.proof-state.approved {
  border-color:#247b58;
  background:#0e3023;
}
.proof-state.rejected {
  border-color:#833845;
  background:#30171d;
}
.billing-actions {
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:14px;
}
.billing-note {
  margin-top:13px!important;
  font-size:10px!important;
  line-height:1.5;
}
.billing-unlimited {
  padding:30px;
  text-align:center;
}
.billing-unlimited i {
  font-style:normal;
  font-size:46px;
}
.billing-unlimited h3 {
  font-size:24px;
  margin:9px 0 5px;
}
.subscription-notice {
  width:100%;
  margin:0 0 14px;
  padding:11px 14px;
  border:1px solid #79691f;
  border-radius:12px;
  background:linear-gradient(90deg,#322a10,#172035);
  color:#ffe786;
  text-align:left;
  font-weight:850;
}
.subscription-notice strong {
  color:#fff;
}
.subscription-notice.bad {
  border-color:#833b47;
  background:linear-gradient(90deg,#35161d,#172035);
  color:#ff9da8;
}
.saas-owner-hero {
  display:flex;
  justify-content:space-between;
  gap:16px;
  align-items:center;
  padding:22px;
  margin-bottom:14px;
  border:1px solid #305174;
  border-radius:18px;
  background:linear-gradient(145deg,#152842,#0a1727);
}
.saas-owner-hero h2 {
  margin:7px 0 4px;
  font-size:25px;
}
.saas-owner-hero p {
  margin:0;
  color:#91a6c5;
}
.saas-admin-stats {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:10px;
  margin-bottom:14px;
}
.saas-admin-stat {
  padding:15px;
  border:1px solid #2b4769;
  border-radius:14px;
  background:#101e31;
}
.saas-admin-stat span {
  display:block;
  color:#8ea4c4;
  font-size:10px;
  text-transform:uppercase;
}
.saas-admin-stat b {
  display:block;
  margin-top:5px;
  font-size:24px;
}
.saas-cpanel-card {
  margin-bottom:14px;
  padding:18px;
  border:1px solid #315273;
  border-radius:17px;
  background:linear-gradient(145deg,#101f33,#0a1625);
}
.saas-cpanel-head {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}
.saas-cpanel-head>div>span {
  display:block;
  color:#70a8ff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.13em;
}
.saas-cpanel-head h3 {
  margin:6px 0 4px;
  font-size:20px;
}
.saas-cpanel-head p {
  margin:0;
  color:#91a6c5;
}
.cpanel-status {
  flex:0 0 auto;
  padding:8px 11px;
  border:1px solid #5c5260;
  border-radius:999px;
  background:#251f29;
  color:#c5b9cb;
  font-size:10px;
}
.cpanel-status.ready {
  border-color:#27845d;
  background:#0e3325;
  color:#8bf0b9;
}
.cpanel-status.warning {
  border-color:#836d25;
  background:#332b12;
  color:#ffe173;
}
.saas-cpanel-fields {
  display:grid;
  grid-template-columns:1.1fr .7fr 1.2fr;
  gap:10px;
  margin-top:15px;
}
.saas-cpanel-fields label>span {
  display:block;
  margin:0 0 6px;
  color:#91a7c7;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.saas-cpanel-fields input {
  width:100%;
}
.saas-cpanel-foot {
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:12px;
}
.cpanel-toggle {
  display:flex;
  align-items:center;
  gap:8px;
  color:#e8f0fb;
  font-weight:800;
}
.cpanel-toggle input {
  width:18px;
  height:18px;
  min-height:18px;
}
.saas-cpanel-foot>small {
  color:#89a2c3;
}
.saas-cpanel-buttons {
  display:flex;
  gap:8px;
  margin-left:auto;
}
.saas-cpanel-note {
  margin:12px 0 0;
  padding-top:11px;
  border-top:1px solid #263f5e;
  color:#7f96b7;
  font-size:10px;
}
.saas-admin-list {
  display:grid;
  gap:11px;
}
.saas-client-card {
  display:grid;
  border:1px solid #294765;
  border-radius:16px;
}
.saas-client-card h3 {
  margin:0 0 4px;
}
.saas-client-card p,
.saas-client-card small {
  display:block;
  margin:3px 0;
  color:#8fa5c4;
}
.saas-client-card .client-plan b {
  display:block;
}
.saas-client-card .client-actions {
  justify-content:flex-end;
  flex-wrap:wrap;
}
.manual-days-control {
  justify-content:flex-end;
}
.manual-days-control .btn {
  flex:1;
}
.btn.success {
  border-color:#27875d;
  background:#123d2d;
  color:#94f3bd;
}
.btn.danger {
  border-color:#7e3541;
  background:#351820;
  color:#ff9da8;
}
.receipt-link {
  color:#7bb4ff;
  font-weight:800;
}

@media(max-width:800px) {
  .saas-auth-card {
    width:min(580px,96vw);
  }
  .saas-plan-picker,
  .billing-plan-list {
    grid-template-columns:1fr;
  }
  .saas-plan-picker label>span {
    min-height:84px;
  }
  .subscription-view {
    padding:12px;
  }
  .subscription-public-head {
    margin-bottom:12px;
  }
  .billing-hero {
    grid-template-columns:1fr;
    padding:18px;
  }
  .billing-hero h2 {
    font-size:22px;
  }
  .billing-status {
    justify-self:start;
  }
  .billing-layout {
    grid-template-columns:1fr;
  }
  .pix-box {
    grid-template-columns:1fr;
    justify-items:center;
  }
  .pix-info {
    text-align:center;
    width:100%;
  }
  .pix-copy {
    flex-direction:column;
  }
  .pix-copy .btn {
    width:100%;
  }
  .saas-cpanel-head {
    flex-direction:column;
  }
  .saas-cpanel-fields {
    grid-template-columns:1fr;
  }
  .saas-cpanel-foot {
    align-items:flex-start;
    flex-direction:column;
  }
  .saas-cpanel-buttons {
    width:100%;
    margin-left:0;
  }
  .saas-cpanel-buttons .btn {
    flex:1;
  }
  .saas-admin-stats {
    grid-template-columns:1fr 1fr;
  }
  .saas-client-card {
    grid-template-columns:1fr;
  }
  .saas-client-card .client-actions {
    justify-content:flex-start;
  }
  .saas-client-card .client-actions .btn {
    flex:1;
  }
  .saas-client-card .client-actions input {
    max-width:none;
    width:100%;
  }
  .manual-days-control {
    justify-content:flex-start;
  }
  .manual-days-control input {
    width:86px!important;
  }
  .manual-days-control .btn {
    max-width:none;
  }
}

@media(max-width:520px) {
  .login-view {
    padding:10px;
  }
  .login-card {
    padding:18px;
  }
  .auth-switch {
    margin-top:17px;
  }
  .form-grid.two {
    grid-template-columns:1fr;
  }
  .saas-admin-stats {
    grid-template-columns:1fr 1fr;
  }
  .subscription-public-head .login-brand small {
    display:none;
  }
}
/* ===== OSPro 4.9.11 - catálogo isolado por assistência ===== */
.catalog-publish-switch {
  display:flex!important;
  align-items:center;
  gap:12px;
  padding:13px 14px;
  border:1px solid #2b506b;
  border-radius:13px;
  background:#0c1b2c;
  cursor:pointer;
}
.catalog-publish-switch input {
  width:20px;
  height:20px;
  accent-color:#ffd52a;
}
.catalog-publish-switch>span {
  display:grid;
  gap:3px;
}
.catalog-publish-switch b {
  color:#eef7ff;
  font-size:12px;
}
.catalog-publish-switch small {
  color:#91abc2;
  font-size:10px;
}
.catalog-image-preview {
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:9px;
  padding:10px;
  border:1px solid #2a4d66;
  border-radius:12px;
  background:#091727;
}
.catalog-image-preview img {
  width:82px;
  height:70px;
  object-fit:cover;
  border-radius:9px;
  background:#101f31;
}
.catalog-image-preview>div {
  display:grid;
  gap:7px;
}
.catalog-image-preview b {
  color:#dcecff;
  font-size:11px;
}
.catalog-image-preview small {
  color:#8ea8c0;
  font-size:10px;
}
.catalog-public-badge {
  display:inline-flex;
  margin-left:7px;
  padding:3px 6px;
  border:1px solid #24895f;
  border-radius:999px;
  background:#0b382a;
  color:#75efb5;
  font-size:7px;
  font-style:normal;
  font-weight:950;
  text-transform:uppercase;
  vertical-align:middle;
}
.catalog-bridge-box a.disabled {
  pointer-events:none;
  opacity:.45;
}
/* ===== OSPro 4.9.14 - isolamento, onboarding e portal seguro ===== */
.legal-consent {
  display:flex!important;
  align-items:flex-start;
  gap:9px;
  padding:11px 12px;
  border:1px solid #294765;
  border-radius:12px;
  background:#0c1a2b;
  color:#b9c8dc;
  font-size:11px;
  line-height:1.45;
  text-transform:none!important;
  letter-spacing:0!important;
}
.legal-consent input {
  flex:0 0 auto;
  margin-top:1px;
  accent-color:#ffd52a;
}
.legal-consent a {
  color:#7fb7ff;
  font-weight:800;
}
.nav-alert-badge {
  display:inline-grid;
  place-items:center;
  min-width:20px;
  height:20px;
  margin-left:auto;
  padding:0 6px;
  border-radius:999px;
  background:#ff526d;
  color:#fff;
  font-size:9px;
  line-height:1;
}
.portal-photo-option {
  display:flex!important;
  align-items:center;
  gap:9px;
  padding:10px 12px;
  border:1px solid #2b4d6c;
  border-radius:11px;
  background:#0b1a2b;
  text-transform:none!important;
  letter-spacing:0!important;
}
.portal-photo-option input {
  width:19px!important;
  height:19px!important;
  min-height:19px!important;
  accent-color:#ffd52a;
}
.photo-card .photo-portal-toggle {
  position:static;
  width:100%;
  height:auto;
  min-height:30px;
  padding:6px;
  border:0;
  border-top:1px solid #2c4665;
  border-radius:0;
  background:#14273e;
  color:#a9bed7;
  font-size:9px;
  font-weight:800;
}
.photo-card .photo-portal-toggle.active {
  background:#0d392a;
  color:#82efb5;
}
.onboarding-card {
  width:min(720px,calc(100vw - 28px));
}
.onboarding-card .eyebrow {
  display:block;
  color:#72aaff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
}
.onboarding-actions {
  display:flex;
  gap:9px;
  justify-content:flex-end;
}
.locked-modal {
  z-index:10000;
}
.saas-owner-notification-panel {
  margin-bottom:14px;
}
.saas-owner-notifications {
  display:grid;
  gap:8px;
}
.owner-notification {
  display:flex;
  gap:11px;
  align-items:flex-start;
  padding:11px 12px;
  border:1px solid #29455f;
  border-radius:12px;
  background:#0b1828;
}
.owner-notification.unread {
  border-color:#477cb3;
  background:#10243a;
}
.owner-notification>span {
  font-size:19px;
}
.owner-notification b,
.owner-notification p,
.owner-notification small {
  display:block;
}
.owner-notification p {
  margin:3px 0;
  color:#a4b5cb;
  font-size:11px;
}
.owner-notification small {
  color:#7189a8;
  font-size:9px;
}
.privacy-data-panel .settings-actions {
  flex-wrap:wrap;
}

@media(max-width:600px) {
  .onboarding-actions {
    flex-direction:column;
  }
  .onboarding-actions .btn {
    width:100%;
  }
  .saas-owner-notification-panel .panel-head {
    align-items:flex-start;
    flex-direction:column;
  }
  .photo-card .photo-portal-toggle {
    font-size:8px;
  }
}
/* ===== OSPro 4.9.15 - recuperação, privacidade e gestão por assistência ===== */
.application-error-list,
.portal-links-list,
.saas-admin-history {
  display:grid;
  gap:8px;
}
.application-error-row,
.portal-link-row,
.saas-history-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 13px;
  border:1px solid #294762;
  border-radius:12px;
  background:#0b1828;
}
.application-error-row.open {
  border-left:4px solid #ffbd3c;
}
.application-error-row.resolved {
  opacity:.72;
  border-left:4px solid #2bd48b;
}
.application-error-row>div,
.portal-link-row>div:first-child,
.saas-history-row>span {
  display:grid;
  gap:4px;
  min-width:0;
}
.application-error-row span,
.portal-link-row span {
  color:#b9c9db;
  font-size:11px;
}
.application-error-row small,
.portal-link-row small,
.saas-history-row small {
  color:#7f96b3;
  font-size:9px;
}
.saas-history-row span b {
  display:block;
  margin-bottom:3px;
}
.saas-history-row span {
  color:#b9c9db;
  font-size:11px;
}
.portal-link-search {
  display:block;
  max-width:520px;
  margin:0 0 13px;
}
.portal-link-search>span {
  display:block;
  margin-bottom:6px;
  color:#91a8c4;
  font-size:10px;
  font-weight:850;
  text-transform:uppercase;
}
.portal-link-actions {
  display:flex!important;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
}
.portal-link-status {
  display:inline-flex;
  padding:3px 7px;
  border:1px solid #486079;
  border-radius:999px;
  color:#b9c8d9;
  font-style:normal;
  font-weight:850;
}
.portal-link-status.active {
  border-color:#27845d;
  background:#0d3425;
  color:#83efb5;
}
.portal-link-status.expired,
.portal-link-status.cancelled {
  border-color:#803746;
  background:#35171e;
  color:#ff9eaa;
}
.portal-link-status.none {
  border-color:#685d30;
  background:#29240f;
  color:#f5d86a;
}
.backup-actions {
  flex-wrap:wrap;
}
.backup-row.pro>div:first-child {
  min-width:0;
}
.backup-row.pro small+small {
  display:block;
  margin-top:4px;
  color:#83b5e6;
}
.saas-admin-history-panel {
  margin-bottom:14px;
}

@media(max-width:700px) {
  .application-error-row,
  .portal-link-row,
  .saas-history-row {
    align-items:flex-start;
    flex-direction:column;
  }
  .portal-link-actions {
    width:100%;
    justify-content:flex-start;
  }
  .portal-link-actions .btn {
    flex:1;
  }
  .application-error-row>.btn {
    width:100%;
  }
  .backup-actions {
    width:100%;
  }
  .backup-actions .btn {
    flex:1;
  }
  .saas-admin-history-panel .panel-head,
  .portal-links-panel .panel-head {
    align-items:flex-start;
    flex-direction:column;
  }
}
/* ===== OSPro 4.9.19 - painel administrativo e menu móvel estáveis ===== */
.saas-platform-errors-panel {
  margin-bottom:14px;
}
.saas-client-card {
  grid-template-columns:minmax(0,1.15fr) minmax(210px,.72fr) minmax(310px,.95fr);
  gap:0;
  align-items:stretch;
  padding:0;
  overflow:hidden;
  border-color:#315274;
  background:linear-gradient(145deg,#12243a,#091726);
  box-shadow:0 14px 34px rgba(0,0,0,.2);
}
.saas-client-summary,
.saas-client-card .client-plan,
.saas-client-card .client-actions {
  min-width:0;
  padding:18px;
}
.saas-client-summary {
  display:grid;
  grid-template-columns:48px minmax(0,1fr);
  gap:12px;
  align-content:center;
}
.saas-client-avatar {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:1px solid #376693;
  border-radius:15px;
  background:linear-gradient(145deg,#1a3a61,#11243d);
  color:#dcecff;
  font-size:20px;
  font-weight:950;
  text-transform:uppercase;
  box-shadow:inset 0 1px rgba(255,255,255,.05);
}
.client-identity {
  min-width:0;
}
.saas-client-heading {
  display:flex;
  align-items:center;
  gap:9px;
  min-width:0;
}
.saas-client-heading h3 {
  min-width:0;
  margin:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:17px;
}
.saas-account-state {
  display:inline-flex;
  flex:0 0 auto;
  align-items:center;
  min-height:23px;
  padding:3px 8px;
  border:1px solid #6b5e34;
  border-radius:999px;
  background:#2b2513;
  color:#f6d968;
  font-size:9px;
  font-style:normal;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.saas-account-state.active {
  border-color:#267b59;
  background:#0d3325;
  color:#7cebb0;
}
.saas-account-state.blocked,
.saas-account-state.expired {
  border-color:#843a48;
  background:#35171f;
  color:#ff9daa;
}
.saas-client-summary p {
  margin:6px 0 0!important;
  color:#a9bed7!important;
  font-size:11px;
}
.saas-client-meta {
  display:grid;
  gap:3px;
  margin-top:8px;
}
.saas-client-meta span {
  min-width:0;
  color:#7893b4;
  font-size:9px;
  overflow-wrap:anywhere;
}
.saas-client-card .client-plan {
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-left:1px solid rgba(56,87,123,.48);
  border-right:1px solid rgba(56,87,123,.48);
  background:rgba(7,20,34,.34);
}
.saas-card-label,
.saas-db-field>span,
.manual-days-control label>span {
  display:block;
  margin-bottom:6px;
  color:#7694b8;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.saas-client-card .client-plan b {
  font-size:17px;
  line-height:1.25;
}
.saas-client-card .client-plan small {
  font-size:10px;
  line-height:1.3;
}
.saas-client-card .receipt-link {
  display:inline-flex;
  margin-top:7px;
  align-self:flex-start;
}
.saas-client-card .client-actions {
  display:grid;
  align-content:center;
  gap:8px;
}
.saas-db-field {
  display:block;
}
.saas-client-card .client-actions input {
  width:100%;
  max-width:none;
  height:42px;
  min-height:42px;
}
.manual-days-control {
  display:grid;
  grid-template-columns:88px minmax(0,1fr);
  align-items:end;
  gap:8px;
  width:100%;
}
.manual-days-control label {
  display:block;
  min-width:0;
}
.manual-days-control input {
  width:100%!important;
  max-width:none!important;
  text-align:center;
}
.manual-days-control .btn {
  width:100%;
  max-width:none;
  height:42px;
}
.saas-payment-actions,
.saas-account-actions {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.saas-payment-actions .btn,
.saas-account-actions .btn {
  width:100%;
  min-width:0;
  padding-inline:10px;
}
.saas-delete-button {
  width:100%;
}
.saas-account-actions {
  padding-top:2px;
}
.saas-account-actions .btn {
  height:42px;
  overflow:hidden;
  border-radius:12px;
  font-size:12px;
  text-overflow:ellipsis;
  transition:border-color .15s ease,background .15s ease,transform .15s ease;
}
.saas-block-button {
  border-color:#856b27!important;
  background:linear-gradient(180deg,#382e13,#29220f)!important;
  color:#ffe27a!important;
}
.saas-block-button:hover {
  border-color:#b99228!important;
  background:linear-gradient(180deg,#463917,#312812)!important;
}
.saas-delete-button {
  border-color:#843443!important;
  background:linear-gradient(180deg,#35171f,#291119)!important;
  color:#ff9eaa!important;
}
.saas-delete-button:hover {
  border-color:#b5485b!important;
  background:linear-gradient(180deg,#451b26,#32131c)!important;
}

@media(max-width:1120px) {
  .saas-client-card {
    grid-template-columns:minmax(0,1fr) minmax(230px,.75fr);
  }
  .saas-client-card .client-actions {
    grid-column:1/-1;
    border-top:1px solid rgba(56,87,123,.48);
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .saas-client-card .saas-db-field {
    grid-column:1/-1;
  }
  .saas-payment-actions,
  .saas-account-actions {
    align-self:end;
  }
}

@media(max-width:768px) {
  html.menu-open,
  body.menu-open {
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  body.menu-open {
    position:fixed!important;
    inset:var(--menu-lock-top,0) 0 auto 0!important;
    touch-action:none;
  }
  body.menu-open .sidebar {
    touch-action:pan-y;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch;
  }
  body.menu-open .mobile-backdrop {
    touch-action:none;
  }
  #page-orders .professional-toolbar,
  #page-orders .professional-toolbar .search {
    min-width:0!important;
    max-width:100%!important;
  }
  #page-orders .professional-toolbar .search {
    display:flex!important;
    overflow:hidden!important;
    padding-inline:12px;
  }
  #page-orders .professional-toolbar .search>span {
    flex:0 0 22px!important;
    width:22px!important;
    text-align:center!important;
  }
  #page-orders .professional-toolbar .search input {
    flex:1 1 auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    padding:0 2px!important;
    font-size:16px!important;
    line-height:44px!important;
    text-overflow:ellipsis!important;
  }
  .saas-client-card {
    grid-template-columns:1fr;
  }
  .saas-client-summary,
  .saas-client-card .client-plan,
  .saas-client-card .client-actions {
    padding:15px;
  }
  .saas-client-card .client-plan {
    border:0;
    border-top:1px solid rgba(56,87,123,.48);
    border-bottom:1px solid rgba(56,87,123,.48);
  }
  .saas-client-card .client-actions {
    grid-column:auto;
    grid-template-columns:1fr;
    border-top:0;
  }
  .saas-payment-actions,
  .saas-account-actions {
    align-self:auto;
  }
  .saas-client-heading {
    align-items:flex-start;
    flex-direction:column;
    gap:6px;
  }
  .saas-client-heading h3 {
    white-space:normal;
  }
  .manual-days-control {
    grid-template-columns:78px minmax(0,1fr);
  }
}

@media(max-width:420px) {
  .saas-client-summary {
    grid-template-columns:42px minmax(0,1fr);
    gap:10px;
  }
  .saas-client-avatar {
    width:42px;
    height:42px;
    border-radius:13px;
  }
  .saas-payment-actions,
  .saas-account-actions {
    grid-template-columns:1fr;
  }
  .manual-days-control {
    grid-template-columns:72px minmax(0,1fr);
  }
  .manual-days-control .btn {
    padding-inline:8px;
    font-size:11px;
  }
}
/* ===== OSPro 4.9.21 - limpeza de atividades e exclusão de peças ===== */
#partsTable .row-actions {
  display:flex;
  align-items:center;
  gap:5px;
}
#partsTable .row-actions .mini-btn {
  min-height:34px;
  margin:0;
  padding:6px 10px;
}
#partsTable .row-actions .mini-btn.danger {
  border-color:#7e3543;
  background:#311720;
  color:#ff9eaa;
}
.saas-owner-notification-panel #readOwnerNotifications {
  border-color:#6f3340;
  background:#2c161d;
  color:#ffadb6;
}
/* ===== OSPro 4.9.22 - limpeza do histórico administrativo ===== */
.saas-admin-history-panel #clearSaasAdminHistory {
  border-color:#6f3340;
  background:#2c161d;
  color:#ffadb6;
}
/* ===== OSPro 4.9.23 - ações administrativas e aceite legal ===== */
.manual-days-control .saas-grant-button {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-width:0;
  padding:0 12px;
  overflow:hidden;
  border-color:#ffe16a;
  background:linear-gradient(180deg,#ffdc45,#ffc91f);
  color:#101827;
  line-height:1.1;
  white-space:nowrap;
  box-shadow:0 8px 22px rgba(255,205,32,.2),inset 0 1px rgba(255,255,255,.45);
}
.manual-days-control .saas-grant-button:hover {
  border-color:#fff0a3;
  background:linear-gradient(180deg,#ffe365,#ffd12b);
  transform:translateY(-1px);
}
.manual-days-control .saas-grant-button>span {
  display:grid;
  place-items:center;
  flex:0 0 24px;
  width:24px;
  height:24px;
  border-radius:8px;
  background:rgba(12,23,39,.13);
  font-size:14px;
  font-weight:950;
}
.manual-days-control .saas-grant-button>strong {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  font:inherit;
  font-weight:950;
}
.legal-consent {
  position:relative;
  align-items:center!important;
  min-height:58px;
  padding:13px 14px!important;
  border-color:#315777!important;
  background:linear-gradient(145deg,#10243a,#0a1828)!important;
  cursor:pointer;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease;
}
.legal-consent:hover {
  border-color:#4c7ca8!important;
  background:linear-gradient(145deg,#142b45,#0c1c2f)!important;
}
.legal-consent:has(input:checked) {
  border-color:#2f976b!important;
  background:linear-gradient(145deg,#103728,#0b241c)!important;
  box-shadow:inset 0 0 0 1px rgba(77,224,155,.12);
}
.legal-consent input {
  appearance:none;
  -webkit-appearance:none;
  display:block!important;
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  min-height:24px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #53779b!important;
  border-radius:7px!important;
  background:#071422!important;
  background-position:center;
  background-repeat:no-repeat;
  background-size:15px 15px;
  box-shadow:inset 0 1px 3px rgba(0,0,0,.35)!important;
  cursor:pointer;
}
.legal-consent input:checked {
  border-color:#ffd52a!important;
  background-color:#ffd52a;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%230b1726' stroke-width='3.4' stroke-linecap='round' stroke-linejoin='round' d='m5 12 4 4L19 7'/%3E%3C/svg%3E");
}
.legal-consent input:focus-visible {
  outline:3px solid rgba(92,164,255,.35)!important;
  outline-offset:3px;
}
.legal-consent>span {
  min-width:0;
  color:#c9d7e8;
  font-size:11px;
  font-weight:750;
  line-height:1.55;
}
.legal-consent>span a {
  text-underline-offset:2px;
}

@media(max-width:420px) {
  .manual-days-control .saas-grant-button {
    gap:6px;
    padding-inline:8px;
  }
  .manual-days-control .saas-grant-button>span {
    flex-basis:21px;
    width:21px;
    height:21px;
    border-radius:7px;
  }
  .legal-consent {
    align-items:flex-start!important;
  }
}
/* ===== OSPro 4.9.24 - identidade da assistência separada do White Label ===== */
.brand-interface-preview {
  border-style:solid;
  background:linear-gradient(145deg,rgba(255,213,42,.08),#0d1929);
}
.brand-interface-mark {
  display:grid;
  place-items:center;
  flex:0 0 64px;
  width:64px;
  height:64px;
  border:1px solid color-mix(in srgb,var(--yellow) 50%,#294765);
  border-radius:16px;
  background:linear-gradient(145deg,color-mix(in srgb,var(--yellow) 24%,#13243a),#0a1727);
  color:var(--yellow);
  font-size:20px;
  font-weight:950;
  box-shadow:inset 0 1px rgba(255,255,255,.08);
}
.assistance-settings-panel {
  border-color:#315d80;
  background:linear-gradient(180deg,rgba(51,136,255,.055),rgba(12,25,42,.96));
}
.company-logo-preview {
  border-style:solid;
  border-color:#315777;
  background:linear-gradient(145deg,#10243a,#0a1828);
}
.company-logo-preview img {
  box-shadow:0 8px 22px rgba(0,0,0,.24);
}
.company-logo-preview small {
  max-width:540px;
  line-height:1.45;
}

@media(max-width:768px) {
  .brand-interface-mark {
    flex-basis:56px;
    width:56px;
    height:56px;
    border-radius:14px;
  }
  .company-logo-preview {
    align-items:flex-start;
  }
}
/* ===== OSPro 4.9.25 - logo própria da ferramenta ===== */
.brand-interface-preview img {
  border-color:color-mix(in srgb,var(--yellow) 55%,#294765);
  background:#07101c;
  box-shadow:0 8px 22px rgba(0,0,0,.28),0 0 0 3px color-mix(in srgb,var(--yellow) 10%,transparent);
}
/* ===== OSPro 4.9.26 - seletor de logo limpo e acessível ===== */
.file-picker {
  position:relative;
  display:flex;
  align-items:center;
  gap:11px;
  min-height:48px;
  padding:6px;
  border:1px solid #315777;
  border-radius:12px;
  background:linear-gradient(145deg,#0e2034,#091727);
  overflow:hidden;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;
}
.file-picker:hover {
  border-color:#4f82af;
  background:linear-gradient(145deg,#122943,#0b1b2e);
}
.file-picker:focus-within {
  border-color:var(--blue);
  box-shadow:0 0 0 3px rgba(51,136,255,.17);
}
.file-picker input[type=file] {
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  opacity:0!important;
  cursor:pointer!important;
}
.file-picker-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:34px;
  padding:0 14px;
  border:1px solid #5799d1;
  border-radius:9px;
  background:linear-gradient(180deg,#245f96,#174974);
  color:#fff;
  font-size:12px;
  font-weight:900;
  box-shadow:inset 0 1px rgba(255,255,255,.16);
}
.file-picker-button::before {
  content:'▣';
  margin-right:7px;
  color:#bfe1ff;
  font-size:11px;
}
.file-picker-name {
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#a9bdd7;
  font-size:12px;
  font-weight:700;
}

@media(max-width:520px) {
  .file-picker {
    align-items:stretch;
    flex-direction:column;
    gap:6px;
    padding:7px;
  }
  .file-picker-button {
    width:100%;
    min-height:38px;
  }
  .file-picker-name {
    padding:2px 5px;
    text-align:center;
  }
}
/* ===== OSPro 4.9.31 - validação do número e confirmação do WhatsApp ===== */
.interface-colors-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:5px;
  padding:13px 15px;
  border:1px solid #315777;
  border-radius:13px;
  background:linear-gradient(145deg,#10253c,#0a192a);
}
.interface-colors-head b {
  color:#f3f8ff;
  font-size:14px;
}
.interface-colors-head small {
  max-width:620px;
  color:#91a8c7;
  line-height:1.4;
  text-align:right;
}
.color-custom-field {
  padding:12px;
  border:1px solid #294867;
  border-radius:13px;
  background:#0b1929;
}
.color-picker-control {
  display:grid!important;
  grid-template-columns:76px 1fr;
  align-items:center;
  gap:12px;
  margin-top:7px;
  padding:7px;
  border:1px solid #315777;
  border-radius:11px;
  background:#071523;
}
.color-picker-control input[type=color] {
  width:76px!important;
  height:42px!important;
  min-height:42px!important;
  padding:3px!important;
  border:0!important;
  border-radius:8px!important;
  background:transparent!important;
  cursor:pointer;
}
.color-picker-control strong {
  display:flex;
  align-items:center;
  min-height:42px;
  padding:0 13px;
  border-radius:8px;
  background:#102640;
  color:#dcecff;
  font-size:13px;
  letter-spacing:.8px;
}
.interface-color-actions {
  display:flex;
  justify-content:flex-end;
  margin-top:-3px;
}

@media(max-width:620px) {
  .interface-colors-head {
    display:grid;
  }
  .interface-colors-head small {
    text-align:left;
  }
  .color-picker-control {
    grid-template-columns:64px 1fr;
  }
  .color-picker-control input[type=color] {
    width:64px!important;
  }
  .interface-color-actions .btn {
    width:100%;
    justify-content:center;
  }
}
/* ===== OSPro 4.9.31 - instância WhatsApp no aplicativo portátil ===== */
.whatsapp-instance-panel {
  border-color:#237b57;
  background:radial-gradient(circle at 90% 0,rgba(34,211,142,.10),transparent 30%),linear-gradient(180deg,#102339,#0b1929);
}
.wa-instance-mode {
  display:grid;
  gap:4px;
  margin:4px 0 14px;
  padding:12px 14px;
  border:1px solid #269765;
  border-radius:12px;
  background:rgba(20,92,62,.22);
}
.wa-instance-mode span {
  color:#59ecaa;
  font-size:13px;
  font-weight:950;
}
.wa-instance-mode small {
  color:#a6bdd4;
  line-height:1.45;
}
.wa-instance-layout {
  display:grid;
  grid-template-columns:minmax(260px,.78fr) minmax(340px,1.22fr);
  gap:14px;
}
.wa-instance-qr-card,
.wa-instance-setup-card {
  padding:15px;
  border:1px solid #315270;
  border-radius:15px;
  background:#0a1727;
}
.wa-instance-qr-card>b {
  display:block;
  color:#f2f7ff;
  font-size:16px;
}
.wa-instance-qr-card>p {
  min-height:34px;
  margin:5px 0 11px;
  color:#91a9c7;
  font-size:11px;
  line-height:1.45;
}
.wa-instance-qr {
  display:grid;
  place-items:center;
  align-content:center;
  gap:9px;
  width:min(100%,292px);
  min-height:270px;
  padding:12px;
  border:1px dashed #3e698d;
  border-radius:14px;
  background:#fff;
  color:#49657e;
  text-align:center;
}
.wa-instance-qr canvas,
.wa-instance-qr img,
.wa-instance-qr table {
  max-width:100%!important;
  height:auto!important;
}
.wa-instance-qr-card>small {
  display:block;
  margin-top:10px;
  color:#7f99b7;
  line-height:1.45;
}
.wa-connected-mark {
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  border:2px solid #2be497;
  border-radius:50%;
  background:#0d4b35;
  color:#85ffc6;
  font-size:45px;
  box-shadow:0 0 0 8px rgba(43,228,151,.08);
}
.wa-instance-qr .wa-connected-mark~b {
  color:#0d593d;
}
.wa-instance-setup-card h3 {
  margin:0 0 9px;
}
.wa-instance-setup-card ol {
  margin:0 0 14px;
  padding-left:21px;
  color:#b7cae1;
  font-size:12px;
  line-height:1.7;
}
.wa-instance-actions {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.wa-instance-actions .btn {
  min-height:39px;
}
.wa-instance-credentials {
  display:grid;
  grid-template-columns:1.3fr .7fr 1.2fr auto;
  gap:8px;
  align-items:end;
  margin-top:14px;
  padding:13px;
  border:1px solid #c79c27;
  border-radius:14px;
  background:rgba(255,206,39,.07);
}
.wa-instance-credentials>div {
  min-width:0;
}
.wa-instance-credentials span {
  display:block;
  margin-bottom:5px;
  color:#d9bb5f;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
}
.wa-instance-credentials code {
  display:block;
  min-height:42px;
  overflow:hidden;
  padding:11px;
  border:1px solid #3b5472;
  border-radius:9px;
  background:#071321;
  color:#dcecff;
  font-size:10px;
  line-height:1.5;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media(max-width:900px) {
  .wa-instance-layout {
    grid-template-columns:1fr;
  }
  .wa-instance-qr {
    margin:auto;
  }
  .wa-instance-credentials {
    grid-template-columns:1fr 1fr;
  }
  .wa-instance-credentials>div:first-child,
  .wa-instance-credentials>div:nth-child(3) {
    grid-column:1/-1;
  }
}

@media(max-width:560px) {
  .wa-instance-actions {
    display:grid;
  }
  .wa-instance-actions .btn {
    width:100%;
    justify-content:center;
  }
  .wa-instance-credentials {
    grid-template-columns:1fr;
  }
  .wa-instance-credentials>div {
    grid-column:1!important;
  }
  .wa-instance-credentials>.btn {
    width:100%;
    justify-content:center;
  }
  .wa-instance-qr {
    min-height:245px;
  }
}

/* ==========================================================================
   CAMADA DE CORRECAO (era o assets/mc-force-ui.css)
   Tudo daqui para baixo foi escrito para vencer as regras acima. Ao mexer
   em algum componente, o certo e corrigir a regra original la em cima e
   apagar a correcao daqui, em vez de empilhar mais um !important.
   ========================================================================== */
/* ========================================================================== 
   OSPRO 4.9.57 - CSS FORÇADO
   Arquivo carregado depois do style.css para corrigir busca e aplicar o tema.
   ========================================================================== */
/* Correção forte para a busca da Mesa de Reparo */
body.premium-ui #page-orders .professional-toolbar {
  display:grid!important;
  grid-template-columns:minmax(0, 1fr) auto!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px!important;
  overflow:visible!important;
}
body.premium-ui #page-orders .professional-toolbar .search,
body.premium-ui #page-orders .toolbar .search,
body.premium-ui #page-orders .search {
  box-sizing:border-box;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  height:50px!important;
  min-height:50px!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 15px!important;
  overflow:hidden!important;
  background:rgba(6, 11, 19, 0.72)!important;
  border:1px solid rgba(255, 255, 255, 0.10)!important;
  border-radius:16px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.04), 0 10px 24px rgba(0,0,0,0.18)!important;
}
body.premium-ui #page-orders .professional-toolbar .search:focus-within,
body.premium-ui #page-orders .toolbar .search:focus-within,
body.premium-ui #page-orders .search:focus-within {
  border-color:rgba(250, 204, 21, 0.55)!important;
  box-shadow:0 0 0 3px rgba(250, 204, 21, 0.12), inset 0 1px 0 rgba(255,255,255,0.05), 0 14px 30px rgba(0,0,0,0.26)!important;
}
body.premium-ui #page-orders .professional-toolbar .search > span,
body.premium-ui #page-orders .toolbar .search > span,
body.premium-ui #page-orders .search > span {
  flex:0 0 22px!important;
  width:22px!important;
  height:22px!important;
  display:inline-grid!important;
  place-items:center!important;
  color:#94a3b8!important;
  font-size:18px!important;
  line-height:1!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}
body.premium-ui #orderSearch,
body.premium-ui #orderSearch:hover,
body.premium-ui #orderSearch:focus,
body.premium-ui #page-orders .professional-toolbar .search input,
body.premium-ui #page-orders .professional-toolbar .search input:hover,
body.premium-ui #page-orders .professional-toolbar .search input:focus {
  appearance:none;
  -webkit-appearance:none;
  box-sizing:border-box;
  flex:1 1 auto!important;
  display:block!important;
  min-width:0!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:#f8fafc!important;
  font-size:14.5px!important;
  line-height:48px!important;
  text-overflow:ellipsis!important;
}
body.premium-ui #orderSearch::placeholder,
body.premium-ui #page-orders .professional-toolbar .search input::placeholder {
  color:#8da1bd;
  opacity:1;
}
/* A mesma correção para outras buscas do sistema */
body.premium-ui .inline-search,
body.premium-ui .global-search-box .search,
body.premium-ui .counter-search-row .search,
body.premium-ui .film-compat-main-search {
  box-sizing:border-box;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:48px!important;
  padding:0 14px!important;
  overflow:hidden!important;
  background:rgba(6, 11, 19, 0.68)!important;
  border:1px solid rgba(255, 255, 255, 0.10)!important;
  border-radius:15px!important;
}
body.premium-ui .inline-search input,
body.premium-ui .global-search-box .search input,
body.premium-ui .counter-search-row .search input,
body.premium-ui .film-compat-main-search input {
  flex:1 1 auto!important;
  min-width:0!important;
  width:100%!important;
  height:46px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

@media(max-width:768px) {
  body.premium-ui #page-orders .professional-toolbar {
    grid-template-columns:1fr!important;
  }
  body.premium-ui #page-orders .professional-toolbar .search,
  body.premium-ui #page-orders .toolbar .search,
  body.premium-ui #page-orders .search {
    height:46px!important;
    min-height:46px!important;
    border-radius:14px!important;
  }
  body.premium-ui #orderSearch,
  body.premium-ui #page-orders .professional-toolbar .search input {
    height:44px!important;
    min-height:44px!important;
    line-height:44px!important;
  }
}
/* OSPro 4.9.61 - acabamento OS / Revenda Pro / PDV */
.search {
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  background:rgba(8,15,27,.78)!important;
  border:1px solid var(--border-subtle,rgba(255,255,255,.08))!important;
  border-radius:14px!important;
  padding:6px 12px!important;
  min-height:48px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03)!important;
}
.search:focus-within {
  border-color:var(--border-focus,rgba(250,204,21,.5))!important;
  box-shadow:0 0 0 3px rgba(250,204,21,.12)!important;
}
.search input {
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 0!important;
  min-width:0!important;
  width:100%!important;
}
.search input:focus {
  box-shadow:none!important;
  border:0!important;
}
.toolbar.professional-toolbar {
  display:grid!important;
  grid-template-columns:minmax(260px,1fr) auto auto!important;
  gap:12px!important;
  align-items:center!important;
}
.resale-panel {
  overflow:hidden!important;
}
.resale-hero {
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:18px!important;
  padding:22px!important;
  border-radius:20px!important;
  background:linear-gradient(135deg,rgba(250,204,21,.12),rgba(15,23,42,.35))!important;
  border:1px solid rgba(250,204,21,.14)!important;
}
.resale-hero h2 {
  font-size:clamp(22px,2.5vw,34px)!important;
  letter-spacing:-.04em!important;
  margin:6px 0 8px!important;
}
.resale-actions,
.resale-hero-actions,
.resale-section-head,
.modal-actions {
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.resale-flow {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(130px,1fr))!important;
  gap:10px!important;
  margin:16px 0!important;
}
.resale-flow-step {
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:5px!important;
  text-align:left!important;
  padding:16px!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:var(--text-main,#f8fafc)!important;
}
.resale-flow-step b {
  display:grid!important;
  place-items:center!important;
  width:30px!important;
  height:30px!important;
  border-radius:999px!important;
  background:var(--primary-gradient,linear-gradient(135deg,#facc15,#ca8a04))!important;
  color:#111!important;
}
.resale-flow-step.active,
.resale-flow-step:hover {
  border-color:rgba(250,204,21,.34)!important;
  background:rgba(250,204,21,.08)!important;
  transform:translateY(-2px)!important;
}
.resale-tabs {
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:14px 0 18px!important;
}
.resale-tabs .btn-tab {
  min-height:42px!important;
  padding:10px 14px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.04)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#cbd5e1!important;
}
.resale-tabs .btn-tab.active {
  background:var(--primary-gradient,linear-gradient(135deg,#facc15,#ca8a04))!important;
  color:#111!important;
  border-color:transparent!important;
  font-weight:800!important;
}
.resale-summary {
  display:grid!important;
  grid-template-columns:repeat(6,minmax(130px,1fr))!important;
  gap:10px!important;
}
.resale-card {
  padding:15px!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.resale-card span {
  display:block!important;
  color:var(--text-muted,#94a3b8)!important;
  font-size:12px!important;
}
.resale-card b {
  display:block!important;
  margin-top:7px!important;
  font-size:22px!important;
}
.resale-overview-grid {
  display:grid!important;
  grid-template-columns:1.15fr .85fr!important;
  gap:14px!important;
}
.resale-checklist {
  display:grid!important;
  gap:10px!important;
  margin:0!important;
  padding-left:20px!important;
}
.resale-shortcuts {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.resale-box {
  padding:18px!important;
  border-radius:18px!important;
}
.resale-section-head {
  justify-content:space-between!important;
  align-items:center!important;
  margin-bottom:14px!important;
}
.tax-preview {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(120px,1fr))!important;
  gap:10px!important;
  margin:8px 0!important;
}
.tax-preview span {
  display:block!important;
  padding:12px!important;
  border-radius:14px!important;
  background:rgba(250,204,21,.07)!important;
  border:1px solid rgba(250,204,21,.14)!important;
  color:#cbd5e1!important;
}
.tax-preview b {
  display:block!important;
  margin-top:4px!important;
  color:#fff!important;
  font-size:17px!important;
}
.resale-settings-hint {
  padding:14px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
  color:#cbd5e1!important;
}
.resale-settings-grid textarea {
  min-height:110px!important;
}
.row-actions {
  display:flex!important;
  gap:6px!important;
  flex-wrap:wrap!important;
}
.mini-btn {
  border-radius:999px!important;
  padding:7px 10px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  background:rgba(255,255,255,.055)!important;
  color:#e5e7eb!important;
}
.mini-btn:hover {
  background:rgba(250,204,21,.12)!important;
  color:#fff!important;
}
.mini-btn.danger {
  border-color:rgba(239,68,68,.34)!important;
  color:#fecaca!important;
}
.table-wrap {
  border-radius:16px!important;
  overflow:auto!important;
  border:1px solid rgba(255,255,255,.07)!important;
}

@media(max-width:980px) {
  .toolbar.professional-toolbar {
    grid-template-columns:1fr!important;
  }
  .resale-flow,
  .resale-summary {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .resale-overview-grid {
    grid-template-columns:1fr!important;
  }
  .tax-preview {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:560px) {
  .resale-hero {
    display:block!important;
    padding:16px!important;
  }
  .resale-actions {
    margin-top:12px!important;
  }
  .resale-flow,
  .resale-summary,
  .resale-shortcuts,
  .tax-preview {
    grid-template-columns:1fr!important;
  }
  .resale-tabs {
    overflow-x:auto!important;
    flex-wrap:nowrap!important;
    padding-bottom:5px!important;
  }
  .resale-tabs .btn-tab {
    white-space:nowrap!important;
  }
}
/* === Patch 4.9.62 | Revenda Pro + Fluxo diário === */
#page-resale .resale-shortcuts .btn span {
  display:inline!important;
}

@media(max-width:560px) {
  #page-resale .resale-shortcuts {
    grid-template-columns:1fr!important;
  }
}
/* ========================================================================== 
   OSPRO 5.0 - ULTRA PREMIUM GLASSMORPHISM & FIXES
   ========================================================================== */
:root {
  --bg-dark-base:#060b13;
  --panel-glass:rgba(13, 22, 38, 0.72);
  --border-glass:rgba(255, 255, 255, 0.08);
  --border-glass-hover:rgba(255, 255, 255, 0.16);
  --gold-primary:#facc15;
  --gold-gradient:linear-gradient(135deg, #fde047 0%, #eab308 60%, #ca8a04 100%);
  --gold-glow:0 4px 20px rgba(234, 179, 8, 0.28);
}
body.theme-dark,
body.premium-ui {
  letter-spacing:-0.01em;
}
body.premium-ui .glass-panel,
body.premium-ui .glass-card,
body.premium-ui .panel,
body.premium-ui .modal-card {
  transition:border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}
body.premium-ui .btn.primary,
body.premium-ui .btn.primary-glow,
body.premium-ui .panic-analyze-primary,
body.premium-ui .save-os-mobile-main {
  background:var(--gold-gradient)!important;
  color:#060b13!important;
  border:none!important;
  font-weight:800!important;
  border-radius:12px!important;
  box-shadow:var(--gold-glow)!important;
  transition:all 0.2s cubic-bezier(0.4, 0, 0.2, 1)!important;
}
body.premium-ui .btn.primary:hover,
body.premium-ui .btn.primary-glow:hover {
  box-shadow:0 6px 25px rgba(234, 179, 8, 0.45)!important;
  filter:brightness(1.05);
}
body.premium-ui .btn.primary:active,
body.premium-ui .btn.primary-glow:active {
  transform:translateY(0)!important;
}
body.premium-ui .btn.glass-btn,
body.premium-ui .btn:not(.primary):not(.primary-glow):not(.danger) {
  border-radius:12px!important;
  backdrop-filter:blur(8px);
  transition:all 0.2s ease;
}
body.premium-ui .btn.glass-btn:hover,
body.premium-ui .btn:not(.primary):not(.primary-glow):not(.danger):hover {
  background:rgba(255, 255, 255, 0.09)!important;
  border-color:var(--border-glass-hover)!important;
  color:#ffffff!important;
  transform:translateY(-1px);
}
.column-head {
  background:rgba(255, 255, 255, 0.03)!important;
  border-radius:14px 14px 0 0!important;
  padding:12px 16px!important;
  border-top-width:3px;
}
.os-card.professional-card {
  background:rgba(18, 28, 48, 0.65)!important;
  border:1px solid rgba(255, 255, 255, 0.06)!important;
  border-radius:14px!important;
  padding:14px!important;
  box-shadow:0 10px 20px -5px rgba(0, 0, 0, 0.45)!important;
  transition:all 0.25s cubic-bezier(0.4, 0, 0.2, 1)!important;
}
.os-card.professional-card:hover {
  transform:translateY(-3px) scale(1.01)!important;
  border-color:rgba(250, 204, 21, 0.3)!important;
  box-shadow:0 16px 30px -8px rgba(0, 0, 0, 0.6)!important;
}
body.premium-ui .search,
body.premium-ui #page-orders .professional-toolbar .search {
  background:rgba(8, 14, 24, 0.8)!important;
  border:1px solid rgba(255, 255, 255, 0.09)!important;
  border-radius:14px!important;
  box-shadow:inset 0 2px 4px rgba(0,0,0,0.3)!important;
  transition:all 0.2s ease!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  padding:0 14px!important;
  min-height:48px!important;
  box-sizing:border-box;
}
body.premium-ui .search:focus-within {
  border-color:var(--gold-primary)!important;
}
body.premium-ui #orderSearch,
body.premium-ui .search input {
  background:transparent!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  color:#f8fafc!important;
  width:100%!important;
  height:44px!important;
  line-height:44px!important;
}
#toast {
  position:fixed!important;
  bottom:24px!important;
  right:24px!important;
  left:auto!important;
  background:rgba(15, 23, 42, 0.95)!important;
  border:1px solid rgba(250, 204, 21, 0.35)!important;
  color:#fff!important;
  border-radius:14px!important;
  padding:12px 20px!important;
  font-weight:600!important;
  box-shadow:0 15px 35px rgba(0, 0, 0, 0.6), 0 0 15px rgba(250, 204, 21, 0.15)!important;
  backdrop-filter:blur(12px)!important;
  transform:translateY(20px);
  opacity:0;
  transition:transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease!important;
  z-index:9999!important;
}
#toast.show {
  transform:translateY(0)!important;
  opacity:1!important;
}
/* ==========================================================================
   OSPRO 5.0.0 - FINAL FIXES SOBRE O TEMA DO TEMPLATE
   Mantém os botões da Revenda Pro sem cortar e deixa o Fluxo diário premium.
   ========================================================================== */
body.premium-ui .search,
body.premium-ui #page-orders .professional-toolbar .search {
  min-width:0!important;
  overflow:hidden!important;
}
body.premium-ui .search input {
  min-width:0!important;
  box-sizing:border-box;
}
#page-resale .resale-panel {
  overflow:hidden!important;
}
#page-resale .resale-overview-grid {
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important;
  gap:16px!important;
  align-items:start!important;
}
#page-resale .resale-help-card,
#page-resale .resale-shortcuts-card,
#page-resale .resale-box {
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}
#page-resale .resale-shortcuts {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
#page-resale .resale-shortcuts .btn {
  width:100%!important;
  min-width:0!important;
  min-height:56px!important;
  padding:13px 14px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.25!important;
  overflow-wrap:anywhere;
  word-break:normal;
}
#page-resale .resale-note {
  margin-top:14px!important;
  line-height:1.55!important;
  padding:13px!important;
  border-radius:14px!important;
}
#page-finance .finance-box-pro.wide-chart {
  overflow:hidden!important;
  position:relative!important;
}
#page-finance #financeDailyChart {
  display:block!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  overflow:visible!important;
  background:transparent!important;
}
#page-finance .finance-chart-shell {
  display:grid!important;
  gap:14px!important;
}
#page-finance .finance-chart-legend {
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  align-items:center!important;
}
#page-finance .legend-item {
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.09)!important;
  color:#d7e3f5!important;
  font-size:12px!important;
  font-weight:800!important;
}
#page-finance .legend-item i {
  display:block!important;
  width:12px!important;
  height:12px!important;
  border-radius:999px!important;
}
#page-finance .legend-item.income i {
  background:linear-gradient(180deg,#45e2a0,#19b46d)!important;
}
#page-finance .legend-item.expense i {
  background:linear-gradient(180deg,#ff8192,#eb4d5f)!important;
}
#page-finance .finance-chart-track {
  display:flex!important;
  align-items:stretch!important;
  gap:12px!important;
  overflow-x:auto!important;
  padding:4px 2px 8px!important;
  scrollbar-width:thin;
}
#page-finance .finance-day-card {
  min-width:108px!important;
  flex:0 0 108px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.025))!important;
  border:1px solid rgba(255,255,255,.085)!important;
  border-radius:18px!important;
  padding:12px 10px 10px!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
#page-finance .finance-day-values {
  display:grid!important;
  gap:6px!important;
  margin-bottom:10px!important;
}
#page-finance .finance-amount {
  display:block!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.25!important;
  padding:7px 8px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.06)!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#page-finance .finance-amount.income {
  color:#7cf0b7!important;
}
#page-finance .finance-amount.expense {
  color:#ff9eaa!important;
}
#page-finance .finance-day-card .chart-bars {
  height:150px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  gap:8px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  padding:0 2px 10px!important;
  margin-bottom:8px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,0))!important;
  border-radius:14px 14px 10px 10px!important;
}
#page-finance .finance-day-card .chart-bars i {
  width:24px!important;
  min-height:4px!important;
  border-radius:10px 10px 4px 4px!important;
  box-shadow:0 8px 16px rgba(0,0,0,.16)!important;
}
#page-finance .finance-day-card .chart-bars .income {
  background:linear-gradient(180deg,#45e2a0,#19b46d)!important;
}
#page-finance .finance-day-card .chart-bars .expense {
  background:linear-gradient(180deg,#ff8192,#eb4d5f)!important;
}
#page-finance .finance-day-card small {
  display:block!important;
  text-align:center!important;
  color:#a6bad8!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
}
body.premium-ui .settings-shortcut-grid {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important;
  gap:12px!important;
}
body.premium-ui .settings-shortcut-card {
  min-width:0!important;
  text-align:left!important;
  overflow:hidden!important;
}

@media(max-width:1180px) {
  #page-resale .resale-overview-grid {
    grid-template-columns:1fr!important;
  }
}

@media(max-width:768px) {
  #page-resale .resale-shortcuts {
    grid-template-columns:1fr!important;
  }
  #page-finance .finance-day-card {
    min-width:96px!important;
    flex-basis:96px!important;
  }
  #page-finance .finance-day-card .chart-bars {
    height:126px!important;
  }
}

@media(max-width:560px) {
  #page-resale .resale-shortcuts .btn {
    min-height:52px!important;
  }
  #page-finance .finance-chart-track {
    gap:10px!important;
  }
  #page-finance .finance-day-card {
    min-width:92px!important;
    flex-basis:92px!important;
    padding:10px 8px!important;
  }
  #page-finance .finance-day-card .chart-bars i {
    width:20px!important;
  }
}
/* OSPro 5.0.2 - Bot WhatsApp n8n */
.n8n-whatsapp-panel {
  overflow:hidden!important;
  position:relative!important;
}
.n8n-whatsapp-panel:before {
  content:"";
  position:absolute;
  inset:-140px auto auto -120px;
  width:280px;
  height:280px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(34,197,94,.18),transparent 70%);
  pointer-events:none;
}
.n8n-bot-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin:14px 0!important;
}
.n8n-bot-card {
  padding:15px!important;
  border-radius:16px!important;
  display:grid!important;
  gap:7px!important;
  min-height:104px!important;
}
.n8n-bot-card b {
  font-size:15px!important;
  color:#fff!important;
}
.n8n-bot-card span {
  font-size:12px!important;
  line-height:1.45!important;
  color:var(--text-muted,#94a3b8)!important;
}
.n8n-endpoint-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin:12px 0!important;
}
.n8n-endpoint-grid label {
  display:grid!important;
  gap:6px!important;
}
.n8n-endpoint-grid label span {
  font-size:11px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  color:var(--text-muted,#94a3b8)!important;
}
.n8n-endpoint-grid input {
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  background:rgba(6,11,19,.78)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
  color:#dbeafe!important;
  min-height:42px!important;
  padding:0 10px!important;
}

@media(max-width:980px) {
  .n8n-bot-grid,
  .n8n-endpoint-grid {
    grid-template-columns:1fr!important;
  }
}
/* OSPro 5.0.3 - WhatsApp modo simples */
.n8n-whatsapp-panel {
  display:none!important;
}
.simple-whatsapp-panel {
  overflow:hidden!important;
  position:relative!important;
}
.simple-whatsapp-panel:before {
  content:"";
  position:absolute;
  inset:-120px auto auto -120px;
  width:280px;
  height:280px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(34,197,94,.16),transparent 70%);
  pointer-events:none;
}
.simple-wa-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  margin:14px 0!important;
}
.simple-wa-card {
  padding:16px!important;
  border-radius:18px!important;
  display:grid!important;
  gap:8px!important;
  min-height:108px!important;
}
.simple-wa-card b {
  font-size:15px!important;
  color:#fff!important;
}
.simple-wa-card span {
  font-size:12px!important;
  line-height:1.45!important;
  color:var(--text-muted,#94a3b8)!important;
}
.simple-wa-actions {
  display:flex!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  margin-top:12px!important;
}
.simple-wa-actions .btn {
  min-height:44px!important;
}

@media(max-width:980px) {
  .simple-wa-grid {
    grid-template-columns:1fr!important;
  }
}
/* === OSPro 5.0.5 | Melhorias visuais inspiradas nos templates n8n === */
.dashboard-automation-strip {
  position:relative!important;
  overflow:hidden!important;
  padding:18px!important;
  margin:16px 0!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:linear-gradient(135deg,rgba(255,213,42,.09),rgba(51,136,255,.08),rgba(34,197,94,.06))!important;
}
.dashboard-automation-strip:before {
  content:"";
  position:absolute;
  right:-90px;
  top:-120px;
  width:260px;
  height:260px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(255,213,42,.20),transparent 70%);
  pointer-events:none;
}
.automation-strip-head {
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-end!important;
  gap:14px!important;
  margin-bottom:14px!important;
  position:relative!important;
  z-index:1!important;
}
.automation-strip-head span {
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  color:#ffd86b!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.automation-strip-head b {
  font-size:14px!important;
  color:#f7fbff!important;
  text-align:right!important;
}
.automation-strip-grid {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  position:relative!important;
  z-index:1!important;
}
.automation-strip-grid button,
.automation-strip-grid a {
  appearance:none;
  border:1px solid rgba(255,255,255,.10)!important;
  background:rgba(5,12,22,.56)!important;
  border-radius:18px!important;
  padding:14px!important;
  text-align:left!important;
  color:#eaf2ff!important;
  text-decoration:none!important;
  display:grid!important;
  gap:7px!important;
  min-height:116px!important;
  cursor:pointer!important;
  transition:.18s ease!important;
  box-shadow:0 12px 28px rgba(0,0,0,.18)!important;
}
.automation-strip-grid button:hover,
.automation-strip-grid a:hover {
  transform:translateY(-2px)!important;
  border-color:rgba(255,213,42,.35)!important;
  background:rgba(255,255,255,.075)!important;
}
.automation-strip-grid i {
  font-style:normal!important;
  font-size:24px!important;
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.automation-strip-grid strong {
  font-size:14px!important;
  line-height:1.2!important;
  color:#fff!important;
}
.automation-strip-grid small {
  font-size:12px!important;
  line-height:1.35!important;
  color:#9fb2cc!important;
}
.smart-ideas-panel {
  position:relative!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.03))!important;
}
.smart-ideas-panel:after {
  content:"";
  position:absolute;
  left:-120px;
  bottom:-130px;
  width:280px;
  height:280px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(51,136,255,.16),transparent 72%);
  pointer-events:none;
}
.smart-ideas-grid {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
  gap:12px!important;
  position:relative!important;
  z-index:1!important;
}
.smart-idea-card {
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:20px!important;
  padding:16px!important;
  text-align:left!important;
  color:#eaf2ff!important;
  text-decoration:none!important;
  background:rgba(8,17,31,.54)!important;
  display:grid!important;
  gap:8px!important;
  min-height:112px!important;
  cursor:pointer!important;
  transition:.18s ease!important;
}
.smart-idea-card:hover {
  transform:translateY(-2px)!important;
  border-color:rgba(255,213,42,.30)!important;
  background:rgba(255,255,255,.075)!important;
}
.smart-idea-card b {
  font-size:15px!important;
  color:#fff!important;
  line-height:1.25!important;
}
.smart-idea-card span {
  font-size:12.5px!important;
  line-height:1.45!important;
  color:#9fb2cc!important;
}
.settings-shortcut-grid .settings-shortcut-card,
.simple-wa-card {
  transition:.18s ease!important;
}
.settings-shortcut-grid .settings-shortcut-card:hover,
.simple-wa-card:hover {
  transform:translateY(-2px)!important;
  border-color:rgba(255,213,42,.28)!important;
}

@media(max-width:1200px) {
  .automation-strip-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:768px) {
  .automation-strip-head {
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .automation-strip-head b {
    text-align:left!important;
  }
  .automation-strip-grid {
    grid-template-columns:1fr!important;
  }
  .automation-strip-grid button,
  .automation-strip-grid a {
    min-height:auto!important;
  }
  .smart-ideas-grid {
    grid-template-columns:1fr!important;
  }
}
/* === Patch 5.0.6 | Tabelas de compras, pré-estoque e fornecedores === */
body.premium-ui #page-purchases .table-wrap,
body.premium-ui #page-resale .table-wrap {
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:visible;
  border-radius:18px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(15,23,42,.28);
}
body.premium-ui #purchasesTable,
body.premium-ui #suppliersTable,
body.premium-ui #devicePurchasesTable,
body.premium-ui #deviceStockTable {
  width:100%;
  min-width:860px;
  table-layout:auto;
  border-collapse:separate;
  border-spacing:0;
}
body.premium-ui #purchasesTable th,
body.premium-ui #suppliersTable th,
body.premium-ui #devicePurchasesTable th,
body.premium-ui #deviceStockTable th {
  white-space:nowrap;
  position:sticky;
  top:0;
  z-index:2;
  background:rgba(10,16,28,.96);
}
body.premium-ui #purchasesTable td,
body.premium-ui #suppliersTable td,
body.premium-ui #devicePurchasesTable td,
body.premium-ui #deviceStockTable td {
  vertical-align:middle;
  padding:18px 14px;
  overflow:visible;
}
body.premium-ui td.item-main,
body.premium-ui #purchasesTable td:first-child,
body.premium-ui #devicePurchasesTable td:first-child {
  min-width:240px;
  max-width:360px;
}
body.premium-ui td.item-main b,
body.premium-ui #purchasesTable td b,
body.premium-ui #devicePurchasesTable td b {
  white-space:normal;
  line-height:1.25;
  word-break:break-word;
}
body.premium-ui .actions-cell,
body.premium-ui #purchasesTable td:last-child,
body.premium-ui #suppliersTable td:last-child,
body.premium-ui #devicePurchasesTable td:last-child,
body.premium-ui #deviceStockTable td:last-child {
  min-width:190px;
  width:220px;
  overflow:visible!important;
}
body.premium-ui .row-actions,
body.premium-ui .row-actions-stack {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center;
  justify-content:flex-start;
  gap:8px!important;
  min-width:0;
  overflow:visible!important;
}
body.premium-ui .row-actions .mini-btn,
body.premium-ui .actions-cell .mini-btn,
body.premium-ui .primary-mini {
  min-height:34px;
  padding:8px 11px;
  border-radius:11px;
  white-space:nowrap;
  line-height:1.05;
}
body.premium-ui .mini-btn.danger,
body.premium-ui .row-actions .danger {
  border-color:rgba(248,113,113,.45)!important;
  color:#fecaca!important;
  background:rgba(127,29,29,.22)!important;
}
body.premium-ui .primary-mini {
  border-color:rgba(34,197,94,.55)!important;
  color:#bbf7d0!important;
  background:rgba(22,101,52,.22)!important;
}
body.premium-ui .wa-quote-preview {
  display:block;
  margin-top:8px;
  color:#94a3b8;
  white-space:normal;
}
body.premium-ui .resale-purchase-row,
body.premium-ui .supplier-price-row {
  transition:background .18s ease, transform .18s ease;
}
body.premium-ui .resale-purchase-row:hover,
body.premium-ui .supplier-price-row:hover {
  background:rgba(255,213,42,.035);
}
body.premium-ui .supplier-select-field small,
body.premium-ui #deviceSellerPhone + small {
  color:#94a3b8;
}
body.premium-ui .supplier-edit-action {
  display:flex;
  align-items:end;
}
body.premium-ui .supplier-edit-action .btn {
  width:100%;
  min-height:48px;
  justify-content:center;
}

@media(max-width:920px) {
  body.premium-ui #purchasesTable,
  body.premium-ui #suppliersTable,
  body.premium-ui #devicePurchasesTable,
  body.premium-ui #deviceStockTable {
    min-width:720px;
  }
  body.premium-ui .desktop-only-cell {
    display:none!important;
  }
  body.premium-ui .actions-cell {
    min-width:180px;
    width:200px;
  }
}
/* === Patch 5.0.7 | Alinhamento Preços de Fornecedor === */
body.premium-ui #page-purchases .purchases-grid {
  grid-template-columns:minmax(0,1fr) 320px!important;
  align-items:start!important;
}
body.premium-ui #page-purchases .purchases-wide {
  min-width:0!important;
}
body.premium-ui #page-purchases .table-wrap {
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
body.premium-ui #purchasesTable th,
body.premium-ui #purchasesTable td {
  box-sizing:border-box;
}
body.premium-ui #purchasesTable th:nth-child(6),
body.premium-ui #purchasesTable td:nth-child(6) {
  width:16%!important;
  min-width:190px!important;
}
body.premium-ui #purchasesTable th:nth-child(8),
body.premium-ui #purchasesTable td:nth-child(8) {
  width:180px!important;
  min-width:180px!important;
  text-align:right!important;
}
body.premium-ui #purchasesTable td:nth-child(8) .row-actions-stack {
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:8px!important;
  width:100%!important;
}
body.premium-ui #purchasesTable td:nth-child(8) .mini-btn {
  width:100%!important;
  justify-content:center!important;
  padding:9px 12px!important;
  border-radius:999px!important;
}
body.premium-ui #purchasesTable td:nth-child(8) .wa-quote-preview {
  display:block!important;
  text-align:center!important;
  margin-top:4px!important;
}
body.premium-ui #purchasesTable td small,
body.premium-ui #suppliersTable td small {
  display:block!important;
  line-height:1.35!important;
  margin-top:4px!important;
  white-space:normal!important;
  word-break:break-word;
}
body.premium-ui #purchasesTable .price-range {
  display:block!important;
  white-space:normal!important;
  line-height:1.45!important;
}
body.premium-ui #suppliersTable {
  min-width:760px!important;
}
body.premium-ui #suppliersTable th:nth-child(1),
body.premium-ui #suppliersTable td:nth-child(1) {
  width:34%!important;
  min-width:220px!important;
}
body.premium-ui #suppliersTable th:nth-child(2),
body.premium-ui #suppliersTable td:nth-child(2) {
  width:24%!important;
  min-width:170px!important;
}
body.premium-ui #suppliersTable th:nth-child(3),
body.premium-ui #suppliersTable td:nth-child(3) {
  width:16%!important;
  min-width:110px!important;
}
body.premium-ui #suppliersTable th:nth-child(4),
body.premium-ui #suppliersTable td:nth-child(4) {
  width:26%!important;
  min-width:190px!important;
}
body.premium-ui #suppliersTable td:nth-child(4) .row-actions-stack {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

@media(max-width:1180px) {
  body.premium-ui #page-purchases .purchases-grid {
    grid-template-columns:1fr!important;
  }
}

@media(max-width:920px) {
  body.premium-ui #purchasesTable th:nth-child(8),
  body.premium-ui #purchasesTable td:nth-child(8) {
    min-width:165px!important;
    width:165px!important;
  }
}
/* === Patch 5.0.8 | Ações fáceis de acessar === */
body.premium-ui #purchasesTable,
body.premium-ui #devicePurchasesTable {
  min-width:900px!important;
}
body.premium-ui #purchasesTable th:nth-child(1),
body.premium-ui #purchasesTable td:nth-child(1),
body.premium-ui #devicePurchasesTable th:nth-child(1),
body.premium-ui #devicePurchasesTable td:nth-child(1) {
  width:34%!important;
  min-width:300px!important;
}
body.premium-ui #purchasesTable th:nth-child(7),
body.premium-ui #purchasesTable td:nth-child(7) {
  width:10%!important;
  min-width:115px!important;
}
body.premium-ui #devicePurchasesTable th:nth-child(5),
body.premium-ui #devicePurchasesTable td:nth-child(5) {
  width:13%!important;
  min-width:120px!important;
}
body.premium-ui .easy-action-cell {
  vertical-align:top!important;
}
body.premium-ui .easy-action-cell > b {
  display:block!important;
  margin-bottom:2px!important;
}
body.premium-ui .inline-row-actions.easy-actions {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:flex-start!important;
  margin-top:12px!important;
  max-width:100%!important;
}
body.premium-ui .inline-row-actions.easy-actions .mini-btn {
  min-height:34px!important;
  padding:8px 12px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
  line-height:1.05!important;
}
body.premium-ui .easy-hint {
  margin-top:7px!important;
  text-align:left!important;
  color:#8fa3bf!important;
}
body.premium-ui #page-purchases .table-wrap,
body.premium-ui #page-resale .table-wrap {
  padding-bottom:6px!important;
  scrollbar-width:thin!important;
}

@media(max-width:920px) {
  body.premium-ui #purchasesTable,
  body.premium-ui #devicePurchasesTable {
    min-width:760px!important;
  }
  body.premium-ui #purchasesTable .desktop-only-cell {
    display:none!important;
  }
  body.premium-ui #purchasesTable th:nth-child(1),
  body.premium-ui #purchasesTable td:nth-child(1),
  body.premium-ui #devicePurchasesTable th:nth-child(1),
  body.premium-ui #devicePurchasesTable td:nth-child(1) {
    min-width:260px!important;
    width:40%!important;
  }
}

@media(max-width:640px) {
  body.premium-ui #purchasesTable,
  body.premium-ui #devicePurchasesTable {
    min-width:680px!important;
  }
  body.premium-ui .inline-row-actions.easy-actions .mini-btn {
    padding:8px 10px!important;
    font-size:12px!important;
  }
}
/* === Patch 5.0.9 | Base de preços compacta === */
body.premium-ui #purchasesTable {
  min-width:720px!important;
  width:100%!important;
}
body.premium-ui #purchasesTable th,
body.premium-ui #purchasesTable td {
  padding:12px 12px!important;
  vertical-align:top!important;
}
body.premium-ui #purchasesTable th:nth-child(1),
body.premium-ui #purchasesTable td:nth-child(1) {
  width:34%!important;
  min-width:250px!important;
}
body.premium-ui #purchasesTable th:nth-child(2),
body.premium-ui #purchasesTable td:nth-child(2) {
  width:16%!important;
  min-width:130px!important;
}
body.premium-ui #purchasesTable th:nth-child(3),
body.premium-ui #purchasesTable td:nth-child(3) {
  width:26%!important;
  min-width:180px!important;
}
body.premium-ui #purchasesTable th:nth-child(4),
body.premium-ui #purchasesTable td:nth-child(4) {
  width:14%!important;
  min-width:100px!important;
}
body.premium-ui #purchasesTable th:nth-child(5),
body.premium-ui #purchasesTable td:nth-child(5) {
  width:10%!important;
  min-width:72px!important;
  text-align:center!important;
}
body.premium-ui .compact-main-cell b {
  font-size:14px!important;
  line-height:1.2!important;
}
body.premium-ui .compact-main-cell small,
body.premium-ui .compact-supplier-cell small,
body.premium-ui .compact-date-cell small,
body.premium-ui .compact-qty-cell small {
  font-size:11px!important;
  line-height:1.3!important;
  color:#93a8c8!important;
}
body.premium-ui .compact-actions {
  gap:6px!important;
  margin-top:8px!important;
}
body.premium-ui .compact-actions .mini-btn {
  padding:7px 10px!important;
  min-height:31px!important;
  font-size:12px!important;
}
body.premium-ui .compact-hint {
  margin-top:5px!important;
  font-size:10.5px!important;
}
body.premium-ui .price-compact-box {
  display:grid!important;
  gap:3px!important;
}
body.premium-ui .price-compact-box .price-last {
  font-size:15px!important;
  line-height:1.15!important;
}
body.premium-ui .price-compact-box small {
  display:block!important;
  font-size:10.8px!important;
  line-height:1.32!important;
  color:#9bb0cf!important;
  white-space:normal!important;
  word-break:break-word;
}
body.premium-ui .compact-qty-cell b {
  display:block!important;
  font-size:16px!important;
}
body.premium-ui .compact-supplier-row:hover {
  background:rgba(255,255,255,.025)!important;
}

@media(max-width:920px) {
  body.premium-ui #purchasesTable {
    min-width:640px!important;
  }
  body.premium-ui #purchasesTable th,
  body.premium-ui #purchasesTable td {
    padding:10px 10px!important;
  }
  body.premium-ui #purchasesTable th:nth-child(1),
  body.premium-ui #purchasesTable td:nth-child(1) {
    min-width:220px!important;
  }
  body.premium-ui #purchasesTable th:nth-child(3),
  body.premium-ui #purchasesTable td:nth-child(3) {
    min-width:160px!important;
  }
}

@media(max-width:640px) {
  body.premium-ui #purchasesTable {
    min-width:560px!important;
  }
  body.premium-ui .compact-actions .mini-btn {
    font-size:11px!important;
    padding:6px 8px!important;
  }
  body.premium-ui .price-compact-box .price-last {
    font-size:14px!important;
  }
}
/* === Patch 5.1.0 | Assistente de cPanel === */
body.premium-ui .saas-cpanel-inline-help {
  margin-top:10px!important;
  padding:12px 14px!important;
  border:1px solid rgba(255,204,64,.28)!important;
  border-radius:14px!important;
  background:rgba(255,204,64,.08)!important;
  color:#ffe7a0!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.premium-ui .saas-cpanel-card.attention-pulse {
  box-shadow:0 0 0 1px rgba(255,204,64,.5),0 0 0 8px rgba(255,204,64,.10),0 18px 45px rgba(0,0,0,.35)!important;
  border-color:rgba(255,204,64,.55)!important;
}
/* === Patch 5.1.1 | WhatsApp local com QR === */
body.premium-ui .wa-mode-grid {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  margin:14px 0!important;
}
body.premium-ui .wa-mode-card {
  border:1px solid rgba(148,163,184,.18)!important;
  border-radius:16px!important;
  padding:14px!important;
  background:rgba(8,16,30,.42)!important;
  color:#dbeafe!important;
}
body.premium-ui .wa-mode-card.active {
  border-color:#22c55e!important;
  box-shadow:0 0 0 1px rgba(34,197,94,.15)!important;
}
body.premium-ui .wa-mode-card b {
  display:block!important;
  margin-bottom:6px!important;
  color:#fff!important;
}
.wa-mode-card small {
  color:#9fb2cc!important;
}
.wa-mode-card ul {
  margin:10px 0 0!important;
  padding-left:0!important;
  list-style:none;
  display:grid!important;
  gap:5px!important;
}
.wa-mode-card li {
  font-size:12px!important;
  color:#86efac!important;
}
.wa-mode-card li:last-child {
  color:#fca5a5!important;
}
body.premium-ui .local-wa-layout {
  align-items:stretch!important;
}
.wa-instance-qr {
  background:#fff!important;
  color:#0f172a!important;
  min-height:230px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:10px!important;
  padding:10px!important;
  overflow:hidden!important;
}
.wa-instance-qr canvas,
.wa-instance-qr svg {
  max-width:100%!important;
  height:auto!important;
}
.wa-connected-mark {
  display:grid!important;
  place-items:center!important;
  width:86px!important;
  height:86px!important;
  border-radius:999px!important;
  background:#22c55e!important;
  color:white!important;
  font-size:50px!important;
  margin:auto!important;
}
body.premium-ui .wa-instance-credentials {
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  margin-top:14px!important;
  padding:14px!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:16px!important;
  background:rgba(8,16,30,.50)!important;
}
.wa-instance-credentials.hidden {
  display:none!important;
}
.wa-instance-credentials div {
  display:grid!important;
  gap:5px!important;
}
.wa-instance-credentials .wide {
  grid-column:1/-1!important;
}
.wa-instance-credentials span {
  font-size:11px!important;
  color:#9fb2cc!important;
  text-transform:uppercase!important;
  font-weight:800!important;
}
.wa-instance-credentials code {
  display:block!important;
  white-space:normal!important;
  word-break:break-all;
  padding:9px!important;
  border-radius:10px!important;
  background:rgba(0,0,0,.32)!important;
  color:#eaf2ff!important;
}
.wa-instance-credentials textarea {
  width:100%!important;
  min-height:132px!important;
  border-radius:12px!important;
  background:rgba(0,0,0,.34)!important;
  color:#eaf2ff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  padding:10px!important;
  font-family:ui-monospace,Consolas,monospace;
  font-size:12px!important;
}
body.premium-ui .wa-instance-actions {
  flex-wrap:wrap!important;
}
.wa-instance-warning {
  color:#facc15!important;
}

@media(max-width:900px) {
  body.premium-ui .wa-mode-grid,
  body.premium-ui .wa-instance-credentials {
    grid-template-columns:1fr!important;
  }
  .wa-instance-layout {
    grid-template-columns:1fr!important;
  }
}
/* === Patch 5.1.2 | WhatsApp local config e QR === */
body.premium-ui .wa-local-help-box {
  margin-top:12px!important;
  padding:12px 14px!important;
  border:1px solid rgba(34,197,94,.24)!important;
  border-radius:14px!important;
  background:rgba(34,197,94,.075)!important;
  color:#bbf7d0!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.premium-ui .wa-local-help-box code {
  padding:2px 6px!important;
  border-radius:7px!important;
  background:rgba(0,0,0,.24)!important;
  color:#fff!important;
}
body.premium-ui .wa-instance-actions .btn.success,
body.premium-ui #waGenerateDownloadConfig {
  border-color:rgba(34,197,94,.42)!important;
  background:linear-gradient(135deg,rgba(34,197,94,.20),rgba(16,185,129,.12))!important;
  color:#dcfce7!important;
}
body.premium-ui #waDownloadConnectorConfig {
  font-weight:800!important;
}
/* === Patch 5.1.3 | QR WhatsApp mais estável === */
body.premium-ui .wa-instance-qr {
  transition:opacity .18s ease!important;
}
/* === Patch 5.1.4 | QR WhatsApp mais confiável === */
body.premium-ui .wa-instance-qr img {
  display:block!important;
  width:min(100%,300px)!important;
  margin:auto!important;
  background:#fff!important;
  border-radius:8px!important;
}
body.premium-ui .wa-instance-qr span {
  text-align:center!important;
  color:#142033!important;
}
/* === Patch 5.2.2 | Desktop Portable em Configurações === */
body.premium-ui .desktop-portable-panel {
  border:1px solid rgba(80,190,255,.20)!important;
  background:linear-gradient(135deg,rgba(40,120,255,.11),rgba(20,24,40,.80))!important;
}
body.premium-ui .desktop-portable-grid {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin-top:14px!important;
}
body.premium-ui .desktop-portable-card {
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  min-height:145px!important;
  justify-content:space-between!important;
  padding:16px!important;
}
body.premium-ui .desktop-portable-card b {
  font-size:15px!important;
}
body.premium-ui .desktop-portable-card small {
  color:#9fb2d2!important;
  line-height:1.45!important;
}
body.premium-ui .desktop-portable-card .btn {
  width:100%!important;
  justify-content:center!important;
}

@media(max-width:980px) {
  body.premium-ui .desktop-portable-grid {
    grid-template-columns:1fr!important;
  }
}
/* === Patch 5.2.3 | Portable simples sem config.json === */
body.premium-ui .whatsapp-instance-panel {
  display:none!important;
}
body.premium-ui .simple-portable-only {
  border-color:rgba(255,213,42,.28)!important;
}
body.premium-ui .desktop-portable-simple {
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(280px,1fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.premium-ui .desktop-portable-main-card,
body.premium-ui .desktop-portable-how {
  padding:18px!important;
  border-radius:18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
}
body.premium-ui .desktop-portable-main-card b,
body.premium-ui .desktop-portable-how b {
  font-size:17px!important;
  color:#fff!important;
}
body.premium-ui .desktop-portable-main-card small {
  color:#aebdda!important;
  line-height:1.45!important;
}
body.premium-ui .portable-download-big {
  font-size:15px!important;
  margin-top:auto!important;
}
body.premium-ui .desktop-portable-how ol {
  margin:0!important;
  padding-left:20px!important;
  color:#d9e6ff!important;
  line-height:1.65!important;
}
body.premium-ui .desktop-portable-how li {
  margin:2px 0!important;
}

@media(max-width:768px) {
  body.premium-ui .desktop-portable-simple {
    grid-template-columns:1fr!important;
  }
}
/* === Patch 5.2.4 | Portable simples com QR no app === */
body.premium-ui .simple-portable-only {
  overflow:hidden!important;
}
body.premium-ui .portable-clean-layout {
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(280px,.95fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.premium-ui .portable-download-card,
body.premium-ui .portable-how-card {
  min-height:unset!important;
  padding:18px!important;
  border-radius:18px!important;
}
body.premium-ui .portable-download-card {
  display:grid!important;
  grid-template-columns:1fr auto!important;
  gap:14px!important;
  align-items:center!important;
}
body.premium-ui .portable-download-text {
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  min-width:0!important;
}
body.premium-ui .portable-download-text b,
body.premium-ui .portable-how-card b {
  font-size:17px!important;
  line-height:1.25!important;
  color:#fff!important;
}
body.premium-ui .portable-download-text small {
  display:block!important;
  max-width:680px!important;
  font-size:13px!important;
  line-height:1.45!important;
  color:#aec0dc!important;
  white-space:normal!important;
}
body.premium-ui .portable-download-big {
  position:static!important;
  width:auto!important;
  min-width:230px!important;
  min-height:48px!important;
  padding:12px 22px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:14px!important;
  white-space:nowrap!important;
  font-weight:900!important;
  text-align:center!important;
}
body.premium-ui .portable-fallback-link {
  grid-column:2!important;
  width:100%!important;
  justify-content:center!important;
  min-height:38px!important;
  padding:8px 14px!important;
  font-size:12px!important;
  opacity:.78!important;
}
body.premium-ui .portable-how-card ol {
  margin:0!important;
  padding-left:20px!important;
  color:#dce8ff!important;
  line-height:1.65!important;
}
body.premium-ui .portable-how-card li {
  margin:2px 0!important;
}
body.premium-ui .portable-clean-note {
  margin-top:14px!important;
  color:#99abc7!important;
}

@media(max-width:900px) {
  body.premium-ui .portable-clean-layout {
    grid-template-columns:1fr!important;
  }
  body.premium-ui .portable-download-card {
    grid-template-columns:1fr!important;
  }
  body.premium-ui .portable-download-big {
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui .portable-fallback-link {
    grid-column:1!important;
  }
}
/* === Patch 5.2.5 | WhatsApp Desktop Portable antigo === */
body.premium-ui .whatsapp-instance-panel {
  border-color:rgba(34,197,94,.26)!important;
  background:linear-gradient(145deg,rgba(15,23,42,.95),rgba(4,14,28,.95))!important;
  overflow:hidden!important;
}
body.premium-ui .wa-instance-mode {
  display:grid!important;
  gap:4px!important;
  margin:4px 0 14px!important;
  padding:13px 15px!important;
  border:1px solid rgba(34,197,94,.38)!important;
  border-radius:14px!important;
  background:rgba(20,92,62,.20)!important;
}
body.premium-ui .wa-instance-mode span {
  color:#76f7b7!important;
  font-size:13px!important;
  font-weight:950!important;
}
.wa-instance-mode small {
  color:#b7cae1!important;
  line-height:1.45!important;
}
body.premium-ui .wa-instance-layout {
  display:grid!important;
  grid-template-columns:minmax(260px,.85fr) minmax(300px,1.15fr)!important;
  gap:16px!important;
  align-items:stretch!important;
}
body.premium-ui .wa-instance-qr-card,
body.premium-ui .wa-instance-setup-card {
  padding:17px!important;
  border:1px solid rgba(120,160,210,.24)!important;
  border-radius:18px!important;
  background:rgba(8,18,33,.76)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
body.premium-ui .wa-instance-qr-card>b {
  display:block!important;
  color:#f8fbff!important;
  font-size:17px!important;
}
.wa-instance-qr-card>p {
  min-height:34px!important;
  margin:6px 0 12px!important;
  color:#a8bad4!important;
  font-size:12px!important;
  line-height:1.45!important;
}
body.premium-ui .wa-instance-qr {
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:9px!important;
  width:min(100%,292px)!important;
  min-height:270px!important;
  margin:0 auto!important;
  padding:12px!important;
  border:1px dashed rgba(45,91,129,.75)!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#334155!important;
  text-align:center!important;
  overflow:hidden!important;
}
body.premium-ui .wa-instance-qr canvas,
body.premium-ui .wa-instance-qr img,
body.premium-ui .wa-instance-qr table,
body.premium-ui .wa-instance-qr svg {
  max-width:100%!important;
  height:auto!important;
}
.wa-instance-qr-card>small {
  display:block!important;
  margin-top:10px!important;
  color:#8fa3c0!important;
  line-height:1.45!important;
}
body.premium-ui .wa-connected-mark {
  display:grid!important;
  place-items:center!important;
  width:86px!important;
  height:86px!important;
  border-radius:999px!important;
  background:#22c55e!important;
  color:white!important;
  font-size:50px!important;
  margin:auto!important;
}
.wa-instance-qr .wa-connected-mark~b {
  color:#0d593d!important;
}
body.premium-ui .wa-instance-setup-card h3 {
  margin:0 0 10px!important;
  color:#f8fbff!important;
}
.wa-instance-setup-card ol {
  margin:0 0 16px!important;
  padding-left:21px!important;
  color:#d8e7ff!important;
  font-size:13px!important;
  line-height:1.72!important;
}
body.premium-ui .wa-instance-actions {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.wa-instance-actions .btn {
  min-height:42px!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
}
.wa-instance-actions .wa-download-main {
  grid-column:1/-1!important;
  font-weight:950!important;
  color:#111827!important;
}
body.premium-ui .wa-instance-warning {
  margin-top:14px!important;
  color:#facc15!important;
  line-height:1.45!important;
}

@media(max-width:900px) {
  body.premium-ui .wa-instance-layout {
    grid-template-columns:1fr!important;
  }
  .wa-instance-actions {
    grid-template-columns:1fr!important;
  }
  .wa-instance-qr {
    min-height:245px!important;
  }
}
/* === Patch 5.2.6 | WhatsApp igual ao print antigo === */
body.premium-ui .whatsapp-instance-panel.wa-old-print-panel {
  display:block!important;
  padding:0!important;
  border:1px solid #233755!important;
  border-radius:0!important;
  background:#111a29!important;
  box-shadow:none!important;
  color:#eaf2ff!important;
  overflow:visible!important;
}
body.premium-ui .wa-old-print-panel .wa-old-status,
body.premium-ui .wa-old-print-panel .wa-old-title-hidden,
body.premium-ui .wa-old-print-panel .wa-old-message-hidden {
  position:absolute!important;
  left:-9999px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
body.premium-ui .wa-old-mode-title {
  margin:0 0 6px 18px!important;
  color:#9db3cd!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.premium-ui .wa-old-mode-grid {
  display:grid!important;
  grid-template-columns:216px 214px!important;
  gap:10px!important;
  margin:0 0 10px 18px!important;
  align-items:start!important;
}
body.premium-ui .wa-old-mode-card {
  min-height:148px!important;
  border:1px solid #263448!important;
  background:#111826!important;
  padding:14px 16px!important;
  color:#dbeafe!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.premium-ui .wa-old-mode-card.active {
  border:2px solid #00d77a!important;
  padding:13px 15px!important;
  background:#121c2c!important;
}
body.premium-ui .wa-old-mode-card b {
  display:block!important;
  margin-bottom:8px!important;
  color:#ffffff!important;
  font-size:12px!important;
  font-weight:900!important;
  line-height:1.2!important;
}
body.premium-ui .wa-old-mode-card small {
  display:block!important;
  margin-bottom:10px!important;
  color:#9db3cd!important;
  font-size:11px!important;
  line-height:1.35!important;
}
body.premium-ui .wa-old-mode-card ul {
  list-style:none;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  gap:6px!important;
}
body.premium-ui .wa-old-mode-card li {
  font-size:11px!important;
  line-height:1.22!important;
  color:#00ff8a!important;
  font-weight:700!important;
}
body.premium-ui .wa-old-mode-card li.bad {
  color:#ff404c!important;
}
body.premium-ui .wa-old-qr-box {
  display:grid!important;
  place-items:center!important;
  width:236px!important;
  height:236px!important;
  min-height:236px!important;
  margin:8px 0 0 18px!important;
  padding:5px!important;
  border:none!important;
  border-radius:0!important;
  background:#fff!important;
  color:#111827!important;
  overflow:hidden!important;
  box-shadow:none!important;
}
body.premium-ui .wa-old-qr-box canvas,
body.premium-ui .wa-old-qr-box img,
body.premium-ui .wa-old-qr-box svg,
body.premium-ui .wa-old-qr-box table {
  max-width:226px!important;
  max-height:226px!important;
  width:226px!important;
  height:226px!important;
}
body.premium-ui .wa-old-qr-box .wa-connected-mark {
  width:72px!important;
  height:72px!important;
  font-size:42px!important;
}
body.premium-ui .wa-old-meta {
  display:block!important;
  margin:8px 0 0 20px!important;
  color:#8198b9!important;
  font-size:11px!important;
  line-height:1.4!important;
}
body.premium-ui .wa-old-free-note {
  margin:10px 0 10px 20px!important;
  color:#ffd900!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.35!important;
}
body.premium-ui .wa-old-actions {
  display:flex!important;
  gap:8px!important;
  margin:0 0 12px 18px!important;
  align-items:center!important;
  flex-wrap:wrap!important;
}
body.premium-ui .wa-old-actions .btn {
  height:37px!important;
  min-height:37px!important;
  padding:0 16px!important;
  border-radius:0!important;
  border:1px solid #243752!important;
  background:#172338!important;
  color:#dbeafe!important;
  font-size:12px!important;
  font-weight:900!important;
  box-shadow:none!important;
  white-space:nowrap!important;
  text-decoration:none!important;
}
body.premium-ui .wa-old-actions .btn.danger-text {
  color:#ff3b48!important;
  background:#172338!important;
  border-color:#243752!important;
}
body.premium-ui .wa-old-actions .btn.danger {
  color:#fff!important;
  background:#3b1620!important;
  border-color:#ff3448!important;
}
body.premium-ui .wa-old-help {
  margin:0 0 7px 20px!important;
  color:#9eb4d2!important;
  font-size:11px!important;
  line-height:1.45!important;
}
body.premium-ui .wa-old-help.bigger {
  font-size:12px!important;
  margin-bottom:18px!important;
  color:#a9bddb!important;
}
body.premium-ui .wa-old-hidden-actions {
  display:none!important;
}
body.premium-ui .wa-instance-credentials {
  display:none!important;
}

@media(max-width:720px) {
  body.premium-ui .wa-old-mode-grid {
    grid-template-columns:1fr!important;
    margin-right:18px!important;
  }
  .wa-old-mode-card {
    min-height:auto!important;
  }
  body.premium-ui .wa-old-qr-box {
    width:230px!important;
    height:230px!important;
    min-height:230px!important;
  }
  .wa-old-actions {
    display:grid!important;
    margin-right:18px!important;
  }
  .wa-old-actions .btn {
    width:100%!important;
    justify-content:center!important;
  }
}
/* ========================================================================== 
   OSPro 5.2.8 - Clean UI Premium Enterprise
   Remove excesso de glow/vidro, troca visual para Slate/Zinc e organiza ações.
   ========================================================================== */
:root {
  --bg-canvas:#090d16;
  --bg-surface:#0f172a;
  --bg-surface-elevated:#1e293b;
  --bg-subtle:#182234;
  --border-dim:rgba(255,255,255,.07);
  --border-focus:rgba(255,255,255,.16);
  --text-primary:#f8fafc;
  --text-secondary:#94a3b8;
  --text-tertiary:#64748b;
  --accent-base:#38bdf8;
  --accent-hover:#0ea5e9;
  --accent-ghost:rgba(56,189,248,.10);
  --radius-sm:6px;
  --radius-md:8px;
  --radius-lg:12px;
  --shadow-subtle:0 1px 2px rgba(0,0,0,.25),0 0 1px rgba(255,255,255,.05) inset;
}
body.premium-ui,
body.theme-dark {
  background:var(--bg-canvas)!important;
  color:var(--text-primary)!important;
  font-family:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  letter-spacing:-.011em!important;
}
body.premium-ui::before,
body.premium-ui::after {
  opacity:.18;
  filter:blur(70px);
}
body.premium-ui .glass-panel,
body.premium-ui .glass-card,
body.premium-ui .glass-header,
body.premium-ui .glass-sidebar,
body.premium-ui .panel,
body.premium-ui .toolbar,
body.premium-ui .modal-card,
body.premium-ui .stat-card,
body.premium-ui .quick-card,
body.premium-ui .control-card {
  background:var(--bg-surface)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none;
  border:1px solid var(--border-dim)!important;
  border-radius:var(--radius-lg)!important;
  box-shadow:var(--shadow-subtle)!important;
}
body.premium-ui .panel-head,
body.premium-ui .modal-head {
  border-color:var(--border-dim)!important;
}
body.premium-ui h1,
body.premium-ui h2,
body.premium-ui h3,
body.premium-ui b,
strong {
  color:var(--text-primary)!important;
}
body.premium-ui p,
body.premium-ui small,
body.premium-ui .muted,
body.premium-ui label span {
  color:var(--text-secondary)!important;
}
body.premium-ui .btn {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid transparent!important;
  transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease!important;
  box-shadow:none!important;
  cursor:pointer!important;
  white-space:nowrap!important;
  text-decoration:none!important;
}
body.premium-ui .btn.primary,
body.premium-ui .btn.primary-glow,
body.premium-ui .btn-primary,
body.premium-ui .panic-analyze-primary,
body.premium-ui .mobile-new.primary-glow {
  font-weight:650!important;
  background-image:none;
}
body.premium-ui .btn.glass-btn,
body.premium-ui .btn-secondary,
body.premium-ui .btn:not(.primary):not(.primary-glow):not(.danger) {
  background:var(--bg-subtle)!important;
  color:var(--text-primary)!important;
  border:1px solid var(--border-dim)!important;
  background-image:none;
}
body.premium-ui .btn.glass-btn:hover,
body.premium-ui .btn-secondary:hover {
  background:var(--bg-surface-elevated)!important;
  border-color:var(--border-focus)!important;
  transform:none!important;
}
body.premium-ui .btn.danger,
body.premium-ui .danger {
  background:rgba(239,68,68,.10)!important;
  color:#fca5a5!important;
  border-color:rgba(239,68,68,.28)!important;
}
body.premium-ui .side-nav .nav-item {
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  margin-bottom:2px!important;
  background:transparent!important;
  border:none!important;
  border-radius:var(--radius-md)!important;
  color:var(--text-secondary)!important;
  font-size:.875rem!important;
  font-weight:500!important;
  transition:background .15s ease,color .15s ease!important;
  box-shadow:none!important;
  text-align:left!important;
}
body.premium-ui .side-nav .nav-item:hover {
  background:var(--bg-subtle)!important;
  color:var(--text-primary)!important;
}
body.premium-ui .side-nav .nav-item.active {
  background:var(--bg-surface-elevated)!important;
  color:var(--text-primary)!important;
  font-weight:600!important;
}
body.premium-ui .nav-icon {
  width:18px!important;
  height:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 18px!important;
  color:currentColor!important;
}
body.premium-ui .nav-icon svg,
body.premium-ui .btn-icon svg {
  width:18px!important;
  height:18px!important;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
  display:block!important;
}
body.premium-ui .nav-section-title {
  text-transform:uppercase!important;
  font-size:.6875rem!important;
  font-weight:700!important;
  letter-spacing:.08em!important;
  color:var(--text-tertiary)!important;
  margin:1.25rem 0 .4rem .5rem!important;
}
body.premium-ui input,
body.premium-ui select,
body.premium-ui textarea {
  background:var(--bg-canvas)!important;
  border:1px solid var(--border-dim)!important;
  color:var(--text-primary)!important;
  border-radius:var(--radius-md)!important;
  font-size:.875rem!important;
  padding:.55rem .75rem!important;
  transition:border-color .15s ease,box-shadow .15s ease!important;
  box-shadow:none!important;
}
body.premium-ui input:focus,
body.premium-ui select:focus,
body.premium-ui textarea:focus {
  outline:none!important;
  border-color:var(--accent-base)!important;
  box-shadow:0 0 0 1px var(--accent-base)!important;
}
body.premium-ui table {
  border-collapse:separate!important;
  border-spacing:0!important;
}
body.premium-ui th {
  color:var(--text-tertiary)!important;
  font-size:.72rem!important;
  letter-spacing:.05em!important;
  background:rgba(15,23,42,.95)!important;
  border-bottom:1px solid var(--border-dim)!important;
}
body.premium-ui td {
  border-bottom:1px solid var(--border-dim)!important;
}
body.premium-ui .clean-order-actions {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:.5rem!important;
  flex-wrap:wrap!important;
  padding-top:1rem!important;
  border-top:1px solid var(--border-dim)!important;
}
body.premium-ui .dropdown-more {
  position:relative!important;
  display:inline-flex!important;
}
body.premium-ui .dropdown-content {
  position:absolute!important;
  right:0!important;
  bottom:calc(100% + 8px)!important;
  min-width:230px!important;
  background:var(--bg-surface-elevated)!important;
  border:1px solid var(--border-dim)!important;
  border-radius:var(--radius-lg)!important;
  box-shadow:0 18px 45px rgba(0,0,0,.42)!important;
  padding:.4rem!important;
  z-index:9999!important;
}
body.premium-ui .dropdown-content button {
  width:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  border:0!important;
  border-radius:var(--radius-md)!important;
  background:transparent!important;
  color:var(--text-secondary)!important;
  text-align:left!important;
  cursor:pointer!important;
}
body.premium-ui .dropdown-content button:hover {
  background:var(--bg-subtle)!important;
  color:var(--text-primary)!important;
}
body.premium-ui .order-wa-quick-title {
  color:var(--text-tertiary)!important;
  font-size:.75rem!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.06em!important;
}
body.premium-ui .wa-direct-btn {
  background:var(--bg-subtle)!important;
  border-color:var(--border-dim)!important;
  color:var(--text-secondary)!important;
  box-shadow:none!important;
}
body.premium-ui .wa-direct-btn:hover {
  color:var(--text-primary)!important;
  background:var(--bg-surface-elevated)!important;
}
body.premium-ui .mobile-nav .nav-icon {
  margin:auto!important;
}
body.premium-ui .mobile-nav .nav-icon svg {
  width:18px!important;
  height:18px!important;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
}

@media(max-width:780px) {
  body.premium-ui .clean-order-actions {
    justify-content:stretch!important;
  }
  body.premium-ui .clean-order-actions>.btn,
  body.premium-ui .clean-order-actions>.dropdown-more,
  body.premium-ui .dropdown-more>.btn {
    width:100%!important;
  }
  body.premium-ui .dropdown-content {
    left:0!important;
    right:auto!important;
    bottom:calc(100% + 8px)!important;
    width:100%!important;
  }
}
/* ========================================================================== 
   OSPro 5.2.9 - Ajuste fino Clean UI
   Botões menores, primário sem branco puro, campos de cores extras e ícones únicos.
   ========================================================================== */
:root {
  --button-base:var(--accent-base,#38bdf8);
}
body.premium-ui .btn,
body.premium-ui button.btn,
body.premium-ui a.btn {
  min-height:34px!important;
  padding:.45rem .72rem!important;
  font-size:.8125rem!important;
  border-radius:9px!important;
  gap:.42rem!important;
  font-weight:650!important;
  line-height:1.05!important;
}
body.premium-ui .btn.slim,
body.premium-ui .mini-btn,
body.premium-ui .portal-link-actions .btn,
body.premium-ui .table-actions .btn {
  min-height:30px!important;
  padding:.36rem .58rem!important;
  font-size:.75rem!important;
  border-radius:8px!important;
}
body.premium-ui .btn.primary,
body.premium-ui .btn.primary-glow,
body.premium-ui .btn-primary,
body.premium-ui .panic-analyze-primary,
body.premium-ui .mobile-new.primary-glow {
  background:linear-gradient(180deg,var(--accent-base),color-mix(in srgb,var(--accent-base) 82%,#020617))!important;
  color:#03111f!important;
  border-color:color-mix(in srgb,var(--accent-base) 80%,#ffffff)!important;
  box-shadow:0 1px 2px rgba(0,0,0,.28)!important;
  text-shadow:none;
}
body.premium-ui .btn.primary:hover,
body.premium-ui .btn.primary-glow:hover,
body.premium-ui .btn-primary:hover,
body.premium-ui .panic-analyze-primary:hover {
  background:linear-gradient(180deg,color-mix(in srgb,var(--accent-base) 86%,#ffffff),var(--accent-base))!important;
  transform:translateY(-1px)!important;
}
body.premium-ui .settings-actions,
body.premium-ui .modal-actions,
body.premium-ui .toolbar-actions,
body.premium-ui .row-actions,
body.premium-ui .inline-row-actions {
  gap:8px!important;
}
body.premium-ui .icon-btn {
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  border-radius:10px!important;
  background:var(--bg-subtle)!important;
  border:1px solid var(--border-dim)!important;
  color:var(--text-secondary)!important;
  box-shadow:none!important;
}
body.premium-ui .side-nav .nav-item {
  min-height:36px!important;
  padding:.46rem .68rem!important;
  gap:.65rem!important;
}
body.premium-ui .side-nav .nav-item .nav-icon:not(:first-child),
body.premium-ui .mobile-nav button .nav-icon:not(:first-child) {
  display:none!important;
}
body.premium-ui .side-nav .nav-item .nav-icon,
body.premium-ui .mobile-nav .nav-icon {
  width:17px!important;
  height:17px!important;
  flex-basis:17px!important;
}
body.premium-ui .side-nav .nav-item span:not(.nav-icon) {
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body.premium-ui .clean-section-head,
body.premium-ui .interface-colors-head {
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px 14px!important;
  border:1px solid var(--border-dim)!important;
  border-radius:14px!important;
  background:var(--bg-subtle)!important;
}
body.premium-ui .interface-colors-head b {
  font-size:14px!important;
  color:var(--text-primary)!important;
  white-space:nowrap!important;
}
body.premium-ui .interface-colors-head small {
  font-size:12px!important;
  color:var(--text-secondary)!important;
  text-align:right!important;
}
body.premium-ui .color-custom-field {
  padding:12px!important;
  border:1px solid var(--border-dim)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.015)!important;
  display:grid!important;
  gap:8px!important;
}
body.premium-ui .color-custom-field>span:first-child {
  font-size:11px!important;
  font-weight:800!important;
  text-transform:uppercase!important;
  letter-spacing:.055em!important;
  color:var(--text-secondary)!important;
}
body.premium-ui .color-picker-control {
  min-height:38px!important;
  padding:6px!important;
  gap:10px!important;
  border-radius:12px!important;
  background:var(--bg-canvas)!important;
  border:1px solid var(--border-dim)!important;
}
body.premium-ui .color-picker-control input[type="color"] {
  width:54px!important;
  min-width:54px!important;
  height:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:7px!important;
  overflow:hidden!important;
  background:transparent!important;
}
body.premium-ui .color-picker-control strong {
  font-size:12px!important;
  color:var(--text-primary)!important;
}
body.premium-ui .settings-shortcut-card {
  min-height:74px!important;
  padding:12px 14px!important;
  gap:6px!important;
  border-radius:14px!important;
}
body.premium-ui .settings-shortcut-card b {
  font-size:13px!important;
  line-height:1.2!important;
}
body.premium-ui .settings-shortcut-card span {
  font-size:12px!important;
  line-height:1.35!important;
}
body.premium-ui .clean-order-actions .btn {
  min-height:34px!important;
}
body.premium-ui .dropdown-content button {
  font-size:.8rem!important;
  padding:.58rem .65rem!important;
}

@media(max-width:768px) {
  body.premium-ui .interface-colors-head {
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body.premium-ui .interface-colors-head small {
    text-align:left!important;
  }
  body.premium-ui .btn,
  body.premium-ui button.btn,
  body.premium-ui a.btn {
    width:auto!important;
    white-space:normal!important;
  }
  body.premium-ui .settings-actions .btn,
  body.premium-ui .modal-actions .btn {
    width:100%!important;
  }
}
/* ========================================================================== 
   OSPro 5.3.0 - Correção de ícones da sidebar
   Garante SVG visível e remove duplicidade visual.
   ========================================================================== */
body.premium-ui .side-nav .nav-item > .nav-icon,
body.premium-ui .side-nav .nav-item > .desktop-nav-icon,
body.premium-ui .mobile-nav button > .nav-icon,
body.premium-ui .mobile-nav button > .desktop-nav-icon {
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:currentColor!important;
  opacity:.92!important;
  overflow:visible!important;
}
body.premium-ui .side-nav .nav-item.active > .nav-icon,
body.premium-ui .side-nav .nav-item.active > .desktop-nav-icon {
  opacity:1!important;
  color:var(--accent-base)!important;
}
body.premium-ui .side-nav .nav-item > .nav-icon svg,
body.premium-ui .side-nav .nav-item > .desktop-nav-icon svg,
body.premium-ui .mobile-nav button > .nav-icon svg,
body.premium-ui .mobile-nav button > .desktop-nav-icon svg {
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  display:block!important;
  fill:none;
  stroke:currentColor;
  stroke-width:1.75;
  stroke-linecap:round;
  stroke-linejoin:round;
  overflow:visible!important;
}
body.premium-ui .side-nav .nav-item > .nav-icon + .nav-icon,
body.premium-ui .side-nav .nav-item > .desktop-nav-icon + .nav-icon,
body.premium-ui .side-nav .nav-item > .nav-icon + .desktop-nav-icon,
body.premium-ui .mobile-nav button > .nav-icon + .nav-icon,
body.premium-ui .mobile-nav button > .desktop-nav-icon + .nav-icon {
  display:none!important;
}
body.premium-ui .side-nav .nav-item > span:not(.nav-icon):not(.desktop-nav-icon) {
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
/* === Patch 5.3.1 | Menu mobile premium === */

@media(max-width:768px) {
  body.premium-ui .mobile-menu-btn {
    display:none!important;
  }
  body.premium-ui .mobile-nav.glass-nav {
    position:fixed!important;
    padding:8px 10px!important;
    z-index:9997!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
    gap:6px!important;
    background:rgba(15,23,42,.96)!important;
    border:1px solid rgba(148,163,184,.18)!important;
    box-shadow:0 18px 55px rgba(0,0,0,.45)!important;
    backdrop-filter:blur(14px)!important;
    -webkit-backdrop-filter:blur(14px);
  }
  body.premium-ui .mobile-nav button {
    min-width:0!important;
    padding:6px 4px!important;
    border:0!important;
    border-radius:15px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    background:transparent!important;
    color:#94a3b8!important;
    font-size:10.5px!important;
    font-weight:700!important;
    box-shadow:none!important;
  }
  body.premium-ui .mobile-nav button.active,
  body.premium-ui .mobile-nav button:hover {
    background:rgba(56,189,248,.12)!important;
    color:#f8fafc!important;
  }
  body.premium-ui .mobile-nav .nav-icon {
    width:20px!important;
    height:20px!important;
    display:grid!important;
    place-items:center!important;
    margin:0!important;
  }
  body.premium-ui .mobile-nav .nav-icon svg {
    width:20px!important;
    height:20px!important;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  body.premium-ui .mobile-nav .mobile-new {
    width:auto!important;
    border-radius:18px!important;
    background:linear-gradient(135deg,var(--accent-base,#38bdf8),var(--accent-hover,#0ea5e9))!important;
    color:#020617!important;
    font-size:24px!important;
    font-weight:900!important;
    box-shadow:0 10px 25px rgba(14,165,233,.22)!important;
  }
  body.premium-ui .mobile-nav .mobile-new span {
    display:none!important;
  }
  body.premium-ui .mobile-backdrop {
    position:fixed!important;
    inset:0!important;
    background:rgba(2,6,23,.62)!important;
    z-index:9990!important;
    opacity:0!important;
    pointer-events:none!important;
    transition:opacity .18s ease!important;
    backdrop-filter:blur(3px)!important;
    -webkit-backdrop-filter:blur(3px);
  }
  body.premium-ui .mobile-backdrop.show {
    opacity:1!important;
    pointer-events:auto!important;
  }
  body.premium-ui .sidebar.glass-sidebar,
  body.premium-ui .sidebar {
    position:fixed!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    z-index:9995!important;
    background:#0f172a!important;
    border:1px solid rgba(148,163,184,.18)!important;
    border-radius:24px!important;
    box-shadow:0 -18px 55px rgba(0,0,0,.46)!important;
    transform:translateY(125%)!important;
    opacity:0!important;
    transition:transform .22s cubic-bezier(.2,.8,.2,1),opacity .18s ease!important;
  }
  body.premium-ui .sidebar.open {
    transform:translateY(0)!important;
    opacity:1!important;
  }
  body.premium-ui.menu-open,
  html.menu-open {
    overflow:hidden!important;
  }
  body.premium-ui .sidebar .brand {
    align-items:center!important;
    gap:10px!important;
    margin:0 0 10px!important;
    padding:4px 2px 10px!important;
    border-bottom:1px solid rgba(148,163,184,.12)!important;
  }
  body.premium-ui .sidebar .brand .brand-mark {
    width:34px!important;
    height:34px!important;
  }
  body.premium-ui .sidebar .session-box {
    margin-top:10px!important;
  }
  body.premium-ui .premium-mobile-menu {
    display:block!important;
    margin-bottom:12px!important;
  }
  body.premium-ui .premium-menu-title {
    display:flex!important;
    gap:10px!important;
    margin-bottom:10px!important;
  }
  body.premium-ui .premium-menu-title b {
    color:#f8fafc!important;
  }
  body.premium-ui .premium-menu-title span {
    color:#94a3b8!important;
  }
  body.premium-ui .premium-menu-title .premium-menu-close {
    margin-left:auto!important;
    width:34px!important;
    height:34px!important;
    border-radius:12px!important;
    border:1px solid rgba(148,163,184,.16)!important;
    background:rgba(15,23,42,.86)!important;
    color:#cbd5e1!important;
  }
  body.premium-ui .clean-mobile-grid {
    display:grid!important;
    margin-bottom:10px!important;
  }
  body.premium-ui .clean-mobile-grid button {
    border-radius:16px!important;
    border:1px solid rgba(148,163,184,.14)!important;
    background:rgba(30,41,59,.62)!important;
    color:#e2e8f0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    font-weight:800!important;
  }
  body.premium-ui .clean-mobile-grid button:hover {
    background:rgba(56,189,248,.12)!important;
    border-color:rgba(56,189,248,.28)!important;
    color:#fff!important;
  }
  body.premium-ui .pm-icon {
    display:grid!important;
    place-items:center!important;
    color:var(--accent-base,#38bdf8)!important;
  }
  body.premium-ui .pm-icon svg {
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
    stroke-linejoin:round;
  }
  body.premium-ui .premium-menu-search {
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    padding:0 10px!important;
    border:1px solid rgba(148,163,184,.16)!important;
    background:#090d16!important;
    border-radius:14px!important;
  }
  body.premium-ui .premium-menu-search input {
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    height:40px!important;
    padding:0!important;
    font-size:13px!important;
  }
  body.premium-ui .side-nav {
    max-height:none!important;
  }
  body.premium-ui .side-nav .nav-section-title {
    color:#64748b!important;
    font-size:10px!important;
    letter-spacing:.08em!important;
  }
  body.premium-ui .side-nav .nav-section-title i {
    margin-left:auto!important;
    color:#94a3b8!important;
  }
  body.premium-ui .side-nav .nav-section-title.collapsed i {
    transform:rotate(-90deg)!important;
  }
  body.premium-ui .side-nav .nav-item {
    margin-bottom:2px!important;
    gap:10px!important;
  }
  body.premium-ui .side-nav .nav-item .nav-icon {
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
  }
  body.premium-ui .side-nav .nav-item .nav-icon svg {
    width:19px!important;
    height:19px!important;
  }
  body.premium-ui .side-nav .section-hidden,
  body.premium-ui .side-nav .search-hidden,
  body.premium-ui .side-nav .desktop-search-hidden {
    display:none!important;
  }
}

@media(max-width:390px) {
  body.premium-ui .mobile-nav.glass-nav {
    left:7px!important;
    right:7px!important;
    gap:4px!important;
    padding:7px!important;
  }
  body.premium-ui .mobile-nav button {
    font-size:9.7px!important;
  }
  body.premium-ui .clean-mobile-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
/* ========================================================================== 
   OSPro 5.3.2 - Alinhamento mobile/desktop
   Corrige sobreposição da sessão no menu mobile e padroniza títulos das abas.
   ========================================================================== */
body.premium-ui .main {
  min-width:0!important;
}
body.premium-ui .topbar.glass-header {
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:22px 26px 16px!important;
  margin:0 0 18px!important;
  border-radius:0!important;
  border-top:0!important;
  border-left:0!important;
  border-right:0!important;
  border-bottom:1px solid rgba(148,163,184,.16)!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.premium-ui .topbar.glass-header > div:first-child {
  min-width:0!important;
  display:grid!important;
  gap:5px!important;
  align-content:start!important;
  justify-items:start;
  text-align:left!important;
  padding:0!important;
  margin:0!important;
}
body.premium-ui #pageTitle {
  margin:0!important;
  padding:0!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  font-size:clamp(24px,2.1vw,32px)!important;
  font-weight:850!important;
  text-align:left!important;
}
body.premium-ui #pageSubtitle {
  margin:0!important;
  padding:0!important;
  line-height:1.35!important;
  font-size:13px!important;
  color:#94a3b8!important;
  text-align:left!important;
}
body.premium-ui .top-actions-clean {
  flex:0 0 auto!important;
  align-self:flex-start;
  margin:0!important;
}
/* Sidebar desktop: todos os nomes com a mesma linha base */

@media(min-width:769px) {
  body.premium-ui .side-nav .nav-item {
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:11px;
    min-height:39px!important;
    padding:8px 10px!important;
    line-height:1.1!important;
  }
  body.premium-ui .side-nav .nav-item > .nav-icon,
  body.premium-ui .side-nav .nav-item > .desktop-nav-icon {
    grid-column:1!important;
    width:19px!important;
    height:19px!important;
    min-width:19px!important;
    margin:0!important;
    align-self:center;
    justify-self:center;
  }
  body.premium-ui .side-nav .nav-item > span:not(.nav-icon):not(.desktop-nav-icon) {
    grid-column:2!important;
    align-self:center;
    line-height:1.2!important;
    font-size:13.5px!important;
    margin:0!important;
    padding:0!important;
    display:block!important;
  }
  body.premium-ui .side-nav .nav-item > b,
  body.premium-ui .side-nav .nav-item > .nav-badge,
  body.premium-ui .side-nav .nav-item > .nav-alert-badge {
    grid-column:3!important;
    align-self:center;
    justify-self:end;
    margin:0!important;
  }
  body.premium-ui .desktop-section-toggle,
  body.premium-ui .side-nav .nav-section-title {
    display:grid!important;
    grid-template-columns:auto 1fr auto!important;
    align-items:center!important;
    gap:10px!important;
    min-height:31px!important;
    padding:8px 10px 6px!important;
    margin:13px 0 4px!important;
    line-height:1!important;
  }
  body.premium-ui .side-nav .nav-section-title span {
    align-self:center;
    line-height:1!important;
    margin:0!important;
  }
  body.premium-ui .side-nav .nav-section-title .desktop-section-line,
  body.premium-ui .side-nav .nav-section-title i:not(.desktop-section-line) {
    align-self:center;
  }
}
/* Mobile: menu tipo gaveta sem sobreposição */

@media(max-width:768px) {
  html,
  body {
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }
  body.premium-ui {
    padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))!important;
  }
  body.premium-ui .app {
    min-height:100svh!important;
    width:100%!important;
    overflow-x:hidden!important;
  }
  body.premium-ui .main {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:calc(14px + env(safe-area-inset-top,0px)) 14px calc(112px + env(safe-area-inset-bottom,0px))!important;
    overflow-x:hidden!important;
  }
  body.premium-ui .topbar.glass-header {
    padding:10px 0 14px!important;
    margin:0 0 16px!important;
    gap:10px!important;
    min-height:auto!important;
  }
  body.premium-ui .topbar.glass-header > div:first-child {
    width:100%!important;
    max-width:100%!important;
  }
  body.premium-ui #pageTitle {
    font-size:24px!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }
  body.premium-ui #pageSubtitle {
    font-size:12.5px!important;
    max-width:100%!important;
  }
  body.premium-ui .top-actions-clean {
    display:none!important;
  }
  body.premium-ui .sidebar.glass-sidebar,
  body.premium-ui .sidebar {
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    left:12px!important;
    right:12px!important;
    bottom:calc(88px + env(safe-area-inset-bottom,0px))!important;
    top:auto!important;
    max-height:calc(100svh - 118px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))!important;
    padding:13px!important;
    overflow:hidden!important;
    overscroll-behavior:contain!important;
  }
  body.premium-ui .sidebar .brand {
    display:none!important;
  }
  body.premium-ui .premium-mobile-menu {
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
  }
  body.premium-ui .premium-menu-title {
    min-height:40px!important;
    margin:0 0 8px!important;
    padding:0 2px!important;
    align-items:center!important;
  }
  body.premium-ui .premium-menu-title b {
    font-size:15px!important;
    line-height:1.1!important;
    margin:0!important;
  }
  body.premium-ui .premium-menu-title span {
    font-size:11.5px!important;
    line-height:1.2!important;
  }
  body.premium-ui .premium-menu-search {
    min-height:40px!important;
    margin:0 0 8px!important;
    flex:0 0 auto!important;
  }
  body.premium-ui .clean-mobile-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:7px!important;
    margin:0 0 9px!important;
  }
  body.premium-ui .clean-mobile-grid button {
    min-height:62px!important;
    padding:7px 4px!important;
    gap:5px!important;
    font-size:10.8px!important;
    line-height:1.15!important;
  }
  body.premium-ui .pm-icon,
  body.premium-ui .pm-icon svg {
    width:20px!important;
    height:20px!important;
  }
  body.premium-ui .side-nav {
    flex:1 1 auto!important;
    min-height:0!important;
    overflow:auto!important;
    -webkit-overflow-scrolling:touch;
    padding:0 2px 10px!important;
    display:block!important;
  }
  body.premium-ui .side-nav .nav-section-title {
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    min-height:40px!important;
    margin:8px 0 5px!important;
    padding:0 13px!important;
    border:1px solid rgba(56,91,129,.62)!important;
    border-radius:16px!important;
    background:rgba(15,23,42,.72)!important;
    line-height:1!important;
  }
  body.premium-ui .side-nav .nav-section-title > span {
    flex:0 0 auto!important;
    display:block!important;
    line-height:1!important;
    margin:0!important;
    padding:0!important;
  }
  body.premium-ui .side-nav .nav-section-title:after {
    content:"";
    flex:1 1 auto;
    height:1px;
    background:rgba(84,115,153,.6);
    min-width:20px;
  }
  body.premium-ui .side-nav .nav-section-title > i {
    order:3;
    flex:0 0 auto!important;
    margin:0!important;
    line-height:1!important;
    transform:none!important;
  }
  body.premium-ui .side-nav .nav-section-title.collapsed > i {
    transform:rotate(-90deg)!important;
  }
  body.premium-ui .side-nav .nav-item {
    display:grid!important;
    grid-template-columns:24px minmax(0,1fr) auto!important;
    align-items:center!important;
    column-gap:12px;
    min-height:46px!important;
    padding:9px 12px!important;
    margin:0 0 3px!important;
    border-radius:15px!important;
    font-size:14px!important;
    line-height:1.15!important;
  }
  body.premium-ui .side-nav .nav-item > .nav-icon,
  body.premium-ui .side-nav .nav-item > .desktop-nav-icon {
    grid-column:1!important;
    align-self:center;
    justify-self:center;
    width:21px!important;
    height:21px!important;
    min-width:21px!important;
    margin:0!important;
  }
  body.premium-ui .side-nav .nav-item > .nav-icon svg,
  body.premium-ui .side-nav .nav-item > .desktop-nav-icon svg {
    width:21px!important;
    height:21px!important;
  }
  body.premium-ui .side-nav .nav-item > span:not(.nav-icon):not(.desktop-nav-icon) {
    grid-column:2!important;
    align-self:center;
    line-height:1.18!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
  }
  body.premium-ui .side-nav .nav-item > b,
  body.premium-ui .side-nav .nav-item > .nav-badge,
  body.premium-ui .side-nav .nav-item > .nav-alert-badge {
    grid-column:3!important;
    align-self:center;
    justify-self:end;
    margin:0!important;
  }
  body.premium-ui .sidebar .session-box {
    position:static!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    bottom:auto!important;
    order:3;
    flex:0 0 auto!important;
    width:100%!important;
    margin:4px 0 0!important;
    padding:10px 12px!important;
    border-radius:16px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:4px 10px!important;
    transform:none!important;
    z-index:auto!important;
    box-shadow:none!important;
  }
  body.premium-ui .sidebar .session-box span {
    grid-column:1!important;
    line-height:1.15!important;
    margin:0!important;
    padding:0!important;
    font-size:15px!important;
  }
  body.premium-ui .sidebar .session-box small {
    grid-column:1!important;
    line-height:1.15!important;
    margin:0!important;
    padding:0!important;
    font-size:12px!important;
  }
  body.premium-ui .sidebar .session-box .btn-logout {
    grid-column:2!important;
    grid-row:1 / span 2;
    align-self:center;
    min-height:38px!important;
    padding:0 14px!important;
    border-radius:13px!important;
    margin:0!important;
  }
  body.premium-ui .mobile-nav.glass-nav {
    height:70px!important;
    left:12px!important;
    right:12px!important;
    bottom:calc(10px + env(safe-area-inset-bottom,0px))!important;
    border-radius:24px!important;
  }
  body.premium-ui .mobile-nav button {
    height:54px!important;
    min-height:54px!important;
    line-height:1!important;
  }
  body.premium-ui .mobile-nav .mobile-new {
    height:54px!important;
    min-height:54px!important;
  }
}

@media(max-width:390px) {
  body.premium-ui .sidebar.glass-sidebar,
  body.premium-ui .sidebar {
    left:8px!important;
    right:8px!important;
    padding:11px!important;
  }
  body.premium-ui .clean-mobile-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui .side-nav .nav-item {
    min-height:43px!important;
    font-size:13px!important;
    padding:8px 10px!important;
  }
  body.premium-ui .mobile-nav.glass-nav {
    left:8px!important;
    right:8px!important;
  }
}
/* ==========================================================================
   OSPRO — CAMADA DE ACABAMENTO PREMIUM
   Adicionada por último de propósito: só refina o que já existe (tipografia,
   foco, números, tabelas e resposta ao toque). Não muda layout nem cor de
   marca, então pode ser removida inteira sem quebrar nenhuma tela.
   ========================================================================== */
/* --- 1. Renderização da tipografia --------------------------------------
   A fonte Plus Jakarta Sans agora carrega de verdade (antes a CSP bloqueava).
   Estes ajustes fazem ela desenhar limpa em tela de notebook e de celular. */
html {
  -webkit-text-size-adjust:100%;
}
body,
body.premium-ui {
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  font-synthesis-weight:none;
}
body.premium-ui h1,
body.premium-ui h2,
body.premium-ui h3,
body.premium-ui .brand b,
body.premium-ui .login-brand b {
  letter-spacing:-.018em;
  text-wrap:balance;
}
body.premium-ui .eyebrow,
body.premium-ui .nav-section-title {
  letter-spacing:.09em;
  text-transform:uppercase;
}
body.premium-ui p,
body.premium-ui .subtitle,
body.premium-ui .problem {
  text-wrap:pretty;
}
/* --- 2. Números alinhados -------------------------------------------------
   Em lista de OS, financeiro e relatórios os valores ficam em coluna. Com
   algarismos de largura fixa, R$ 1.234,00 e R$ 999,00 alinham na vírgula. */
body.premium-ui table,
body.premium-ui .moneybox,
body.premium-ui .mini-pill,
body.premium-ui .status-chip,
body.premium-ui .card-topline .id,
body.premium-ui .card-meta,
body.premium-ui .compact-value-cell,
body.premium-ui .price-last,
body.premium-ui .price-compact-box,
body.premium-ui .finance-day-values,
body.premium-ui .reports-box,
body.premium-ui .closing-box,
body.premium-ui .finance-box-pro,
body.premium-ui input[type="number"],
body.premium-ui input[inputmode="numeric"],
body.premium-ui input[inputmode="decimal"],
body.premium-ui input[inputmode="tel"] {
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1,"lnum" 1;
}
/* --- 3. Foco visível ------------------------------------------------------
   Quem opera o balcão usa muito Tab. O anel só aparece na navegação por
   teclado (:focus-visible), então o clique de mouse continua limpo. */
body.premium-ui .btn:focus-visible,
body.premium-ui .nav-item:focus-visible,
body.premium-ui .icon-btn:focus-visible,
body.premium-ui .btn-tab:focus-visible,
body.premium-ui button:focus-visible,
body.premium-ui a:focus-visible,
body.premium-ui [tabindex]:focus-visible {
  outline:2px solid rgba(250,204,21,.9)!important;
  outline-offset:2px!important;
  border-radius:12px;
}
body.premium-ui input:focus-visible,
body.premium-ui select:focus-visible,
body.premium-ui textarea:focus-visible {
  outline:none!important;
  border-color:rgba(250,204,21,.55)!important;
  box-shadow:0 0 0 3px rgba(250,204,21,.16)!important;
}
/* --- 4. Seleção de texto na cor da marca -------------------------------- */
body.premium-ui ::selection {
  background:rgba(250,204,21,.28);
  color:#fff;
}
/* --- 5. Barras de rolagem discretas ------------------------------------- */
body.premium-ui * {
  scrollbar-width:thin;
  scrollbar-color:rgba(148,163,184,.35) transparent;
}
body.premium-ui ::-webkit-scrollbar {
  width:10px;
  height:10px;
}
body.premium-ui ::-webkit-scrollbar-track {
  background:transparent;
}
body.premium-ui ::-webkit-scrollbar-thumb {
  border:3px solid transparent;
  border-radius:999px;
  background-clip:content-box;
  background-color:rgba(148,163,184,.32);
}
body.premium-ui ::-webkit-scrollbar-thumb:hover {
  background-color:rgba(250,204,21,.45);
}
/* --- 6. Tabelas legíveis em lista longa ---------------------------------
   Cabeçalho fixo ao rolar e linha destacada sob o cursor: menos erro de
   leitura quando o histórico passa de algumas dezenas de linhas. */
body.premium-ui .table-wrap {
  overscroll-behavior:contain;
}
body.premium-ui .table-wrap thead th {
  position:sticky;
  top:0;
  z-index:2;
  background:#0e1b2c;
  box-shadow:inset 0 -1px 0 rgba(255,255,255,.08);
}
body.premium-ui table tbody tr {
  transition:background-color .12s ease;
}
body.premium-ui table tbody tr:hover {
  background:rgba(250,204,21,.05);
}
/* --- 7. Resposta ao clique ----------------------------------------------
   Os botões já subiam 1px no hover, mas sem transição — o movimento era
   seco. Aqui ele ganha curva e um retorno firme no clique. */
body.premium-ui .btn,
body.premium-ui .icon-btn,
body.premium-ui .nav-item,
body.premium-ui .os-card,
body.premium-ui .settings-shortcut-card {
  transition:transform .16s cubic-bezier(.2,.7,.3,1),
             box-shadow .16s ease,
             background-color .16s ease,
             border-color .16s ease,
             filter .16s ease;
}
body.premium-ui .btn:active {
  transform:translateY(1px) scale(.995);
}
/* O card não abre no clique — ele se arrasta entre as colunas. A mãozinha de
   "pegar" avisa isso; um cursor de link prometeria algo que não acontece. */
body.premium-ui .os-card[draggable="true"] {
  cursor:grab;
}
body.premium-ui .os-card[draggable="true"]:active {
  cursor:grabbing;
}
/* O .dragging do style.css tinha fundo claro (#eff7ff), herdado do tema antigo:
   no tema escuro o card piscava branco ao ser arrastado. */
body.premium-ui .os-card.dragging {
  opacity:.6;
  transform:scale(.98) rotate(-.4deg);
  background:rgba(250,204,21,.10)!important;
  border-color:rgba(250,204,21,.45)!important;
  box-shadow:0 18px 40px -14px rgba(0,0,0,.7)!important;
}
body.premium-ui .professional-column.drag-over {
  background:rgba(250,204,21,.06)!important;
  outline:1px dashed rgba(250,204,21,.35);
  outline-offset:-4px;
  border-radius:16px;
}
body.premium-ui .os-card:hover {
  transform:translateY(-2px);
  box-shadow:0 24px 45px -18px rgba(0,0,0,.65);
  border-color:rgba(250,204,21,.24)!important;
}
body.premium-ui .settings-shortcut-card:hover {
  transform:translateY(-2px);
  border-color:rgba(250,204,21,.22)!important;
}
/* --- 8. Estado desabilitado sem ambiguidade ----------------------------- */
body.premium-ui .btn:disabled,
body.premium-ui button:disabled,
body.premium-ui input:disabled,
body.premium-ui select:disabled,
body.premium-ui textarea:disabled {
  opacity:.5;
  cursor:not-allowed;
  filter:saturate(.6);
  transform:none!important;
}
/* --- 9. Respeito a "reduzir movimento" ----------------------------------
   Exigência de acessibilidade e alívio para quem usa o sistema o dia todo. */

@media(prefers-reduced-motion:reduce) {
  body.premium-ui *,
  body.premium-ui *::before,
  body.premium-ui *::after {
    animation-duration:.001ms;
    animation-iteration-count:1;
    transition-duration:.001ms;
    scroll-behavior:auto;
  }
  body.premium-ui .btn:hover,
  body.premium-ui .os-card:hover,
  body.premium-ui .settings-shortcut-card:hover {
    transform:none;
  }
}
/* --- 10. Impressão limpa -------------------------------------------------
   Se alguém der Ctrl+P direto do painel, sai a lista — não o menu. */

@media print {
  .sidebar,
  .mobile-nav,
  .mobile-menu-btn,
  .mobile-backdrop,
  .toast,
  .context-menu,
  .quick-card-actions,
  .professional-toolbar {
    display:none!important;
  }
  body,
  body.premium-ui {
    background:#fff!important;
    color:#000!important;
  }
  .glass-panel,
  .glass-card,
  .os-card {
    background:#fff!important;
    color:#000!important;
    border:1px solid #ccc!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
  }
}
/* --- 11. Barra de progresso das requisições -----------------------------
   Criada pelo app.js sempre que existe chamada em voo. Dá ao operador o
   sinal de "o sistema está trabalhando" que faltava ao trocar de página ou
   pesquisar — sem travar nem escurecer a tela. */
.mc-progress {
  position:fixed;
  top:0;
  left:0;
  z-index:99999;
  width:0;
  height:3px;
  border-radius:0 3px 3px 0;
  background:linear-gradient(90deg,#eab308,#facc15 55%,#fde68a);
  box-shadow:0 0 14px rgba(250,204,21,.55);
  opacity:0;
  pointer-events:none;
}
.mc-progress.active {
  width:88%;
  opacity:1;
  transition:width 9s cubic-bezier(.06,.72,.12,1),opacity .12s ease;
}
.mc-progress.done {
  width:100%;
  opacity:0;
  transition:width .16s ease,opacity .38s ease .14s;
}

@media(prefers-reduced-motion:reduce) {
  .mc-progress.active {
    transition:opacity .12s ease;
    width:100%;
  }
  .mc-progress.done {
    transition:opacity .2s ease;
  }
}
/* --- 12. Painel de segurança: faltava o nível "crítico" -------------------
   A grade só tinha verde (.ok) e amarelo (.warn). Um cron parado há dias ou
   uma chave de recuperação nunca exportada saíam na cor normal do texto e
   passavam despercebidos justamente quando mais importavam. */
.security-grid .bad,
body.premium-ui .security-grid .bad {
  color:#ff6c83;
}
body.premium-ui .security-grid .warn {
  color:#facc15;
}
body.premium-ui .security-grid .ok {
  color:#34dd91;
}
/* --- 13. Linha da peça avulsa -------------------------------------------
   Peça comprada para a OS específica, que nunca passou pelo estoque. Fica em
   linha própria para não desarrumar a grade de 4 colunas do lançamento
   normal, e com borda de destaque porque é um caminho fora do estoque. */
.parts-manual-row {
  display:grid;
  grid-template-columns:1fr 190px;
  gap:10px;
  align-items:start;
  margin-bottom:10px;
  padding:12px;
  border:1px dashed rgba(250,204,21,.35);
  border-radius:14px;
  background:rgba(250,204,21,.05);
}

@media(max-width:720px) {
  .parts-manual-row {
    grid-template-columns:1fr;
  }
}
/* === OSPro 5.3.4 | Valor manual em Peças (R$) === */
body.premium-ui .manual-parts-field input#partsValue {
  border-color:rgba(255,213,42,.55)!important;
  background:rgba(255,213,42,.055)!important;
  box-shadow:0 0 0 1px rgba(255,213,42,.12) inset!important;
}
body.premium-ui .manual-parts-field small {
  color:#ffe38d!important;
  line-height:1.35!important;
}
body.premium-ui #orderPartsTable tr.manual-order-part-row td:first-child {
  color:#ffe38d!important;
}
body.premium-ui #orderPartsTable tr.manual-order-part-row small {
  display:block!important;
  margin-top:4px!important;
  color:#9fb2d0!important;
  font-size:11px!important;
}
/* === Patch 5.3.5 | Lógica de lucro na OS === */
body.premium-ui .money-logic-field small,
body.premium-ui .profit-total-field small {
  display:block!important;
  margin-top:6px!important;
  color:#93a8c8!important;
  font-size:11.5px!important;
  line-height:1.35!important;
}
body.premium-ui .profit-total-field input {
  border-color:rgba(16,185,129,.65)!important;
  color:#34f5a0!important;
  font-weight:900!important;
  background:rgba(16,185,129,.08)!important;
}
body.premium-ui .profit-box {
  border:1px solid rgba(16,185,129,.25)!important;
  background:rgba(16,185,129,.07)!important;
  color:#d8ffe9!important;
}
body.premium-ui .profit-box strong {
  color:#34f5a0!important;
  font-size:16px!important;
}
body.premium-ui .profit-negative-warning {
  display:block!important;
  margin-top:8px!important;
  color:#ffb4b4!important;
  font-weight:800!important;
}
body.premium-ui .moneybox small {
  display:block!important;
  margin-top:3px!important;
  font-size:10.5px!important;
  color:#9bb0cf!important;
  font-weight:700!important;
}
/* ========================================================================== 
   OSPro 5.3.6 - Organização visual dos botões
   Foco: ações mais fáceis, rodapé da OS organizado e tabelas menos poluídas.
   ========================================================================== */
body.mc-ux-536 {
  --mc-action-primary:#facc15;
  --mc-action-primary-2:#d4a70d;
  --mc-action-success:#22c55e;
  --mc-action-info:#38bdf8;
  --mc-action-danger:#fb7185;
  --mc-action-surface:rgba(15,23,42,.82);
}
body.premium-ui.mc-ux-536 .top-actions,
body.premium-ui.mc-ux-536 .toolbar-actions,
body.premium-ui.mc-ux-536 .today-actions,
body.premium-ui.mc-ux-536 .counter-actions,
body.premium-ui.mc-ux-536 .resale-actions,
body.premium-ui.mc-ux-536 .resale-hero-actions,
body.premium-ui.mc-ux-536 .saas-cpanel-buttons,
body.premium-ui.mc-ux-536 .wa-instance-actions,
body.premium-ui.mc-ux-536 .wa-old-actions {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
body.premium-ui.mc-ux-536 .btn,
body.premium-ui.mc-ux-536 button.btn,
body.premium-ui.mc-ux-536 a.btn {
  min-height:38px!important;
  border-radius:12px!important;
  padding:0 14px!important;
  font-size:13px!important;
  font-weight:850!important;
  letter-spacing:-.01em!important;
  border:1px solid rgba(148,163,184,.18)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset,0 8px 18px rgba(0,0,0,.16)!important;
  transform:none!important;
}
body.premium-ui.mc-ux-536 .btn:hover {
  transform:translateY(-1px)!important;
  border-color:rgba(250,204,21,.38)!important;
  filter:brightness(1.04)!important;
}
body.premium-ui.mc-ux-536 .btn.primary,
body.premium-ui.mc-ux-536 .btn.primary-glow,
body.premium-ui.mc-ux-536 .btn-primary,
body.premium-ui.mc-ux-536 .save-os-mobile-main {
  background:linear-gradient(180deg,var(--mc-action-primary),var(--mc-action-primary-2))!important;
  color:#111827!important;
  border-color:rgba(254,240,138,.75)!important;
  box-shadow:0 1px 0 rgba(255,255,255,.28) inset,0 12px 24px rgba(250,204,21,.18)!important;
}
body.premium-ui.mc-ux-536 .btn.glass-btn,
body.premium-ui.mc-ux-536 .btn:not(.primary):not(.primary-glow):not(.danger),
body.premium-ui.mc-ux-536 .wa-direct-btn {
  background:linear-gradient(180deg,rgba(30,41,59,.95),rgba(15,23,42,.95))!important;
  color:#e2e8f0!important;
  border-color:rgba(148,163,184,.18)!important;
}
body.premium-ui.mc-ux-536 .btn.danger,
body.premium-ui.mc-ux-536 .mini-btn.danger,
body.premium-ui.mc-ux-536 .danger {
  background:rgba(127,29,29,.28)!important;
  color:#fecdd3!important;
  border-color:rgba(251,113,133,.45)!important;
}
body.premium-ui.mc-ux-536 .mini-btn,
body.premium-ui.mc-ux-536 .row-actions button,
body.premium-ui.mc-ux-536 .inline-row-actions button,
body.premium-ui.mc-ux-536 .quick-card-actions button {
  min-height:32px!important;
  padding:7px 11px!important;
  border-radius:10px!important;
  font-size:12px!important;
  font-weight:850!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  background:rgba(30,41,59,.72)!important;
  color:#e5eefb!important;
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset!important;
  white-space:nowrap!important;
}
body.premium-ui.mc-ux-536 .mini-btn:hover,
body.premium-ui.mc-ux-536 .row-actions button:hover,
body.premium-ui.mc-ux-536 .inline-row-actions button:hover,
body.premium-ui.mc-ux-536 .quick-card-actions button:hover {
  background:rgba(250,204,21,.13)!important;
  border-color:rgba(250,204,21,.36)!important;
  color:#fff8db!important;
}
body.premium-ui.mc-ux-536 .row-actions,
body.premium-ui.mc-ux-536 .row-actions-stack,
body.premium-ui.mc-ux-536 .inline-row-actions.easy-actions {
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  min-width:0!important;
  max-width:100%!important;
}
body.premium-ui.mc-ux-536 td.row-actions,
body.premium-ui.mc-ux-536 td.actions-cell {
  min-width:170px!important;
  width:auto!important;
  overflow:visible!important;
}
body.premium-ui.mc-ux-536 .table-wrap {
  border-radius:18px!important;
  border:1px solid rgba(148,163,184,.12)!important;
  background:rgba(2,6,23,.20)!important;
  box-shadow:0 14px 35px rgba(0,0,0,.18)!important;
  overflow:auto!important;
}
body.premium-ui.mc-ux-536 table th {
  padding:10px 12px!important;
  font-size:11px!important;
  font-weight:950!important;
  letter-spacing:.065em!important;
  text-transform:uppercase!important;
}
body.premium-ui.mc-ux-536 table td {
  padding:12px!important;
  line-height:1.35!important;
}
body.premium-ui.mc-ux-536 table td b {
  font-size:13.5px!important;
  line-height:1.2!important;
}
body.premium-ui.mc-ux-536 table td small {
  display:block!important;
  margin-top:4px!important;
  font-size:11px!important;
  line-height:1.35!important;
}
body.premium-ui.mc-ux-536 .quick-card-actions {
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;
  gap:7px!important;
}
body.premium-ui.mc-ux-536 .quick-card-actions button {
  width:100%!important;
  min-height:36px!important;
}
body.premium-ui.mc-ux-536 .order-wa-quick {
  display:grid!important;
  grid-template-columns:145px repeat(5,minmax(105px,1fr))!important;
  align-items:center!important;
  gap:8px!important;
  margin:14px 0 6px!important;
  padding:12px!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(2,6,23,.45))!important;
  border:1px solid rgba(148,163,184,.12)!important;
}
body.premium-ui.mc-ux-536 .order-wa-quick-title {
  font-size:11px!important;
  color:#86efac!important;
  letter-spacing:.07em!important;
}
body.premium-ui.mc-ux-536 .wa-direct-btn {
  min-height:36px!important;
  width:100%!important;
  padding:0 10px!important;
  border-radius:11px!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.premium-ui.mc-ux-536 #whatsappOrder,
body.premium-ui.mc-ux-536 .wa-direct-btn,
body.premium-ui.mc-ux-536 .btn.whatsapp {
  border-color:rgba(34,197,94,.35)!important;
  background:linear-gradient(180deg,rgba(22,163,74,.22),rgba(20,83,45,.25))!important;
  color:#dcfce7!important;
}
body.premium-ui.mc-ux-536 #finishPickup,
body.premium-ui.mc-ux-536 .finish-pickup-action {
  border-color:rgba(56,189,248,.38)!important;
  background:linear-gradient(180deg,rgba(56,189,248,.20),rgba(14,116,144,.20))!important;
  color:#dff8ff!important;
}
body.premium-ui.mc-ux-536 .reopen-os-action {
  border-color:rgba(167,139,250,.34)!important;
  background:linear-gradient(180deg,rgba(139,92,246,.18),rgba(76,29,149,.18))!important;
  color:#ede9fe!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
  display:grid!important;
  grid-template-columns:auto auto auto 1fr auto auto!important;
  align-items:center!important;
  gap:8px!important;
  margin-top:16px!important;
  padding:12px!important;
  border:1px solid rgba(148,163,184,.16)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(2,6,23,.92))!important;
  box-shadow:0 -8px 28px rgba(0,0,0,.22),0 1px 0 rgba(255,255,255,.05) inset!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .save-os-mobile-main {
  grid-column:auto!important;
  min-width:150px!important;
  min-height:42px!important;
  font-size:14px!important;
  order:10;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock #whatsappOrder {
  order:2;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock #finishPickup {
  order:3;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock #reopenOrder {
  order:4;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more {
  order:5;
  justify-self:start;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock [data-close="orderModal"] {
  order:99;
  justify-self:end;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more>.btn {
  height:38px!important;
}
body.premium-ui.mc-ux-536 .dropdown-content {
  border-radius:16px!important;
  padding:7px!important;
  min-width:250px!important;
  background:#111c2e!important;
  box-shadow:0 20px 55px rgba(0,0,0,.48)!important;
}
body.premium-ui.mc-ux-536 .dropdown-content button {
  min-height:36px!important;
  border-radius:10px!important;
  font-weight:850!important;
}
body.premium-ui.mc-ux-536 .order-tabs,
body.premium-ui.mc-ux-536 .resale-tabs {
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  padding:6px!important;
  border-radius:16px!important;
  background:rgba(2,6,23,.25)!important;
  border:1px solid rgba(148,163,184,.08)!important;
}
body.premium-ui.mc-ux-536 .order-tab,
body.premium-ui.mc-ux-536 .resale-tabs .btn-tab {
  min-height:36px!important;
  padding:0 14px!important;
  border-radius:12px!important;
  font-size:12px!important;
  font-weight:900!important;
}
body.premium-ui.mc-ux-536 .order-tab.active,
body.premium-ui.mc-ux-536 .resale-tabs .btn-tab.active {
  background:linear-gradient(180deg,#facc15,#d4a70d)!important;
  color:#111827!important;
  border-color:rgba(254,240,138,.7)!important;
}
body.premium-ui.mc-ux-536 .panel-head,
body.premium-ui.mc-ux-536 .resale-section-head,
body.premium-ui.mc-ux-536 .saas-cpanel-head {
  gap:12px!important;
  align-items:flex-start!important;
}
body.premium-ui.mc-ux-536 .panel-head .btn,
body.premium-ui.mc-ux-536 .resale-section-head .btn,
body.premium-ui.mc-ux-536 .saas-cpanel-head .btn {
  flex:0 0 auto!important;
}
body.premium-ui.mc-ux-536 .modal-card {
  border-radius:22px!important;
  border-color:rgba(148,163,184,.16)!important;
}
body.premium-ui.mc-ux-536 .form-grid label,
body.premium-ui.mc-ux-536 .parts-manual-row label {
  min-width:0!important;
}
body.premium-ui.mc-ux-536 input,
body.premium-ui.mc-ux-536 select,
body.premium-ui.mc-ux-536 textarea {
  border-radius:12px!important;
}

@media(max-width:1180px) {
  body.premium-ui.mc-ux-536 .order-wa-quick {
    grid-template-columns:1fr 1fr 1fr!important;
  }
  body.premium-ui.mc-ux-536 .order-wa-quick-title {
    grid-column:1/-1!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .btn,
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more,
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more>.btn {
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:768px) {
  body.premium-ui.mc-ux-536 .top-actions,
  body.premium-ui.mc-ux-536 .toolbar-actions,
  body.premium-ui.mc-ux-536 .today-actions,
  body.premium-ui.mc-ux-536 .counter-actions,
  body.premium-ui.mc-ux-536 .resale-actions,
  body.premium-ui.mc-ux-536 .resale-hero-actions,
  body.premium-ui.mc-ux-536 .saas-cpanel-buttons {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    width:100%!important;
  }
  body.premium-ui.mc-ux-536 .top-actions .btn,
  body.premium-ui.mc-ux-536 .toolbar-actions .btn,
  body.premium-ui.mc-ux-536 .today-actions .btn,
  body.premium-ui.mc-ux-536 .counter-actions .btn,
  body.premium-ui.mc-ux-536 .resale-actions .btn,
  body.premium-ui.mc-ux-536 .resale-hero-actions .btn,
  body.premium-ui.mc-ux-536 .saas-cpanel-buttons .btn {
    width:100%!important;
  }
  body.premium-ui.mc-ux-536 .order-wa-quick {
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
    grid-template-columns:1fr 1fr!important;
    padding:10px!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .save-os-mobile-main {
    grid-column:1/-1!important;
    order:1;
    min-height:48px!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock [data-close="orderModal"] {
    justify-self:stretch;
  }
  body.premium-ui.mc-ux-536 .modal-actions .btn {
    width:100%!important;
  }
  body.premium-ui.mc-ux-536 .row-actions,
  body.premium-ui.mc-ux-536 .inline-row-actions.easy-actions {
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui.mc-ux-536 .row-actions .mini-btn,
  body.premium-ui.mc-ux-536 .inline-row-actions.easy-actions .mini-btn {
    width:100%!important;
  }
  body.premium-ui.mc-ux-536 table td {
    padding:10px!important;
  }
}

@media(max-width:520px) {
  body.premium-ui.mc-ux-536 .top-actions,
  body.premium-ui.mc-ux-536 .toolbar-actions,
  body.premium-ui.mc-ux-536 .today-actions,
  body.premium-ui.mc-ux-536 .counter-actions,
  body.premium-ui.mc-ux-536 .resale-actions,
  body.premium-ui.mc-ux-536 .resale-hero-actions,
  body.premium-ui.mc-ux-536 .saas-cpanel-buttons,
  body.premium-ui.mc-ux-536 .order-wa-quick,
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-ux-536 .row-actions,
  body.premium-ui.mc-ux-536 .inline-row-actions.easy-actions {
    grid-template-columns:1fr!important;
  }
}
/* ========================================================================== 
   OSPro 5.3.7 - Revenda Pro mais alinhada
   Foco: fluxo, abas, resumo, PDV, tabelas e botões da revenda.
   ========================================================================== */
body.premium-ui.mc-resale-537 #page-resale .resale-panel {
  padding:18px!important;
  display:grid!important;
  gap:16px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(230px,300px)!important;
  align-items:stretch!important;
  gap:14px!important;
  padding:20px!important;
  border-radius:22px!important;
  overflow:hidden!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero-main {
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-kicker {
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:rgba(250,204,21,.10)!important;
  border:1px solid rgba(250,204,21,.20)!important;
  color:#fde68a!important;
  font-size:12px!important;
  font-weight:950!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero h2 {
  max-width:850px!important;
  line-height:1.05!important;
  margin:8px 0 7px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero p {
  max-width:850px!important;
  line-height:1.55!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero-actions {
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:center!important;
  justify-content:stretch!important;
  gap:8px!important;
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-hero-actions .btn {
  width:100%!important;
  min-height:40px!important;
  justify-content:center!important;
  white-space:normal!important;
  text-align:center!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-flow {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-flow-step {
  min-height:112px!important;
  height:100%!important;
  padding:14px!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr)!important;
  grid-template-rows:auto auto;
  align-items:start!important;
  column-gap:10px;
  row-gap:4px;
  text-align:left!important;
  border-radius:18px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-flow-step b {
  grid-row:1/3;
  width:34px!important;
  height:34px!important;
  align-self:start;
}
body.premium-ui.mc-resale-537 #page-resale .resale-flow-step span {
  font-weight:950!important;
  font-size:13px!important;
  line-height:1.15!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-flow-step small {
  margin:0!important;
  font-size:11px!important;
  line-height:1.35!important;
  color:#9fb2d0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-summary {
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card {
  min-height:86px!important;
  padding:14px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  border-radius:18px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card span {
  min-height:30px!important;
  font-size:11px!important;
  line-height:1.28!important;
  letter-spacing:.02em!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card b {
  font-size:clamp(17px,1.8vw,23px)!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-tabs {
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:8px!important;
  padding:7px!important;
  margin:0!important;
  border-radius:18px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-tabs .btn-tab {
  width:100%!important;
  min-height:42px!important;
  padding:0 10px!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
  line-height:1.1!important;
  position:relative!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-tabs .btn-tab span {
  display:inline-grid!important;
  place-items:center!important;
  min-width:22px!important;
  height:22px!important;
  margin-left:6px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:rgba(15,23,42,.38)!important;
  color:inherit!important;
  font-size:11px!important;
  font-weight:950!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-tab-panel {
  animation:mcResalePanelIn .18s ease-out both;
}
@keyframes mcResalePanelIn{from{opacity:.65;transform:translateY(4px)}to{opacity:1;transform:none}}
body.premium-ui.mc-resale-537 #page-resale .resale-overview-grid {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(320px,.78fr)!important;
  gap:14px!important;
  align-items:stretch!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help-card,
body.premium-ui.mc-resale-537 #page-resale .resale-shortcuts-card,
body.premium-ui.mc-resale-537 #page-resale .resale-box {
  border-radius:20px!important;
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-checklist {
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  padding-left:22px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-checklist li {
  padding:9px 10px 9px 4px!important;
  line-height:1.45!important;
  border-bottom:1px solid rgba(148,163,184,.08)!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-checklist li:last-child {
  border-bottom:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-shortcuts {
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-shortcuts .btn {
  min-height:50px!important;
  width:100%!important;
  justify-content:center!important;
  text-align:center!important;
  white-space:normal!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-section-head {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:12px!important;
  margin-bottom:14px!important;
  padding-bottom:12px!important;
  border-bottom:1px solid rgba(148,163,184,.10)!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-section-head .box-title {
  font-size:17px!important;
  letter-spacing:-.02em!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-section-head p {
  margin-top:4px!important;
  max-width:760px!important;
  line-height:1.45!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-section-head .btn {
  min-width:150px!important;
  justify-content:center!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-sale-form {
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:end!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-sale-form label.wide,
body.premium-ui.mc-resale-537 #page-resale .resale-sale-form .wide {
  grid-column:1/-1!important;
}
body.premium-ui.mc-resale-537 #page-resale #resaleTaxPreview {
  margin-top:2px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-sale-form .modal-actions {
  display:flex!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-sale-form .modal-actions .btn {
  min-width:160px!important;
}
body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable,
body.premium-ui.mc-resale-537 #page-resale #deviceStockTable,
body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable {
  min-width:780px!important;
  width:100%!important;
  table-layout:auto;
}
body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable th,
body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable td,
body.premium-ui.mc-resale-537 #page-resale #deviceStockTable th,
body.premium-ui.mc-resale-537 #page-resale #deviceStockTable td,
body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable th,
body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable td {
  padding:11px 12px!important;
  vertical-align:top!important;
}
body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable th:first-child,
body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable td:first-child {
  width:34%!important;
  min-width:260px!important;
}
body.premium-ui.mc-resale-537 #page-resale #deviceStockTable th:first-child,
body.premium-ui.mc-resale-537 #page-resale #deviceStockTable td:first-child {
  width:24%!important;
  min-width:210px!important;
}
body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable th:nth-child(2),
body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable td:nth-child(2) {
  width:24%!important;
  min-width:210px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-badge {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:26px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  font-size:11px!important;
  font-weight:950!important;
  white-space:nowrap!important;
}
body.premium-ui.mc-resale-537 #page-resale .inline-row-actions.easy-actions,
body.premium-ui.mc-resale-537 #page-resale .row-actions {
  gap:6px!important;
  margin-top:9px!important;
}
body.premium-ui.mc-resale-537 #page-resale .inline-row-actions.easy-actions .mini-btn,
body.premium-ui.mc-resale-537 #page-resale .row-actions .mini-btn,
body.premium-ui.mc-resale-537 #page-resale td.row-actions .mini-btn {
  min-height:30px!important;
  padding:6px 9px!important;
  border-radius:10px!important;
  font-size:11.5px!important;
}
body.premium-ui.mc-resale-537 #page-resale .table-wrap {
  max-width:100%!important;
  overflow:auto!important;
  border-radius:18px!important;
  padding-bottom:3px!important;
}
body.premium-ui.mc-resale-537 #page-resale .followup-row {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:12px 14px!important;
  margin-bottom:8px!important;
  border-radius:16px!important;
  background:rgba(15,23,42,.58)!important;
  border:1px solid rgba(148,163,184,.10)!important;
}
body.premium-ui.mc-resale-537 #page-resale .followup-row span {
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .followup-row strong {
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:30px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  background:rgba(250,204,21,.10)!important;
  border:1px solid rgba(250,204,21,.18)!important;
  color:#fde68a!important;
  white-space:nowrap!important;
}

@media(max-width:1280px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-summary {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-flow {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:1080px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-hero {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-hero-actions {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-overview-grid {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-tabs {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-sale-form {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:768px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-panel {
    padding:12px!important;
    gap:12px!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-hero {
    padding:16px!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-hero-actions {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-flow {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-flow-step {
    min-height:auto!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-summary {
    grid-template-columns:1fr 1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-tabs {
    grid-template-columns:1fr 1fr!important;
    position:sticky!important;
    top:8px!important;
    z-index:5!important;
    backdrop-filter:blur(16px)!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-section-head {
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-section-head .btn {
    width:100%!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-sale-form {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-sale-form .modal-actions {
    display:grid!important;
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-sale-form .modal-actions .btn {
    width:100%!important;
    min-width:0!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-shortcuts {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale #devicePurchasesTable,
  body.premium-ui.mc-resale-537 #page-resale #deviceStockTable,
  body.premium-ui.mc-resale-537 #page-resale #deviceSalesTable {
    min-width:660px!important;
  }
}

@media(max-width:480px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-summary {
    grid-template-columns:1fr!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-tabs {
    grid-template-columns:1fr!important;
    position:static!important;
  }
}
/* === Patch 5.3.8 | Alinhamento filtros e navegação === */
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters {
  display:grid!important;
  grid-template-columns:1.05fr .9fr .9fr 1fr .95fr 1.5fr!important;
  gap:12px!important;
  align-items:end!important;
  margin-top:14px!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters > * {
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters label,
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters .search {
  width:100%!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters label {
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters label > span {
  min-height:16px!important;
  line-height:1.1!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters select,
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters input,
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters .search {
  min-height:48px!important;
  height:48px!important;
  box-sizing:border-box;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters .search {
  margin:0!important;
  padding:0 12px!important;
  gap:8px!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters .search > span,
body.premium-ui .inline-search > span,
body.premium-ui .search > span {
  width:16px!important;
  min-width:16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  line-height:1!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters .search input,
body.premium-ui .inline-search input,
body.premium-ui .search input {
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:none!important;
  box-shadow:none!important;
  background:transparent!important;
  border-radius:0!important;
}
body.premium-ui .inline-search,
body.premium-ui .search {
  overflow:hidden!important;
}
body.premium-ui .inline-search:focus-within,
body.premium-ui .search:focus-within {
  box-shadow:0 0 0 2px rgba(250,204,21,.12)!important;
}
body.premium-ui .inline-search input:focus,
body.premium-ui .inline-search input:focus-visible,
body.premium-ui .search input:focus,
body.premium-ui .search input:focus-visible {
  box-shadow:none!important;
  border:0!important;
  outline:none!important;
}
body.premium-ui.mc-resale-537 #page-purchases .purchases-filters #purchaseSearch::placeholder,
body.premium-ui #clientSearch::placeholder,
body.premium-ui #counterSearch::placeholder {
  text-overflow:ellipsis;
}
body.premium-ui .side-nav .nav-item > i {
  grid-column:3!important;
  align-self:center;
  justify-self:end;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  width:18px!important;
  min-width:18px!important;
  line-height:1!important;
}
body.premium-ui .side-nav .nav-item.open > i,
body.premium-ui .side-nav .nav-item.active > i,
body.premium-ui .side-nav .nav-item.expanded > i {
  transform:none!important;
}
body.premium-ui .side-nav .nav-item > span:not(.nav-icon):not(.desktop-nav-icon) {
  padding-right:6px;
}

@media(max-width:1180px) {
  body.premium-ui.mc-resale-537 #page-purchases .purchases-filters {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}

@media(max-width:768px) {
  body.premium-ui.mc-resale-537 #page-purchases .purchases-filters {
    grid-template-columns:1fr 1fr!important;
  }
}

@media(max-width:520px) {
  body.premium-ui.mc-resale-537 #page-purchases .purchases-filters {
    grid-template-columns:1fr!important;
  }
}

/* ==========================================================================
   OSPro 5.4 - abas de area (#pageTabs)
   Recebe as 12 paginas que sairam do menu lateral. Sao sublinhadas de
   proposito, para nao se confundirem com a barra de filtros da Mesa de
   Reparo, que e de pilulas: aba troca de tela, pilula filtra a lista.
   Usa os tokens de cor da loja, entao acompanha o que o lojista escolher
   em Configuracoes sem precisar de outra regra.
   ========================================================================== */
.page-tabs {
  display:flex;
  gap:2px;
  align-items:stretch;
  margin:0 0 18px;
  padding:0 2px;
  border-bottom:1px solid var(--border-dim, rgba(255,255,255,.07));
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
}
.page-tabs::-webkit-scrollbar { display:none; }
.page-tabs .page-tab {
  flex:0 0 auto;
  appearance:none;
  border:0;
  border-bottom:2px solid transparent;
  background:transparent;
  color:var(--text-secondary, #94a3b8);
  font:inherit;
  font-size:13.5px;
  font-weight:700;
  letter-spacing:.01em;
  padding:11px 15px 9px;
  margin-bottom:-1px;
  cursor:pointer;
  white-space:nowrap;
  border-radius:8px 8px 0 0;
  transition:color .15s ease, border-color .15s ease, background .15s ease;
}
.page-tabs .page-tab:hover {
  color:var(--text-primary, #f8fafc);
  background:var(--accent-ghost, rgba(56,189,248,.10));
}
.page-tabs .page-tab.active {
  color:var(--text-primary, #f8fafc);
  border-bottom-color:var(--accent-base, #38bdf8);
}
.page-tabs .page-tab:focus-visible {
  outline:2px solid var(--accent-base, #38bdf8);
  outline-offset:-2px;
}
@media(max-width:768px){
  .page-tabs {
    margin:0 0 14px;
    /* sangra ate a borda no celular para caber mais aba na largura util */
    padding:0 12px;
    margin-left:-12px;
    margin-right:-12px;
    width:calc(100% + 24px);
  }
  .page-tabs .page-tab { font-size:13px; padding:10px 13px 8px; }
}

/* ==========================================================================
   OSPro 5.4 - menu lateral compacto em tela baixa
   Com 16 itens em 5 secoes o menu ocupa 690px. Num notebook 1366x768, que e
   a resolucao mais comum, sobram 612px para ele - ou seja, "Ferramentas"
   ficava abaixo da dobra e so aparecia rolando. Aqui o menu aperta o proprio
   espacamento em vez de esconder item, e passa a caber inteiro.
   O recorte de altura acompanha o @media(max-height:690px) que ja existia.
   ========================================================================== */
@media(min-width:769px) and (max-height:900px) {
  body.premium-ui .side-nav .nav-item {
    min-height:31px!important;
    padding:5px 10px!important;
    margin-bottom:1px!important;
  }
  body.premium-ui .side-nav .nav-section-title {
    /* o min-height de 31px era o que mais pesava: sao rotulos, nao botoes */
    min-height:20px!important;
    margin:9px 0 2px!important;
    padding:4px 10px 3px!important;
  }
}
@media(min-width:769px) and (max-height:700px) {
  body.premium-ui .side-nav .nav-item {
    min-height:30px!important;
    padding:4px 10px!important;
    font-size:13px!important;
  }
  body.premium-ui .side-nav .nav-section-title {
    margin:6px 0 2px!important;
  }
}

/* ==========================================================================
   OSPro 5.4 - rodape de acoes da OS
   Eram 17 acoes soltas: 6 botoes diretos, 5 de "WhatsApp rapido" e 6 no menu.
   Agora sao 3 fixas (Cancelar, Avisar cliente, Salvar OS), uma contextual
   (Finalizar retirada, so quando a OS esta pronta e nao foi retirada) e o
   resto num menu unico, agrupado por assunto.

   A grade fixa de 6 colunas saiu: com botao aparecendo e sumindo conforme o
   status, coluna fixa sempre sobra ou falta. Flex resolve sozinho, e o
   .dock-spacer empurra o primario para a direita.
   ========================================================================== */
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock > * {
  order:0!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dock-spacer {
  flex:1 1 auto!important;
  min-width:0!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dock-cancel {
  margin-right:auto!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .save-os-mobile-main {
  min-width:150px!important;
  min-height:42px!important;
  font-size:14px!important;
}
/* o "mais acoes" e so um alvo: nao compete com o primario */
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dock-more {
  width:42px!important;
  min-width:42px!important;
  padding:0!important;
  font-size:20px!important;
  line-height:1!important;
  letter-spacing:1px!important;
}
body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more {
  justify-self:auto!important;
}

/* rotulos que separam os grupos do menu */
body.premium-ui.mc-ux-536 .dropdown-content .dropdown-group {
  display:block;
  margin:8px 8px 3px;
  font-size:10.5px;
  font-weight:800;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:var(--text-tertiary, #64748b);
}
body.premium-ui.mc-ux-536 .dropdown-content .dropdown-group:first-child {
  margin-top:3px;
}
body.premium-ui.mc-ux-536 .dropdown-content {
  max-height:min(70vh, 520px)!important;
  overflow-y:auto!important;
}

@media(max-width:1180px) {
  /* a regra antiga forcava 3 colunas iguais ja em 1180px, que e largura de
     notebook: o rodape empilhava no desktop. Aqui so desfazemos a grade -
     empilhar de verdade fica para o celular, na regra abaixo. */
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock {
    grid-template-columns:none!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .btn,
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more,
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dropdown-more>.btn {
    width:auto!important;
  }
}
@media(max-width:768px) {
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .btn {
    flex:1 1 auto!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dock-more {
    flex:0 0 42px!important;
  }
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .dock-spacer {
    display:none!important;
  }
  /* no celular o primario merece a linha inteira, embaixo */
  body.premium-ui.mc-ux-536 #orderModal .mc-action-dock .save-os-mobile-main {
    flex:1 1 100%!important;
    order:1!important;
  }
}

/* ==========================================================================
   OSPro 5.4 - .hidden volta a esconder
   body.premium-ui .btn{display:inline-flex!important} empatava em
   especificidade com body:not(.x) .hidden{display:none!important} e vencia
   por vir depois. Resultado: TODO botao que o JS escondia continuava na tela
   - inclusive "Excluir cliente" e "Anonimizar cliente", que so deviam
   aparecer sob condicao, e os botoes de OS existente dentro de uma OS nova.
   Um elemento a mais no seletor resolve sem precisar de mais !important.
   ========================================================================== */
html body .hidden,
html body.premium-ui .hidden {
  display:none!important;
}

/* ==========================================================================
   OSPro 5.4 - abas internas de Configuracoes
   A pagina tinha 12 paineis numa rolagem so. Agora sao 6 grupos (7 para o
   dono da plataforma). Sao pilulas, e nao sublinhado como o #pageTabs logo
   acima: assim da para ler a hierarquia - o sublinhado diz em que tela voce
   esta, a pilula diz em que parte da tela.
   ========================================================================== */
.settings-tabs {
  display:flex;
  flex-wrap:wrap;
  gap:4px;
  margin:0 0 18px;
  padding:4px;
  border:1px solid var(--border-dim, rgba(255,255,255,.07));
  border-radius:14px;
  background:var(--bg-subtle, rgba(15,23,42,.55));
}
.settings-tabs .settings-tab {
  appearance:none;
  border:0;
  background:transparent;
  color:var(--text-secondary, #94a3b8);
  font:inherit;
  font-size:13px;
  font-weight:700;
  padding:9px 15px;
  border-radius:10px;
  cursor:pointer;
  white-space:nowrap;
  transition:background .15s ease, color .15s ease;
}
.settings-tabs .settings-tab:hover {
  color:var(--text-primary, #f8fafc);
  background:var(--accent-ghost, rgba(56,189,248,.10));
}
.settings-tabs .settings-tab.active {
  color:var(--text-primary, #f8fafc);
  background:var(--bg-surface-elevated, rgba(56,189,248,.16));
  box-shadow:0 1px 0 rgba(255,255,255,.06) inset;
}
.settings-tabs .settings-tab:focus-visible {
  outline:2px solid var(--accent-base, #38bdf8);
  outline-offset:-2px;
}

/* o elemento a mais no seletor e para vencer body.premium-ui .panel,
   pelo mesmo motivo do .hidden: empate de especificidade decidido por ordem */
html body .settings-group-off,
html body.premium-ui .settings-group-off {
  display:none!important;
}

@media(max-width:768px) {
  .settings-tabs {
    flex-wrap:nowrap;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .settings-tabs::-webkit-scrollbar { display:none; }
  .settings-tabs .settings-tab { flex:0 0 auto; font-size:12.5px; padding:8px 13px; }
}

/* ==========================================================================
   OSPro 5.4 - o titulo da tela volta a aparecer no celular e no tablet
   Em telas <=768px o proprio CSS ja mandava esconder o "Nova OS" do topo
   (body.premium-ui .top-actions-clean{display:none}) - faz sentido, porque
   o menu de baixo tem o "+" para isso. So que uma regra mais especifica
   escrita depois, body.premium-ui.mc-ux-536 .top-actions{width:100%;
   display:grid}, desfazia isso: o botao voltava ocupando a linha inteira e
   espremia o <h1> ate largura zero. Resultado: o nome da tela sumia.
   Mesma familia do bug do .hidden - um elemento a mais desempata.
   ========================================================================== */
@media(max-width:768px) {
  html body.premium-ui.mc-ux-536 .topbar .top-actions-clean {
    display:none!important;
  }
  html body.premium-ui.mc-ux-536 .topbar > div:first-child {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  html body.premium-ui.mc-ux-536 .topbar h1 {
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* ==========================================================================
   Checkbox e radio herdavam o estilo de campo de texto

   Dois seletores de elemento puro, escritos para os campos de digitacao,
   alcancavam tambem checkbox e radio:

     input { width:100%; min-height:42px; padding:11px 12px; border-radius:10px }
     label { display:flex; flex-direction:column; gap:7px }

   Com isso o "Lembrar acesso neste aparelho" da tela de login virava um
   retangulo cinza de 496x44px empilhado ACIMA do proprio rotulo - e era ele
   que recebia o clique de quem mirava outra coisa. O mesmo acontecia nos dois
   "Li e aceito os Termos" (cadastro e onboarding), no aviso de foto do Portal
   do Cliente, na publicacao no catalogo e no cPanel automatico.

   O .checkout-confirm-row ja tinha sido consertado sozinho, e o .legal-consent
   pela metade (ganhou display:flex e gap, mas ninguem desfez o column). Aqui a
   correcao e na raiz, para o proximo checkbox nao nascer torto.

   No celular entra ainda a regra de area de toque
   `input,select,textarea{font-size:16px!important;min-height:44px!important}`
   - correta para campo de digitacao (evita o zoom do iOS), mas ela deixava o
   checkbox como uma tirinha de 13x44px. Por isso o !important abaixo: sem ele
   a correcao valia so no desktop.
   ========================================================================== */
html body input[type="checkbox"],
html body input[type="radio"] {
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  flex:0 0 auto;
  padding:0!important;
  border:0;
  border-radius:0;
  background:none;
  accent-color:#ffd52a;
}
html body input[type="checkbox"] { appearance:auto; -webkit-appearance:checkbox }
html body input[type="radio"]    { appearance:auto; -webkit-appearance:radio }

/* O rotulo volta a ficar AO LADO do quadrado. O :not(.plan-card) preserva o
   cartao de plano, que e um caso a parte (ver regra mais abaixo). */
html body label:has(> input[type="checkbox"]):not(.plan-card),
html body label:has(> input[type="radio"]):not(.plan-card),
html body .remember-line,
html body .cpanel-toggle,
html body .portal-photo-option,
html body .catalog-publish-switch,
html body .checkout-confirm-row {
  flex-direction:row;
  align-items:center;
  gap:9px;
}

/* Texto longo: o quadrado acompanha a primeira linha, nao o centro do bloco. */
html body .legal-consent {
  flex-direction:row;
  align-items:flex-start;
  gap:9px;
}

/* No seletor de planos o radio fica escondido de proposito - quem e clicavel e
   o cartao inteiro. Reafirmado aqui porque a regra de cima passaria por cima e
   faria tres radios reaparecerem no meio dos cartoes. */
html body .saas-plan-picker input[type="radio"] {
  position:absolute;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  opacity:0;
  pointer-events:none;
}

/* ==========================================================================
   A classe .negative nunca chegou a pintar nada

   O bloco abaixo, la pela linha 15045, alcanca TODO <b> e TODO <strong>:

     body.premium-ui h1, ... body.premium-ui b, strong {
       color:var(--text-primary)!important;
     }

   Como ele usa !important, nenhuma classe de estado conseguia trocar a cor.
   Ficaram inertes o `.negative{color:#ff6172}`, o `.positive{color:#21d783}`
   e tambem as duas correcoes que ja existiam para o dashboard
   (.dashboard-balance b.negative e .dashboard-profit-row strong.negative):
   elas tentavam vencer por especificidade, e especificidade nao vence
   !important.

   Na pratica a loja com saldo do mes negativo via o numero na mesma cor de um
   saldo positivo - o sinal de menos era a unica pista. Vale para o saldo do
   mes, o lucro estimado, a margem de cada peca, o card do quadro e a caixa de
   lucro da OS. Mesma familia do bug do .hidden que perdia para o .btn: aqui o
   desempate precisa de !important porque o bloqueio tambem usa.
   ========================================================================== */
html body b.negative,
html body strong.negative,
html body .negative { color:#ff6172!important }

html body b.positive,
html body strong.positive,
html body .positive { color:#21d783!important }

/* Tons que o dashboard ja tinha escolhido para si - agora efetivos. */
html body .dashboard-balance b.negative { color:#ff8190!important }
html body .dashboard-profit-row strong.negative { color:#ff7180!important }

/* A caixa de lucro da OS pinta o valor de verde com
   `body.premium-ui .profit-box strong{color:#34f5a0!important}` (0,2,2).
   As duas regras usam !important, entao quem decide e a especificidade, e a
   generica acima tem so uma classe. Aqui vai a versao com peso suficiente. */
html body.premium-ui .profit-box strong.negative { color:#ff6172!important }

/* ==========================================================================
   Revenda Pro - acabamento

   1) O painel e display:grid SEM grid-template-columns. A coluna implicita e
      "auto", entao ela crescia ate o min-content do filho mais largo (a tabela
      de estoque por IMEI): a coluna ficava com 1028px dentro de um painel de
      969px e o overflow:hidden cortava o excedente. Na pratica os botoes da
      coluna "Acoes", o fim da barra de abas e o botao "Nova compra" ficavam
      inalcancaveis, sem barra de rolagem para chegar neles. O minmax(0,1fr)
      prende a coluna na largura do painel e devolve a rolagem para a tabela.
   2) O topo repetia o titulo da pagina (selo + manchete + paragrafo) e os
      cartoes usavam emoji. Aqui ficam os estilos da barra de acoes, do funil
      com numeros reais e da faixa financeira.
   ========================================================================== */
body.premium-ui.mc-resale-537 #page-resale .resale-panel {
  grid-template-columns:minmax(0,1fr)!important;
}

/* ---- barra de acoes ---- */
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:14px 16px!important;
  border:1px solid #24405f!important;
  border-radius:16px!important;
  background:linear-gradient(180deg,#101f33,#0d1a2c)!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar-info {
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar-info b {
  font-size:14px!important;
  letter-spacing:.01em!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar-info small {
  color:#8fa6c2!important;
  font-size:11px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar .resale-actions {
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-toolbar .btn {
  width:auto!important;
  min-width:0!important;
  gap:7px!important;
  padding:0 14px!important;
  min-height:38px!important;
  font-size:12px!important;
}
body.premium-ui.mc-resale-537 #page-resale .btn-icon svg {
  width:16px!important;
  height:16px!important;
}

/* ---- funil com numeros reais ---- */
body.premium-ui.mc-resale-537 #page-resale .resale-funnel {
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  align-items:stretch!important;
  gap:0!important;
  padding:4px!important;
  border:1px solid #21395a!important;
  border-radius:16px!important;
  background:#0c1828!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-sep {
  display:none!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-step {
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:2px 10px!important;
  padding:12px 13px!important;
  border:0!important;
  border-radius:13px!important;
  background:transparent!important;
  color:inherit!important;
  text-align:left!important;
  cursor:pointer!important;
  transition:background .16s ease!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-step:hover {
  background:#12253c!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-icon {
  grid-row:1 / span 2!important;
  display:grid!important;
  place-items:center!important;
  width:36px!important;
  height:36px!important;
  border-radius:11px!important;
  background:#16293f!important;
  color:#6ea8f0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-icon svg {
  width:18px!important;
  height:18px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-step b {
  grid-column:2!important;
  font-size:21px!important;
  line-height:1!important;
  color:#f4f8ff!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-step > span:not(.resale-funnel-icon) {
  display:none!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-funnel-step small {
  grid-column:2!important;
  color:#8ca4c0!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
}

/* ---- faixa financeira ---- */
body.premium-ui.mc-resale-537 #page-resale .resale-summary {
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card {
  min-height:0!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:7px 9px!important;
  padding:13px 14px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card .kpi-ico {
  grid-row:1!important;
  grid-column:1!important;
  display:grid!important;
  place-items:center!important;
  min-height:0!important;
  width:27px!important;
  height:27px!important;
  border-radius:8px!important;
  background:#16293f!important;
  color:#6ea8f0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card .kpi-ico svg {
  width:15px!important;
  height:15px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card .kpi-label {
  grid-column:2!important;
  min-height:0!important;
  color:#8ca4c0!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card b {
  grid-row:2!important;
  grid-column:1 / -1!important;
  font-size:clamp(15px,1.45vw,19px)!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card.good .resale-card .kpi-ico {
  background:#12301f!important;
  color:#34f5a0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-card.bad .resale-card .kpi-ico {
  background:#331520!important;
  color:#ff6172!important;
}

/* ---- "precisa de atencao" (aba Resumo) ---- */
body.premium-ui.mc-resale-537 #page-resale .resale-attention {
  display:grid!important;
  gap:8px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-head {
  display:flex!important;
  align-items:baseline!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:0 2px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-head b {
  font-size:14px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-head small,
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item small,
body.premium-ui.mc-resale-537 #page-resale .resale-attention-ok small {
  color:#8ca4c0!important;
  font-size:11px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item,
body.premium-ui.mc-resale-537 #page-resale .resale-attention-ok {
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:13px 15px!important;
  border:1px solid #24405f!important;
  border-left:3px solid #3f6ea8!important;
  border-radius:13px!important;
  background:#0e1c2e!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item > div {
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item b {
  font-size:13px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item.warn {
  border-left-color:#e0a83a!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item.bad {
  border-left-color:#ff6172!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-ok {
  display:grid!important;
  gap:3px!important;
  border-left-color:#34f5a0!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-attention-item .btn {
  flex:0 0 auto!important;
  width:auto!important;
  min-width:0!important;
  padding:0 14px!important;
  min-height:34px!important;
  font-size:11.5px!important;
}

/* ---- ajuda recolhida ---- */
body.premium-ui.mc-resale-537 #page-resale .resale-help {
  margin-top:4px!important;
  border:1px solid #21395a!important;
  border-radius:13px!important;
  background:#0b1727!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help > summary {
  padding:12px 14px!important;
  color:#9fb6d2!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
  list-style:none!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help > summary::-webkit-details-marker {
  display:none!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help > summary::before {
  content:"+"!important;
  display:inline-block!important;
  width:15px!important;
  color:#6ea8f0!important;
  font-size:14px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help[open] > summary::before {
  content:"−"!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help .resale-checklist {
  margin:0!important;
  padding:0 18px 6px 32px!important;
}
body.premium-ui.mc-resale-537 #page-resale .resale-help .resale-note {
  padding:0 18px 14px!important;
}

@media(max-width:1080px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-funnel {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-summary {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:768px) {
  body.premium-ui.mc-resale-537 #page-resale .resale-toolbar {
    align-items:stretch!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-toolbar .resale-actions {
    width:100%!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-toolbar .btn {
    flex:1 1 auto!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-funnel,
  body.premium-ui.mc-resale-537 #page-resale .resale-summary {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-attention-item {
    flex-direction:column!important;
    align-items:stretch!important;
  }
  body.premium-ui.mc-resale-537 #page-resale .resale-attention-item .btn {
    width:100%!important;
  }
}

/* ==========================================================================
   Dashboard - acabamento

   1) A marca d'agua "R$" do cartao financeiro fica em right:27px / top:29px com
      70px de corpo - exatamente onde o "SALDO DO MES" imprime o valor. Medido:
      a caixa dela (1113..1189) cobre a do saldo (1112..1195), entao o numero
      mais importante do painel aparecia sobre um borrao. Enfeite atras de dado
      vivo atrapalha a leitura; some. Para trazer de volta, basta apagar este
      bloco.
   2) Os icones da tira de atalhos eram glifos de texto e agora sao SVG - aqui
      ficam as medidas para eles ocuparem o mesmo espaco dos glifos antigos.
   ========================================================================== */
body.premium-ui .dashboard-finance-watermark {
  display:none!important;
}

body.premium-ui .automation-strip-grid > button > i,
body.premium-ui .automation-strip-grid > a > i {
  display:grid!important;
  place-items:center!important;
}
body.premium-ui .automation-strip-grid > button > i > svg,
body.premium-ui .automation-strip-grid > a > i > svg {
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
}

/* ==========================================================================
   Produtos e Pecas - faixa de indicadores

   Mesmo tratamento dado a Revenda Pro: os seis cartoes usavam emoji
   (📦 ⚠ ⛔ 💸 💰 📈), que saem coloridos e com desenho diferente em cada
   sistema operacional, no meio de uma interface de icones de linha. Agora
   sao SVG, com o icone e o rotulo na primeira linha e o valor ocupando a
   largura inteira do cartao - senao "R$ 12.480,00" nao cabe ao lado do icone
   com seis colunas.
   ========================================================================== */
body.premium-ui #page-parts .stock-card {
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:7px 9px!important;
  padding:13px 14px!important;
  min-height:0!important;
}
body.premium-ui #page-parts .stock-card .kpi-ico {
  grid-row:1!important;
  grid-column:1!important;
  display:grid!important;
  place-items:center!important;
  width:27px!important;
  height:27px!important;
  min-height:0!important;
  border-radius:8px!important;
  background:#16293f!important;
  color:#6ea8f0!important;
}
body.premium-ui #page-parts .stock-card .kpi-ico svg {
  width:15px!important;
  height:15px!important;
  fill:none!important;
  stroke:currentColor!important;
}
body.premium-ui #page-parts .stock-card .kpi-label {
  grid-row:1!important;
  grid-column:2!important;
  min-height:0!important;
  color:#8ca4c0!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
}
body.premium-ui #page-parts .stock-card b {
  grid-row:2!important;
  grid-column:1 / -1!important;
  font-size:clamp(15px,1.45vw,19px)!important;
  line-height:1.1!important;
}
body.premium-ui #page-parts .stock-card.warn .kpi-ico {
  background:#33290f!important;
  color:#e0a83a!important;
}
body.premium-ui #page-parts .stock-card.bad .kpi-ico {
  background:#331520!important;
  color:#ff6172!important;
}
body.premium-ui #page-parts .stock-card.good .kpi-ico {
  background:#12301f!important;
  color:#34f5a0!important;
}

/* ==========================================================================
   Faixas de indicadores - icone e rotulo

   Onze faixas do sistema (Relatorios, Financeiro, Hoje na Loja, Fechamento,
   Cobranca, Admin, Precos, IMEI, Lucro Real, Ranking, Garantias) montavam o
   cartao como `<span>EMOJI Rotulo</span><b>Valor</b>`. Os emoji saem coloridos
   e com desenho diferente em cada sistema operacional - no Windows o 💰 e
   dourado, no Android e verde - bem no meio de uma interface toda de icones de
   linha. Agora o icone e SVG e o rotulo e um elemento separado.

   O `:has(> .kpi-ico)` limita a regra aos cartoes que realmente tem icone, sem
   alcancar os outros ".card" do sistema. Em navegador sem :has() o cartao volta
   ao empilhamento antigo (icone, rotulo, valor), que continua legivel.
   ========================================================================== */
body.premium-ui .kpi-ico {
  display:grid!important;
  place-items:center!important;
  width:27px!important;
  height:27px!important;
  min-height:0!important;
  border-radius:8px!important;
  background:#16293f!important;
  color:#6ea8f0!important;
}
body.premium-ui .kpi-ico svg {
  width:15px!important;
  height:15px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.premium-ui .kpi-label {
  min-height:0!important;
  color:#8ca4c0!important;
  font-size:10.5px!important;
  font-weight:700!important;
  line-height:1.25!important;
  letter-spacing:.02em!important;
}

body.premium-ui [class*="card"]:has(> .kpi-ico),
body.premium-ui [class*="kpi"]:has(> .kpi-ico) {
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  align-items:center!important;
  gap:7px 9px!important;
  min-height:0!important;
}
body.premium-ui [class*="card"]:has(> .kpi-ico) > .kpi-ico,
body.premium-ui [class*="kpi"]:has(> .kpi-ico) > .kpi-ico {
  grid-row:1!important;
  grid-column:1!important;
}
body.premium-ui [class*="card"]:has(> .kpi-ico) > .kpi-label,
body.premium-ui [class*="kpi"]:has(> .kpi-ico) > .kpi-label {
  grid-row:1!important;
  grid-column:2!important;
}
/* O valor ocupa a largura inteira: "R$ 12.480,50" nao cabe ao lado do icone
   quando a faixa tem cinco ou seis colunas. */
body.premium-ui [class*="card"]:has(> .kpi-ico) > b,
body.premium-ui [class*="kpi"]:has(> .kpi-ico) > b {
  grid-row:2!important;
  grid-column:1 / -1!important;
  font-size:clamp(15px,1.45vw,19px)!important;
  line-height:1.1!important;
}

/* tons de estado herdados das classes que cada faixa ja usava */
body.premium-ui .warn:has(> .kpi-ico) > .kpi-ico,
body.premium-ui .expired:has(> .kpi-ico) > .kpi-ico {
  background:#33290f!important;
  color:#e0a83a!important;
}
body.premium-ui .bad:has(> .kpi-ico) > .kpi-ico {
  background:#331520!important;
  color:#ff6172!important;
}
body.premium-ui .good:has(> .kpi-ico) > .kpi-ico,
body.premium-ui .income:has(> .kpi-ico) > .kpi-ico {
  background:#12301f!important;
  color:#34f5a0!important;
}

/* ==========================================================================
   Emoji fora da interface

   O sistema misturava duas linguagens: icones de linha (menu, dashboard) e
   emoji coloridos (botoes, titulos, fechar, listas). Emoji sao desenhados pelo
   sistema operacional - o mesmo 💾 e cinza no Windows, azul no Android e
   colorido no iPhone - entao a mesma tela mudava de cara conforme o aparelho.

   Nos titulos de secao o emoji simplesmente saiu: o painel ja tem moldura e
   hierarquia, e "Lucro real" nao fica menos claro que "📈 Lucro real". Nos
   botoes e nos marcadores entrou SVG no mesmo traco do menu. Este bloco cuida
   das medidas de tudo que passou a ser SVG.
   ========================================================================== */
body.premium-ui .icon-btn > svg,
body.premium-ui [data-close] > svg {
  width:15px!important;
  height:15px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
}
body.premium-ui #mobileMenuBtn > svg {
  width:20px!important;
  height:20px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
}

/* marcadores da lista "com PC ligado x na nuvem" */
body.premium-ui .li-ico {
  display:inline-grid!important;
  place-items:center!important;
  width:17px!important;
  height:17px!important;
  margin-right:7px!important;
  vertical-align:-3px!important;
}
body.premium-ui .li-ico svg {
  width:14px!important;
  height:14px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2.2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.premium-ui .li-ico.ok { color:#34f5a0!important }
body.premium-ui .li-ico.nao { color:#ff6172!important }

/* cartoes de sugestao do painel de melhorias */
body.premium-ui .idea-ico {
  display:inline-grid!important;
  place-items:center!important;
  width:19px!important;
  height:19px!important;
  margin-right:8px!important;
  color:#6ea8f0!important;
  vertical-align:-4px!important;
}
body.premium-ui .idea-ico svg {
  width:17px!important;
  height:17px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

/* confirmacoes e avisos que tinham glifo de texto */
body.premium-ui .wa-save-icon > svg,
body.premium-ui .checkout-success-icon > svg,
body.premium-ui .email-verification-icon > svg {
  width:1em!important;
  height:1em!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.premium-ui .checkout-success-icon > svg {
  width:34px!important;
  height:34px!important;
}
body.premium-ui .email-verification-icon > svg {
  width:26px!important;
  height:26px!important;
}

/* Icone dentro de pilula, menu de contexto e estados vazios - tudo que era
   emoji e virou SVG. */
body.premium-ui .pill-ico{display:inline-grid!important;place-items:center!important;width:1em!important;height:1em!important;margin-right:5px!important;vertical-align:-2px!important}
body.premium-ui .pill-ico svg{width:1em!important;height:1em!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body.premium-ui .context-menu-icon svg{width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important}
body.premium-ui .dashboard-empty-state>i svg,
body.premium-ui .catalog-photo-empty svg,
body.premium-ui .catalog-state>span svg{width:34px!important;height:34px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.5!important}
body.premium-ui .desk-quick-actions i svg,
body.premium-ui [data-desk-page] b svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}

/* Tamanho dos icones que substituiram emoji em contextos sem regra propria:
   o menu Mover renderizava o SVG no tamanho padrao (enorme) porque antes ali
   havia so um caractere de texto. */
body.premium-ui .move-menu button > svg{width:16px!important;height:16px!important;flex:0 0 auto!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;stroke-linecap:round!important;stroke-linejoin:round!important;vertical-align:-3px!important}
body.premium-ui .billing-card > i > svg{width:22px!important;height:22px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}

/* ==========================================================================
   Erros por assistência - cabeçalho da varredura

   A tela varre um banco por loja. Agora ela diz quantas leu, em que janela de
   tempo, e avisa quando parou no tempo limite - antes o dono nao tinha como
   saber se estava vendo tudo ou so um pedaco.
   ========================================================================== */
body.premium-ui .saas-platform-errors-panel .panel-head {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
}
body.premium-ui .saas-errors-actions {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
}
body.premium-ui .saas-errors-janela {
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:7px!important;
  margin:0!important;
}
body.premium-ui .saas-errors-janela > span {
  color:#8ca4c0!important;
  font-size:10.5px!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
  text-transform:uppercase!important;
}
body.premium-ui .saas-errors-janela select {
  width:auto!important;
  min-width:96px!important;
  min-height:34px!important;
  padding:0 10px!important;
  font-size:12px!important;
}
body.premium-ui .saas-platform-errors-panel .saas-errors-actions .btn {
  width:auto!important;
  min-width:0!important;
  min-height:34px!important;
  padding:0 13px!important;
  gap:7px!important;
  font-size:12px!important;
}
body.premium-ui .saas-errors-summary {
  margin:0 0 10px!important;
  padding:8px 12px!important;
  border:1px solid #24405f!important;
  border-left:3px solid #3f6ea8!important;
  border-radius:10px!important;
  background:#0e1c2e!important;
  color:#8ca4c0!important;
  font-size:11px!important;
  font-weight:600!important;
}
body.premium-ui .saas-errors-summary:empty {
  display:none!important;
}
/* varredura interrompida pelo tempo limite: o dono precisa notar */
body.premium-ui .saas-errors-summary.parcial {
  border-left-color:#e0a83a!important;
  color:#e8c98a!important;
}

/* ==========================================================================
   CAIXAS DE AVISO E CONFIRMACAO DO SISTEMA (.mc-dialog)
   Par visual do modulo mcDialog em assets/app.js, que substituiu alert(),
   confirm() e prompt() do navegador.

   Reaproveita .modal / .modal-card / .btn de proposito: assim a caixa herda
   fundo, borda, sombra e tipografia do tema sem duplicar nada. O que este
   bloco faz e so o que a caixa tem de diferente de um modal comum.

   Duas decisoes que precisam de peso extra no seletor, e por isso levam
   !important com "html body" na frente:

   1) z-index. Quase toda confirmacao nasce de dentro de um modal aberto,
      entao a caixa tem de ficar por cima deles. Nao da para usar um numero
      baixo: no desktop os modais ficam em 50, mas no celular sobem para
      30000 (body.theme-dark .modal.show, com !important). Dai o 30060 - e o
      seletor precisa de tres classes para vencer aquele (0,3,1).

      O toast sobe junto, para 30080: ele fica em 100 e no celular ja estava
      ficando ATRAS de qualquer modal aberto - inclusive do "Copiado." que
      esta caixa mostra depois do clique em Copiar.

   2) No celular, TODO .modal-card vira folha de tela cheia (100vw x 100dvh,
      em @media(max-width:768px), com !important). Faz sentido para a OS, mas
      uma pergunta de duas linhas ocupando a tela inteira parece defeito. As
      regras do fim deste bloco devolvem o formato de cartao centralizado
      APENAS para esta caixa.
   ========================================================================== */
html body.theme-dark .mc-dialog.modal,
html body.premium-ui .mc-dialog.modal {
  z-index:30060!important;
}
html body .toast {
  z-index:30080!important;
}
.mc-dialog .mc-dialog-card {
  width:min(470px,94vw);
  padding:22px 22px 20px;
}
.mc-dialog-head {
  display:flex;
  gap:14px;
  align-items:flex-start;
}
.mc-dialog-icon {
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:12px;
  border:1px solid transparent;
}
.mc-dialog-icon svg {
  width:22px;
  height:22px;
}
.mc-dialog-icon.pergunta {
  background:rgba(56,189,248,.11);
  border-color:rgba(56,189,248,.30);
  color:#7dd3fc;
}
.mc-dialog-icon.info {
  background:rgba(148,163,184,.12);
  border-color:rgba(148,163,184,.28);
  color:#cbd5e1;
}
.mc-dialog-icon.warn {
  background:rgba(234,179,8,.12);
  border-color:rgba(234,179,8,.32);
  color:#fcd34d;
}
.mc-dialog-icon.danger {
  background:rgba(248,113,113,.12);
  border-color:rgba(248,113,113,.34);
  color:#fca5a5;
}
.mc-dialog-icon.success {
  background:rgba(34,197,94,.12);
  border-color:rgba(34,197,94,.30);
  color:#86efac;
}
.mc-dialog-heading {
  flex:1 1 auto;
  min-width:0;
}
.mc-dialog-heading h2 {
  margin:0;
  font-size:17px;
  line-height:1.32;
  letter-spacing:-.01em;
}
/* white-space:pre-line preserva as quebras que as mensagens ja traziam do
   tempo do confirm(), sem precisar montar HTML a partir do texto. */
.mc-dialog-heading p {
  margin:7px 0 0;
  font-size:13.5px;
  line-height:1.55;
  white-space:pre-line;
  overflow-wrap:anywhere;
}
.mc-dialog-campo {
  display:grid;
  gap:7px;
  margin:16px 0 0;
}
.mc-dialog-rotulo {
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  color:var(--text-tertiary,#64748b);
}
.mc-dialog-entrada {
  width:100%;
  padding:10px 12px;
  border:1px solid #27405f;
  border-radius:10px;
  background:#0b1729;
  color:#eaf2ff;
  font:inherit;
  font-size:14px;
}
input.mc-dialog-entrada {
  height:42px;
}
.mc-dialog-entrada:focus {
  outline:none;
  border-color:#3f7fd0;
  box-shadow:0 0 0 3px rgba(56,189,248,.16);
}
.mc-dialog-area {
  min-height:104px;
  max-height:38vh;
  resize:vertical;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:12.5px;
  line-height:1.5;
}
.mc-dialog-dica {
  display:block;
  font-size:11.5px;
  color:var(--text-tertiary,#64748b);
}
.mc-dialog-actions {
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  margin-top:20px;
}
.mc-dialog-actions .btn {
  min-width:118px;
}
/* Botao travado ate a palavra bater: precisa PARECER travado, senao o clique
   sem efeito passa por bug. */
html body .mc-dialog .btn[disabled] {
  opacity:.42!important;
  cursor:not-allowed!important;
  transform:none!important;
  filter:none!important;
}

@media(max-width:768px) {
  /* Devolve o cartao centralizado: sem estas quatro regras a caixa herdaria a
     folha de tela cheia que vale para os modais grandes. */
  html body.theme-dark .mc-dialog.modal.show,
  html body.premium-ui .mc-dialog.modal.show {
    align-items:center!important;
    justify-content:center!important;
    overflow:auto!important;
    padding:16px!important;
    background:rgba(0,0,0,.72)!important;
  }
  html body.theme-dark .mc-dialog.modal.show > .modal-card.mc-dialog-card,
  html body.premium-ui .mc-dialog.modal.show > .modal-card.mc-dialog-card {
    width:100%!important;
    max-width:440px!important;
    height:auto!important;
    min-height:0!important;
    max-height:calc(100dvh - 32px)!important;
    overflow:auto!important;
    margin:auto!important;
    padding:20px!important;
    border-radius:18px!important;
    border-left-width:1px!important;
    border-right-width:1px!important;
  }
  /* No toque, alvo cheio e ordem invertida. O column-reverse sobre a ordem
     [Cancelar, OK] do HTML poe a ACAO em cima e o "Cancelar" embaixo - de
     proposito: embaixo e onde o polegar cai sozinho, e quem cai sozinho tem
     de ser o botao que nao apaga nada. E a mesma ordem das folhas do iOS. */
  html body .mc-dialog .mc-dialog-actions {
    flex-direction:column-reverse!important;
    align-items:stretch!important;
    gap:9px!important;
  }
  html body .mc-dialog .mc-dialog-actions .btn {
    width:100%!important;
    min-height:46px!important;
  }
}
