:root{--bg:#07111f;--surface:#0c1728;--surface2:#101f33;--line:#203652;--text:#eef5fb;--muted:#8ea2b8;--accent:#36c2ff;--success:#36d399;--warning:#f7bb4d;--danger:#ff6b7a}*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}[hidden]{display:none!important}button,input{font:inherit}.muted{color:var(--muted)}.brand{display:flex;gap:10px;align-items:center;margin-bottom:28px}.brand-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--accent);color:#04111c;font-weight:900}.brand strong,.brand span{display:block}.brand span{font-size:12px;color:var(--muted)}.eyebrow{color:#7bdcff;font-size:12px;font-weight:800;letter-spacing:.14em}.auth-shell,.center-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(1050px,100%);display:grid;grid-template-columns:1.1fr .8fr;gap:60px;align-items:center}.auth-copy h1{font-size:clamp(38px,5vw,66px);line-height:.98;margin:14px 0}.auth-copy p{color:var(--muted);font-size:18px}.auth-card,.setup-card,.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:20px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:#081523;padding:4px;border-radius:11px;margin-bottom:18px}.tab{border:0;background:transparent;color:var(--muted);padding:10px;border-radius:9px}.tab.active{background:var(--surface2);color:white}.form-stack{display:grid;gap:13px}label{font-size:13px;color:#c9d7e4}input{width:100%;margin-top:6px;border:1px solid var(--line);background:#091625;color:white;border-radius:10px;padding:11px}.btn{border:0;border-radius:11px;padding:11px 15px;cursor:pointer;font-weight:700}.btn-primary{background:var(--accent);color:#04111c}.btn-ghost{background:transparent;border:1px solid var(--line);color:white}.btn-full{width:100%}.setup-card{width:min(680px,100%)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.span-2{grid-column:1/-1}.form-actions{display:flex;gap:10px}.app-shell{min-height:100vh;display:grid;grid-template-columns:255px 1fr}.sidebar{height:100vh;position:sticky;top:0;background:#081320;border-right:1px solid var(--line);padding:18px;display:flex;flex-direction:column}.nav{display:grid;gap:6px}.nav button{border:0;background:transparent;color:var(--muted);padding:11px 12px;border-radius:10px;text-align:left;cursor:pointer}.nav button.active,.nav button:hover{background:var(--surface2);color:white}.sidebar-foot{margin-top:auto;border-top:1px solid var(--line);padding-top:14px}.sidebar-foot small{display:block;color:var(--muted);margin:3px 0 12px}.topbar{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;border-bottom:1px solid var(--line)}.topbar h1{margin:0;font-size:22px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.page-content{padding:24px}.grid{display:grid;gap:14px}.grid-4{grid-template-columns:repeat(4,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.metric-label{font-size:12px;color:var(--muted)}.metric-value{font-size:28px;font-weight:800;margin-top:8px}.metric-note{font-size:12px;color:var(--muted);margin-top:5px}.section-gap{margin-top:15px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.quick-card{background:#091625;color:white;border:1px solid var(--line);border-radius:13px;padding:15px;text-align:left}.quick-card span{display:block;color:var(--muted);font-size:12px;margin-top:5px}.toolbar{display:flex;gap:10px;align-items:end}.toolbar label{flex:1}.empty{padding:30px;border:1px dashed var(--line);border-radius:13px;text-align:center;color:var(--muted)}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:11px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}.badge{padding:6px 10px;border-radius:999px;background:var(--surface2);font-size:12px}.spec-card{margin-top:10px;border:1px solid var(--line);border-radius:13px;padding:15px}.spec-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.spec-field{background:#091625;border-radius:10px;padding:10px}.spec-field span{display:block;color:var(--muted);font-size:12px}.toast{position:fixed;right:18px;bottom:18px;background:#102137;border:1px solid var(--line);border-radius:12px;padding:12px 14px;z-index:100}@media(max-width:800px){.auth-panel{grid-template-columns:1fr}.auth-copy{display:none}.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.nav{grid-template-columns:repeat(2,1fr)}.grid-4,.grid-2,.quick-grid,.spec-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.page-content{padding:15px}}


/* =========================================================
   AC AUTO PRO 1.3.2 - CORREÇÃO DE LAYOUT
   ========================================================= */

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.app-shell {
  width: 100%;
  max-width: 100vw;
  grid-template-columns: 255px minmax(0, 1fr);
}

.main {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.sidebar {
  width: 255px;
  min-width: 0;
  z-index: 30;
}

.sidebar-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
}

.sidebar-head .brand {
  min-width: 0;
  margin-bottom: 28px;
}

.nav .nav-item {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
}

.nav .nav-item > span {
  flex: 0 0 18px;
  width: 18px;
  text-align: center;
}

.icon-btn {
  width: 40px;
  height: 40px;
  display: grid;
  place-items: center;
  border: 1px solid var(--line);
  background: var(--surface);
  color: var(--text);
  border-radius: 10px;
  cursor: pointer;
}

.mobile-only {
  display: none !important;
}

.menu-overlay {
  display: none;
}

.topbar {
  min-width: 0;
  width: 100%;
}

.topbar-left {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
}

.page-content {
  min-width: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

.grid,
.grid > * {
  min-width: 0;
}

.grid-2 {
  grid-template-columns: minmax(320px, .75fr) minmax(0, 1.25fr);
}

.card {
  min-width: 0;
  max-width: 100%;
}

.card-title-row {
  min-width: 0;
}

.table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
}

.table {
  width: 100%;
  min-width: 590px;
}

.table th,
.table td {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 1100px) {
  .grid-2 {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 800px) {
  html,
  body {
    overflow-x: hidden;
  }

  .app-shell {
    display: block;
    width: 100%;
  }

  .main {
    width: 100%;
  }

  .sidebar {
    position: fixed;
    left: 0;
    top: 0;
    width: min(290px, 86vw);
    height: 100vh;
    padding: 18px;
    transform: translateX(-105%);
    transition: transform .2s ease;
    box-shadow: 18px 0 45px rgba(0,0,0,.35);
    overflow-y: auto;
  }

  .sidebar.open {
    transform: translateX(0);
  }

  .sidebar-head .brand {
    margin-bottom: 20px;
  }

  .nav {
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .mobile-only {
    display: grid !important;
  }

  .menu-overlay {
    display: block;
    position: fixed;
    inset: 0;
    z-index: 25;
    background: rgba(0,0,0,.52);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .2s ease, visibility .2s ease;
  }

  .menu-overlay.show {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }

  .topbar {
    padding: 14px 16px;
  }

  .page-content {
    padding: 16px;
  }

  .table {
    min-width: 590px;
  }
}


/* =========================================================
   AC AUTO PRO 1.4.0 - SUPER ADMIN
   ========================================================= */

.admin-user-list {
  display: grid;
  gap: 12px;
}

.admin-user-card {
  display: grid;
  grid-template-columns: minmax(280px, 1.4fr) minmax(210px, .65fr);
  gap: 14px 18px;
  border: 1px solid var(--line);
  border-radius: 15px;
  padding: 15px;
  background: #091726;
}

.admin-user-main {
  min-width: 0;
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.admin-user-avatar {
  flex: 0 0 42px;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: var(--surface-3, #14263d);
  border: 1px solid var(--line);
  font-weight: 850;
  color: var(--accent);
}

.admin-user-info {
  min-width: 0;
}

.admin-user-name-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

.admin-user-name-row strong {
  font-size: 14px;
}

.admin-user-email {
  margin-top: 3px;
  color: var(--muted);
  font-size: 12px;
  overflow-wrap: anywhere;
}

.admin-user-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 14px;
  margin-top: 10px;
  color: var(--muted);
  font-size:12px;
}

.admin-user-meta b {
  color: #cbd8e4;
}

.admin-subscription {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: rgba(7,17,31,.55);
  border-radius: 11px;
}

.admin-subscription span,
.admin-subscription strong {
  display: block;
}

.admin-subscription strong {
  margin-top: 4px;
  font-size: 12px;
}

.admin-user-actions {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}

.btn-sm {
  min-height: 34px;
  padding: 7px 10px;
  border-radius: 9px;
  font-size:12px;
}

.btn-danger {
  background: rgba(255,107,122,.12);
  color: #ff9aa5;
  border: 1px solid rgba(255,107,122,.28);
}

@media (max-width: 900px) {
  .admin-user-card {
    grid-template-columns: 1fr;
  }

  .admin-user-actions {
    grid-column: auto;
  }
}

@media (max-width: 520px) {
  .admin-subscription {
    grid-template-columns: 1fr;
  }

  .admin-user-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.5.0 - BASE TÉCNICA
   ========================================================= */

.user-mini > div:last-child {
  min-width: 0;
  flex: 1;
}

.user-mini strong {
  white-space: normal;
  line-height: 1.25;
}

.user-mini span {
  margin-top: 3px;
  line-height: 1.2;
}

.tech-admin-shell {
  padding: 0;
  overflow: hidden;
}

.tech-tabs {
  display: flex;
  gap: 4px;
  padding: 10px;
  border-bottom: 1px solid var(--line);
  background: rgba(7,17,31,.35);
  overflow-x: auto;
}

.tech-tab {
  border: 0;
  background: transparent;
  color: var(--muted);
  padding: 10px 13px;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 700;
  white-space: nowrap;
}

.tech-tab.active,
.tech-tab:hover {
  background: var(--surface-3, #14263d);
  color: var(--text);
}

#techPanel {
  padding: 18px;
}

.tech-section-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 14px;
  margin-bottom: 16px;
}

.tech-section-head h2 {
  margin: 0;
  font-size: 18px;
}

.tech-section-head p {
  margin: 5px 0 0;
}

.tech-inner-card {
  box-shadow: none;
  background: #091726;
}

.tech-inner-card h3 {
  margin-bottom: 14px;
}

.tech-inner-card form,
.tech-inner-card label {
  min-width: 0;
}

.tech-form-grid {
  align-items: start;
}

.tech-form-grid .tech-inner-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.tech-form-grid .tech-inner-card .btn {
  margin-top: auto;
}

.tech-selector-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #091726;
}

.tech-selector-single {
  max-width: 620px;
}

.compact-grid {
  gap: 10px;
}

.check-line {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  color: var(--muted);
  line-height: 1.35;
}

.check-line input {
  width: auto;
  margin: 2px 0 0;
  flex: 0 0 auto;
}

.tech-record-list {
  display: grid;
  gap: 9px;
  margin-top: 12px;
}

.tech-record {
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 12px;
  background: rgba(7,17,31,.45);
}

.tech-record-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}

.tech-record-meta {
  display: grid;
  gap: 6px;
  margin-top: 9px;
  color: var(--muted);
  font-size:12px;
}

.tech-record-meta b {
  color: #cad7e4;
}

.admin-self-note {
  align-self: center;
  padding: 8px 2px;
}

@media (max-width: 1050px) {
  .tech-selector-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 780px) {
  #techPanel {
    padding: 13px;
  }

  .tech-tabs {
    padding: 8px;
  }

  .tech-form-grid {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.5.3 - CAMPOS DINÂMICOS DE COMPONENTES
   ========================================================= */

.component-dynamic-block {
  margin-top: 14px;
  padding: 13px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(7, 17, 31, .38);
}

.component-group-title {
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 800;
  color: #cbd8e4;
}

.component-fields-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.component-fields-grid textarea {
  min-height: 90px;
}

@media (max-width: 700px) {
  .component-fields-grid {
    grid-template-columns: 1fr;
  }

  .component-fields-grid .span-2 {
    grid-column: auto;
  }
}


/* =========================================================
   AC AUTO PRO 1.5.4
   MELHORIA VISUAL DOS CAMPOS DE SELEÇÃO
   ========================================================= */

.tech-selector-grid,
.tech-selector-single {
  margin-top: 8px;
}

.tech-selector-grid {
  padding: 16px;
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(10,24,40,.92) 0%, rgba(8,20,34,.96) 100%);
  border: 1px solid rgba(64, 107, 150, .32);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

.tech-selector-single label,
.tech-selector-grid label {
  padding: 12px;
  border-radius: 14px;
  background: rgba(7,17,31,.34);
  border: 1px solid rgba(64, 107, 150, .22);
}

.tech-selector-single label {
  display: block;
  background: linear-gradient(180deg, rgba(10,24,40,.92) 0%, rgba(8,20,34,.96) 100%);
  border: 1px solid rgba(64, 107, 150, .32);
  border-radius: 16px;
  padding: 14px;
}

.tech-selector-grid label,
.tech-selector-single label {
  color: #d7e6f4;
  font-weight: 700;
  letter-spacing: .01em;
}

.tech-selector-grid select,
.tech-selector-single select,
.tech-inner-card select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 100%;
  min-height: 48px;
  padding: 12px 44px 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(88, 140, 196, .30);
  background-color: #0b1a2b;
  color: #eef6ff;
  font-weight: 600;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 0 rgba(54,194,255,0);
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
  background-image:
    linear-gradient(45deg, transparent 50%, #8ecfff 50%),
    linear-gradient(135deg, #8ecfff 50%, transparent 50%),
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0));
  background-position:
    calc(100% - 18px) calc(50% - 3px),
    calc(100% - 12px) calc(50% - 3px),
    0 0;
  background-size:
    6px 6px,
    6px 6px,
    100% 100%;
  background-repeat: no-repeat;
}

.tech-selector-grid select:hover,
.tech-selector-single select:hover,
.tech-inner-card select:hover {
  border-color: rgba(110, 174, 235, .48);
  background-color: #102033;
}

.tech-selector-grid select:focus,
.tech-selector-single select:focus,
.tech-inner-card select:focus {
  border-color: #36c2ff;
  box-shadow: 0 0 0 3px rgba(54,194,255,.12);
  background-color: #102338;
}

.tech-selector-grid option,
.tech-selector-single option,
.tech-inner-card option {
  background: #0b1a2b;
  color: #eef6ff;
}

.tech-selector-grid label::after,
.tech-selector-single label::after {
  content: "";
  display: block;
  margin-top: 10px;
  height: 1px;
  background: linear-gradient(90deg, rgba(66,113,161,.18), rgba(66,113,161,0));
}

.tech-selector-grid label select,
.tech-selector-single label select {
  margin-top: 10px;
}

#componentSpec,
#componentType {
  font-weight: 700;
}

@media (max-width: 780px) {
  .tech-selector-grid,
  .tech-selector-single label {
    padding: 12px;
  }

  .tech-selector-grid label,
  .tech-selector-single label {
    padding: 10px;
  }

  .tech-selector-grid select,
  .tech-selector-single select,
  .tech-inner-card select {
    min-height: 46px;
  }
}


/* =========================================================
   AC AUTO PRO 1.5.7
   MELHORIAS VISUAIS NOS CAMPOS E PINAGEM DINÂMICA
   ========================================================= */

button,
input,
select,
textarea {
  font: inherit;
}

.tech-inner-card textarea,
.tech-inner-card select,
.tech-inner-card input {
  border-radius: 12px;
}

.tech-inner-card textarea {
  width: 100%;
  display: block;
  min-height: 108px;
  padding: 12px 13px;
  border: 1px solid rgba(88, 140, 196, .28);
  background: linear-gradient(180deg, rgba(12,28,46,.95), rgba(9,22,37,.95));
  color: var(--text);
  resize: vertical;
  line-height: 1.45;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
}

.tech-inner-card textarea::placeholder,
.tech-inner-card input::placeholder {
  color: rgba(173, 192, 210, .68);
}

.tech-inner-card textarea:focus,
.tech-inner-card input:focus,
.tech-inner-card select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.field-panel {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid rgba(64,107,150,.25);
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(9,23,38,.92), rgba(8,19,32,.96));
}

.field-panel-head {
  display: grid;
  gap: 3px;
  margin-bottom: 10px;
}

.field-panel-head strong {
  font-size: 13px;
}

.pin-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.pin-grid label {
  margin: 0;
}

.pin-input {
  min-height: 44px;
}

.electrical-form-card .form-grid + .form-grid {
  margin-top: 10px;
}

#oilForm textarea,
#refrigerantForm textarea,
#equivForm textarea,
#specForm textarea,
#electricalForm textarea {
  background: linear-gradient(180deg, rgba(12,28,46,.95), rgba(9,22,37,.95)) !important;
  color: var(--text) !important;
}

#oilForm textarea,
#refrigerantForm textarea {
  min-height: 118px;
}

#elecNotes {
  min-height: 120px;
}

@media (max-width: 800px) {
  .pin-grid {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.5.8
   UPLOAD REUTILIZÁVEL DE IMAGENS
   ========================================================= */

.image-upload-box {
  margin-top: 12px;
  padding: 14px;
  border: 1px solid rgba(64,107,150,.28);
  border-radius: 14px;
  background:
    linear-gradient(
      180deg,
      rgba(10,25,42,.94),
      rgba(8,20,34,.96)
    );
}

.image-upload-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 11px;
}

.image-upload-head strong,
.image-upload-head span {
  display: block;
}

.image-upload-head span {
  margin-top: 3px;
}

.image-upload-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 9px;
  align-items: center;
}

.image-upload-row input {
  margin: 0;
}

.image-upload-btn {
  min-width: 132px;
  white-space: nowrap;
}

.image-upload-preview {
  display: grid;
  grid-template-columns: 118px minmax(0,1fr);
  gap: 12px;
  align-items: center;
  margin-top: 12px;
  padding: 10px;
  border: 1px solid rgba(64,107,150,.22);
  border-radius: 12px;
  background: rgba(5,15,26,.48);
}

.image-upload-preview[hidden] {
  display: none !important;
}

.image-upload-preview img {
  width: 118px;
  height: 82px;
  display: block;
  object-fit: contain;
  border-radius: 9px;
  border: 1px solid var(--line);
  background: #06101c;
}

.image-upload-preview-info {
  min-width: 0;
  display: grid;
  gap: 6px;
  justify-items: start;
}

.image-upload-preview-info > span {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

@media (max-width: 650px) {
  .image-upload-row {
    grid-template-columns: 1fr;
  }

  .image-upload-btn {
    width: 100%;
  }

  .image-upload-preview {
    grid-template-columns: 1fr;
  }

  .image-upload-preview img {
    width: 100%;
    height: 180px;
  }
}


/* =========================================================
   AC AUTO PRO 1.6.0
   CONSULTA TÉCNICA DO USUÁRIO
   ========================================================= */

.tech-search-hero {
  display: grid;
  grid-template-columns: minmax(0,.9fr) minmax(420px,1.1fr);
  gap: 22px 30px;
  align-items: end;
  padding: 24px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(54,194,255,.08),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      rgba(15,31,50,.97),
      rgba(9,22,38,.98)
    );
}

.tech-search-copy h2 {
  margin: 4px 0 9px;
  font-size: clamp(22px, 2.4vw, 34px);
  line-height: 1.08;
  letter-spacing: -.025em;
}

.tech-search-copy p {
  max-width: 610px;
  margin: 0;
  color: var(--muted);
  line-height: 1.55;
}

.tech-search-box {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: center;
  padding: 7px;
  border: 1px solid rgba(75,128,178,.32);
  border-radius: 15px;
  background: rgba(5,15,27,.58);
}

.tech-search-box input {
  margin: 0;
  min-height: 48px;
  border: 0;
  background: transparent;
  box-shadow: none;
}

.tech-search-box input:focus {
  box-shadow: none;
}

.tech-search-box .btn {
  min-height: 46px;
  padding-inline: 22px;
}

.tech-search-hints {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  padding-top: 4px;
  border-top: 1px solid rgba(59,94,130,.20);
}

.tech-search-hints span {
  padding: 5px 8px;
  border-radius: 999px;
  background: rgba(54,194,255,.06);
  color: #9db6cb;
  font-size:12px;
}

.tech-user-results {
  display: grid;
  gap: 12px;
}

.tech-results-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 0 2px;
}

.tech-results-head > div {
  display: grid;
  gap: 3px;
}

.tech-result-list {
  display: grid;
  gap: 11px;
}

.tech-result-card {
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(8,20,34,.98)
    );
  transition:
    border-color .16s ease,
    transform .16s ease;
}

.tech-result-card:hover {
  border-color: rgba(54,194,255,.35);
  transform: translateY(-1px);
}

.tech-result-top {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
}

.tech-result-top h3 {
  margin: 6px 0 4px;
  font-size: 18px;
}

.tech-result-top p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
}

.tech-result-verified {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  color: #71e6b7;
  font-size:12px;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.tech-result-verified span {
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(54,211,153,.12);
}

.tech-result-summary {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 14px;
  padding-top: 13px;
  border-top: 1px solid rgba(58,94,130,.22);
}

.tech-result-summary > div {
  min-width: 0;
  padding: 9px 10px;
  border-radius: 10px;
  background: rgba(5,15,27,.38);
}

.tech-result-summary span,
.tech-result-summary strong {
  display: block;
}

.tech-result-summary span {
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.tech-result-summary strong {
  margin-top: 4px;
  font-size:12px;
  overflow-wrap: anywhere;
}

.tech-search-empty,
.tech-detail-loading {
  display: grid;
  justify-items: center;
  gap: 7px;
  padding: 44px 20px;
  border: 1px dashed var(--line);
  border-radius: 16px;
  color: var(--muted);
  text-align: center;
}

.tech-search-empty strong {
  color: var(--text);
  font-size: 14px;
}

.tech-search-empty .btn {
  margin-top: 8px;
}

.tech-user-detail {
  display: grid;
  gap: 14px;
}

.tech-detail-toolbar {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
}

.tech-detail-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #71e6b7;
  font-size:12px;
  font-weight: 800;
}

.tech-detail-status span {
  width: 21px;
  height: 21px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(54,211,153,.12);
}

.tech-detail-header {
  display: flex;
  justify-content: space-between;
  gap: 22px;
  align-items: flex-start;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(54,194,255,.08),
      transparent 35%
    ),
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.tech-detail-header h2 {
  margin: 4px 0 6px;
  font-size: 26px;
}

.tech-detail-header p {
  margin: 0;
  color: var(--muted);
}

.user-tech-source {
  min-width: 180px;
  max-width: 330px;
  padding: 10px 12px;
  border: 1px solid rgba(61,106,147,.25);
  border-radius: 11px;
  background: rgba(5,15,27,.40);
}

.user-tech-source span,
.user-tech-source strong,
.user-tech-source small {
  display: block;
}

.user-tech-source span {
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
  letter-spacing: .08em;
}

.user-tech-source strong {
  margin-top: 4px;
  font-size:12px;
}

.user-tech-source small {
  margin-top: 2px;
  color: var(--muted);
  overflow-wrap: anywhere;
}

.tech-user-section {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: rgba(10,24,40,.82);
}

.tech-user-section-title {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-bottom: 14px;
}

.tech-user-section-title h3,
.tech-user-section-title p {
  margin: 0;
}

.tech-user-section-title h3 {
  font-size: 16px;
}

.tech-user-section-title p {
  margin-top: 3px;
  color: var(--muted);
  font-size:12px;
}

.tech-section-icon {
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(54,194,255,.20);
  border-radius: 11px;
  background: rgba(54,194,255,.08);
  color: var(--accent);
  font-size:12px;
  font-weight: 900;
}

.tech-climate-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
}

.tech-data-card {
  min-width: 0;
  padding: 14px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 13px;
  background: rgba(5,15,27,.42);
}

.tech-data-card.featured {
  border-color: rgba(54,194,255,.26);
  background: rgba(54,194,255,.05);
}

.tech-data-card span,
.tech-data-card strong,
.tech-data-card small {
  display: block;
}

.tech-data-card span {
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
  letter-spacing: .07em;
}

.tech-data-card strong {
  margin-top: 7px;
  font-size: 15px;
  overflow-wrap: anywhere;
}

.tech-data-card small {
  margin-top: 5px;
  color: #9eb4c8;
  line-height: 1.35;
}

.oil-equivalent-grid,
.component-user-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
}

.oil-equivalent-card,
.component-user-card {
  min-width: 0;
  padding: 13px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 13px;
  background: rgba(5,15,27,.42);
}

.oil-equivalent-card > span {
  color: #71e6b7;
  font-size:12px;
  font-weight: 800;
  text-transform: uppercase;
}

.oil-equivalent-card > strong {
  display: block;
  margin-top: 5px;
  font-size: 12px;
}

.oil-equivalent-card > p {
  margin: 7px 0 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.oil-equivalent-card .user-tech-source,
.component-user-card .user-tech-source,
.electrical-user-card .user-tech-source {
  max-width: none;
  margin-top: 10px;
}

.electrical-user-list {
  display: grid;
  gap: 10px;
}

.electrical-user-card {
  padding: 14px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 14px;
  background: rgba(5,15,27,.42);
}

.electrical-user-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.electrical-user-head h4 {
  margin: 7px 0 3px;
  font-size: 14px;
}

.electrical-user-head p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
}

.signal-badge {
  display: inline-flex;
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.10);
  color: #8edcff;
  font-size:12px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.electrical-image-thumb {
  flex: 0 0 150px;
  width: 150px;
  height: 92px;
  padding: 4px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #06101c;
}

.electrical-image-thumb img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  border-radius: 7px;
}

.electrical-detail-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}

.electrical-detail-grid > div {
  min-width: 0;
  padding: 10px;
  border-radius: 10px;
  background: rgba(10,26,43,.70);
}

.electrical-detail-grid > div > span,
.component-user-field > span {
  display: block;
  margin-bottom: 6px;
  color: var(--muted);
  font-size:12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.technical-line-list {
  display: grid;
  gap: 4px;
}

.technical-line-list span {
  display: block;
  padding: 5px 7px;
  border-left: 2px solid rgba(54,194,255,.30);
  background: rgba(5,15,27,.32);
  color: #d6e3ef;
  font-size:12px;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.tech-note {
  display: grid;
  gap: 3px;
  margin-top: 10px;
  padding: 9px 10px;
  border-radius: 9px;
  background: rgba(247,187,77,.05);
}

.tech-note strong {
  font-size:12px;
  color: #ffd178;
}

.tech-note span {
  color: var(--muted);
  font-size:12px;
}

.component-user-top {
  display: flex;
  justify-content: space-between;
  gap: 9px;
  align-items: flex-start;
}

.component-user-top > div {
  min-width: 0;
}

.component-user-top > div > span,
.component-user-top > div > strong {
  display: block;
}

.component-user-top > div > span {
  color: var(--accent);
  font-size:12px;
  font-weight: 800;
  text-transform: uppercase;
}

.component-user-top > div > strong {
  margin-top: 5px;
  font-size:12px;
  overflow-wrap: anywhere;
}

.mini-verified {
  flex: 0 0 22px;
  width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(54,211,153,.11);
  color: #71e6b7;
  font-size:12px;
}

.component-user-field {
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid rgba(61,106,147,.18);
}

.component-user-field p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech-section-empty {
  padding: 24px 16px;
  border: 1px dashed rgba(61,106,147,.28);
  border-radius: 12px;
  color: var(--muted);
  font-size:12px;
  text-align: center;
}

.tech-disclaimer {
  display: flex;
  gap: 9px;
  align-items: flex-start;
  padding: 12px 14px;
  border: 1px solid rgba(247,187,77,.18);
  border-radius: 12px;
  background: rgba(247,187,77,.04);
}

.tech-disclaimer strong {
  color: #ffd178;
  font-size:12px;
}

.tech-disclaimer span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

@media (max-width: 1050px) {
  .tech-search-hero {
    grid-template-columns: 1fr;
  }

  .tech-search-hints {
    grid-column: auto;
  }

  .tech-result-summary,
  .tech-climate-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .oil-equivalent-grid,
  .component-user-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 700px) {
  .tech-search-hero {
    padding: 16px;
  }

  .tech-search-box {
    grid-template-columns: 1fr;
  }

  .tech-search-box .btn {
    width: 100%;
  }

  .tech-result-top,
  .tech-detail-toolbar,
  .tech-detail-header,
  .electrical-user-head {
    align-items: stretch;
    flex-direction: column;
  }

  .tech-open-detail {
    width: 100%;
  }

  .tech-result-summary,
  .tech-climate-grid,
  .oil-equivalent-grid,
  .component-user-grid,
  .electrical-detail-grid {
    grid-template-columns: 1fr;
  }

  .electrical-detail-grid .span-2 {
    grid-column: auto;
  }

  .electrical-image-thumb {
    width: 100%;
    height: 190px;
  }

  .user-tech-source {
    min-width: 0;
    max-width: none;
  }
}


/* =========================================================
   AC AUTO PRO 1.7.0
   CHECKLIST + ORDEM DE SERVIÇO
   ========================================================= */

.checklist-page-head,
.check-editor-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(54,194,255,.07),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.checklist-page-head h2,
.check-editor-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.checklist-page-head p {
  max-width: 690px;
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.checklist-metrics {
  margin-top: 14px;
}

.checklist-list {
  display: grid;
  gap: 9px;
}

.checklist-list-card {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 13px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 13px;
  background: rgba(5,15,27,.38);
}

.checklist-list-main {
  min-width: 0;
  display: flex;
  gap: 11px;
  align-items: center;
}

.checklist-id-box {
  flex: 0 0 58px;
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  align-content: center;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 12px;
  background: rgba(54,194,255,.06);
}

.checklist-id-box span {
  color: var(--muted);
  font-size:12px;
  letter-spacing: .08em;
}

.checklist-id-box strong {
  margin-top: 3px;
  color: var(--accent);
  font-size: 13px;
}

.checklist-list-copy {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.checklist-list-title {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.checklist-list-copy > span,
.checklist-list-copy > small {
  color: var(--muted);
}

.checklist-list-copy > span {
  font-size:12px;
}

.checklist-list-copy > small {
  font-size:12px;
}

.checklist-list-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.check-editor-head {
  position: sticky;
  top: 92px;
  z-index: 12;
  padding: 13px 16px;
  backdrop-filter: blur(12px);
}

.check-editor-head > div:nth-child(2) {
  flex: 1;
}

.check-editor-head h2 {
  font-size: 18px;
}

.check-editor-head-actions {
  display: flex;
  gap: 7px;
}

.checklist-editor {
  display: grid;
  gap: 13px;
  margin-top: 13px;
  padding-bottom: 92px;
}

.check-section {
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: linear-gradient(
    180deg,
    rgba(12,28,46,.93),
    rgba(8,20,34,.96)
  );
}

.check-section-title {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 14px;
  padding-bottom: 11px;
  border-bottom: 1px solid rgba(61,106,147,.20);
}

.check-section-title > span {
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(54,194,255,.10);
  border: 1px solid rgba(54,194,255,.18);
  color: var(--accent);
  font-weight: 900;
}

.check-section-title h3,
.check-section-title p {
  margin: 0;
}

.check-section-title h3 {
  font-size: 14px;
}

.check-section-title p {
  margin-top: 2px;
  color: var(--muted);
  font-size:12px;
}

.check-inline-action {
  display: flex;
  align-items: end;
}

.vehicle-quick-form {
  margin: 12px 0;
  padding: 13px;
  border: 1px dashed rgba(54,194,255,.25);
  border-radius: 12px;
  background: rgba(54,194,255,.035);
}

.vehicle-quick-form .btn {
  margin-top: 10px;
}

.inspection-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.inspection-item {
  padding: 9px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 11px;
  background: rgba(5,15,27,.38);
}

.inspection-item > span {
  display: block;
  min-height: 26px;
  color: #d9e5ef;
  font-size:12px;
  font-weight: 700;
}

.inspection-item select {
  margin-top: 6px;
}

.inspection-table {
  display: grid;
  gap: 7px;
}

.inspection-row {
  display: grid;
  grid-template-columns: minmax(190px,.8fr) minmax(160px,.45fr) minmax(220px,1fr);
  gap: 8px;
  align-items: center;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 10px;
  background: rgba(5,15,27,.34);
}

.inspection-row strong {
  font-size:12px;
}

.inspection-row select,
.inspection-row input {
  margin: 0;
}

.check-photo-toolbar {
  display: flex;
  gap: 10px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 11px;
}

.check-photo-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 9px;
}

.check-photo-card {
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 11px;
  background: rgba(5,15,27,.38);
}

.check-photo-card img {
  width: 100%;
  height: 130px;
  display: block;
  object-fit: contain;
  border-radius: 8px;
  background: #06101c;
}

.check-photo-card input {
  margin-top: 7px;
}

.check-photo-card .btn {
  width: 100%;
  margin-top: 6px;
}

.estimate-head,
.estimate-row {
  display: grid;
  grid-template-columns:
    minmax(260px,1fr)
    80px
    125px
    120px
    40px;
  gap: 7px;
  align-items: center;
}

.estimate-head {
  padding: 0 7px 6px;
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.estimate-row {
  margin-bottom: 7px;
  padding: 7px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 10px;
  background: rgba(5,15,27,.32);
}

.estimate-row input {
  margin: 0;
}

.estimate-line-total {
  font-size:12px;
  text-align: right;
}

.estimate-actions {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-top: 10px;
}

.estimate-total-box {
  min-width: 180px;
  padding: 9px 12px;
  border-radius: 10px;
  background: rgba(54,194,255,.06);
  text-align: right;
}

.estimate-total-box span,
.estimate-total-box strong {
  display: block;
}

.estimate-total-box span {
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
}

.estimate-total-box strong {
  margin-top: 3px;
  font-size: 17px;
}

.check-save-bar {
  position: fixed;
  left: 285px;
  right: 28px;
  bottom: 18px;
  z-index: 24;
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 11px 13px;
  border: 1px solid rgba(71,122,169,.34);
  border-radius: 14px;
  background: rgba(9,22,38,.94);
  backdrop-filter: blur(16px);
  box-shadow: 0 12px 30px rgba(0,0,0,.30);
}

.check-save-bar > div:first-child {
  display: grid;
  gap: 2px;
}

.check-save-bar > div:first-child span {
  color: var(--muted);
  font-size:12px;
}

.check-save-actions {
  display: flex;
  gap: 7px;
}

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

  .check-photo-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .estimate-head {
    display: none;
  }

  .estimate-row {
    grid-template-columns: minmax(0,1fr) 80px 120px;
  }

  .estimate-description {
    grid-column: 1 / -1;
  }

  .estimate-line-total {
    text-align: left;
  }

  .check-save-bar {
    left: 275px;
  }
}

@media (max-width: 800px) {
  .checklist-page-head,
  .check-editor-head,
  .checklist-list-card,
  .estimate-actions,
  .check-save-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .check-editor-head {
    position: relative;
    top: auto;
  }

  .checklist-list-actions,
  .check-save-actions {
    justify-content: stretch;
  }

  .checklist-list-actions .btn,
  .check-save-actions .btn {
    flex: 1;
  }

  .inspection-grid,
  .check-photo-grid {
    grid-template-columns: 1fr;
  }

  .inspection-row {
    grid-template-columns: 1fr;
  }

  .estimate-row {
    grid-template-columns: 1fr 1fr;
  }

  .estimate-description {
    grid-column: 1 / -1;
  }

  .estimate-remove {
    justify-self: end;
  }

  .check-save-bar {
    position: static;
    left: auto;
    right: auto;
    bottom: auto;
  }

  .checklist-editor {
    padding-bottom: 0;
  }
}

@media (max-width: 520px) {
  .estimate-row {
    grid-template-columns: 1fr;
  }

  .check-save-actions {
    flex-direction: column;
  }
}


/* =========================================================
   AC AUTO PRO 1.7.1
   AJUSTE VISUAL DO CHECKLIST / OS
   ========================================================= */

.check-section label {
  min-width: 0;
  display: grid;
  gap: 7px;
  align-content: start;
  color: #d8e6f3;
  font-size:12px;
  font-weight: 700;
  line-height: 1.35;
}

.check-section label > span {
  display: block;
}

.check-section input,
.check-section select,
.check-section textarea {
  width: 100%;
  margin: 0;
  color: #eef6ff;
  font: inherit;
  border-radius: 12px;
  border: 1px solid rgba(88, 140, 196, .28);
  background: linear-gradient(
    180deg,
    rgba(12,28,46,.95),
    rgba(9,22,37,.95)
  );
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

.check-section input,
.check-section select {
  min-height: 46px;
  padding: 11px 13px;
}

.check-section select {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding-right: 42px;
  background-image:
    linear-gradient(45deg, transparent 50%, #8ecfff 50%),
    linear-gradient(135deg, #8ecfff 50%, transparent 50%),
    linear-gradient(
      180deg,
      rgba(255,255,255,.04),
      rgba(255,255,255,0)
    );
  background-position:
    calc(100% - 18px) calc(50% - 3px),
    calc(100% - 12px) calc(50% - 3px),
    0 0;
  background-size: 6px 6px, 6px 6px, 100% 100%;
  background-repeat: no-repeat;
}

.check-section textarea {
  display: block;
  min-height: 104px;
  padding: 12px 13px;
  resize: vertical;
  line-height: 1.45;
}

.check-section input::placeholder,
.check-section textarea::placeholder {
  color: rgba(173, 192, 210, .68);
}

.check-section input:focus,
.check-section select:focus,
.check-section textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.check-section .grid.grid-2,
.check-section .form-grid,
.check-section .compact-grid {
  align-items: start;
}

.check-section .grid.grid-2 label,
.check-section .form-grid label {
  height: 100%;
}

.check-section .span-2 {
  grid-column: span 2;
}

.dashboard-light-grid {
  margin-top: 4px;
}

.inspection-item {
  display: grid;
  gap: 8px;
  align-content: start;
  min-height: 108px;
  padding: 12px;
}

.inspection-item > span {
  min-height: 30px;
  line-height: 1.35;
}

.inspection-item select {
  align-self: end;
}

.inspection-table {
  margin-top: 4px;
}

.inspection-row {
  align-items: start;
  padding: 10px;
}

.inspection-row strong {
  display: flex;
  align-items: center;
  min-height: 46px;
  color: #dce7f2;
  line-height: 1.35;
}

.check-section .grid.grid-2 textarea {
  min-height: 112px;
}

#checkComplaint,
#checkDiagnosis,
#checkRecommendation,
#checkAuthorization,
#checkNotes {
  min-height: 120px;
}

.vehicle-quick-form {
  margin-top: 14px;
  padding: 14px;
  border-radius: 14px;
}

.vehicle-quick-form label {
  background: rgba(5,15,27,.28);
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 12px;
}

.estimate-row input {
  min-height: 44px;
}

@media (max-width: 800px) {
  .check-section .span-2 {
    grid-column: auto;
  }

  .inspection-item {
    min-height: auto;
  }

  .inspection-row strong {
    min-height: auto;
  }
}


/* =========================================================
   AC AUTO PRO 1.8.0 - MODELOS DE CHECKLIST DINÂMICOS
   ========================================================= */
.template-page-head{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(14,30,49,.96),rgba(9,22,38,.98))}.template-page-head h2{margin:3px 0 5px;font-size:24px}.template-page-head p{margin:0;color:var(--muted)}.template-list{display:grid;gap:9px}.template-card{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:rgba(8,20,34,.82)}.template-card-main{display:flex;gap:11px;align-items:flex-start;min-width:0}.template-icon{flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:rgba(54,194,255,.08);color:var(--accent);font-size:19px}.template-card-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.template-card-main span,.template-card-main p{color:var(--muted)}.template-card-main p{margin:5px 0 0;font-size:12px}.template-card-actions{display:flex;gap:6px;flex-wrap:wrap}.template-meta textarea{min-height:90px}.template-editor-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:14px 0 9px}.template-editor-toolbar>div{display:grid;gap:2px}.template-editor-toolbar span{color:var(--muted);font-size:12px}.template-section-editor{margin-bottom:10px;padding:13px;border:1px solid var(--line);border-radius:14px;background:rgba(8,20,34,.82)}.template-section-head{display:grid;grid-template-columns:34px 1fr auto;gap:9px;align-items:center}.template-section-head>span{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:rgba(54,194,255,.1);color:var(--accent);font-weight:900}.template-section-head>div:nth-child(2){display:grid;grid-template-columns:minmax(180px,.5fr) 1fr;gap:7px}.template-section-head input{margin:0}.template-section-head [data-section-title]{font-weight:800}.template-order-actions{display:flex;gap:4px}.icon-btn.danger{color:var(--danger)}.template-fields{display:grid;gap:8px;margin:10px 0}.template-field-editor{padding:10px;border:1px solid rgba(61,106,147,.20);border-radius:11px;background:rgba(5,15,27,.38)}.template-field-row{display:grid;grid-template-columns:minmax(180px,1fr) 170px 120px auto;gap:8px;align-items:end}.template-required{align-self:center}.template-options-label{display:block;margin-top:8px}.template-options-label small{color:var(--muted)}.template-options-label textarea{min-height:95px;font-family:monospace;font-size:12px}.template-save-bar{display:flex;justify-content:flex-end;gap:8px;position:sticky;bottom:12px;z-index:20;padding:10px;border:1px solid var(--line);border-radius:13px;background:rgba(9,22,38,.94);backdrop-filter:blur(12px)}
.template-chooser{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.template-choice-card{text-align:left;padding:17px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(180deg,rgba(12,28,46,.95),rgba(8,20,34,.98));color:var(--text);cursor:pointer;transition:.16s}.template-choice-card:hover{border-color:rgba(54,194,255,.45);transform:translateY(-1px)}.template-choice-card strong,.template-choice-card p,.template-choice-card small{display:block}.template-choice-category{display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(54,194,255,.08);color:var(--accent);font-size:12px;font-weight:800;text-transform:uppercase}.template-choice-card strong{margin-top:10px;font-size:15px}.template-choice-card p{min-height:36px;margin:6px 0;color:var(--muted);font-size:12px;line-height:1.4}.template-choice-card small{color:#8fa8bc}.dynamic-field{margin-top:10px}.dynamic-field-title{margin-bottom:8px;color:#dce8f2;font-size:12px;font-weight:800}.dynamic-choice-grid,.dynamic-radio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dynamic-choice,.dynamic-radio{display:flex!important;gap:9px;align-items:flex-start;padding:11px;border:1px solid rgba(61,106,147,.22);border-radius:12px;background:rgba(5,15,27,.38);cursor:pointer}.dynamic-choice input,.dynamic-radio input{flex:0 0 auto;width:18px!important;height:18px;min-height:0!important;margin:1px 0 0!important;accent-color:var(--accent)}.dynamic-choice span,.dynamic-radio span{display:grid;gap:2px}.dynamic-choice strong,.dynamic-radio strong{font-size:12px}.dynamic-choice small,.dynamic-radio small{color:var(--muted);font-size:12px;line-height:1.35}.dynamic-choice:has(input:checked),.dynamic-radio:has(input:checked){border-color:rgba(54,194,255,.42);background:rgba(54,194,255,.06)}.dynamic-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.dynamic-status-card{display:grid;gap:8px;padding:10px;border:1px solid rgba(61,106,147,.20);border-radius:11px;background:rgba(5,15,27,.36)}.dynamic-status-card strong,.dynamic-status-card small{display:block}.dynamic-status-card strong{font-size:12px}.dynamic-status-card small{margin-top:2px;color:var(--muted);font-size:12px;line-height:1.3}.dynamic-status-card select{margin:0}.dynamic-simple-field{margin-top:10px!important}.dynamic-simple-field>small{display:block;margin-top:5px;color:var(--muted);font-size:12px}.input-with-unit{display:flex;align-items:center;position:relative;margin-top:6px}.input-with-unit input{margin:0!important;padding-right:58px}.input-with-unit>span{position:absolute;right:12px;color:var(--muted);font-size:12px;font-weight:800}.dynamic-section{position:relative}
@media(max-width:1050px){.template-chooser{grid-template-columns:repeat(2,minmax(0,1fr))}.dynamic-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-field-row{grid-template-columns:1fr 1fr}.template-order-actions{justify-content:flex-end}}
@media(max-width:720px){.template-page-head,.template-card,.template-editor-toolbar{align-items:stretch;flex-direction:column}.template-card-actions .btn{flex:1}.template-chooser,.dynamic-choice-grid,.dynamic-radio-grid,.dynamic-status-grid{grid-template-columns:1fr}.template-section-head{grid-template-columns:1fr}.template-section-head>div:nth-child(2){grid-template-columns:1fr}.template-field-row{grid-template-columns:1fr}.template-save-bar{position:static}.template-order-actions{justify-content:flex-start}}


/* =========================================================
   AC AUTO PRO 1.8.2
   EXCLUSÃO DE CHECKLIST DO CLIENTE
   ========================================================= */

.btn-danger-soft {
  border: 1px solid rgba(255,107,122,.30);
  background: rgba(255,107,122,.07);
  color: #ff8f9a;
}

.btn-danger-soft:hover {
  border-color: rgba(255,107,122,.55);
  background: rgba(255,107,122,.13);
  color: #ffd5da;
}


/* =========================================================
   AC AUTO PRO 1.9.0
   ORDENS DE SERVIÇO + HISTÓRICO DO VEÍCULO
   ========================================================= */

.os-page-head,
.history-page-head {
  display: flex;
  justify-content: space-between;
  gap: 18px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    radial-gradient(
      circle at 100% 0,
      rgba(54,194,255,.07),
      transparent 35%
    ),
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.os-page-head h2,
.history-page-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.os-page-head p,
.history-page-head p {
  margin: 0;
  max-width: 720px;
  color: var(--muted);
  line-height: 1.5;
}

.os-status-strip {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 7px;
}

.os-status-card {
  min-width: 0;
  padding: 11px 9px;
  border: 1px solid rgba(61,106,147,.22);
  border-radius: 12px;
  background: rgba(8,20,34,.78);
  color: var(--text);
  cursor: pointer;
  text-align: left;
}

.os-status-card span,
.os-status-card strong {
  display: block;
}

.os-status-card span {
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
}

.os-status-card strong {
  margin-top: 5px;
  font-size: 19px;
}

.os-status-card.active,
.os-status-card:hover {
  border-color: rgba(54,194,255,.48);
  background: rgba(54,194,255,.07);
}

.os-toolbar {
  display: grid;
  grid-template-columns: minmax(0,1fr) 190px;
  gap: 9px;
}

.os-searchbox,
.history-search {
  display: flex;
  gap: 7px;
}

.os-searchbox input,
.history-search input {
  flex: 1;
  margin: 0;
}

.os-list {
  display: grid;
  gap: 8px;
}

.os-list-card {
  display: grid;
  grid-template-columns: 60px minmax(0,1fr) auto;
  gap: 11px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 13px;
  background: rgba(5,15,27,.36);
}

.os-number {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  align-content: center;
  border-radius: 12px;
  border: 1px solid rgba(54,194,255,.18);
  background: rgba(54,194,255,.05);
}

.os-number span {
  font-size:12px;
  color: var(--muted);
}

.os-number strong {
  margin-top: 3px;
  font-size: 13px;
  color: var(--accent);
}

.os-list-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.os-list-title {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  align-items: center;
}

.os-list-main > span,
.os-list-main > small {
  color: var(--muted);
}

.os-list-main > span {
  font-size:12px;
}

.os-list-main > small {
  font-size:12px;
}

.os-list-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: flex-end;
}

.os-info-list {
  display: grid;
  gap: 8px;
}

.os-info-list > div,
.history-vehicle-data > div {
  display: grid;
  grid-template-columns: 110px 1fr;
  gap: 8px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(61,106,147,.14);
}

.os-info-list > div:last-child,
.history-vehicle-data > div:last-child {
  border-bottom: 0;
}

.os-info-list span,
.history-vehicle-data span {
  color: var(--muted);
  font-size:12px;
}

.os-info-list strong,
.history-vehicle-data strong {
  font-size:12px;
}

.os-status-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.os-summary-actions {
  margin-top: 10px;
  display: flex;
  justify-content: flex-end;
}

.os-checklist-list {
  display: grid;
  gap: 7px;
}

.os-checklist-card {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 11px;
  background: rgba(5,15,27,.34);
}

.os-checklist-card > div:first-child {
  display: grid;
  gap: 3px;
}

.os-checklist-card > div:first-child > span,
.os-checklist-card > div:first-child > small {
  color: var(--muted);
  font-size:12px;
}

.history-vehicle-list {
  display: grid;
  gap: 8px;
}

.history-vehicle-card {
  width: 100%;
  display: grid;
  grid-template-columns: 46px minmax(0,1fr) 26px;
  gap: 10px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 13px;
  background: rgba(5,15,27,.36);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.history-vehicle-card:hover {
  border-color: rgba(54,194,255,.42);
  background: rgba(54,194,255,.04);
}

.history-vehicle-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  border-radius: 11px;
  background: rgba(54,194,255,.06);
}

.history-vehicle-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.history-vehicle-main span,
.history-vehicle-main small {
  color: var(--muted);
}

.history-vehicle-main small {
  font-size:12px;
}

.history-arrow {
  font-size: 28px;
  color: var(--muted);
}

.history-client-name {
  font-size: 13px !important;
  line-height: 1.25;
}

.history-vehicle-data {
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  column-gap: 24px;
}

.vehicle-timeline {
  position: relative;
  display: grid;
  gap: 12px;
  padding-left: 24px;
}

.vehicle-timeline::before {
  content: "";
  position: absolute;
  left: 7px;
  top: 8px;
  bottom: 8px;
  width: 2px;
  background: rgba(54,194,255,.15);
}

.timeline-event {
  position: relative;
}

.timeline-marker {
  position: absolute;
  left: -22px;
  top: 16px;
  width: 12px;
  height: 12px;
  border: 3px solid #0c1d30;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 0 2px rgba(54,194,255,.20);
}

.timeline-card {
  padding: 13px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 13px;
  background: rgba(5,15,27,.36);
}

.timeline-head {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: flex-start;
}

.timeline-head > div {
  display: grid;
  gap: 3px;
}

.timeline-head small {
  color: var(--muted);
  font-size:12px;
}

.timeline-summary {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.timeline-summary > div {
  padding: 8px 9px;
  border-radius: 9px;
  background: rgba(11,30,49,.55);
}

.timeline-summary span {
  display: block;
  color: var(--muted);
  font-size:12px;
  text-transform: uppercase;
}

.timeline-summary p {
  margin: 4px 0 0;
  font-size:12px;
  line-height: 1.45;
  white-space: pre-wrap;
}

.timeline-checklists {
  display: grid;
  gap: 6px;
  margin-top: 10px;
}

.timeline-checklist-row {
  display: flex;
  justify-content: space-between;
  gap: 9px;
  align-items: center;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 9px;
}

.timeline-checklist-row > div {
  display: grid;
  gap: 2px;
}

.timeline-checklist-row span {
  color: var(--muted);
  font-size:12px;
}

.timeline-footer {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  padding-top: 9px;
  border-top: 1px solid rgba(61,106,147,.16);
}

@media (max-width: 1150px) {
  .os-status-strip {
    grid-template-columns: repeat(4, minmax(0,1fr));
  }
}

@media (max-width: 780px) {
  .os-page-head,
  .history-page-head,
  .os-checklist-card,
  .timeline-head,
  .timeline-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .os-status-strip {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .os-toolbar {
    grid-template-columns: 1fr;
  }

  .os-list-card {
    grid-template-columns: 52px minmax(0,1fr);
  }

  .os-list-actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }

  .os-list-actions .btn {
    flex: 1;
  }

  .history-vehicle-data {
    grid-template-columns: 1fr;
  }

  .os-searchbox,
  .history-search {
    flex-direction: column;
  }
}


/* =========================================================
   AC AUTO PRO 1.9.1
   PADRÃO VISUAL DO SELECT - ORDENS DE SERVIÇO
   ========================================================= */

.os-toolbar > select,
.os-toolbar select,
#osStatusFilter {
  width: 100%;
  min-height: 44px;
  margin: 0;
  padding: 10px 42px 10px 13px;

  border: 1px solid rgba(88,140,196,.30);
  border-radius: 12px;

  background-color: #0b1c2e;
  color: var(--text);

  font-family: inherit;
  font-size:12px;
  font-weight: 700;

  outline: none;
  cursor: pointer;

  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;

  background-image:
    linear-gradient(45deg, transparent 50%, #8ecfff 50%),
    linear-gradient(135deg, #8ecfff 50%, transparent 50%),
    linear-gradient(
      180deg,
      rgba(12,28,46,.98),
      rgba(9,22,37,.98)
    );

  background-position:
    calc(100% - 18px) calc(50% - 3px),
    calc(100% - 12px) calc(50% - 3px),
    0 0;

  background-size:
    6px 6px,
    6px 6px,
    100% 100%;

  background-repeat: no-repeat;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.025);

  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

.os-toolbar > select:hover,
.os-toolbar select:hover,
#osStatusFilter:hover {
  border-color: rgba(110,174,235,.46);
}

.os-toolbar > select:focus,
.os-toolbar select:focus,
#osStatusFilter:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.os-toolbar > select option,
.os-toolbar select option,
#osStatusFilter option {
  background: #0b1a2b;
  color: #eef6ff;
}

/* Evita aparência branca nativa no Android/Chrome */
.os-toolbar > select,
.os-toolbar select,
#osStatusFilter {
  color-scheme: dark;
  -webkit-text-fill-color: var(--text);
}

/* Mobile: mantém o select com a mesma proporção do botão Buscar */
@media (max-width: 780px) {
  #osStatusFilter {
    min-height: 48px;
    border-radius: 12px;
    font-size: 12px;
  }
}


/* =========================================================
   AC AUTO PRO 1.9.2
   RESUMO DA OS NO PADRÃO DO SISTEMA
   ========================================================= */

.os-summary-form {
  gap: 14px;
}

.os-summary-form label {
  display: grid;
  gap: 8px;
  align-content: start;
  font-size: 13px;
  color: #d8e5f1;
}

.os-summary-form textarea,
.os-summary-form input[type="number"],
.os-summary-form input[type="text"],
.os-summary-form input[type="search"] {
  width: 100%;
  margin: 0;
  display: block;
  padding: 12px 13px;
  border: 1px solid rgba(88, 140, 196, .28);
  border-radius: 14px;
  background: linear-gradient(
    180deg,
    rgba(12,28,46,.96),
    rgba(9,22,37,.96)
  );
  color: var(--text);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03);
  transition:
    border-color .18s ease,
    box-shadow .18s ease,
    background .18s ease;
}

.os-summary-form textarea {
  min-height: 108px;
  resize: vertical;
  line-height: 1.45;
}

.os-summary-form textarea::placeholder,
.os-summary-form input::placeholder {
  color: rgba(173, 192, 210, .68);
}

.os-summary-form textarea:focus,
.os-summary-form input:focus {
  outline: none;
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.os-summary-actions {
  margin-top: 14px;
  display: flex;
  justify-content: flex-end;
}

.os-summary-actions .btn {
  min-width: 210px;
}

@media (max-width: 780px) {
  .os-summary-form label {
    gap: 7px;
  }

  .os-summary-form textarea {
    min-height: 96px;
  }

  .os-summary-actions {
    justify-content: stretch;
  }

  .os-summary-actions .btn {
    width: 100%;
    min-width: 0;
  }
}


/* =========================================================
   AC AUTO PRO 1.9.3
   REVISÃO GERAL DA ORDEM DE SERVIÇO NO MOBILE
   ========================================================= */

.os-detail-grid {
  align-items: stretch;
}

.os-detail-card {
  height: 100%;
}

.os-detail-card .card-title-row,
.os-status-section .card-title-row,
.os-summary-section .card-title-row,
.os-checklists-section .card-title-row {
  margin-bottom: 12px;
}

.os-detail-card .card-title-row h2,
.os-status-section .card-title-row h2,
.os-summary-section .card-title-row h2,
.os-checklists-section .card-title-row h2 {
  margin: 0;
}

.os-detail-card .card-title-row p,
.os-status-section .card-title-row p,
.os-summary-section .card-title-row p,
.os-checklists-section .card-title-row p {
  margin-top: 4px;
}

.os-status-actions {
  gap: 8px;
}

.os-status-actions .btn {
  min-height: 40px;
}

.os-checklist-card {
  border-radius: 13px;
  padding: 12px;
}

.os-checklist-card .os-list-title {
  margin-bottom: 2px;
}

.os-checklist-card .os-list-actions {
  flex: 0 0 auto;
}

.os-checklist-card .btn {
  white-space: nowrap;
}

@media (max-width: 780px) {
  /* Cabeçalho da OS */
  .check-editor-head {
    gap: 10px;
    padding: 12px 13px;
  }

  .check-editor-head > div:nth-child(2) {
    order: 2;
    width: 100%;
  }

  .check-editor-head > .badge {
    order: 3;
    align-self: flex-start;
  }

  .check-editor-head > #backOsList {
    order: 1;
    align-self: flex-start;
  }

  .check-editor-head h2 {
    font-size: 19px;
  }

  /* Cliente e veículo */
  .os-detail-grid {
    gap: 10px;
  }

  .os-detail-card {
    padding: 16px;
    border-radius: 16px;
  }

  .os-info-list > div {
    grid-template-columns: 92px minmax(0, 1fr);
    align-items: start;
    gap: 8px;
    padding: 9px 0;
  }

  .os-info-list span {
    font-size:12px;
  }

  .os-info-list strong {
    font-size:12px;
    line-height: 1.35;
    word-break: break-word;
  }

  /* Status */
  .os-status-section {
    padding: 16px;
    border-radius: 16px;
  }

  .os-status-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .os-status-actions .btn {
    width: 100%;
    min-height: 44px;
    padding: 10px 8px;
    border-radius: 11px;
    font-size:12px;
  }

  .os-status-actions .btn:last-child {
    grid-column: 1 / -1;
  }

  /* Resumo */
  .os-summary-section {
    padding: 16px;
    border-radius: 16px;
  }

  .os-summary-form {
    gap: 12px;
  }

  .os-summary-form label {
    font-size: 12px;
  }

  .os-summary-form textarea,
  .os-summary-form input[type="number"],
  .os-summary-form input[type="text"],
  .os-summary-form input[type="search"] {
    min-height: 46px;
    border-radius: 12px;
    padding: 11px 12px;
  }

  .os-summary-form textarea {
    min-height: 104px;
  }

  .os-summary-actions {
    margin-top: 12px;
  }

  .os-summary-actions .btn {
    min-height: 48px;
    border-radius: 12px;
  }

  /* Checklists vinculados */
  .os-checklists-section {
    padding: 16px;
    border-radius: 16px;
  }

  .os-checklists-section .card-title-row {
    gap: 10px;
    align-items: flex-start;
  }

  .os-checklists-section .card-title-row > .badge {
    align-self: flex-start;
  }

  .os-checklist-list {
    gap: 9px;
  }

  .os-checklist-card {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    align-items: stretch;
    padding: 12px;
  }

  .os-checklist-card > div:first-child {
    min-width: 0;
  }

  .os-checklist-card .os-list-title {
    gap: 6px;
  }

  .os-checklist-card .os-list-title strong {
    font-size: 12px;
    line-height: 1.35;
  }

  .os-checklist-card > div:first-child > span,
  .os-checklist-card > div:first-child > small {
    font-size:12px;
    line-height: 1.4;
  }

  .os-checklist-card .os-list-actions {
    width: 100%;
  }

  .os-checklist-card .os-list-actions .btn {
    width: 100%;
    min-height: 42px;
    border-radius: 10px;
  }

  /* Lista geral de OS */
  .os-list-card {
    padding: 11px;
    border-radius: 13px;
  }

  .os-list-main > span {
    font-size:12px;
    line-height: 1.35;
  }

  .os-list-main > small {
    font-size:12px;
    line-height: 1.4;
  }

  .os-list-actions {
    gap: 7px;
  }

  .os-list-actions .btn {
    min-height: 40px;
  }

  /* Espaçamento geral */
  .section-gap {
    margin-top: 12px;
  }
}

@media (max-width: 460px) {
  .os-status-actions {
    grid-template-columns: 1fr 1fr;
  }

  .os-info-list > div {
    grid-template-columns: 84px minmax(0, 1fr);
  }
}


/* =========================================================
   AC AUTO PRO 1.10.0 - GARANTIAS & RETORNOS
   ========================================================= */
.warranty-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(180deg,rgba(14,30,49,.96),rgba(9,22,38,.98))}.warranty-head h2{margin:3px 0 6px;font-size:24px}.warranty-head p{margin:0;color:var(--muted);max-width:720px}.warranty-head-actions{display:flex;gap:8px;flex-wrap:wrap}.warranty-columns{align-items:start}.warranty-list{display:grid;gap:8px}.warranty-item{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px;border:1px solid rgba(61,106,147,.20);border-radius:12px;background:rgba(5,15,27,.35)}.warranty-item-main{min-width:0;display:grid;gap:3px}.warranty-item-title{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.warranty-item-main>span,.warranty-item-main>small{color:var(--muted);font-size:12px}.warranty-item-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.warranty-form label{display:grid;gap:7px}.warranty-form input,.warranty-form select,.warranty-form textarea{width:100%;margin:0;border:1px solid rgba(88,140,196,.30);border-radius:12px;background:linear-gradient(180deg,rgba(12,28,46,.96),rgba(9,22,37,.98));color:var(--text);padding:11px 12px;outline:none}.warranty-form select{appearance:none;-webkit-appearance:none;padding-right:40px;color-scheme:dark}.warranty-form select option{background:#0b1a2b;color:#eef6ff}.warranty-form textarea{min-height:110px;resize:vertical}.warranty-form input:focus,.warranty-form select:focus,.warranty-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(54,194,255,.10)}.warranty-form-actions{justify-content:flex-end;margin-top:14px}.os-head-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
@media(max-width:780px){.warranty-head,.warranty-item{align-items:stretch;flex-direction:column}.warranty-head-actions .btn,.warranty-item-actions .btn{flex:1}.warranty-columns{grid-template-columns:1fr!important}.warranty-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.warranty-form-actions{flex-direction:column}.warranty-form-actions .btn{width:100%}.os-head-actions{width:100%;justify-content:flex-start}.os-head-actions #warrantyFromOrder{flex:1}.warranty-item-actions{justify-content:stretch}}


/* =========================================================
   AC AUTO PRO 1.10.1 - TERMO PADRÃO DE GARANTIA
   ========================================================= */

.warranty-default-note {
  display: grid;
  gap: 3px;
  margin-bottom: 14px;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.22);
  border-radius: 12px;
  background: rgba(54,194,255,.055);
}

.warranty-default-note strong {
  color: #dceaf5;
  font-size:12px;
}

.warranty-default-note span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.warranty-terms-textarea {
  min-height: 430px !important;
  line-height: 1.55;
  font-family: inherit;
}

@media (max-width: 780px) {
  .warranty-terms-textarea {
    min-height: 520px !important;
  }
}


/* =========================================================
   AC AUTO PRO 1.11.0 - PAINEL INTELIGENTE
   ========================================================= */

.smart-dashboard {
  background:
    linear-gradient(
      180deg,
      rgba(12,27,45,.98),
      rgba(8,20,34,.98)
    );
}

.smart-dashboard-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
}

.smart-dashboard-head h2 {
  margin: 3px 0 5px;
  font-size: 18px;
}

.smart-dashboard-head p {
  margin: 0;
  max-width: 720px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.smart-summary-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 8px;
  margin-top: 14px;
}

.smart-summary {
  padding: 11px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 12px;
  background: rgba(5,15,27,.35);
}

.smart-summary span,
.smart-summary strong {
  display: block;
}

.smart-summary span {
  color: var(--muted);
  font-size:12px;
}

.smart-summary strong {
  margin-top: 5px;
  font-size: 21px;
}

.smart-summary.danger {
  border-color: rgba(255,107,122,.24);
}

.smart-summary.danger strong {
  color: #ff8d99;
}

.smart-summary.warning {
  border-color: rgba(247,187,77,.24);
}

.smart-summary.warning strong {
  color: #ffd071;
}

.smart-summary.info {
  border-color: rgba(54,194,255,.24);
}

.smart-summary.info strong {
  color: #7bdcff;
}

.smart-alert-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.smart-alert {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.smart-alert.danger {
  border-left: 3px solid var(--danger);
}

.smart-alert.warning {
  border-left: 3px solid var(--warning);
}

.smart-alert.info {
  border-left: 3px solid var(--accent);
}

.smart-alert-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(54,194,255,.07);
  font-size:12px;
  font-weight: 900;
}

.smart-alert.danger .smart-alert-icon {
  background: rgba(255,107,122,.08);
  color: #ff9aa4;
}

.smart-alert.warning .smart-alert-icon {
  background: rgba(247,187,77,.08);
  color: #ffd071;
}

.smart-alert.info .smart-alert-icon {
  color: #7bdcff;
}

.smart-alert-main {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.smart-alert-title {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
}

.smart-alert-title strong {
  font-size:12px;
}

.smart-alert-title span {
  color: var(--muted);
  font-size:12px;
}

.smart-alert-customer {
  color: #dce7f1;
  font-size:12px;
}

.smart-alert-main small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.smart-alert-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.smart-empty {
  display: grid;
  gap: 4px;
  padding: 22px;
  border: 1px dashed rgba(61,106,147,.28);
  border-radius: 12px;
  text-align: center;
}

.smart-empty span {
  color: var(--muted);
  font-size:12px;
}

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

  .smart-alert {
    grid-template-columns: 36px minmax(0,1fr);
  }

  .smart-alert-actions {
    grid-column: 1 / -1;
    justify-content: stretch;
  }

  .smart-alert-actions .btn {
    flex: 1;
  }
}

@media (max-width: 780px) {
  .smart-dashboard-head {
    align-items: stretch;
    flex-direction: column;
  }

  .smart-dashboard-head .btn {
    width: 100%;
  }

  .smart-summary-grid {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .smart-alert {
    padding: 10px;
  }

  .smart-alert-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 6px;
  }

  .smart-alert-actions .btn {
    width: 100%;
  }

  .smart-alert-actions .btn:last-child:nth-child(3) {
    grid-column: 1 / -1;
  }
}


/* =========================================================
   AC AUTO PRO 1.12.0
   CENTRAL DE NOTIFICAÇÕES + WHATSAPP ASSISTIDO
   ========================================================= */

.topbar-right {
  display: flex;
  align-items: center;
  gap: 9px;
}

.notification-button {
  position: relative;
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: rgba(8,20,34,.72);
  color: #b8c9d9;
  cursor: pointer;
  transition:
    border-color .18s ease,
    color .18s ease,
    background .18s ease;
}

.notification-button:hover,
.notification-button.has-alerts {
  border-color: rgba(54,194,255,.34);
  color: #eaf7ff;
  background: rgba(54,194,255,.05);
}

.notification-bell {
  width: 19px;
  height: 19px;
}

.notification-count {
  position: absolute;
  top: -6px;
  right: -6px;
  min-width: 19px;
  height: 19px;
  padding: 0 5px;
  display: grid;
  place-items: center;
  border: 2px solid #07111f;
  border-radius: 999px;
  background: var(--danger);
  color: white;
  font-size:12px;
  font-weight: 900;
  line-height: 1;
}

.notification-overlay {
  position: fixed;
  inset: 0;
  z-index: 89;
  background: rgba(2,8,15,.58);
  opacity: 0;
  transition: opacity .18s ease;
}

.notification-overlay.show {
  opacity: 1;
}

.notification-drawer {
  position: fixed;
  z-index: 90;
  top: 0;
  right: 0;
  width: min(430px, 94vw);
  height: 100vh;
  display: flex;
  flex-direction: column;
  border-left: 1px solid var(--line);
  background:
    linear-gradient(
      180deg,
      rgba(11,26,43,.995),
      rgba(7,18,31,.995)
    );
  box-shadow: -18px 0 45px rgba(0,0,0,.32);
  transform: translateX(105%);
  transition: transform .18s ease;
}

.notification-drawer.open {
  transform: translateX(0);
}

.notification-drawer-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 18px;
  border-bottom: 1px solid rgba(61,106,147,.18);
}

.notification-drawer-head h2 {
  margin: 3px 0 0;
  font-size: 19px;
}

.notification-summary {
  display: grid;
  gap: 3px;
  margin: 14px 14px 0;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.17);
  border-radius: 12px;
  background: rgba(54,194,255,.04);
}

.notification-summary strong {
  font-size:12px;
}

.notification-summary span {
  color: var(--muted);
  font-size:12px;
}

.notification-list {
  flex: 1;
  min-height: 0;
  display: grid;
  align-content: start;
  gap: 8px;
  overflow-y: auto;
  padding: 14px;
}

.notification-item {
  display: grid;
  grid-template-columns: 38px minmax(0,1fr);
  gap: 10px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 13px;
  background: rgba(5,15,27,.38);
}

.notification-item.danger {
  border-left: 3px solid var(--danger);
}

.notification-item.warning {
  border-left: 3px solid var(--warning);
}

.notification-item.info {
  border-left: 3px solid var(--accent);
}

.notification-item-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(54,194,255,.07);
  font-size:12px;
  font-weight: 900;
}

.notification-item.danger .notification-item-icon {
  color: #ff9da7;
  background: rgba(255,107,122,.08);
}

.notification-item.warning .notification-item-icon {
  color: #ffd071;
  background: rgba(247,187,77,.08);
}

.notification-item.info .notification-item-icon {
  color: #7bdcff;
}

.notification-item-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.notification-item-title {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.notification-item-title strong {
  font-size:12px;
}

.notification-item-title span {
  color: var(--muted);
  font-size:12px;
}

.notification-customer {
  color: #dde9f3;
  font-size:12px;
}

.notification-item-main small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.notification-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 6px;
}

.btn-whatsapp {
  border: 1px solid rgba(54,211,153,.26);
  background: rgba(54,211,153,.09);
  color: #75e6b8;
}

.btn-whatsapp:hover {
  border-color: rgba(54,211,153,.44);
  background: rgba(54,211,153,.14);
}

.notification-empty {
  display: grid;
  gap: 4px;
  padding: 28px 16px;
  border: 1px dashed rgba(61,106,147,.24);
  border-radius: 12px;
  text-align: center;
}

.notification-empty span {
  color: var(--muted);
  font-size:12px;
}

.notification-drawer-footer {
  padding: 13px 14px;
  border-top: 1px solid rgba(61,106,147,.18);
  background: rgba(5,15,27,.42);
}

@media (max-width: 780px) {
  .topbar-right {
    gap: 7px;
  }

  .notification-button {
    width: 36px;
    height: 36px;
  }

  .notification-drawer {
    width: 100vw;
  }

  .notification-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .notification-actions .btn {
    width: 100%;
  }

  .notification-actions .btn:last-child:nth-child(3) {
    grid-column: 1 / -1;
  }

  .smart-alert-actions {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .smart-alert-actions .btn:last-child:nth-child(4) {
    grid-column: 1 / -1;
  }
}


/* =========================================================
   AC AUTO PRO 1.13.0
   PRODUTOS + ORÇAMENTO DA OS + ESTOQUE
   ========================================================= */

.product-page-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.product-page-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.product-page-head p {
  margin: 0;
  max-width: 720px;
  color: var(--muted);
}

.product-money {
  font-size: 18px !important;
}

.product-toolbar {
  display: flex;
  gap: 8px;
}

.product-toolbar input {
  flex: 1;
  margin: 0;
}

.product-list {
  display: grid;
  gap: 8px;
}

.product-card {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 13px;
  background: rgba(5,15,27,.36);
}

.product-card-main {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.product-title-row {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.product-card-main > span {
  color: var(--muted);
  font-size:12px;
}

.product-values {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}

.product-values > div {
  display: grid;
  gap: 2px;
}

.product-values span {
  color: var(--muted);
  font-size:12px;
}

.product-values strong {
  font-size:12px;
}

.product-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.product-form label,
.os-item-form label {
  display: grid;
  gap: 7px;
}

.product-form input,
.product-form select,
.os-item-form input,
.os-item-form select {
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 12px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.98)
    );
  color: var(--text);
  outline: none;
}

.product-form select,
.os-item-form select {
  color-scheme: dark;
}

.product-form select option,
.os-item-form select option {
  background: #0b1a2b;
  color: #eef6ff;
}

.product-form input:focus,
.product-form select:focus,
.os-item-form input:focus,
.os-item-form select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.product-active-label {
  display: flex !important;
  flex-direction: row;
  align-items: center;
  gap: 8px !important;
}

.product-active-label input {
  width: auto;
}

.product-form-actions {
  margin-top: 14px;
  justify-content: flex-end;
}

.os-budget-head-actions,
.os-budget-stock-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.os-budget-list {
  display: grid;
  gap: 7px;
}

.os-budget-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.os-budget-item-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.os-budget-item-main > span,
.os-budget-item-main > small {
  color: var(--muted);
  font-size:12px;
}

.os-budget-item-value {
  display: grid;
  gap: 6px;
  justify-items: end;
}

.os-budget-item-value > strong {
  font-size: 13px;
}

.os-budget-footer {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(61,106,147,.18);
}

.os-budget-footer > div:first-child {
  display: grid;
  gap: 3px;
}

.os-budget-footer span {
  color: var(--muted);
  font-size:12px;
}

.os-budget-footer strong {
  font-size: 18px;
}

.os-item-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 120;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(2,8,15,.72);
}

.os-item-modal {
  width: min(620px, 100%);
  max-height: 92vh;
  overflow: auto;
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.995),
      rgba(7,18,31,.995)
    );
  box-shadow: 0 18px 55px rgba(0,0,0,.38);
}

.os-item-modal-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 14px;
}

.os-item-modal-head h3 {
  margin: 3px 0 0;
}

.os-item-form {
  display: grid;
  gap: 12px;
}

.os-item-numbers {
  grid-template-columns: repeat(3, minmax(0,1fr));
}

.os-item-preview {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 12px;
  background: rgba(54,194,255,.045);
}

.os-item-preview span {
  color: var(--muted);
  font-size:12px;
}

.os-item-preview strong {
  font-size: 15px;
}

@media (max-width: 780px) {
  .product-page-head,
  .product-card,
  .os-budget-item,
  .os-budget-footer {
    align-items: stretch;
    flex-direction: column;
  }

  .product-page-head .btn,
  .product-actions .btn {
    width: 100%;
  }

  .product-toolbar {
    flex-direction: column;
  }

  .product-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .product-values {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
  }

  .os-budget-head-actions,
  .os-budget-stock-actions {
    width: 100%;
  }

  .os-budget-head-actions .btn,
  .os-budget-stock-actions .btn {
    flex: 1;
  }

  .os-budget-item-value {
    justify-items: stretch;
  }

  .os-budget-item-value > strong {
    text-align: right;
  }

  .os-budget-item-value .os-list-actions {
    width: 100%;
  }

  .os-budget-item-value .os-list-actions .btn {
    flex: 1;
  }

  .os-item-numbers {
    grid-template-columns: 1fr;
  }

  .os-item-modal-overlay {
    padding: 8px;
  }

  .os-item-modal {
    border-radius: 14px;
  }
}


/* =========================================================
   AC AUTO PRO 1.13.1
   BUSCA DE PRODUTO NA OS + REPOSIÇÃO DE ESTOQUE
   ========================================================= */

.product-page-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.os-product-search-label {
  position: relative;
}

.os-product-search {
  position: relative;
}

.os-product-search input[type="search"] {
  padding-right: 38px;
}

.os-product-search input[type="search"]::-webkit-search-cancel-button {
  filter: invert(1);
  opacity: .55;
}

.os-product-search-help {
  margin-top: -2px;
  color: var(--muted);
  font-size:12px;
}

.os-product-results {
  position: absolute;
  z-index: 160;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  max-height: 320px;
  overflow-y: auto;
  padding: 5px;
  border: 1px solid rgba(88,140,196,.32);
  border-radius: 12px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.998),
      rgba(7,18,31,.998)
    );
  box-shadow: 0 18px 38px rgba(0,0,0,.36);
}

.os-product-result {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 0;
  border-bottom: 1px solid rgba(61,106,147,.13);
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.os-product-result:last-child {
  border-bottom: 0;
}

.os-product-result:hover,
.os-product-result:focus {
  outline: none;
  background: rgba(54,194,255,.075);
}

.os-product-result-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.os-product-result-main strong {
  font-size:12px;
}

.os-product-result-main span,
.os-product-result-meta span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.os-product-result-meta {
  display: grid;
  gap: 3px;
  justify-items: end;
  text-align: right;
}

.os-product-result-meta strong {
  color: #dceaf5;
  font-size:12px;
}

.os-product-result-empty {
  padding: 18px 12px;
  color: var(--muted);
  font-size:12px;
  text-align: center;
}

.restock-selected {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 12px;
  background: rgba(54,194,255,.045);
}

.restock-selected > div {
  display: grid;
  gap: 2px;
}

.restock-selected > div:last-child {
  justify-items: end;
  text-align: right;
}

.restock-selected span {
  color: var(--muted);
  font-size:12px;
}

.restock-selected strong {
  font-size:12px;
}

@media (max-width: 780px) {
  .product-page-actions {
    width: 100%;
  }

  .product-page-actions .btn {
    flex: 1;
  }

  .os-product-results {
    max-height: 280px;
  }

  .os-product-result {
    grid-template-columns: 1fr;
    gap: 5px;
  }

  .os-product-result-meta {
    justify-items: start;
    text-align: left;
  }

  .restock-selected {
    grid-template-columns: 1fr;
  }

  .restock-selected > div:last-child {
    justify-items: start;
    text-align: left;
  }
}


/* =========================================================
   AC AUTO PRO 1.14.0
   HISTÓRICO DE MOVIMENTAÇÕES DO ESTOQUE
   ========================================================= */

.stock-history-head {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.stock-history-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.stock-history-head p {
  margin: 0;
  color: var(--muted);
}

.stock-history-filters {
  display: grid;
  grid-template-columns:
    minmax(260px, 1fr)
    170px
    155px
    155px;
  gap: 9px;
}

.stock-history-filters label {
  display: grid;
  gap: 7px;
}

.stock-history-filters input,
.stock-history-filters select {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.stock-history-filters select {
  color-scheme: dark;
}

.stock-history-filters select option {
  background: #0b1a2b;
  color: #eef6ff;
}

.stock-history-filters input:focus,
.stock-history-filters select:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 3px rgba(54,194,255,.10);
}

.stock-product-filter {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-top: 10px;
  padding: 10px 11px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 11px;
  background: rgba(54,194,255,.045);
}

.stock-product-filter > div {
  display: grid;
  gap: 2px;
}

.stock-product-filter span {
  color: var(--muted);
  font-size:12px;
}

.stock-product-filter strong {
  font-size:12px;
}

.stock-history-filter-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  margin-top: 10px;
}

.stock-history-list {
  display: grid;
  gap: 8px;
}

.stock-history-item {
  display: grid;
  grid-template-columns: 40px minmax(0,1fr) auto;
  gap: 11px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 13px;
  background: rgba(5,15,27,.35);
}

.stock-movement-icon {
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  background: rgba(54,194,255,.07);
  color: #7bdcff;
  font-weight: 900;
}

.stock-movement-icon.in,
.stock-movement-icon.reversal {
  background: rgba(54,211,153,.08);
  color: #75e6b8;
}

.stock-movement-icon.out {
  background: rgba(247,187,77,.08);
  color: #ffd071;
}

.stock-movement-icon.adjustment {
  background: rgba(142,162,184,.08);
  color: #b8c9d9;
}

.stock-history-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.stock-history-title {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.stock-history-main > span,
.stock-history-main > small {
  color: var(--muted);
  font-size:12px;
}

.stock-history-order {
  margin-top: 2px;
  color: #b8c9d9;
  font-size:12px;
  line-height: 1.35;
}

.stock-history-values {
  display: grid;
  gap: 4px;
  justify-items: end;
  min-width: 145px;
}

.stock-history-values > span {
  color: var(--muted);
  font-size:12px;
}

.stock-qty {
  font-size: 12px;
}

.stock-qty.positive {
  color: #75e6b8;
}

.stock-qty.negative {
  color: #ffd071;
}

@media (max-width: 1050px) {
  .stock-history-filters {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 780px) {
  .stock-history-head {
    align-items: stretch;
    flex-direction: column;
  }

  .stock-history-head .btn {
    width: 100%;
  }

  .stock-history-metrics {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }

  .stock-history-filters {
    grid-template-columns: 1fr;
  }

  .stock-product-filter {
    align-items: stretch;
    flex-direction: column;
  }

  .stock-product-filter .btn {
    width: 100%;
  }

  .stock-history-filter-actions {
    flex-direction: column;
  }

  .stock-history-filter-actions .btn {
    width: 100%;
  }

  .stock-history-item {
    grid-template-columns: 36px minmax(0,1fr);
  }

  .stock-history-values {
    grid-column: 1 / -1;
    justify-items: stretch;
    padding-top: 7px;
    border-top: 1px solid rgba(61,106,147,.13);
  }

  .stock-history-values .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.14.1
   ALERTA DE ESTOQUE BAIXO
   ========================================================= */

@media (min-width: 1100px) {
  .smart-summary-grid {
    grid-template-columns: repeat(5, minmax(0,1fr));
  }
}

.smart-alert-actions [data-smart-restock],
.notification-actions [data-notify-restock] {
  white-space: nowrap;
}

@media (max-width: 780px) {
  .smart-alert-actions [data-smart-restock],
  .smart-alert-actions [data-smart-stock-history],
  .notification-actions [data-notify-restock],
  .notification-actions [data-notify-stock-history] {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.15.0
   FECHAMENTO DA OS + PAGAMENTOS
   ========================================================= */

.os-head-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
}

.os-payment-section {
  background:
    linear-gradient(
      180deg,
      rgba(12,27,45,.98),
      rgba(8,20,34,.98)
    );
}

.os-payment-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.os-payment-summary > div {
  display: grid;
  gap: 4px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.os-payment-summary span {
  color: var(--muted);
  font-size:12px;
}

.os-payment-summary strong {
  font-size: 15px;
}

.os-payment-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 11px;
}

.os-payment-list {
  display: grid;
  gap: 7px;
  margin-top: 12px;
}

.os-payment-item {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.os-payment-item.cancelled {
  opacity: .62;
}

.os-payment-item > div:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.os-payment-item > div:first-child > span,
.os-payment-item > div:first-child > small {
  color: var(--muted);
  font-size:12px;
}

.os-payment-item-value {
  display: grid;
  gap: 6px;
  justify-items: end;
}

.os-payment-item-value > strong {
  font-size: 13px;
}

.os-payment-modal-summary {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 7px;
  margin-bottom: 13px;
}

.os-payment-modal-summary > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.04);
}

.os-payment-modal-summary span {
  color: var(--muted);
  font-size:12px;
}

.os-payment-modal-summary strong {
  font-size:12px;
}

@media (max-width: 900px) {
  .os-head-actions {
    justify-content: stretch;
  }

  .os-head-actions .btn {
    flex: 1;
  }
}

@media (max-width: 780px) {
  .os-head-actions {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .os-head-actions .badge {
    grid-column: span 1;
  }

  .os-head-actions .btn {
    width: 100%;
  }

  .os-payment-summary,
  .os-payment-modal-summary {
    grid-template-columns: 1fr;
  }

  .os-payment-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .os-payment-actions .btn {
    width: 100%;
  }

  .os-payment-item {
    align-items: stretch;
    flex-direction: column;
  }

  .os-payment-item-value {
    justify-items: stretch;
    padding-top: 7px;
    border-top: 1px solid rgba(61,106,147,.13);
  }

  .os-payment-item-value > strong {
    text-align: right;
  }

  .os-payment-item-value .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.16.0
   GESTÃO FINANCEIRA
   ========================================================= */

.finance-page-head {
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.finance-page-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.finance-page-head p {
  margin: 0;
  color: var(--muted);
}

.finance-tabs {
  display: flex;
  gap: 6px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.finance-tab {
  flex: 0 0 auto;
  padding: 9px 12px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 10px;
  background: rgba(5,15,27,.34);
  color: var(--muted);
  cursor: pointer;
  font-size:12px;
  font-weight: 700;
}

.finance-tab:hover,
.finance-tab.active {
  border-color: rgba(54,194,255,.34);
  background: rgba(54,194,255,.08);
  color: #eaf7ff;
}

.finance-metrics .metric-value {
  font-size: 19px;
}

.finance-metric.income .metric-value,
.finance-flow-value.income,
.finance-period-summary .income strong {
  color: #75e6b8;
}

.finance-metric.expense .metric-value,
.finance-flow-value.expense,
.finance-period-summary .expense strong {
  color: #ff9da7;
}

.finance-metric.result .metric-value {
  color: #7bdcff;
}

.finance-attention-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.finance-attention-item {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 11px;
  background: rgba(5,15,27,.34);
}

.finance-attention-item.danger {
  border-left: 3px solid var(--danger);
}

.finance-attention-item.warning {
  border-left: 3px solid var(--warning);
}

.finance-attention-item > div {
  display: grid;
  gap: 2px;
}

.finance-attention-item > div:last-child {
  justify-items: end;
  text-align: right;
}

.finance-attention-item span {
  color: var(--muted);
  font-size:12px;
}

.finance-attention-item strong {
  font-size:12px;
}

.finance-flow-list {
  display: grid;
  gap: 7px;
}

.finance-flow-item {
  display: grid;
  grid-template-columns: 36px minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.finance-flow-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 10px;
  font-weight: 900;
}

.finance-flow-icon.income {
  background: rgba(54,211,153,.08);
  color: #75e6b8;
}

.finance-flow-icon.expense {
  background: rgba(255,107,122,.08);
  color: #ff9da7;
}

.finance-flow-main {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.finance-flow-main > span,
.finance-flow-main > small {
  color: var(--muted);
  font-size:12px;
}

.finance-flow-value {
  font-size: 12px;
  white-space: nowrap;
}

.finance-account-filters {
  display: grid;
  grid-template-columns: minmax(240px,1fr) 180px auto;
  gap: 8px;
}

.finance-account-filters input,
.finance-account-filters select,
.finance-flow-filters input,
.finance-flow-filters select {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.finance-account-filters select,
.finance-flow-filters select {
  color-scheme: dark;
}

.finance-account-filters select option,
.finance-flow-filters select option {
  background: #0b1a2b;
  color: #eef6ff;
}

.finance-account-list {
  display: grid;
  gap: 8px;
}

.finance-account-item {
  display: grid;
  grid-template-columns: minmax(0,1.3fr) minmax(270px,.8fr) auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.finance-account-item.overdue {
  border-left: 3px solid var(--danger);
}

.finance-account-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.finance-account-title {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px;
}

.finance-account-main > span,
.finance-account-main > small {
  color: var(--muted);
  font-size:12px;
}

.finance-account-values {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 6px;
}

.finance-account-values > div {
  display: grid;
  gap: 2px;
}

.finance-account-values span {
  color: var(--muted);
  font-size:12px;
}

.finance-account-values strong {
  font-size:12px;
}

.finance-account-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.finance-modal textarea {
  width: 100%;
  resize: vertical;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 12px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.98)
    );
  color: var(--text);
  outline: none;
}

.finance-form-grid {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

.finance-pay-summary {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  margin-bottom: 12px;
}

.finance-pay-summary > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.04);
}

.finance-pay-summary span {
  color: var(--muted);
  font-size:12px;
}

.finance-pay-summary strong {
  font-size:12px;
}

.finance-flow-filters {
  display: grid;
  grid-template-columns: 145px 145px 180px minmax(220px,1fr) auto;
  gap: 8px;
  align-items: end;
}

.finance-flow-filters label {
  display: grid;
  gap: 6px;
}

.finance-period-summary {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.finance-period-summary > div {
  display: grid;
  gap: 3px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 11px;
  background: rgba(5,15,27,.34);
}

.finance-period-summary span {
  color: var(--muted);
  font-size:12px;
}

.finance-period-summary strong {
  font-size: 15px;
}

.finance-report-breakdown h3,
.finance-category-group h3 {
  margin: 0 0 8px;
  font-size:12px;
}

.finance-breakdown-list,
.finance-category-list {
  display: grid;
  gap: 6px;
}

.finance-breakdown-list > div,
.finance-category-item {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.finance-breakdown-list span,
.finance-category-item span {
  color: var(--muted);
  font-size:12px;
}

.finance-breakdown-list strong {
  font-size:12px;
}

.finance-category-groups {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}

.finance-category-group {
  min-width: 0;
}

.finance-category-item > div:first-child {
  display: grid;
  gap: 2px;
}

.finance-category-actions {
  display: flex;
  gap: 5px;
  align-items: center;
  flex-wrap: wrap;
}

@media (max-width: 1050px) {
  .finance-account-item {
    grid-template-columns: minmax(0,1fr) minmax(240px,.8fr);
  }

  .finance-account-actions {
    grid-column: 1 / -1;
  }

  .finance-flow-filters {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .finance-flow-search {
    grid-column: span 2;
  }
}

@media (max-width: 780px) {
  .finance-tabs {
    margin-left: -2px;
    margin-right: -2px;
  }

  .finance-metrics {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }

  .finance-account-filters,
  .finance-flow-filters,
  .finance-form-grid,
  .finance-pay-summary,
  .finance-period-summary,
  .finance-category-groups {
    grid-template-columns: 1fr;
  }

  .finance-flow-search {
    grid-column: auto;
  }

  .finance-account-item {
    grid-template-columns: 1fr;
  }

  .finance-account-values {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .finance-account-actions {
    grid-column: auto;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .finance-account-actions .btn {
    width: 100%;
  }

  .finance-flow-item {
    grid-template-columns: 34px minmax(0,1fr);
  }

  .finance-flow-value {
    grid-column: 1 / -1;
    text-align: right;
    padding-top: 5px;
    border-top: 1px solid rgba(61,106,147,.12);
  }

  .finance-attention-item,
  .finance-category-item {
    align-items: stretch;
    flex-direction: column;
  }

  .finance-attention-item > div:last-child {
    justify-items: start;
    text-align: left;
  }

  .finance-category-actions {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .finance-category-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.17.0
   FINANCEIRO AVANÇADO
   ========================================================= */

.finance-form-grid {
  grid-template-columns: repeat(4, minmax(0,1fr));
}

.finance-form-grid.editing {
  grid-template-columns: repeat(3, minmax(0,1fr));
}

.finance-field-help {
  margin-top: -3px;
  color: var(--muted);
  font-size:12px;
}

.finance-supplier-search {
  position: relative;
}

.finance-supplier-results {
  position: absolute;
  z-index: 170;
  left: 0;
  right: 0;
  top: calc(100% + 6px);
  max-height: 300px;
  overflow-y: auto;
  padding: 5px;
  border: 1px solid rgba(88,140,196,.32);
  border-radius: 12px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.998),
      rgba(7,18,31,.998)
    );
  box-shadow: 0 18px 38px rgba(0,0,0,.36);
}

.finance-supplier-result {
  width: 100%;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 0;
  border-bottom: 1px solid rgba(61,106,147,.13);
  border-radius: 8px;
  background: transparent;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.finance-supplier-result:last-child {
  border-bottom: 0;
}

.finance-supplier-result:hover,
.finance-supplier-result:focus {
  outline: none;
  background: rgba(54,194,255,.075);
}

.finance-supplier-result strong {
  font-size:12px;
}

.finance-supplier-result span,
.finance-supplier-empty {
  color: var(--muted);
  font-size:12px;
}

.finance-supplier-empty {
  padding: 16px 10px;
  text-align: center;
}

.finance-recurring-note {
  padding: 10px 11px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.04);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.finance-recurrence-list {
  display: grid;
  gap: 8px;
}

.finance-recurrence-item {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.finance-recurrence-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.finance-recurrence-main > span,
.finance-recurrence-main > small {
  color: var(--muted);
  font-size:12px;
}

.finance-recurrence-value {
  display: grid;
  gap: 2px;
  justify-items: end;
  text-align: right;
}

.finance-recurrence-value strong {
  font-size: 12px;
}

.finance-recurrence-value span {
  color: var(--muted);
  font-size:12px;
}

.finance-recurrence-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

/* O painel passa a ter seis indicadores em telas largas. */
@media (min-width: 1200px) {
  .smart-summary-grid {
    grid-template-columns: repeat(6, minmax(0,1fr));
  }
}

@media (max-width: 1050px) {
  .finance-form-grid,
  .finance-form-grid.editing {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }

  .finance-recurrence-item {
    grid-template-columns: minmax(0,1fr) auto;
  }

  .finance-recurrence-actions {
    grid-column: 1 / -1;
  }
}

@media (max-width: 780px) {
  .finance-form-grid,
  .finance-form-grid.editing {
    grid-template-columns: 1fr;
  }

  .finance-recurrence-item {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .finance-recurrence-value {
    justify-items: start;
    text-align: left;
  }

  .finance-recurrence-actions {
    grid-column: auto;
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .finance-recurrence-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.18.0
   CMV + CUSTO MÉDIO + MARGEM
   ========================================================= */

.product-cost-help {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.stock-restock-cost-grid {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.stock-cost-preview {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.04);
}

.stock-cost-preview span {
  color: var(--muted);
  font-size:12px;
}

.stock-cost-preview strong {
  font-size:12px;
}

.restock-selected {
  grid-template-columns: repeat(3,minmax(0,1fr));
}

.stock-cost-line {
  color: #92afc4;
  font-size:12px;
  text-align: right;
}

.finance-cmv-quick .metric-value {
  font-size: 16px;
}

.finance-cmv-warning {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 10px 11px;
  border: 1px solid rgba(246,181,68,.24);
  border-radius: 11px;
  background: rgba(246,181,68,.055);
  color: #dfc38d;
  font-size:12px;
  line-height: 1.4;
}

.finance-cmv-filters {
  display: grid;
  grid-template-columns: 160px 160px auto;
  gap: 8px;
  align-items: end;
}

.finance-cmv-filters label {
  display: grid;
  gap: 6px;
}

.finance-cmv-filters input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.finance-cmv-summary {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.finance-cmv-summary > div {
  display: grid;
  gap: 4px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 11px;
  background: rgba(5,15,27,.34);
}

.finance-cmv-summary span {
  color: var(--muted);
  font-size:12px;
}

.finance-cmv-summary strong {
  font-size: 14px;
}

.finance-cmv-summary .income strong {
  color: #75e6b8;
}

.finance-cmv-summary .expense strong {
  color: #ff9da7;
}

.finance-cmv-info {
  display: flex;
  gap: 10px;
  align-items: center;
  padding: 10px 11px;
  border: 1px solid rgba(54,194,255,.14);
  border-radius: 11px;
  background: rgba(54,194,255,.035);
}

.finance-cmv-info strong {
  white-space: nowrap;
  font-size:12px;
}

.finance-cmv-info span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.finance-cmv-incomplete {
  padding: 11px;
  border: 1px solid rgba(246,181,68,.22);
  border-radius: 11px;
  background: rgba(246,181,68,.045);
}

.finance-cmv-incomplete > div {
  display: grid;
  gap: 3px;
}

.finance-cmv-incomplete > div span {
  color: var(--muted);
  font-size:12px;
}

.finance-cmv-incomplete details {
  margin-top: 9px;
}

.finance-cmv-incomplete summary {
  cursor: pointer;
  font-size:12px;
  font-weight: 700;
}

.finance-cmv-excluded-list {
  display: grid;
  gap: 5px;
  margin-top: 7px;
}

.finance-cmv-excluded-item {
  display: grid;
  gap: 2px;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 9px;
  background: rgba(5,15,27,.28);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.finance-cmv-excluded-item small {
  color: var(--muted);
}

.finance-cmv-order-list {
  display: grid;
  gap: 8px;
}

.finance-cmv-order {
  display: grid;
  grid-template-columns:
    minmax(0,1.2fr)
    minmax(360px,.9fr)
    auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.finance-cmv-order-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.finance-cmv-order-main > span,
.finance-cmv-order-main > small {
  color: var(--muted);
  font-size:12px;
}

.finance-cmv-order-values {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.finance-cmv-order-values > div {
  display: grid;
  gap: 2px;
}

.finance-cmv-order-values span {
  color: var(--muted);
  font-size:12px;
}

.finance-cmv-order-values strong {
  font-size:12px;
}

.finance-cmv-product-list {
  display: grid;
  gap: 6px;
}

.finance-cmv-product {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.finance-cmv-product > div {
  display: grid;
  gap: 2px;
}

.finance-cmv-product > div:last-child {
  justify-items: end;
  text-align: right;
}

.finance-cmv-product span {
  color: var(--muted);
  font-size:12px;
}

.finance-cmv-product strong {
  font-size:12px;
}

@media (max-width: 1050px) {
  .restock-selected {
    grid-template-columns: 1fr 1fr;
  }

  .finance-cmv-order {
    grid-template-columns: minmax(0,1fr) minmax(320px,.9fr);
  }

  .finance-cmv-order > .btn {
    grid-column: 1 / -1;
  }
}

@media (max-width: 780px) {
  .stock-restock-cost-grid,
  .finance-cmv-filters,
  .finance-cmv-summary {
    grid-template-columns: 1fr;
  }

  .restock-selected {
    grid-template-columns: 1fr;
  }

  .finance-cmv-warning,
  .finance-cmv-info,
  .finance-cmv-product {
    align-items: stretch;
    flex-direction: column;
  }

  .finance-cmv-warning .btn {
    width: 100%;
  }

  .finance-cmv-order {
    grid-template-columns: 1fr;
    align-items: stretch;
  }

  .finance-cmv-order-values {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .finance-cmv-order > .btn {
    grid-column: auto;
    width: 100%;
  }

  .finance-cmv-product > div:last-child {
    justify-items: start;
    text-align: left;
    padding-top: 5px;
    border-top: 1px solid rgba(61,106,147,.12);
  }
}


/* =========================================================
   AC AUTO PRO 1.18.1
   CMV POR PRODUTO + SIMULADOR
   ========================================================= */

.product-cmv-page-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.product-cmv-page-head h2 {
  margin: 3px 0 6px;
  font-size: 24px;
}

.product-cmv-page-head p {
  margin: 0;
  color: var(--muted);
}

.product-cmv-summary {
  grid-template-columns:
    repeat(6,minmax(0,1fr));
}

.product-cmv-positive {
  color: #75e6b8;
}

.product-cmv-negative {
  color: #ff9da7;
}

.product-cmv-toolbar {
  display: grid;
  grid-template-columns:
    145px
    145px
    minmax(240px,1fr)
    190px
    auto;
  gap: 8px;
  align-items: end;
}

.product-cmv-toolbar label {
  display: grid;
  gap: 6px;
}

.product-cmv-toolbar input,
.product-cmv-toolbar select,
.product-cmv-fields input,
.product-cmv-fields select {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.product-cmv-toolbar select,
.product-cmv-fields select {
  color-scheme: dark;
}

.product-cmv-toolbar option,
.product-cmv-fields option {
  background: #0b1a2b;
  color: #eef6ff;
}

.product-cmv-list {
  display: grid;
  gap: 8px;
}

.product-cmv-card {
  display: grid;
  grid-template-columns:
    minmax(0,1.15fr)
    minmax(500px,1.1fr)
    auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.34);
}

.product-cmv-card-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.product-cmv-card-main > span,
.product-cmv-card-main > small {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-card-values {
  display: grid;
  grid-template-columns:
    repeat(6,minmax(0,1fr));
  gap: 7px;
}

.product-cmv-card-values > div {
  display: grid;
  gap: 2px;
}

.product-cmv-card-values span {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-card-values strong {
  font-size:12px;
}

.product-cmv-overlay {
  padding: 18px;
  overflow-y: auto;
}

.product-cmv-workspace {
  width: min(1320px, 96vw);
  max-height: calc(100vh - 36px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.995),
      rgba(6,17,30,.998)
    );
  box-shadow:
    0 24px 70px rgba(0,0,0,.52);
}

.product-cmv-workspace-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: start;
}

.product-cmv-workspace-head h2 {
  margin: 3px 0 4px;
  font-size: 22px;
}

.product-cmv-workspace-head p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
}

.product-cmv-current {
  display: grid;
  grid-template-columns:
    repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}

.product-cmv-current > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 11px;
  background: rgba(5,15,27,.32);
}

.product-cmv-current span {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-current strong {
  font-size:12px;
}

.product-cmv-workspace-tabs {
  display: flex;
  gap: 6px;
  margin-top: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(61,106,147,.16);
}

.product-cmv-tab {
  padding: 8px 12px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 9px;
  background: rgba(5,15,27,.28);
  color: var(--muted);
  cursor: pointer;
  font-size:12px;
  font-weight: 700;
}

.product-cmv-tab.active {
  border-color: rgba(54,194,255,.36);
  background: rgba(54,194,255,.08);
  color: #e9f8ff;
}

.product-cmv-tab-content {
  margin-top: 12px;
}

.product-cmv-simulator-grid {
  display: grid;
  grid-template-columns:
    minmax(0,1.15fr)
    minmax(360px,.75fr);
  gap: 12px;
  align-items: start;
}

.product-cmv-fields {
  display: grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap: 8px;
}

.product-cmv-fields label {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.input-with-suffix {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  align-items: stretch;
}

.input-with-suffix input {
  border-radius: 11px 0 0 11px;
}

.input-with-suffix span {
  min-width: 34px;
  display: grid;
  place-items: center;
  padding: 0 8px;
  border: 1px solid rgba(88,140,196,.30);
  border-left: 0;
  border-radius: 0 11px 11px 0;
  background: rgba(54,194,255,.055);
  color: var(--muted);
  font-size:12px;
  font-weight: 700;
}

.product-cmv-tax-note {
  color: #9bb2c5;
  font-size:12px;
  line-height: 1.35;
}

.product-cmv-result-panel {
  position: sticky;
  top: 0;
}

.product-cmv-result {
  display: grid;
  gap: 10px;
  margin-top: 10px;
}

.product-cmv-main-result {
  display: grid;
  gap: 4px;
  padding: 14px;
  border-radius: 13px;
  background: rgba(54,194,255,.045);
  border: 1px solid rgba(54,194,255,.16);
}

.product-cmv-main-result.positive strong,
.product-cmv-ideal-price .positive {
  color: #75e6b8;
}

.product-cmv-main-result.negative strong,
.product-cmv-ideal-price .negative {
  color: #ff9da7;
}

.product-cmv-main-result span,
.product-cmv-main-result small {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-main-result strong {
  font-size: 24px;
}

.product-cmv-result-grid {
  display: grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap: 7px;
}

.product-cmv-result-grid > div {
  display: grid;
  gap: 2px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.26);
}

.product-cmv-result-grid span,
.product-cmv-result-grid small {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-result-grid strong {
  font-size:12px;
}

.product-cmv-ideal-price {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 11px;
  background: rgba(246,181,68,.045);
}

.product-cmv-ideal-price span,
.product-cmv-ideal-price small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.product-cmv-ideal-price > strong {
  font-size: 18px;
}

.product-cmv-comparison {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.product-cmv-comparison-card {
  display: grid;
  grid-template-columns:
    minmax(180px,1fr)
    repeat(3,minmax(100px,.55fr));
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.product-cmv-comparison-card > div {
  display: grid;
  gap: 2px;
}

.product-cmv-comparison-card span {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-comparison-card strong {
  font-size:12px;
}

.product-cmv-history-warning,
.product-cmv-profile-note {
  padding: 10px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 10px;
  background: rgba(246,181,68,.045);
  color: #d7bc89;
  font-size:12px;
  line-height: 1.4;
}

.product-cmv-history-list {
  display: grid;
  gap: 7px;
}

.product-cmv-history-row {
  display: grid;
  grid-template-columns:
    minmax(0,1fr)
    minmax(480px,1fr)
    auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.product-cmv-history-row > div:first-child {
  display: grid;
  gap: 2px;
}

.product-cmv-history-row span,
.product-cmv-history-row small {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-history-values {
  display: grid;
  grid-template-columns:
    repeat(5,minmax(0,1fr));
  gap: 7px;
}

.product-cmv-history-values strong {
  color: #75e6b8;
  font-size:12px;
}

.product-cmv-profile-modal {
  width: min(760px, 94vw);
}

.product-cmv-profile-list {
  display: grid;
  gap: 7px;
}

.product-cmv-profile-card {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.product-cmv-profile-card > div:first-child {
  display: grid;
  gap: 2px;
}

.product-cmv-profile-card > div:last-child {
  display: flex;
  gap: 5px;
  align-items: center;
  flex-wrap: wrap;
}

.product-cmv-profile-card span {
  color: var(--muted);
  font-size:12px;
}

.product-cmv-editor-layer {
  z-index: 2500;
}

@media (max-width: 1180px) {
  .product-cmv-summary {
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

  .product-cmv-card {
    grid-template-columns: 1fr;
  }

  .product-cmv-card-values {
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

  .product-cmv-card > .btn {
    width: 100%;
  }

  .product-cmv-history-row {
    grid-template-columns: 1fr;
  }

  .product-cmv-history-values {
    grid-template-columns:
      repeat(5,minmax(0,1fr));
  }
}

@media (max-width: 900px) {
  .product-cmv-toolbar {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .product-cmv-search {
    grid-column: span 2;
  }

  .product-cmv-simulator-grid {
    grid-template-columns: 1fr;
  }

  .product-cmv-result-panel {
    position: static;
  }

  .product-cmv-comparison-card {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .product-cmv-page-head,
  .product-cmv-profile-card {
    align-items: stretch;
    flex-direction: column;
  }

  .product-cmv-page-head .btn {
    width: 100%;
  }

  .product-cmv-summary,
  .product-cmv-toolbar,
  .product-cmv-current,
  .product-cmv-fields,
  .product-cmv-result-grid,
  .product-cmv-comparison-card {
    grid-template-columns: 1fr;
  }

  .product-cmv-search {
    grid-column: auto;
  }

  .product-cmv-card-values {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .product-cmv-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .product-cmv-overlay {
    padding: 6px;
  }

  .product-cmv-history-values {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .product-cmv-profile-card > div:last-child {
    display: grid;
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .product-cmv-profile-card .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.19.0
   FISCAL / REFORMA TRIBUTÁRIA
   ========================================================= */

.fiscal-hero {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  align-items: center;
  padding: 20px;
  border: 1px solid rgba(61,106,147,.20);
  border-radius: 18px;
  background:
    radial-gradient(
      circle at 85% 15%,
      rgba(54,194,255,.09),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      rgba(14,30,49,.97),
      rgba(8,21,36,.99)
    );
}

.fiscal-hero h2 {
  margin: 3px 0 5px;
  font-size: 24px;
}

.fiscal-hero p {
  margin: 0;
  color: var(--muted);
  line-height: 1.45;
}

.fiscal-hero-badge {
  min-width: 150px;
  display: grid;
  gap: 3px;
  padding: 10px 12px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 11px;
  background: rgba(54,194,255,.045);
  text-align: right;
}

.fiscal-hero-badge span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-hero-badge strong {
  font-size:12px;
}

.fiscal-tabs {
  margin-top: 10px;
}

.fiscal-dashboard-metrics {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.fiscal-config-summary {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.fiscal-config-summary > div,
.fiscal-reference-rate > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.fiscal-config-summary span,
.fiscal-reference-rate span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-config-summary strong,
.fiscal-reference-rate strong {
  font-size:12px;
}

.fiscal-reference-rate {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.fiscal-reference-note {
  display: grid;
  gap: 3px;
  margin-top: 8px;
  padding: 10px;
  border: 1px solid rgba(246,181,68,.18);
  border-radius: 10px;
  background: rgba(246,181,68,.045);
}

.fiscal-reference-note span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.fiscal-official-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
}

.fiscal-official-grid article {
  min-width: 0;
  display: grid;
  gap: 5px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.30);
}

.fiscal-official-grid article > span {
  color: #6ecfff;
  font-size:12px;
  font-weight: 800;
  letter-spacing: .08em;
}

.fiscal-official-grid article > strong {
  font-size:12px;
}

.fiscal-official-grid article > p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.fiscal-source-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.fiscal-preview-recent {
  display: grid;
  gap: 7px;
}

.fiscal-preview-recent article {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.fiscal-preview-recent article > div {
  display: grid;
  gap: 2px;
}

.fiscal-preview-recent span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-warning-box {
  padding: 10px 11px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 11px;
  background: rgba(246,181,68,.045);
  color: #dbc18d;
  font-size:12px;
  line-height: 1.45;
}

.fiscal-settings-form {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.fiscal-settings-form label {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.fiscal-settings-form input,
.fiscal-settings-form select,
.fiscal-settings-form textarea,
.fiscal-product-toolbar input,
.fiscal-product-toolbar select,
.fiscal-order-toolbar input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.fiscal-settings-form select,
.fiscal-product-toolbar select {
  color-scheme: dark;
}

.fiscal-settings-form option,
.fiscal-product-toolbar option {
  background: #0b1a2b;
  color: #eef6ff;
}

.fiscal-settings-notes {
  grid-column: 1 / -1;
}

.fiscal-simples-callout {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.04);
}

.fiscal-simples-callout > div {
  display: grid;
  gap: 3px;
}

.fiscal-simples-callout p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.fiscal-rule-explain {
  display: flex;
  gap: 8px;
  align-items: baseline;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.14);
  border-radius: 10px;
  background: rgba(54,194,255,.035);
}

.fiscal-rule-explain span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-rule-list {
  display: grid;
  gap: 8px;
}

.fiscal-rule-card {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(420px,.9fr) auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.32);
}

.fiscal-rule-card.reference {
  border-color: rgba(54,194,255,.24);
  background:
    linear-gradient(
      90deg,
      rgba(54,194,255,.04),
      rgba(5,15,27,.32)
    );
}

.fiscal-rule-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.fiscal-rule-main > div {
  display: flex;
  gap: 5px;
  align-items: center;
  flex-wrap: wrap;
}

.fiscal-rule-main > span,
.fiscal-rule-main > small {
  color: var(--muted);
  font-size:12px;
}

.fiscal-rule-rates {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 6px;
}

.fiscal-rule-rates > div {
  display: grid;
  gap: 2px;
}

.fiscal-rule-rates span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-rule-rates strong {
  font-size:12px;
}

.fiscal-rule-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.fiscal-rule-modal {
  width: min(860px, 94vw);
}

.fiscal-rule-rate-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.fiscal-field-help {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.fiscal-product-toolbar {
  display: grid;
  grid-template-columns: minmax(260px,1fr) 220px auto;
  gap: 8px;
  align-items: end;
}

.fiscal-product-toolbar label {
  display: grid;
  gap: 6px;
}

.fiscal-product-list {
  display: grid;
  gap: 7px;
}

.fiscal-product-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(480px,.9fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.29);
}

.fiscal-product-card > div:first-child {
  display: grid;
  gap: 3px;
}

.fiscal-product-card > div:first-child > span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-product-fields-mini {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.fiscal-product-fields-mini > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.fiscal-product-fields-mini span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-product-fields-mini strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size:12px;
}

.fiscal-product-modal {
  width: min(760px, 94vw);
}

.fiscal-product-readiness {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
  margin-top: 10px;
}

.fiscal-product-readiness > div {
  display: grid;
  gap: 2px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 9px;
  background: rgba(5,15,27,.27);
}

.fiscal-product-readiness span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-product-readiness strong {
  font-size:12px;
}

.fiscal-inherited-rule {
  padding: 9px 10px;
  border: 1px solid rgba(54,194,255,.15);
  border-radius: 9px;
  background: rgba(54,194,255,.035);
  color: var(--muted);
  font-size:12px;
}

.fiscal-product-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.fiscal-order-toolbar {
  display: grid;
  grid-template-columns: minmax(260px,1fr) auto;
  gap: 8px;
}

.fiscal-order-list {
  display: grid;
  gap: 7px;
}

.fiscal-order-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.65fr) auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.29);
}

.fiscal-order-card > div:first-child {
  display: grid;
  gap: 2px;
}

.fiscal-order-card > div:first-child > span,
.fiscal-order-card > div:first-child > small {
  color: var(--muted);
  font-size:12px;
}

.fiscal-order-meta {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
}

.fiscal-order-meta > div {
  display: grid;
  gap: 2px;
}

.fiscal-order-meta span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-order-meta strong {
  font-size:12px;
}

.fiscal-preview-overlay {
  padding: 14px;
  overflow-y: auto;
}

.fiscal-preview-workspace {
  width: min(1360px, 97vw);
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.995),
      rgba(6,17,30,.998)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.52);
}

.fiscal-preview-summary {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}

.fiscal-preview-summary > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.fiscal-preview-summary > div.total {
  border-color: rgba(54,194,255,.22);
  background: rgba(54,194,255,.045);
}

.fiscal-preview-summary span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-preview-summary strong {
  font-size:12px;
}

.fiscal-preview-warning,
.fiscal-preview-ready {
  display: grid;
  gap: 4px;
  padding: 10px;
  border-radius: 10px;
  font-size:12px;
  line-height: 1.4;
}

.fiscal-preview-warning {
  border: 1px solid rgba(246,181,68,.22);
  background: rgba(246,181,68,.045);
  color: #ddc18c;
}

.fiscal-preview-ready {
  border: 1px solid rgba(69,210,151,.20);
  background: rgba(69,210,151,.04);
  color: #9cdcbc;
}

.fiscal-preview-warning span,
.fiscal-preview-ready span {
  color: var(--muted);
}

.fiscal-preview-warning ul {
  margin: 5px 0 0;
  padding-left: 18px;
}

.fiscal-preview-item-list {
  display: grid;
  gap: 7px;
}

.fiscal-preview-item {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(430px,.9fr);
  gap: 12px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.fiscal-preview-item.pending {
  border-color: rgba(246,181,68,.22);
}

.fiscal-preview-item-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.fiscal-preview-item-main > div:first-child {
  display: flex;
  align-items: center;
  gap: 5px;
  flex-wrap: wrap;
}

.fiscal-preview-item-main > span,
.fiscal-preview-item-main > small {
  color: var(--muted);
  font-size:12px;
}

.fiscal-item-warnings {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 3px;
}

.fiscal-item-warnings span {
  padding: 3px 6px;
  border-radius: 999px;
  background: rgba(246,181,68,.08);
  color: #ddc18c;
  font-size:12px;
}

.fiscal-preview-item-rates {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.fiscal-preview-item-rates > div {
  display: grid;
  gap: 2px;
}

.fiscal-preview-item-rates span,
.fiscal-preview-item-rates small {
  color: var(--muted);
  font-size:12px;
}

.fiscal-preview-item-rates strong {
  display: grid;
  gap: 2px;
  font-size:12px;
}

.fiscal-preview-footer {
  display: grid;
  grid-template-columns: 170px minmax(260px,1fr) auto;
  gap: 8px;
  align-items: end;
  margin-top: 10px;
}

.fiscal-preview-footer label {
  display: grid;
  gap: 5px;
}

.fiscal-preview-footer input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.fiscal-legal-note {
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.product-cmv-use-fiscal {
  justify-self: start;
  margin-top: 5px;
}

@media (max-width: 1180px) {
  .fiscal-official-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fiscal-rule-card,
  .fiscal-product-card,
  .fiscal-order-card {
    grid-template-columns: 1fr;
  }

  .fiscal-rule-actions {
    justify-content: flex-start;
  }

  .fiscal-rule-rates {
    grid-template-columns: repeat(5,minmax(0,1fr));
  }

  .fiscal-preview-item {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 900px) {
  .fiscal-dashboard-metrics {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fiscal-settings-form,
  .fiscal-rule-rate-grid {
    grid-template-columns: 1fr;
  }

  .fiscal-settings-notes {
    grid-column: auto;
  }

  .fiscal-product-toolbar {
    grid-template-columns: 1fr 1fr;
  }

  .fiscal-product-toolbar > button {
    grid-column: 1 / -1;
  }

  .fiscal-preview-summary {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .fiscal-preview-footer {
    grid-template-columns: 1fr 1fr;
  }

  .fiscal-preview-footer > button {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .fiscal-hero,
  .fiscal-rule-explain,
  .fiscal-product-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .fiscal-hero-badge {
    text-align: left;
  }

  .fiscal-dashboard-metrics,
  .fiscal-config-summary,
  .fiscal-reference-rate,
  .fiscal-official-grid,
  .fiscal-product-toolbar,
  .fiscal-product-readiness,
  .fiscal-order-meta,
  .fiscal-preview-summary,
  .fiscal-preview-footer {
    grid-template-columns: 1fr;
  }

  .fiscal-rule-rates {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fiscal-product-fields-mini {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fiscal-preview-recent article {
    grid-template-columns: 1fr;
  }

  .fiscal-preview-item-rates {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .fiscal-preview-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .fiscal-preview-overlay {
    padding: 6px;
  }

  .fiscal-product-actions .btn,
  .fiscal-order-card > .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.19.1
   NBS OFICIAL SELECIONÁVEL
   ========================================================= */

.fiscal-inline-reference {
  justify-self: start;
  margin-top: 4px;
}

.fiscal-nbs-setting {
  min-width: 0;
}

.fiscal-nbs-selected {
  width: 100%;
  min-height: 76px;
  display: grid;
  gap: 4px;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.20);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(11,31,50,.96),
      rgba(7,22,37,.98)
    );
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.fiscal-nbs-selected:hover {
  border-color: rgba(54,194,255,.40);
  background:
    linear-gradient(
      180deg,
      rgba(13,37,59,.98),
      rgba(7,24,41,.99)
    );
}

.fiscal-nbs-selected > span {
  color: #6ed0ff;
  font-size:12px;
  font-weight: 800;
  letter-spacing: .04em;
}

.fiscal-nbs-selected > strong {
  font-size:12px;
  line-height: 1.35;
}

.fiscal-nbs-selected > small {
  color: var(--muted);
  font-size:12px;
}

.fiscal-nbs-overlay {
  z-index: 2400;
}

.fiscal-nbs-modal {
  width: min(920px, 95vw);
  max-height: min(760px, 92vh);
  overflow: hidden;
}

.fiscal-nbs-source {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.15);
  border-radius: 10px;
  background: rgba(54,194,255,.035);
}

.fiscal-nbs-source > div {
  display: grid;
  gap: 2px;
}

.fiscal-nbs-source strong {
  font-size:12px;
}

.fiscal-nbs-source span {
  color: var(--muted);
  font-size:12px;
}

.fiscal-nbs-search {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
}

.fiscal-nbs-search input {
  width: 100%;
  margin: 0;
  padding: 11px 12px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.fiscal-nbs-results {
  max-height: 490px;
  overflow-y: auto;
  display: grid;
  gap: 6px;
  padding-right: 3px;
}

.fiscal-nbs-result {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  width: 100%;
  padding: 10px 11px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.30);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.fiscal-nbs-result:hover {
  border-color: rgba(54,194,255,.34);
  background: rgba(54,194,255,.05);
}

.fiscal-nbs-result > span {
  color: #6ed0ff;
  font-size:12px;
  font-weight: 800;
}

.fiscal-nbs-result > strong {
  min-width: 0;
  font-size:12px;
  line-height: 1.35;
}

.fiscal-nbs-result > small {
  color: var(--muted);
  font-size:12px;
  white-space: nowrap;
}

@media (max-width: 680px) {
  .fiscal-nbs-source,
  .fiscal-nbs-result {
    align-items: stretch;
    grid-template-columns: 1fr;
  }

  .fiscal-nbs-source {
    flex-direction: column;
  }

  .fiscal-nbs-source .btn {
    width: 100%;
  }

  .fiscal-nbs-search {
    grid-template-columns: 1fr;
  }

  .fiscal-nbs-search .btn {
    width: 100%;
  }

  .fiscal-nbs-result {
    gap: 4px;
  }

  .fiscal-nbs-result > small {
    white-space: normal;
  }
}


/* =========================================================
   AC AUTO PRO 1.19.2
   CATÁLOGOS FISCAIS OFICIAIS / AUTO SYNC
   ========================================================= */

.fiscal-catalog-status-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.fiscal-catalog-status-card {
  display: grid;
  grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr);
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(69,210,151,.16);
  border-radius: 11px;
  background: rgba(69,210,151,.035);
}

.fiscal-catalog-status-card.error {
  border-color: rgba(255,107,122,.22);
  background: rgba(255,107,122,.04);
}

.fiscal-catalog-status-main,
.fiscal-catalog-status-meta {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.fiscal-catalog-status-main > span,
.fiscal-catalog-status-meta > span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.fiscal-catalog-status-main > strong {
  font-size: 14px;
}

.fiscal-catalog-status-meta > span.ok {
  color: #75e6b8;
}

.fiscal-catalog-status-meta > span.error {
  color: #ff9da7;
}

.fiscal-catalog-auto-note {
  margin-top: 9px;
  padding: 9px 10px;
  border: 1px solid rgba(54,194,255,.14);
  border-radius: 9px;
  background: rgba(54,194,255,.03);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.fiscal-catalog-auto-note strong {
  color: var(--text);
}

@media (max-width: 780px) {
  .fiscal-catalog-status-grid {
    grid-template-columns: 1fr;
  }

  .fiscal-catalog-status-card {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.20.0
   COMPRAS & FORNECEDORES
   ========================================================= */

.purchase-page-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(14,30,49,.96),
      rgba(9,22,38,.98)
    );
}

.purchase-page-head h2 {
  margin: 3px 0 5px;
  font-size: 24px;
}

.purchase-page-head p {
  margin: 0;
  color: var(--muted);
}

.purchase-filter-grid {
  display: grid;
  grid-template-columns:
    150px 145px 145px minmax(260px,1fr) auto;
  gap: 8px;
  align-items: end;
}

.purchase-filter-grid label,
.supplier-filter-grid label,
.purchase-form-grid label,
.purchase-cost-grid label {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.purchase-filter-grid input,
.purchase-filter-grid select,
.supplier-filter-grid input,
.supplier-filter-grid select,
.purchase-form-grid input,
.purchase-form-grid select,
.purchase-cost-grid input,
.purchase-workspace textarea,
.purchase-item-row input,
.purchase-item-row select {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.purchase-filter-grid select,
.supplier-filter-grid select,
.purchase-form-grid select,
.purchase-item-row select {
  color-scheme: dark;
}

.purchase-filter-grid option,
.supplier-filter-grid option,
.purchase-form-grid option,
.purchase-item-row option {
  background: #0b1a2b;
  color: #eef6ff;
}

.purchase-list,
.supplier-list {
  display: grid;
  gap: 8px;
}

.purchase-card {
  display: grid;
  grid-template-columns:
    minmax(0,1fr)
    minmax(520px,1.15fr)
    auto;
  gap: 12px;
  align-items: center;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.32);
}

.purchase-card-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-card-main > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.purchase-card-main > span,
.purchase-card-main > small {
  color: var(--muted);
  font-size:12px;
}

.purchase-card-values {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 7px;
}

.purchase-card-values > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.purchase-card-values span {
  color: var(--muted);
  font-size:12px;
}

.purchase-card-values strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size:12px;
}

.purchase-card-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.purchase-overlay {
  padding: 14px;
  overflow-y: auto;
}

.purchase-workspace {
  width: min(1380px, 97vw);
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.995),
      rgba(6,17,30,.998)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.52);
}

.purchase-head-actions {
  display: flex;
  gap: 7px;
  align-items: center;
}

.purchase-form-grid {
  display: grid;
  grid-template-columns:
    minmax(260px,1.2fr)
    auto
    minmax(180px,.8fr)
    150px
    150px
    minmax(190px,.8fr);
  gap: 8px;
  align-items: end;
}

.purchase-quick-supplier {
  display: grid;
  gap: 5px;
  align-content: end;
}

.purchase-quick-supplier span {
  color: var(--muted);
  font-size:12px;
}

.purchase-item-list {
  display: grid;
  gap: 7px;
}

.purchase-item-row {
  display: grid;
  grid-template-columns:
    minmax(360px,1.4fr)
    120px
    160px
    140px
    auto;
  gap: 8px;
  align-items: end;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.27);
}

.purchase-item-row label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.purchase-item-product small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.purchase-item-line-total {
  min-height: 40px;
  display: grid;
  gap: 2px;
  align-content: center;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(54,194,255,.03);
}

.purchase-item-line-total span,
.purchase-item-line-total small {
  color: var(--muted);
  font-size:12px;
}

.purchase-item-line-total strong {
  font-size:12px;
}

.purchase-remove-item {
  align-self: end;
}

.purchase-cost-grid {
  display: grid;
  grid-template-columns:
    repeat(3,minmax(0,1fr))
    minmax(220px,.9fr);
  gap: 8px;
}

.purchase-total-card {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 10px;
  background: rgba(54,194,255,.04);
}

.purchase-total-card span,
.purchase-total-card small {
  color: var(--muted);
  font-size:12px;
}

.purchase-total-card > strong {
  font-size:12px;
}

.purchase-total-card b {
  color: var(--text);
  font-size: 13px;
}

.purchase-finance-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
}

.purchase-checkbox {
  display: flex !important;
  flex-direction: row !important;
  gap: 8px !important;
  align-items: center;
}

.purchase-checkbox input {
  width: auto;
  margin: 0;
}

.purchase-payable-status {
  display: grid;
  gap: 2px;
  min-width: 190px;
  padding: 9px;
  border: 1px solid rgba(69,210,151,.18);
  border-radius: 9px;
  background: rgba(69,210,151,.035);
}

.purchase-payable-status span,
.purchase-payable-status small {
  color: var(--muted);
  font-size:12px;
}

.purchase-footer {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.purchase-received-note,
.purchase-cancelled-note {
  flex: 1 1 300px;
  display: grid;
  gap: 3px;
  padding: 10px;
  border-radius: 10px;
}

.purchase-received-note {
  border: 1px solid rgba(69,210,151,.18);
  background: rgba(69,210,151,.035);
}

.purchase-cancelled-note {
  border: 1px solid rgba(255,107,122,.18);
  background: rgba(255,107,122,.035);
}

.purchase-received-note span,
.purchase-cancelled-note span {
  color: var(--muted);
  font-size:12px;
}

.purchase-supplier-modal {
  width: min(720px, 94vw);
}

.supplier-filter-grid {
  display: grid;
  grid-template-columns: minmax(260px,1fr) 180px auto;
  gap: 8px;
  align-items: end;
}

.supplier-card {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.29);
}

.supplier-card > div:first-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.supplier-card > div:first-child > span,
.supplier-card > div:first-child > small {
  color: var(--muted);
  font-size:12px;
}

.supplier-card-actions {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.stock-history-order.purchase {
  border-color: rgba(69,210,151,.16);
  background: rgba(69,210,151,.035);
}

@media (max-width: 1180px) {
  .purchase-card {
    grid-template-columns: 1fr;
  }

  .purchase-card-values {
    grid-template-columns: repeat(5,minmax(0,1fr));
  }

  .purchase-card-actions {
    justify-content: flex-start;
  }

  .purchase-form-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .purchase-item-row {
    grid-template-columns:
      minmax(320px,1fr)
      120px
      160px
      140px
      auto;
  }
}

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

  .purchase-filter-search {
    grid-column: span 2;
  }

  .purchase-filter-grid > .btn {
    grid-column: span 2;
  }

  .purchase-form-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .purchase-item-row {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .purchase-item-product {
    grid-column: 1 / -1;
  }

  .purchase-remove-item {
    justify-self: end;
  }

  .purchase-cost-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .purchase-page-head,
  .purchase-finance-row,
  .supplier-card {
    align-items: stretch;
    flex-direction: column;
  }

  .purchase-page-head .btn,
  .supplier-card-actions .btn,
  .supplier-card-actions a {
    width: 100%;
  }

  .purchase-filter-grid,
  .supplier-filter-grid,
  .purchase-form-grid,
  .purchase-cost-grid,
  .purchase-card-values {
    grid-template-columns: 1fr;
  }

  .purchase-filter-search,
  .purchase-filter-grid > .btn {
    grid-column: auto;
  }

  .purchase-item-row {
    grid-template-columns: 1fr;
  }

  .purchase-item-product {
    grid-column: auto;
  }

  .purchase-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .purchase-overlay {
    padding: 6px;
  }

  .purchase-card-actions,
  .supplier-card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .purchase-card-actions .btn {
    width: 100%;
  }

  .purchase-footer {
    display: grid;
    grid-template-columns: 1fr;
  }

  .purchase-footer .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.20.1
   IMPORTAÇÃO NF-e / XML
   ========================================================= */

.purchase-page-actions {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.purchase-nfe-banner {
  display: grid;
  grid-template-columns:
    minmax(180px,.7fr)
    minmax(360px,1.5fr)
    minmax(180px,.7fr);
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(69,210,151,.18);
  border-radius: 11px;
  background: rgba(69,210,151,.035);
}

.purchase-nfe-banner > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-nfe-banner span {
  color: var(--muted);
  font-size:12px;
}

.purchase-nfe-banner strong {
  min-width: 0;
  font-size:12px;
}

.purchase-nfe-key {
  overflow-wrap: anywhere;
  word-break: break-word;
  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    monospace;
  letter-spacing: .02em;
}

.purchase-xml-item-ref {
  color: #7f9bb2 !important;
  border-top: 1px dashed rgba(88,140,196,.16);
  padding-top: 4px;
  margin-top: 2px;
}

.nfe-import-overlay {
  z-index: 2450;
  padding: 14px;
  overflow-y: auto;
}

.nfe-import-modal {
  width: min(760px, 94vw);
}

.nfe-drop-zone {
  min-height: 310px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: center;
  justify-content: center;
  padding: 24px;
  border: 1.5px dashed rgba(88,140,196,.35);
  border-radius: 16px;
  background:
    radial-gradient(
      circle at 50% 20%,
      rgba(54,194,255,.06),
      transparent 46%
    ),
    rgba(5,15,27,.26);
  text-align: center;
  transition:
    border-color .15s ease,
    background .15s ease,
    transform .15s ease;
}

.nfe-drop-zone.dragging {
  border-color: rgba(54,194,255,.72);
  background: rgba(54,194,255,.075);
  transform: scale(1.006);
}

.nfe-drop-zone.loading {
  border-style: solid;
}

.nfe-drop-zone > strong {
  font-size: 14px;
}

.nfe-drop-zone > span,
.nfe-drop-zone > small {
  color: var(--muted);
}

.nfe-drop-icon {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(54,194,255,.28);
  border-radius: 14px;
  background: rgba(54,194,255,.06);
  color: #6ed0ff;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .08em;
}

.nfe-import-spinner {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255,255,255,.12);
  border-top-color: rgba(54,194,255,.9);
  border-radius: 999px;
  animation: nfe-spin .75s linear infinite;
}

@keyframes nfe-spin {
  to {
    transform: rotate(360deg);
  }
}

.nfe-import-security {
  display: grid;
  gap: 4px;
  padding: 10px 11px;
  border: 1px solid rgba(54,194,255,.15);
  border-radius: 10px;
  background: rgba(54,194,255,.03);
}

.nfe-import-security span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.nfe-review-workspace {
  width: min(1440px, 97vw);
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.997),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.54);
}

.nfe-review-summary {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 8px;
}

.nfe-review-summary > div {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.27);
}

.nfe-review-summary > div.ready {
  border-color: rgba(69,210,151,.18);
  background: rgba(69,210,151,.035);
}

.nfe-review-summary > div.pending {
  border-color: rgba(246,181,68,.20);
  background: rgba(246,181,68,.04);
}

.nfe-review-summary span {
  color: var(--muted);
  font-size:12px;
}

.nfe-review-summary strong {
  font-size:12px;
}

.nfe-source-card {
  display: grid;
  grid-template-columns:
    minmax(360px,1.4fr)
    minmax(280px,1fr)
    150px;
  gap: 8px;
}

.nfe-source-card > div {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
}

.nfe-source-card span,
.nfe-source-card small {
  color: var(--muted);
  font-size:12px;
}

.nfe-source-card strong {
  font-size:12px;
}

.nfe-warning-list {
  display: grid;
  gap: 5px;
}

.nfe-warning-list > div {
  padding: 8px 10px;
  border: 1px solid rgba(246,181,68,.18);
  border-radius: 9px;
  background: rgba(246,181,68,.035);
  color: #dcc493;
  font-size:12px;
  line-height: 1.4;
}

.nfe-item-list {
  display: grid;
  gap: 7px;
}

.nfe-item-row {
  display: grid;
  grid-template-columns:
    minmax(340px,1.15fr)
    minmax(340px,1fr)
    auto;
  gap: 10px;
  align-items: end;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.28);
}

.nfe-item-row.matched {
  border-color: rgba(69,210,151,.16);
}

.nfe-item-row.unmatched {
  border-color: rgba(246,181,68,.24);
  background:
    linear-gradient(
      90deg,
      rgba(246,181,68,.025),
      rgba(5,15,27,.28)
    );
}

.nfe-item-source {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.nfe-item-source > div {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-wrap: wrap;
}

.nfe-item-source > span,
.nfe-item-source > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.nfe-item-link {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.nfe-item-link input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.nfe-item-link small {
  color: var(--muted);
  font-size:12px;
}

.nfe-installment-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.nfe-installment-grid > div {
  display: grid;
  gap: 2px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.23);
}

.nfe-installment-grid span,
.nfe-installment-grid small {
  color: var(--muted);
  font-size:12px;
}

.nfe-cost-separation {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.nfe-cost-separation > div {
  display: grid;
  gap: 3px;
  padding: 11px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background: rgba(54,194,255,.03);
}

.nfe-cost-separation span,
.nfe-cost-separation small {
  color: var(--muted);
  font-size:12px;
}

.nfe-cost-separation strong {
  font-size: 12px;
}

.nfe-import-footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.nfe-duplicate-card {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.nfe-duplicate-card > span,
.nfe-duplicate-card > strong {
  grid-column: 1 / -1;
}

.nfe-duplicate-card > div,
.nfe-duplicate-card > span,
.nfe-duplicate-card > strong {
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.nfe-duplicate-card > div {
  display: grid;
  gap: 2px;
}

.nfe-duplicate-card span {
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 1180px) {
  .nfe-review-summary {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .nfe-source-card {
    grid-template-columns: 1fr 1fr;
  }

  .nfe-source-card > div:first-child {
    grid-column: 1 / -1;
  }

  .nfe-item-row {
    grid-template-columns: 1fr;
  }

  .nfe-item-row > .btn {
    justify-self: start;
  }
}

@media (max-width: 820px) {
  .purchase-nfe-banner,
  .nfe-source-card,
  .nfe-cost-separation {
    grid-template-columns: 1fr;
  }

  .nfe-source-card > div:first-child {
    grid-column: auto;
  }

  .nfe-installment-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .purchase-page-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .purchase-page-actions .btn {
    width: 100%;
  }

  .nfe-import-overlay {
    padding: 6px;
  }

  .nfe-review-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .nfe-review-summary,
  .nfe-installment-grid,
  .nfe-duplicate-card {
    grid-template-columns: 1fr;
  }

  .nfe-duplicate-card > span,
  .nfe-duplicate-card > strong {
    grid-column: auto;
  }

  .nfe-import-footer {
    display: grid;
    grid-template-columns: 1fr;
  }

  .nfe-import-footer .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.21.0
   DEVOLUÇÃO AO FORNECEDOR
   ========================================================= */

.return-picker-overlay,
.purchase-return-overlay {
  z-index: 2470;
  padding: 14px;
  overflow-y: auto;
}

.return-picker-modal {
  width: min(760px, 94vw);
}

.return-picker-search {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: end;
}

.return-picker-search input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.return-purchase-results {
  display: grid;
  gap: 7px;
  max-height: 60vh;
  overflow-y: auto;
}

.return-purchase-option {
  width: 100%;
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.17);
  border-radius: 11px;
  background: rgba(5,15,27,.30);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.return-purchase-option:hover {
  border-color: rgba(54,194,255,.32);
  background: rgba(54,194,255,.045);
}

.return-purchase-option > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.return-purchase-option > span,
.return-purchase-option > small {
  color: var(--muted);
  font-size:12px;
}

.purchase-return-workspace {
  width: min(1440px, 97vw);
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.997),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.54);
}

.purchase-return-head-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.purchase-return-origin {
  display: grid;
  grid-template-columns:
    130px
    minmax(240px,1.3fr)
    150px
    160px
    minmax(180px,.9fr);
  gap: 8px;
}

.purchase-return-origin > div {
  min-width: 0;
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
}

.purchase-return-origin span {
  color: var(--muted);
  font-size:12px;
}

.purchase-return-origin strong {
  overflow: hidden;
  text-overflow: ellipsis;
  font-size:12px;
}

.purchase-return-form-grid {
  display: grid;
  grid-template-columns:
    160px
    minmax(300px,1fr)
    minmax(180px,.6fr);
  gap: 8px;
}

.purchase-return-form-grid label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.purchase-return-form-grid input,
.purchase-return-item-row input,
.purchase-return-workspace textarea {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.purchase-return-selected-count {
  padding: 6px 9px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 999px;
  background: rgba(54,194,255,.04);
  color: var(--muted);
  font-size:12px;
}

.purchase-return-item-list {
  display: grid;
  gap: 7px;
}

.purchase-return-item-row {
  display: grid;
  grid-template-columns:
    minmax(340px,1.4fr)
    150px
    150px
    170px
    150px;
  gap: 8px;
  align-items: end;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.28);
}

.purchase-return-item-main,
.purchase-return-stock,
.purchase-return-item-total {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-return-item-main > span,
.purchase-return-item-main > small,
.purchase-return-stock > span,
.purchase-return-stock > small,
.purchase-return-item-total > span,
.purchase-return-item-total > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.purchase-return-item-main b {
  color: #75e6b8;
}

.purchase-return-item-row label {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.purchase-return-stock,
.purchase-return-item-total {
  min-height: 58px;
  align-content: center;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(54,194,255,.025);
}

.purchase-return-item-total {
  border-color: rgba(69,210,151,.14);
  background: rgba(69,210,151,.025);
}

.purchase-return-finance {
  display: grid;
  grid-template-columns: minmax(300px,1fr) minmax(320px,1fr);
  gap: 12px;
  align-items: center;
}

.purchase-return-finance-info {
  display: grid;
  gap: 3px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.15);
  border-radius: 10px;
  background: rgba(54,194,255,.03);
}

.purchase-return-finance-info span,
.purchase-return-finance-info small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.purchase-return-finance-info strong {
  font-size: 13px;
}

.purchase-return-financial-result {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.purchase-return-financial-result > div {
  display: grid;
  gap: 3px;
  padding: 9px;
  border: 1px solid rgba(69,210,151,.15);
  border-radius: 9px;
  background: rgba(69,210,151,.025);
}

.purchase-return-financial-result span {
  color: var(--muted);
  font-size:12px;
}

.purchase-return-safety {
  display: grid;
  gap: 4px;
  padding: 10px 11px;
  border: 1px solid rgba(246,181,68,.16);
  border-radius: 10px;
  background: rgba(246,181,68,.03);
}

.purchase-return-safety span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.purchase-return-footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.purchase-return-tabs {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

.purchase-return-list,
.supplier-credit-list {
  display: grid;
  gap: 8px;
}

.purchase-return-card {
  display: grid;
  grid-template-columns:
    minmax(300px,1fr)
    minmax(330px,.9fr)
    auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.29);
}

.purchase-return-card-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-return-card-main > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.purchase-return-card-main > span,
.purchase-return-card-main > small {
  color: var(--muted);
  font-size:12px;
}

.purchase-return-card-values {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
}

.purchase-return-card-values > div {
  display: grid;
  gap: 2px;
}

.purchase-return-card-values span {
  color: var(--muted);
  font-size:12px;
}

.purchase-return-card-values strong {
  font-size:12px;
}

.purchase-return-card-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.supplier-credit-card {
  display: grid;
  grid-template-columns:
    minmax(300px,1fr)
    190px
    auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(69,210,151,.16);
  border-radius: 11px;
  background: rgba(69,210,151,.025);
}

.supplier-credit-card > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.supplier-credit-card > div:first-child > div {
  display: flex;
}

.supplier-credit-card span,
.supplier-credit-card small {
  color: var(--muted);
  font-size:12px;
}

.stock-history-order.purchase-return {
  border-color: rgba(246,181,68,.18);
  background: rgba(246,181,68,.035);
}

@media (max-width: 1180px) {
  .purchase-return-origin {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .purchase-return-item-row {
    grid-template-columns:
      minmax(300px,1fr)
      140px
      140px
      160px;
  }

  .purchase-return-item-main {
    grid-column: 1 / -1;
  }

  .purchase-return-card {
    grid-template-columns: 1fr;
  }

  .purchase-return-card-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 820px) {
  .purchase-return-origin,
  .purchase-return-form-grid,
  .purchase-return-finance {
    grid-template-columns: 1fr;
  }

  .purchase-return-item-row {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .purchase-return-item-main {
    grid-column: 1 / -1;
  }

  .purchase-return-card-values {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .supplier-credit-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .return-picker-overlay,
  .purchase-return-overlay {
    padding: 6px;
  }

  .return-picker-search,
  .purchase-return-item-row,
  .purchase-return-financial-result,
  .purchase-return-card-values {
    grid-template-columns: 1fr;
  }

  .purchase-return-item-main {
    grid-column: auto;
  }

  .purchase-return-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .purchase-return-footer,
  .purchase-return-card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .purchase-return-footer .btn,
  .purchase-return-card-actions .btn {
    width: 100%;
  }

  .purchase-return-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.22.0
   PEDIDOS DE COMPRA + REPOSIÇÃO
   ========================================================= */

.purchase-module-tabs {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
}

.purchase-order-overlay {
  z-index: 2480;
  padding: 14px;
  overflow-y: auto;
}

.purchase-order-workspace {
  width: min(1440px, 97vw);
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.997),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.54);
}

.purchase-order-head-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.purchase-order-form-grid {
  display: grid;
  grid-template-columns:
    minmax(280px,1.2fr)
    150px
    160px
    minmax(180px,.7fr);
  gap: 8px;
}

.purchase-order-form-grid label,
.purchase-order-item-row label,
.purchase-order-total-row label,
.purchase-replenishment-filter label,
.replenishment-row label {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.purchase-order-form-grid input,
.purchase-order-form-grid select,
.purchase-order-item-row input,
.purchase-order-total-row textarea,
.purchase-replenishment-filter input,
.replenishment-row input {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 11px;
  background:
    linear-gradient(
      180deg,
      rgba(12,28,46,.96),
      rgba(9,22,37,.96)
    );
  color: var(--text);
  outline: none;
}

.purchase-order-form-grid select {
  color-scheme: dark;
}

.purchase-order-form-grid option {
  background: #0b1a2b;
  color: #eef6ff;
}

.purchase-order-item-list {
  display: grid;
  gap: 7px;
}

.purchase-order-item-row {
  display: grid;
  grid-template-columns:
    minmax(360px,1.35fr)
    150px
    120px
    160px
    130px
    auto;
  gap: 8px;
  align-items: end;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.purchase-order-product small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.purchase-order-item-total {
  min-height: 42px;
  display: grid;
  gap: 2px;
  align-content: center;
  padding: 8px;
  border: 1px solid rgba(69,210,151,.14);
  border-radius: 9px;
  background: rgba(69,210,151,.025);
}

.purchase-order-item-total span {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-item-total strong {
  font-size:12px;
}

.purchase-order-total-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) 260px;
  gap: 10px;
  align-items: stretch;
}

.purchase-order-total-card {
  display: grid;
  gap: 4px;
  align-content: center;
  padding: 11px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background: rgba(54,194,255,.03);
}

.purchase-order-total-card span,
.purchase-order-total-card small {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-total-card strong {
  font-size: 14px;
}

.purchase-order-contact,
.purchase-order-converted {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 10px 11px;
  border: 1px solid rgba(69,210,151,.15);
  border-radius: 10px;
  background: rgba(69,210,151,.025);
}

.purchase-order-contact > div,
.purchase-order-converted > div {
  display: grid;
  gap: 3px;
}

.purchase-order-contact span,
.purchase-order-converted span {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-footer {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.purchase-order-list {
  display: grid;
  gap: 8px;
}

.purchase-order-card {
  display: grid;
  grid-template-columns:
    minmax(320px,1fr)
    180px
    auto;
  gap: 12px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.29);
}

.purchase-order-card-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-order-card-main > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.purchase-order-card-main > span,
.purchase-order-card-main > small {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-card-values {
  display: grid;
  gap: 2px;
}

.purchase-order-card-values span,
.purchase-order-card-values small {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-card-values strong {
  font-size:12px;
}

.purchase-order-card-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.purchase-replenishment-filter {
  display: grid;
  grid-template-columns: minmax(300px,1fr) auto auto;
  gap: 8px;
  align-items: end;
}

.replenishment-list {
  display: grid;
  gap: 7px;
}

.replenishment-row {
  display: grid;
  grid-template-columns:
    34px
    minmax(300px,1.25fr)
    95px
    95px
    95px
    minmax(190px,.9fr)
    120px
    145px
    130px;
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 11px;
  background: rgba(5,15,27,.28);
}

.replenishment-row.critical {
  border-color: rgba(255,107,122,.20);
  background:
    linear-gradient(
      90deg,
      rgba(255,107,122,.035),
      rgba(5,15,27,.28)
    );
}

.replenishment-row.below {
  border-color: rgba(246,181,68,.19);
}

.replenishment-row.limit {
  opacity: .88;
}

.replenishment-check {
  display: grid !important;
  place-items: center;
}

.replenishment-check input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.replenishment-product,
.replenishment-stock,
.replenishment-supplier,
.replenishment-total {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.replenishment-product > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.replenishment-product > span,
.replenishment-product > small,
.replenishment-stock > span,
.replenishment-supplier > span,
.replenishment-supplier > small,
.replenishment-total > span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.replenishment-stock,
.replenishment-total {
  min-height: 48px;
  align-content: center;
  padding: 7px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  background: rgba(54,194,255,.018);
}

.replenishment-total {
  border-color: rgba(69,210,151,.13);
  background: rgba(69,210,151,.02);
}

.replenishment-stock strong,
.replenishment-total strong {
  font-size:12px;
}

.replenishment-supplier strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-size:12px;
}

@media (max-width: 1280px) {
  .replenishment-row {
    grid-template-columns:
      34px
      minmax(300px,1fr)
      repeat(3,90px)
      minmax(180px,.8fr);
  }

  .replenishment-row > label,
  .replenishment-total {
    grid-column: span 2;
  }

  .purchase-order-item-row {
    grid-template-columns:
      minmax(300px,1fr)
      140px
      110px
      150px
      120px
      auto;
  }
}

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

  .purchase-order-item-row {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .purchase-order-product {
    grid-column: 1 / -1;
  }

  .purchase-order-item-row > .icon-btn {
    justify-self: end;
  }

  .purchase-order-card {
    grid-template-columns: 1fr;
  }

  .purchase-order-card-actions {
    justify-content: flex-start;
  }

  .replenishment-row {
    grid-template-columns:
      34px
      minmax(260px,1fr)
      repeat(2,100px);
  }

  .replenishment-supplier {
    grid-column: span 2;
  }

  .purchase-replenishment-filter {
    grid-template-columns: 1fr auto;
  }

  .purchase-replenishment-filter > .btn:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .purchase-module-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .purchase-module-tabs .btn {
    width: 100%;
  }

  .purchase-order-overlay {
    padding: 6px;
  }

  .purchase-order-workspace {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .purchase-order-form-grid,
  .purchase-order-item-row,
  .purchase-order-total-row,
  .purchase-replenishment-filter,
  .replenishment-row {
    grid-template-columns: 1fr;
  }

  .purchase-order-product,
  .replenishment-supplier,
  .purchase-replenishment-filter > .btn:last-child {
    grid-column: auto;
  }

  .purchase-order-contact,
  .purchase-order-converted {
    align-items: stretch;
    flex-direction: column;
  }

  .purchase-order-contact .btn,
  .purchase-order-converted .btn {
    width: 100%;
  }

  .purchase-order-footer,
  .purchase-order-card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .purchase-order-footer .btn,
  .purchase-order-card-actions .btn {
    width: 100%;
  }

  .replenishment-check {
    justify-content: start;
  }
}

/* =========================================================
   AC AUTO PRO 1.23.0
   CONCILIAÇÃO PEDIDO DE COMPRA x NF-e/XML
   ========================================================= */

.nfe-order-reconciliation {
  border-color: rgba(89, 173, 255, .18);
}

.nfe-reconciliation-state {
  padding: 10px 11px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.26);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.nfe-reconciliation-state.pending,
.nfe-reconciliation-state.warning {
  border-color: rgba(246,181,68,.19);
  background: rgba(246,181,68,.035);
}

.nfe-reconciliation-state.ready {
  border-color: rgba(69,210,151,.17);
  background: rgba(69,210,151,.03);
}

.nfe-reconciliation-loading {
  min-height: 70px;
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  padding: 12px;
  color: var(--muted);
  font-size:12px;
}

.nfe-order-candidate-list {
  display: grid;
  gap: 7px;
}

.nfe-order-candidate {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) 190px;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 11px;
  background: rgba(5,15,27,.28);
  cursor: pointer;
}

.nfe-order-candidate.no-link {
  grid-template-columns: auto minmax(0, 1fr);
}

.nfe-order-candidate:hover {
  border-color: rgba(54,194,255,.28);
}

.nfe-order-candidate.selected {
  border-color: rgba(54,194,255,.46);
  background: rgba(54,194,255,.055);
  box-shadow: inset 0 0 0 1px rgba(54,194,255,.08);
}

.nfe-order-candidate input[type="radio"] {
  width: 17px;
  height: 17px;
  margin: 0;
}

.nfe-order-candidate-main,
.nfe-order-candidate-value,
.nfe-order-candidate.no-link > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.nfe-order-candidate-main > div {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.nfe-order-candidate-main > span,
.nfe-order-candidate-main > small,
.nfe-order-candidate-value > span,
.nfe-order-candidate-value > small,
.nfe-order-candidate.no-link span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.nfe-order-candidate-value {
  justify-items: end;
  text-align: right;
}

.nfe-order-candidate-value strong {
  font-size:12px;
}

.nfe-order-comparison {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.17);
  border-radius: 11px;
  background: rgba(54,194,255,.025);
}

.nfe-order-comparison-head {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 10px;
  align-items: center;
}

.nfe-order-comparison-head > div {
  display: grid;
  gap: 2px;
}

.nfe-order-comparison-head span {
  color: var(--muted);
  font-size:12px;
}

.nfe-order-comparison-head .has-difference {
  color: #f6c26b;
}

.nfe-order-comparison-table {
  display: grid;
  gap: 5px;
}

.nfe-order-comparison-row {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) 150px 150px 185px;
  gap: 8px;
  align-items: center;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.nfe-order-comparison-row.missing,
.nfe-order-comparison-row.extra,
.nfe-order-comparison-row.qty,
.nfe-order-comparison-row.qty_price,
.nfe-order-comparison-row.price {
  border-color: rgba(246,181,68,.17);
  background: rgba(246,181,68,.025);
}

.nfe-order-comparison-row > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.nfe-order-comparison-row span,
.nfe-order-comparison-row small {
  color: var(--muted);
  font-size:12px;
}

.nfe-reconciliation-close-warning {
  display: grid;
  gap: 4px;
  padding: 9px 10px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 9px;
  background: rgba(246,181,68,.04);
}

.nfe-reconciliation-close-warning span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

@media (max-width: 980px) {
  .nfe-order-candidate {
    grid-template-columns: auto minmax(0, 1fr);
  }

  .nfe-order-candidate-value {
    grid-column: 2;
    justify-items: start;
    text-align: left;
  }

  .nfe-order-comparison-row {
    grid-template-columns: minmax(240px, 1fr) 130px 130px;
  }

  .nfe-order-comparison-row > div:last-child {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .nfe-order-candidate,
  .nfe-order-candidate.no-link,
  .nfe-order-comparison-head,
  .nfe-order-comparison-row {
    grid-template-columns: 1fr;
  }

  .nfe-order-candidate input[type="radio"] {
    justify-self: start;
  }

  .nfe-order-candidate-value,
  .nfe-order-comparison-row > div:last-child {
    grid-column: auto;
  }
}


/* =========================================================
   AC AUTO PRO 1.24.0
   RECEBIMENTO PARCIAL DE PEDIDO DE COMPRA
   ========================================================= */

.purchase-order-progress {
  display: grid;
  gap: 9px;
  padding: 11px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 11px;
  background: rgba(54,194,255,.025);
}

.purchase-order-progress-head {
  display: grid;
  gap: 7px;
}

.purchase-order-progress-head > div:first-child {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.purchase-order-progress-head span,
.purchase-order-progress-grid span {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-progress-head strong {
  font-size:12px;
}

.purchase-order-progress-bar,
.purchase-order-mini-progress {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 6px;
  border-radius: 999px;
  background: rgba(255,255,255,.06);
}

.purchase-order-progress-bar > span,
.purchase-order-mini-progress > span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: currentColor;
  color: rgba(69,210,151,.78);
}

.purchase-order-progress-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.purchase-order-progress-grid > div {
  display: grid;
  gap: 2px;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  background: rgba(5,15,27,.22);
}

.purchase-order-progress-grid strong {
  font-size:12px;
}

.purchase-order-item-progress-text {
  color: #7f9bb2 !important;
  line-height: 1.35;
}

.purchase-order-linked-purchases {
  border-color: rgba(69,210,151,.15);
}

.purchase-order-linked-list {
  display: grid;
  gap: 7px;
}

.purchase-order-linked-row {
  display: grid;
  grid-template-columns:
    minmax(170px,.7fr)
    minmax(230px,1fr)
    minmax(260px,1.2fr)
    auto;
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.25);
}

.purchase-order-linked-row > div {
  display: flex;
  gap: 5px;
  align-items: center;
  flex-wrap: wrap;
}

.purchase-order-linked-row > span,
.purchase-order-linked-row > small {
  color: var(--muted);
  font-size:12px;
}

.purchase-order-mini-progress {
  margin: 4px 0 3px;
  height: 5px;
}

.nfe-order-comparison-row.partial,
.nfe-order-comparison-row.partial_price {
  border-color: rgba(54,194,255,.18);
  background: rgba(54,194,255,.025);
}

.nfe-order-comparison-row.over,
.nfe-order-comparison-row.over_price {
  border-color: rgba(246,181,68,.23);
  background: rgba(246,181,68,.045);
}

.nfe-reconciliation-partial-ready {
  display: grid;
  gap: 4px;
  padding: 9px 10px;
  border: 1px solid rgba(69,210,151,.20);
  border-radius: 9px;
  background: rgba(69,210,151,.035);
}

.nfe-reconciliation-partial-ready strong {
  color: #86e8bf;
}

.nfe-reconciliation-partial-ready span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

@media (max-width: 980px) {
  .purchase-order-linked-row {
    grid-template-columns: 1fr 1fr;
  }

  .purchase-order-linked-row > .btn {
    justify-self: start;
  }
}

@media (max-width: 680px) {
  .purchase-order-progress-grid,
  .purchase-order-linked-row {
    grid-template-columns: 1fr;
  }

  .purchase-order-linked-row > .btn {
    width: 100%;
  }
}

.purchase-order-progress-grid small {
  color: var(--muted);
  font-size:12px;
}


/* =========================================================
   AC AUTO PRO 1.25.0
   ENCERRAR SALDO RESTANTE DO PEDIDO
   ========================================================= */

.purchase-order-metrics {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 14px;
}

.purchase-order-closed-summary {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 9px 10px;
  border: 1px solid rgba(246,181,68,.17);
  border-radius: 9px;
  background: rgba(246,181,68,.03);
}

.purchase-order-closed-summary > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.purchase-order-closed-summary strong {
  color: #e8cf9b;
  font-size:12px;
}

.purchase-order-closed-summary span,
.purchase-order-closed-summary small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

@media (max-width: 1180px) {
  .purchase-order-metrics {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .purchase-order-metrics {
    grid-template-columns: 1fr 1fr;
  }

  .purchase-order-closed-summary {
    align-items: stretch;
    flex-direction: column;
  }
}

/* =========================================================
   AC AUTO PRO 1.26.0
   ORÇAMENTO VERSIONADO + APROVAÇÃO DO CLIENTE
   ========================================================= */

.os-quote-workflow-section {
  border-color: rgba(54,194,255,.18);
}

.os-quote-summary {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 10px;
}

.os-quote-summary > div,
.os-quote-empty {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
}

.os-quote-summary span,
.os-quote-summary small,
.os-quote-empty span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.os-quote-alert {
  margin-top: 9px;
  padding: 9px 10px;
  border-radius: 9px;
  font-size:12px;
  line-height: 1.45;
}

.os-quote-alert.warning {
  border: 1px solid rgba(246,181,68,.18);
  background: rgba(246,181,68,.035);
}

.os-quote-alert.success {
  border: 1px solid rgba(69,210,151,.18);
  background: rgba(69,210,151,.035);
}

.service-quote-overlay {
  z-index: 2520;
  padding: 12px;
  overflow-y: auto;
}

.service-quote-workspace {
  width: min(1500px,98vw);
  max-height: calc(100vh - 24px);
  overflow-y: auto;
  margin: auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.998),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.56);
}

.service-quote-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.service-quote-head h2 {
  margin: 4px 0 2px;
}

.service-quote-head p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
}

.service-quote-head-actions {
  display: flex;
  gap: 7px;
  align-items: center;
}

.service-quote-layout {
  display: grid;
  grid-template-columns: 230px minmax(0,1fr);
  gap: 11px;
  align-items: start;
}

.service-quote-versions {
  position: sticky;
  top: 0;
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.16);
  border-radius: 12px;
  background: rgba(5,15,27,.31);
}

.service-quote-version-title {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  align-items: center;
}

.service-quote-version-title span {
  color: var(--muted);
  font-size:12px;
}

.service-quote-version-list {
  display: grid;
  gap: 6px;
  max-height: 58vh;
  overflow-y: auto;
}

.service-quote-version {
  display: grid;
  gap: 4px;
  width: 100%;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.28);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.service-quote-version.active,
.service-quote-version:hover {
  border-color: rgba(54,194,255,.28);
  background: rgba(54,194,255,.045);
}

.service-quote-version > div {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.service-quote-version small {
  color: var(--muted);
  font-size:12px;
}

.service-quote-main {
  min-width: 0;
}

.service-quote-meta-grid {
  display: grid;
  grid-template-columns: 180px 180px 110px minmax(160px,1fr);
  gap: 8px;
  align-items: end;
}

.service-quote-meta-grid label,
.service-quote-item label,
.service-quote-texts label,
.service-quote-totals label,
.service-quote-decision-grid label {
  min-width: 0;
  display: grid;
  gap: 5px;
}

.service-quote-meta-grid input,
.service-quote-item input,
.service-quote-texts textarea,
.service-quote-totals input,
.service-quote-decision-grid input,
.service-quote-decision-grid select {
  width: 100%;
  margin: 0;
  padding: 9px 10px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 10px;
  background: linear-gradient(180deg,rgba(12,28,46,.96),rgba(9,22,37,.96));
  color: var(--text);
  outline: none;
}

.service-quote-decision-grid select {
  color-scheme: dark;
}

.service-quote-decision-grid option {
  background: #0b1a2b;
  color: #eef6ff;
}

.service-quote-status-meta {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
}

.service-quote-status-meta span {
  color: var(--muted);
  font-size:12px;
}

.service-quote-add-actions,
.service-quote-footer,
.service-quote-decision-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.service-quote-item-list {
  display: grid;
  gap: 7px;
}

.service-quote-item {
  display: grid;
  grid-template-columns:
    78px
    minmax(310px,1.4fr)
    110px
    135px
    125px
    120px
    auto;
  gap: 7px;
  align-items: end;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.27);
}

.service-quote-item-type {
  align-self: center;
}

.service-quote-item-main {
  min-width: 0;
  display: grid;
  gap: 6px;
}

.service-quote-item-main small {
  color: var(--muted);
  font-size:12px;
}

.service-quote-item-total {
  min-height: 42px;
  display: grid;
  gap: 2px;
  align-content: center;
  padding: 8px;
  border: 1px solid rgba(69,210,151,.14);
  border-radius: 9px;
  background: rgba(69,210,151,.025);
}

.service-quote-item-total span {
  color: var(--muted);
  font-size:12px;
}

.service-quote-bottom-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) 310px;
  gap: 10px;
}

.service-quote-texts,
.service-quote-totals {
  display: grid;
  gap: 8px;
}

.service-quote-totals > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 8px;
  background: rgba(5,15,27,.22);
}

.service-quote-totals span {
  color: var(--muted);
  font-size:12px;
}

.service-quote-grand-total {
  border-color: rgba(69,210,151,.20) !important;
  background: rgba(69,210,151,.035) !important;
}

.service-quote-grand-total strong {
  font-size: 14px;
}

.service-quote-decision {
  border-color: rgba(246,181,68,.18);
}

.service-quote-decision-grid {
  display: grid;
  grid-template-columns: 160px minmax(220px,.8fr) minmax(260px,1fr);
  gap: 8px;
}

.service-quote-decision-record {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  border: 1px solid rgba(69,210,151,.16);
  border-radius: 10px;
  background: rgba(69,210,151,.025);
}

.service-quote-decision-record > div {
  display: grid;
  gap: 3px;
}

.service-quote-decision-record span,
.service-quote-decision-record small {
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 1180px) {
  .service-quote-item {
    grid-template-columns: 78px minmax(280px,1fr) repeat(3,120px);
  }

  .service-quote-item-total,
  .service-quote-item > .icon-btn {
    grid-column: span 1;
  }

  .os-quote-summary {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 900px) {
  .service-quote-layout {
    grid-template-columns: 1fr;
  }

  .service-quote-versions {
    position: static;
  }

  .service-quote-version-list {
    max-height: none;
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .service-quote-meta-grid,
  .service-quote-bottom-grid,
  .service-quote-decision-grid {
    grid-template-columns: 1fr 1fr;
  }

  .service-quote-item {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .service-quote-item-main {
    grid-column: 1 / -1;
  }
}

@media (max-width: 680px) {
  .service-quote-overlay {
    padding: 5px;
  }

  .service-quote-workspace {
    width: 100%;
    max-height: none;
    border-radius: 13px;
    padding: 11px;
  }

  .service-quote-head,
  .service-quote-decision-record {
    align-items: stretch;
    flex-direction: column;
  }

  .service-quote-head-actions {
    justify-content: space-between;
  }

  .service-quote-version-list,
  .service-quote-meta-grid,
  .service-quote-bottom-grid,
  .service-quote-decision-grid,
  .service-quote-item,
  .os-quote-summary {
    grid-template-columns: 1fr;
  }

  .service-quote-item-main {
    grid-column: auto;
  }

  .service-quote-footer,
  .service-quote-decision-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .service-quote-footer .btn,
  .service-quote-decision-actions .btn {
    width: 100%;
  }
}

/* =========================================================
   AC AUTO PRO 1.27.0
   COMPARTILHAMENTO DE DOCUMENTOS EM PDF
   ========================================================= */

.client-document-share-overlay {
  position: fixed;
  inset: 0;
  z-index: 2900;
  display: grid;
  place-items: center;
  padding: 16px;
  background: rgba(2, 8, 15, .78);
  backdrop-filter: blur(8px);
}

.client-document-share-card {
  width: min(560px, 96vw);
  max-height: 88vh;
  overflow-y: auto;
  padding: 16px;
  border: 1px solid rgba(88, 140, 196, .28);
  border-radius: 17px;
  background:
    linear-gradient(
      180deg,
      rgba(12, 29, 47, .997),
      rgba(7, 18, 31, .999)
    );
  box-shadow: 0 24px 70px rgba(0, 0, 0, .52);
}

.client-document-share-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.client-document-share-head h3 {
  margin: 5px 0 0;
  font-size: 17px;
}

.client-document-share-loading {
  display: grid;
  justify-items: center;
  gap: 8px;
  padding: 34px 10px 20px;
  text-align: center;
}

.client-document-share-loading span,
.client-document-share-file span,
.client-document-share-note span,
.client-document-share-help {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.client-document-spinner {
  width: 32px;
  height: 32px;
  border: 3px solid rgba(54, 194, 255, .14);
  border-top-color: var(--accent);
  border-radius: 50%;
  animation: client-document-spin .8s linear infinite;
}

@keyframes client-document-spin {
  to { transform: rotate(360deg); }
}

.client-document-share-file {
  display: flex;
  gap: 11px;
  align-items: center;
  margin-top: 14px;
  padding: 11px;
  border: 1px solid rgba(61, 106, 147, .18);
  border-radius: 11px;
  background: rgba(5, 15, 27, .30);
}

.client-document-share-file > div:last-child {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.client-document-share-file strong {
  overflow-wrap: anywhere;
  font-size:12px;
}

.client-document-pdf-icon {
  flex: 0 0 auto;
  width: 44px;
  height: 52px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255, 107, 122, .22);
  border-radius: 9px;
  background: rgba(255, 107, 122, .055);
  font-size:12px;
  font-weight: 900;
  letter-spacing: .08em;
}

.client-document-share-note {
  display: grid;
  gap: 4px;
  margin-top: 11px;
  padding: 10px 11px;
  border: 1px solid rgba(61, 106, 147, .17);
  border-radius: 10px;
}

.client-document-share-note.success {
  border-color: rgba(69, 210, 151, .19);
  background: rgba(69, 210, 151, .03);
}

.client-document-share-note.warning {
  border-color: rgba(246, 181, 68, .19);
  background: rgba(246, 181, 68, .03);
}

.client-document-share-note.danger {
  border-color: rgba(255, 107, 122, .20);
  background: rgba(255, 107, 122, .035);
}

.client-document-share-actions {
  display: flex;
  gap: 7px;
  margin-top: 13px;
  flex-wrap: wrap;
}

.client-document-share-help {
  margin: 10px 0 0;
}

@media (max-width: 680px) {
  .client-document-share-overlay {
    padding: 7px;
    align-items: end;
  }

  .client-document-share-card {
    width: 100%;
    max-height: 92vh;
    border-radius: 16px 16px 8px 8px;
  }

  .client-document-share-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .client-document-share-actions .btn {
    width: 100%;
  }
}

.check-editor-document-actions {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
}

@media (max-width: 680px) {
  .check-editor-document-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr;
  }

  .check-editor-document-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.28.0
   CENTRAL DE DOCUMENTOS + ORGANIZAÇÃO DO MENU
   ========================================================= */

.parent-module-tabs {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 14px;
  padding: 6px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.28);
}

.parent-module-tab {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 13px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  font-weight: 700;
}

.parent-module-tab span {
  font-size: 14px;
}

.parent-module-tab:hover {
  color: var(--text);
  border-color: rgba(54,194,255,.16);
  background: rgba(54,194,255,.035);
}

.parent-module-tab.active {
  color: #04111c;
  border-color: transparent;
  background: var(--accent);
}

.os-document-center-entry {
  border-color: rgba(54,194,255,.17);
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.035),
      rgba(12,23,40,.98)
    );
}

.os-document-center-entry-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}

.os-document-center-entry-grid > div {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.os-document-center-entry-grid span {
  color: var(--muted);
  font-size:12px;
}

.os-document-center-entry-grid strong {
  font-size:12px;
}

.os-document-center-overlay {
  position: fixed;
  inset: 0;
  z-index: 2520;
  overflow-y: auto;
  padding: 14px;
  background: rgba(2,8,15,.78);
  backdrop-filter: blur(6px);
}

.os-document-center {
  width: min(1180px,96vw);
  min-height: 240px;
  max-height: calc(100vh - 28px);
  overflow-y: auto;
  margin: 0 auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.998),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.55);
}

.os-document-center-head {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: space-between;
}

.os-document-center-head h2 {
  margin: 3px 0 0;
}

.os-document-center-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size:12px;
}

.os-document-center-toolbar {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  margin-top: 14px;
  padding: 10px 11px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.26);
}

.os-document-center-toolbar > div:first-child {
  display: grid;
  gap: 2px;
}

.os-document-center-toolbar > div:first-child span {
  color: var(--muted);
  font-size:12px;
}

.os-document-center-toolbar-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
}

.os-document-center-groups {
  display: grid;
  gap: 12px;
  margin-top: 12px;
}

.os-document-group {
  display: grid;
  gap: 7px;
}

.os-document-group-title {
  display: flex;
  gap: 8px;
  align-items: center;
}

.os-document-group-title span {
  min-width: 24px;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.07);
  color: var(--muted);
  font-size:12px;
  text-align: center;
}

.os-document-list {
  display: grid;
  gap: 7px;
}

.os-document-item {
  display: grid;
  grid-template-columns:
    30px
    42px
    minmax(260px,1fr)
    auto;
  gap: 9px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.28);
}

.os-document-select {
  display: grid;
  place-items: center;
}

.os-document-select input {
  width: 18px;
  height: 18px;
  margin: 0;
}

.os-document-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 42px;
  border: 1px solid rgba(255,107,122,.18);
  border-radius: 8px;
  background: rgba(255,107,122,.045);
  color: #ffadb5;
  font-size:12px;
  font-weight: 900;
  letter-spacing: .06em;
}

.os-document-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.os-document-main span,
.os-document-main small {
  overflow: hidden;
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
  text-overflow: ellipsis;
}

.os-document-actions {
  display: flex;
  gap: 6px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.os-document-center-note {
  display: grid;
  gap: 4px;
  margin-top: 12px;
  padding: 10px 11px;
  border: 1px solid rgba(69,210,151,.14);
  border-radius: 10px;
  background: rgba(69,210,151,.025);
}

.os-document-center-note span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.client-document-share-card-many {
  width: min(680px,92vw);
}

.client-document-many-list {
  display: grid;
  gap: 7px;
  max-height: 46vh;
  overflow-y: auto;
  margin-top: 12px;
}

.client-document-many-item {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 9px;
  align-items: center;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.client-document-many-item > span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 38px;
  border-radius: 7px;
  background: rgba(255,107,122,.05);
  color: #ffadb5;
  font-size:12px;
  font-weight: 900;
}

.client-document-many-item > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.client-document-many-item strong {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.client-document-many-item small {
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 860px) {
  .os-document-center-entry-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .os-document-item {
    grid-template-columns:
      30px
      42px
      minmax(0,1fr);
  }

  .os-document-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .parent-module-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .parent-module-tab {
    width: 100%;
  }

  .os-document-center-overlay {
    padding: 6px;
  }

  .os-document-center {
    width: 100%;
    max-height: none;
    border-radius: 14px;
  }

  .os-document-center-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .os-document-center-toolbar-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .os-document-center-toolbar-actions .btn {
    width: 100%;
  }

  .os-document-center-entry-grid {
    grid-template-columns: 1fr 1fr;
  }

  .os-document-item {
    grid-template-columns: 30px 42px minmax(0,1fr);
  }

  .os-document-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .os-document-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.29.0
   ENTREGA / FINALIZAÇÃO DA ORDEM DE SERVIÇO
   ========================================================= */

.os-delivery-workflow-card {
  border-color: rgba(69,210,151,.18);
  background:
    linear-gradient(
      135deg,
      rgba(69,210,151,.035),
      rgba(12,23,40,.98)
    );
}

.os-delivery-completed-summary,
.os-delivery-readiness-inline {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
  margin-top: 12px;
}

.os-delivery-completed-summary > div,
.os-delivery-readiness-inline > div {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.os-delivery-completed-summary span,
.os-delivery-readiness-inline span {
  color: var(--muted);
  font-size:12px;
}

.os-delivery-readiness-inline .ready {
  border-color: rgba(69,210,151,.18);
  background: rgba(69,210,151,.03);
}

.os-delivery-readiness-inline .pending {
  border-color: rgba(246,181,68,.20);
  background: rgba(246,181,68,.035);
}

.os-delivery-readiness-inline .info {
  border-color: rgba(54,194,255,.18);
  background: rgba(54,194,255,.03);
}

.service-delivery-overlay {
  position: fixed;
  inset: 0;
  z-index: 2540;
  overflow-y: auto;
  padding: 14px;
  background: rgba(2,8,15,.82);
  backdrop-filter: blur(7px);
}

.service-delivery-workspace {
  width: min(1040px,96vw);
  margin: 0 auto;
  padding: 16px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 18px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.998),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.58);
}

.service-delivery-head {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  justify-content: space-between;
}

.service-delivery-head h2 {
  margin: 3px 0 0;
}

.service-delivery-head p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size:12px;
}

.service-delivery-readiness {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
  margin-top: 13px;
}

.service-delivery-readiness > div {
  display: grid;
  grid-template-columns: 29px minmax(0,1fr);
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 9px;
  background: rgba(5,15,27,.25);
}

.service-delivery-readiness > div > span {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 999px;
  background: rgba(255,255,255,.05);
  color: var(--muted);
  font-size:12px;
  font-weight: 900;
}

.service-delivery-readiness > div > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.service-delivery-readiness small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.service-delivery-readiness .ready {
  border-color: rgba(69,210,151,.17);
}

.service-delivery-readiness .ready > span {
  background: rgba(69,210,151,.12);
  color: #86e8bf;
}

.service-delivery-readiness .pending {
  border-color: rgba(246,181,68,.20);
}

.service-delivery-readiness .pending > span {
  background: rgba(246,181,68,.10);
  color: #f2cf89;
}

.service-delivery-alert {
  margin-top: 9px;
  padding: 9px 10px;
  border-radius: 9px;
  font-size:12px;
  line-height: 1.45;
}

.service-delivery-alert.warning {
  border: 1px solid rgba(246,181,68,.20);
  background: rgba(246,181,68,.035);
  color: #e5d3ad;
}

.service-delivery-alert.info {
  border: 1px solid rgba(54,194,255,.18);
  background: rgba(54,194,255,.03);
  color: #aacbe0;
}

.service-delivery-section {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 11px;
  background: rgba(5,15,27,.24);
}

.service-delivery-section-head {
  display: flex;
  gap: 9px;
  align-items: center;
  justify-content: space-between;
}

.service-delivery-section-head > div {
  display: flex;
  gap: 8px;
  align-items: center;
}

.service-delivery-section-head > div > span {
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  border-radius: 8px;
  background: rgba(54,194,255,.07);
  color: #7bdcff;
  font-size:12px;
  font-weight: 900;
}

.service-delivery-section-head h3 {
  margin: 0;
  font-size:12px;
}

.service-delivery-section label {
  display: grid;
  gap: 5px;
}

.service-delivery-section input,
.service-delivery-section select,
.service-delivery-section textarea {
  width: 100%;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 10px;
  background: #091625;
  color: var(--text);
  outline: none;
}

.service-delivery-section select {
  color-scheme: dark;
}

.service-delivery-option-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 7px;
}

.service-delivery-radio,
.service-delivery-check {
  display: flex !important;
  gap: 8px;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(255,255,255,.015);
  cursor: pointer;
}

.service-delivery-radio input,
.service-delivery-check input {
  flex: 0 0 auto;
  width: 17px;
  height: 17px;
  margin: 0;
}

.service-delivery-radio span,
.service-delivery-check span {
  font-size:12px;
  line-height: 1.4;
}

.service-delivery-empty {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px dashed rgba(246,181,68,.22);
  border-radius: 9px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.service-delivery-empty.compact {
  padding: 8px 9px;
}

.service-delivery-payment-grid,
.service-delivery-completed-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
}

.service-delivery-payment-grid > div,
.service-delivery-completed-grid > div {
  display: grid;
  gap: 3px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.service-delivery-payment-grid span,
.service-delivery-completed-grid span {
  color: var(--muted);
  font-size:12px;
}

.service-delivery-person-grid {
  display: grid;
  grid-template-columns: 1fr .65fr;
  gap: 8px;
}

.service-delivery-acceptance-text {
  padding: 10px;
  border: 1px solid rgba(54,194,255,.14);
  border-radius: 9px;
  background: rgba(54,194,255,.025);
  color: #b6cadb;
  font-size:12px;
  line-height: 1.5;
}

.service-delivery-signature-wrap {
  display: grid;
  gap: 6px;
}

.service-delivery-signature {
  display: block;
  width: 100%;
  height: 180px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 10px;
  background: #fff;
  touch-action: none;
  cursor: crosshair;
}

.service-delivery-signature-wrap > span {
  color: var(--muted);
  font-size:12px;
}

.service-delivery-footer,
.service-delivery-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 12px;
}

.service-delivery-success {
  display: grid;
  gap: 4px;
  margin-top: 13px;
  padding: 12px;
  border: 1px solid rgba(69,210,151,.20);
  border-radius: 10px;
  background: rgba(69,210,151,.035);
}

.service-delivery-success strong {
  color: #86e8bf;
  font-size: 12px;
}

.service-delivery-success span,
.service-delivery-success small {
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 820px) {
  .service-delivery-readiness,
  .service-delivery-payment-grid,
  .service-delivery-completed-grid,
  .os-delivery-completed-summary,
  .os-delivery-readiness-inline {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .service-delivery-option-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .service-delivery-overlay {
    padding: 6px;
  }

  .service-delivery-workspace {
    width: 100%;
    border-radius: 14px;
  }

  .service-delivery-readiness,
  .service-delivery-payment-grid,
  .service-delivery-completed-grid,
  .service-delivery-person-grid,
  .os-delivery-completed-summary,
  .os-delivery-readiness-inline {
    grid-template-columns: 1fr;
  }

  .service-delivery-footer,
  .service-delivery-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .service-delivery-footer .btn,
  .service-delivery-actions .btn {
    width: 100%;
  }
}


.service-delivery-alert-action,
.service-delivery-empty-action {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.service-delivery-alert-action > div,
.service-delivery-empty-action > span {
  min-width: 0;
  flex: 1;
}

@media (max-width: 680px) {
  .service-delivery-alert-action,
  .service-delivery-empty-action {
    align-items: stretch;
    flex-direction: column;
  }

  .service-delivery-alert-action .btn,
  .service-delivery-empty-action .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.30.0
   AGENDA E AGENDAMENTOS DA OFICINA
   ========================================================= */

.agenda-page-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.agenda-page-head h2 {
  margin: 3px 0 0;
}

.agenda-page-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size:12px;
}

.agenda-week-toolbar {
  display: flex;
  gap: 12px;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 13px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
}

.agenda-week-navigation {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.agenda-status-filter {
  display: grid;
  gap: 4px;
  min-width: 180px;
  color: var(--muted);
  font-size:12px;
}

.agenda-status-filter select {
  min-height: 36px;
  padding: 8px 9px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
}

.agenda-metrics {
  display: grid;
  grid-template-columns: repeat(5,minmax(0,1fr));
  gap: 7px;
  margin-top: 10px;
}

.agenda-metrics > div {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 9px;
  background: rgba(5,15,27,.24);
}

.agenda-metrics span {
  color: var(--muted);
  font-size:12px;
}

.agenda-metrics strong {
  font-size: 12px;
}

.agenda-week {
  display: grid;
  gap: 9px;
  margin-top: 10px;
}

.agenda-day {
  overflow: hidden;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 11px;
  background: rgba(5,15,27,.22);
}

.agenda-day.today {
  border-color: rgba(54,194,255,.30);
  box-shadow: inset 3px 0 0 rgba(54,194,255,.55);
}

.agenda-day-head {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  min-height: 42px;
  padding: 8px 10px;
  border-bottom: 1px solid rgba(61,106,147,.12);
  background: rgba(255,255,255,.012);
}

.agenda-day-head > div {
  display: flex;
  gap: 8px;
  align-items: center;
}

.agenda-day-head span {
  font-weight: 800;
  text-transform: capitalize;
}

.agenda-day-head strong {
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.10);
  color: #78dbff;
  font-size:12px;
}

.agenda-day-add {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 8px;
  background: rgba(54,194,255,.04);
  color: #78dbff;
  cursor: pointer;
  font-size: 15px;
}

.agenda-day-add:hover {
  background: rgba(54,194,255,.09);
}

.agenda-day-body {
  display: grid;
}

.agenda-empty-day {
  padding: 13px 11px;
  color: var(--muted);
  font-size:12px;
}

.agenda-item {
  display: grid;
  grid-template-columns: 76px minmax(250px,1fr) auto;
  gap: 10px;
  align-items: center;
  padding: 10px;
  border-bottom: 1px solid rgba(61,106,147,.10);
}

.agenda-item:last-child {
  border-bottom: 0;
}

.agenda-item.status-cancelled,
.agenda-item.status-no_show {
  opacity: .68;
}

.agenda-item-time {
  display: grid;
  gap: 1px;
  align-content: center;
  min-height: 46px;
  padding: 6px 8px;
  border-radius: 8px;
  background: rgba(54,194,255,.035);
  text-align: center;
}

.agenda-item-time strong {
  font-size: 12px;
}

.agenda-item-time span {
  color: var(--muted);
  font-size:12px;
}

.agenda-item-main {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.agenda-item-title-row {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
}

.agenda-item-title-row > strong {
  font-size:12px;
}

.agenda-customer {
  color: #d7e5f0;
  font-size:12px;
  font-weight: 800;
}

.agenda-item-main small {
  overflow: hidden;
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
  text-overflow: ellipsis;
}

.agenda-status {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 3px 7px;
  border-radius: 999px;
  font-size:12px;
  font-weight: 900;
  white-space: nowrap;
}

.agenda-status-scheduled {
  background: rgba(54,194,255,.08);
  color: #77d9ff;
}

.agenda-status-confirmed {
  background: rgba(69,210,151,.09);
  color: #83e6ba;
}

.agenda-status-arrived {
  background: rgba(165,111,255,.10);
  color: #c5a6ff;
}

.agenda-status-completed {
  background: rgba(69,210,151,.09);
  color: #83e6ba;
}

.agenda-status-cancelled,
.agenda-status-no_show {
  background: rgba(255,107,122,.08);
  color: #ffadb5;
}

.agenda-linked-order {
  width: fit-content;
  margin-top: 2px;
  padding: 4px 7px;
  border: 1px solid rgba(165,111,255,.14);
  border-radius: 7px;
  background: rgba(165,111,255,.035);
  color: #c4abef;
  font-size:12px;
  font-weight: 800;
}

.agenda-item-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-wrap: wrap;
  max-width: 380px;
}

.danger-soft {
  border-color: rgba(255,107,122,.14) !important;
  color: #ffadb5 !important;
}

.agenda-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 2550;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 12px;
  background: rgba(2,8,15,.82);
  backdrop-filter: blur(7px);
}

.agenda-modal {
  width: min(760px,94vw);
  padding: 15px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 16px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.998),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.58);
}

.agenda-modal-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.agenda-modal-head h2 {
  margin: 3px 0 0;
}

.agenda-lock-note {
  margin-top: 10px;
  padding: 9px;
  border: 1px solid rgba(246,181,68,.18);
  border-radius: 9px;
  background: rgba(246,181,68,.035);
  color: #dccba9;
  font-size:12px;
  line-height: 1.45;
}

.agenda-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 9px;
  margin-top: 12px;
}

.agenda-form label {
  display: grid;
  gap: 5px;
}

.agenda-form .span-2 {
  grid-column: 1 / -1;
}

.agenda-form input,
.agenda-form select,
.agenda-form textarea {
  width: 100%;
  min-height: 39px;
  margin: 0;
  padding: 9px 10px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.agenda-form textarea {
  resize: vertical;
}

.agenda-form input:disabled,
.agenda-form select:disabled,
.agenda-form textarea:disabled {
  opacity: .65;
}

.agenda-form-helper {
  display: flex;
  align-items: center;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 9px;
  color: var(--muted);
  font-size:12px;
}

.agenda-modal-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 2px;
}

@media (max-width: 900px) {
  .agenda-metrics {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .agenda-item {
    grid-template-columns: 70px minmax(0,1fr);
  }

  .agenda-item-actions {
    grid-column: 1 / -1;
    justify-content: flex-start;
    max-width: none;
  }
}

@media (max-width: 680px) {
  .agenda-page-head,
  .agenda-week-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  .agenda-page-head .btn {
    width: 100%;
  }

  .agenda-week-navigation {
    display: grid;
    grid-template-columns: repeat(3,1fr);
  }

  .agenda-status-filter {
    width: 100%;
    min-width: 0;
  }

  .agenda-metrics {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .agenda-item {
    grid-template-columns: 62px minmax(0,1fr);
    gap: 8px;
  }

  .agenda-item-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .agenda-item-actions .btn {
    width: 100%;
  }

  .agenda-modal-overlay {
    place-items: start center;
    padding: 6px;
  }

  .agenda-modal {
    width: 100%;
    margin-top: 4px;
    border-radius: 13px;
  }

  .agenda-form {
    grid-template-columns: 1fr;
  }

  .agenda-form .span-2 {
    grid-column: auto;
  }

  .agenda-modal-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .agenda-modal-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.31.0
   CONFIRMAÇÕES / LEMBRETES + SUBMENU DA OS
   ========================================================= */

.os-module-tabs {
  display: flex;
  gap: 7px;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 14px;
  padding: 6px;
  border: 1px solid rgba(61,106,147,.18);
  border-radius: 12px;
  background: rgba(5,15,27,.28);
}

.os-module-tab {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 9px 13px;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: var(--muted);
  cursor: pointer;
  font-weight: 700;
}

.os-module-tab span {
  font-size: 14px;
}

.os-module-tab:hover {
  color: var(--text);
  border-color: rgba(54,194,255,.16);
  background: rgba(54,194,255,.035);
}

.os-module-tab.active {
  color: #04111c;
  border-color: transparent;
  background: var(--accent);
}

.agenda-reminder-panel {
  margin-top: 10px;
  padding: 10px 11px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 10px;
  background:
    linear-gradient(
      135deg,
      rgba(246,181,68,.045),
      rgba(5,15,27,.25)
    );
}

.agenda-reminder-panel > div {
  display: grid;
  gap: 4px;
}

.agenda-reminder-panel strong {
  color: #f0d59e;
}

.agenda-reminder-panel small {
  color: var(--muted);
  font-size:12px;
}

.agenda-communication-history {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  margin-top: 3px;
}

.agenda-communication-history span {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 3px 6px;
  border: 1px solid rgba(69,210,151,.13);
  border-radius: 999px;
  background: rgba(69,210,151,.025);
  color: #9fd7bd;
  font-size:12px;
  line-height: 1.25;
}

.agenda-message-overlay {
  position: fixed;
  inset: 0;
  z-index: 2570;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 12px;
  background: rgba(2,8,15,.84);
  backdrop-filter: blur(7px);
}

.agenda-message-card {
  width: min(680px,94vw);
  padding: 15px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 16px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.998),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 70px rgba(0,0,0,.58);
}

.agenda-message-field {
  display: grid;
  gap: 5px;
  margin-top: 12px;
}

.agenda-message-field textarea {
  width: 100%;
  min-height: 190px;
  margin: 0;
  padding: 10px 11px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 10px;
  background: #091625;
  color: var(--text);
  resize: vertical;
  outline: none;
  line-height: 1.5;
}

.agenda-message-warning {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 9px;
  background: rgba(54,194,255,.025);
}

.agenda-message-warning span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.agenda-message-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 11px;
}

@media (max-width: 680px) {
  .os-module-tabs {
    display: grid;
    grid-template-columns: 1fr;
  }

  .os-module-tab {
    width: 100%;
  }

  .agenda-message-overlay {
    place-items: start center;
    padding: 6px;
  }

  .agenda-message-card {
    width: 100%;
    margin-top: 4px;
    border-radius: 13px;
  }

  .agenda-message-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .agenda-message-actions .btn {
    width: 100%;
  }

  .agenda-communication-history {
    display: grid;
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.32.0
   PAINEL OPERACIONAL DO DIA
   ========================================================= */

.dashboard-operation-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.dashboard-operation-head h2 {
  margin: 3px 0 0;
  text-transform: capitalize;
}

.dashboard-operation-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size:12px;
}

.dashboard-operation-head-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.dashboard-operation-metrics {
  display: grid;
  grid-template-columns:
    repeat(7,minmax(0,1fr));
  gap: 7px;
  margin-top: 12px;
}

.dashboard-operation-metric {
  display: grid;
  gap: 4px;
  min-height: 91px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.14);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.dashboard-operation-metric:hover {
  border-color: rgba(54,194,255,.25);
  background: rgba(54,194,255,.035);
}

.dashboard-operation-metric > span {
  color: var(--muted);
  font-size:12px;
}

.dashboard-operation-metric > strong {
  font-size: 19px;
  line-height: 1;
}

.dashboard-operation-metric > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.3;
}

.dashboard-operation-metric.ok {
  border-color: rgba(69,210,151,.15);
}

.dashboard-operation-metric.warning {
  border-color: rgba(246,181,68,.21);
  background:
    linear-gradient(
      135deg,
      rgba(246,181,68,.04),
      rgba(5,15,27,.24)
    );
}

.dashboard-operation-metric.danger {
  border-color: rgba(255,107,122,.20);
  background:
    linear-gradient(
      135deg,
      rgba(255,107,122,.035),
      rgba(5,15,27,.24)
    );
}

.dashboard-operation-metric.info {
  border-color: rgba(54,194,255,.18);
}

.dashboard-operation-grid {
  display: grid;
  grid-template-columns:
    repeat(2,minmax(0,1fr));
  gap: 10px;
  margin-top: 11px;
}

.dashboard-operation-section {
  min-width: 0;
}

.dashboard-today-section,
.dashboard-stock-section {
  grid-column: 1 / -1;
}

.dashboard-section-count {
  display: grid;
  place-items: center;
  min-width: 28px;
  min-height: 28px;
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.07);
  color: #83dcff;
  font-size:12px;
  font-weight: 900;
}

.dashboard-today-timeline,
.dashboard-work-list,
.dashboard-stock-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.dashboard-appointment-item {
  display: grid;
  grid-template-columns:
    68px
    minmax(0,1fr)
    auto;
  gap: 9px;
  align-items: center;
  width: 100%;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.dashboard-appointment-item:hover,
.dashboard-work-item:hover {
  border-color: rgba(54,194,255,.24);
  background: rgba(54,194,255,.03);
}

.dashboard-appointment-item.status-cancelled,
.dashboard-appointment-item.status-no_show {
  opacity: .58;
}

.dashboard-appointment-time {
  display: grid;
  gap: 2px;
  padding: 7px;
  border-radius: 8px;
  background: rgba(54,194,255,.035);
  text-align: center;
}

.dashboard-appointment-time strong {
  font-size:12px;
}

.dashboard-appointment-time span {
  color: var(--muted);
  font-size:12px;
}

.dashboard-appointment-main {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-appointment-main strong {
  font-size:12px;
}

.dashboard-appointment-main span,
.dashboard-appointment-main small {
  overflow: hidden;
  color: var(--muted);
  font-size:12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dashboard-appointment-status {
  display: grid;
  gap: 3px;
  justify-items: end;
}

.dashboard-appointment-status > span {
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.06);
  color: #9adfff;
  font-size:12px;
  font-weight: 800;
}

.dashboard-appointment-status small {
  color: var(--muted);
  font-size:12px;
}

.dashboard-appointment-status small.attention {
  color: #f0d59e;
}

.dashboard-work-item {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.dashboard-work-item > div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.dashboard-work-item > div > strong {
  font-size:12px;
}

.dashboard-work-item > div > span,
.dashboard-work-item > div > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.dashboard-work-open {
  flex: 0 0 auto;
  color: #8fdfff;
  font-size:12px;
  font-weight: 800;
}

.dashboard-stock-list {
  grid-template-columns:
    repeat(2,minmax(0,1fr));
}

.dashboard-stock-item {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 9px;
  border: 1px solid rgba(255,107,122,.13);
  border-radius: 9px;
  background: rgba(255,107,122,.02);
}

.dashboard-stock-item > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.dashboard-stock-item > div:last-child {
  text-align: right;
}

.dashboard-stock-item strong {
  font-size:12px;
}

.dashboard-stock-item span,
.dashboard-stock-item small {
  color: var(--muted);
  font-size:12px;
}

.dashboard-operation-footnote {
  margin-top: 10px;
  color: var(--muted);
  font-size:12px;
  text-align: right;
}

.dashboard-loading {
  color: var(--muted);
}

@media (max-width: 1180px) {
  .dashboard-operation-metrics {
    grid-template-columns:
      repeat(4,minmax(0,1fr));
  }
}

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

  .dashboard-today-section,
  .dashboard-stock-section {
    grid-column: auto;
  }

  .dashboard-stock-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .dashboard-operation-head {
    align-items: stretch;
    flex-direction: column;
  }

  .dashboard-operation-head-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .dashboard-operation-head-actions .btn {
    width: 100%;
  }

  .dashboard-operation-metrics {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .dashboard-appointment-item {
    grid-template-columns:
      58px
      minmax(0,1fr);
  }

  .dashboard-appointment-status {
    grid-column: 1 / -1;
    justify-items: start;
    grid-template-columns: auto 1fr;
    align-items: center;
  }
}


/* =========================================================
   AC AUTO PRO 1.33.0
   RELATÓRIOS GERENCIAIS
   ========================================================= */

.report-page-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.report-page-head h2 {
  margin: 3px 0 0;
}

.report-page-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size:12px;
}

.report-head-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.report-filter-card {
  display: flex;
  gap: 12px;
  align-items: flex-end;
  justify-content: space-between;
  margin-top: 12px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 10px;
  background: rgba(5,15,27,.24);
}

.report-quick-periods {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
}

.report-date-fields {
  display: flex;
  gap: 7px;
  align-items: flex-end;
}

.report-date-fields label {
  display: grid;
  gap: 4px;
  min-width: 135px;
  color: var(--muted);
  font-size:12px;
}

.report-date-fields input {
  width: 100%;
  min-height: 36px;
  padding: 7px 8px;
  border: 1px solid rgba(88,140,196,.28);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
}

.report-block {
  margin-top: 10px;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.15);
  border-radius: 11px;
  background: rgba(5,15,27,.22);
}

.report-section-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
}

.report-section-head h2 {
  margin: 3px 0 0;
  font-size: 12px;
}

.report-section-value {
  font-size:12px;
}

.report-count {
  display: grid;
  place-items: center;
  min-width: 28px;
  min-height: 28px;
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(54,194,255,.07);
  color: #83dcff;
  font-size:12px;
  font-weight: 900;
}

.report-metrics {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.report-metrics-main {
  grid-template-columns: repeat(5,minmax(0,1fr));
}

.report-metrics.compact {
  grid-template-columns: repeat(2,minmax(0,1fr));
}

.report-metric {
  display: grid;
  gap: 3px;
  min-height: 88px;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(255,255,255,.012);
}

.report-metric > span {
  color: var(--muted);
  font-size:12px;
}

.report-metric > strong {
  font-size: 15px;
  line-height: 1.1;
}

.report-metric > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.3;
}

.report-metric.ok {
  border-color: rgba(69,210,151,.16);
}

.report-metric.info {
  border-color: rgba(54,194,255,.17);
}

.report-metric.warning {
  border-color: rgba(246,181,68,.20);
}

.report-two-columns {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
}

.report-definition-note {
  margin-top: 9px;
  padding: 8px 9px;
  border: 1px solid rgba(54,194,255,.11);
  border-radius: 8px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.report-communication-summary {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 9px;
}

.report-communication-summary span {
  padding: 6px 8px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  color: var(--muted);
  font-size:12px;
}

.report-communication-summary strong {
  color: var(--text);
}

.report-revenue-chart {
  display: flex;
  gap: 4px;
  align-items: flex-end;
  min-height: 190px;
  margin-top: 10px;
  padding: 10px 8px 6px;
  overflow-x: auto;
  border: 1px solid rgba(61,106,147,.11);
  border-radius: 9px;
  background: rgba(0,0,0,.08);
}

.report-revenue-column {
  flex: 1 0 16px;
  display: grid;
  grid-template-rows: 150px auto;
  gap: 5px;
  min-width: 16px;
  max-width: 32px;
  height: 170px;
}

.report-revenue-bar-wrap {
  display: flex;
  align-items: flex-end;
  height: 150px;
  border-radius: 5px;
  background: rgba(54,194,255,.025);
}

.report-revenue-bar {
  width: 100%;
  min-height: 3px;
  border-radius: 5px 5px 2px 2px;
  background:
    linear-gradient(
      180deg,
      rgba(54,194,255,.95),
      rgba(54,194,255,.35)
    );
}

.report-revenue-column > span {
  color: var(--muted);
  font-size:12px;
  text-align: center;
}

.report-payment-methods {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.report-payment-method {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 9px;
  background: rgba(255,255,255,.01);
}

.report-payment-method > div {
  display: grid;
  gap: 2px;
}

.report-payment-method > div:last-child {
  text-align: right;
}

.report-payment-method strong {
  font-size:12px;
}

.report-payment-method span {
  color: var(--muted);
  font-size:12px;
}

.report-table-wrap {
  margin-top: 10px;
}

.report-table-wrap .table {
  min-width: 760px;
}

.report-footnote {
  margin-top: 10px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.10);
  border-radius: 9px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.5;
}

@media (max-width: 1050px) {
  .report-metrics-main {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .report-filter-card {
    align-items: stretch;
    flex-direction: column;
  }

  .report-date-fields {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .report-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .report-head-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .report-head-actions .btn {
    width: 100%;
  }

  .report-two-columns {
    grid-template-columns: 1fr;
  }

  .report-metrics-main,
  .report-metrics.compact {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .report-date-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .report-date-fields label {
    min-width: 0;
  }

  .report-date-fields .btn {
    grid-column: 1 / -1;
    width: 100%;
  }
}

@media (max-width: 480px) {
  .report-metrics-main,
  .report-metrics.compact {
    grid-template-columns: 1fr;
  }
}

@media print {
  body.print-management-report {
    background: #fff !important;
    color: #111 !important;
  }

  body.print-management-report #sidebar,
  body.print-management-report #menuOverlay,
  body.print-management-report .topbar,
  body.print-management-report .report-head-actions,
  body.print-management-report .report-filter-card,
  body.print-management-report .btn,
  body.print-management-report #notificationDrawer,
  body.print-management-report #notificationOverlay {
    display: none !important;
  }

  body.print-management-report .app-shell,
  body.print-management-report .main,
  body.print-management-report #pageContent {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff !important;
    color: #111 !important;
  }

  body.print-management-report .report-block,
  body.print-management-report .report-metric,
  body.print-management-report .report-payment-method,
  body.print-management-report .report-footnote {
    break-inside: avoid;
    border-color: #d7d7d7 !important;
    background: #fff !important;
    color: #111 !important;
  }

  body.print-management-report .report-page-head p,
  body.print-management-report .report-metric > span,
  body.print-management-report .report-metric > small,
  body.print-management-report .report-definition-note,
  body.print-management-report .report-payment-method span,
  body.print-management-report .report-footnote,
  body.print-management-report .report-revenue-column > span {
    color: #555 !important;
  }

  body.print-management-report .report-two-columns {
    grid-template-columns: 1fr 1fr !important;
  }

  body.print-management-report .report-revenue-chart {
    overflow: hidden;
    border-color: #ddd !important;
    background: #fff !important;
  }

  body.print-management-report .report-revenue-bar {
    background: #555 !important;
  }

  body.print-management-report table {
    color: #111 !important;
  }
}


/* =========================================================
   AC AUTO PRO 1.34.0
   REGISTRO TÉCNICO DO SERVIÇO DE AR-CONDICIONADO
   ========================================================= */

.ac-tech-record-card {
  border-color: rgba(54,194,255,.20);
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.025),
      rgba(5,15,27,.22)
    );
}

.ac-tech-card-actions {
  display: flex;
  gap: 7px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

.ac-tech-summary-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 7px;
  margin-top: 11px;
}

.ac-tech-summary-grid > div {
  display: grid;
  gap: 3px;
  min-height: 64px;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
}

.ac-tech-summary-grid span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.25;
}

.ac-tech-summary-grid strong {
  font-size:12px;
}

.ac-tech-before-after {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  margin-top: 8px;
}

.ac-tech-before-after > div {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(255,255,255,.01);
}

.ac-tech-before-after span {
  color: #89ddff;
  font-size:12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.ac-tech-before-after strong {
  font-size:12px;
}

.ac-tech-before-after small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.ac-tech-tags-wrap {
  display: grid;
  gap: 8px;
  margin-top: 9px;
}

.ac-tech-tags-wrap > div {
  display: grid;
  gap: 5px;
}

.ac-tech-tags-wrap > div > span {
  color: var(--muted);
  font-size:12px;
  font-weight: 800;
}

.ac-tech-tags {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}

.ac-tech-tags span {
  padding: 4px 7px;
  border: 1px solid rgba(54,194,255,.14);
  border-radius: 999px;
  background: rgba(54,194,255,.025);
  color: #b9e9fb;
  font-size:12px;
}

.ac-tech-guidance,
.ac-tech-source-warning,
.ac-tech-no-universal,
.ac-tech-completed-note,
.ac-tech-unavailable {
  display: grid;
  gap: 3px;
  margin-top: 9px;
  padding: 8px 9px;
  border: 1px solid rgba(54,194,255,.13);
  border-radius: 9px;
  background: rgba(54,194,255,.025);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.ac-tech-guidance strong,
.ac-tech-source-warning strong,
.ac-tech-no-universal strong,
.ac-tech-completed-note strong,
.ac-tech-unavailable strong {
  color: var(--text);
}

.ac-tech-completed-note {
  border-color: rgba(69,210,151,.15);
  background: rgba(69,210,151,.025);
}

.ac-tech-unavailable {
  border-color: rgba(246,181,68,.18);
  background: rgba(246,181,68,.035);
  color: #d8c9a7;
}

.ac-tech-empty {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 12px;
  border: 1px dashed rgba(54,194,255,.18);
  border-radius: 9px;
}

.ac-tech-empty strong {
  font-size:12px;
}

.ac-tech-empty span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.ac-tech-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 2600;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 12px;
  background: rgba(2,8,15,.86);
  backdrop-filter: blur(7px);
}

.ac-tech-modal {
  width: min(1040px,96vw);
  max-height: calc(100vh - 24px);
  overflow-y: auto;
  padding: 15px;
  border: 1px solid rgba(88,140,196,.30);
  border-radius: 16px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.999),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 80px rgba(0,0,0,.62);
}

.ac-tech-modal-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.ac-tech-modal-head h2 {
  margin: 3px 0 0;
  font-size: 13px;
}

.ac-tech-modal-head p {
  margin: 5px 0 0;
}

.ac-tech-source-warning {
  margin-top: 11px;
  border-color: rgba(246,181,68,.19);
  background: rgba(246,181,68,.035);
}

.ac-tech-source-warning span,
.ac-tech-no-universal span {
  color: var(--muted);
}

.ac-tech-form-section {
  margin-top: 11px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 10px;
  background: rgba(5,15,27,.18);
}

.ac-tech-form-section-head {
  display: flex;
  gap: 10px;
  align-items: flex-end;
  justify-content: space-between;
  margin-bottom: 9px;
}

.ac-tech-form-section-head h3 {
  margin: 2px 0 0;
  font-size:12px;
}

.ac-tech-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.ac-tech-form-grid.four {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.ac-tech-form-grid label,
.ac-tech-pressure-unit,
.ac-tech-notes-label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.ac-tech-form-grid .span-2 {
  grid-column: 1 / -1;
}

.ac-tech-form-grid input,
.ac-tech-form-grid select,
.ac-tech-pressure-unit select,
.ac-tech-notes-label textarea {
  width: 100%;
  min-height: 38px;
  margin: 0;
  padding: 8px 9px;
  border: 1px solid rgba(88,140,196,.27);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.ac-tech-notes-label textarea {
  min-height: 105px;
  resize: vertical;
  line-height: 1.45;
}

.ac-tech-form-grid input:disabled,
.ac-tech-form-grid select:disabled,
.ac-tech-pressure-unit select:disabled,
.ac-tech-notes-label textarea:disabled {
  opacity: .72;
}

.ac-tech-pressure-unit {
  min-width: 150px;
}

.ac-tech-check-group {
  margin: 0 0 10px;
  padding: 0;
  border: 0;
}

.ac-tech-check-group:last-child {
  margin-bottom: 0;
}

.ac-tech-check-group legend {
  margin-bottom: 7px;
  color: var(--text);
  font-size:12px;
  font-weight: 800;
}

.ac-tech-check-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 6px;
}

.ac-tech-check-grid label {
  display: flex;
  gap: 6px;
  align-items: center;
  min-height: 34px;
  padding: 7px 8px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.01);
  color: var(--muted);
  cursor: pointer;
  font-size:12px;
}

.ac-tech-check-grid label:has(input:checked) {
  border-color: rgba(54,194,255,.24);
  background: rgba(54,194,255,.035);
  color: var(--text);
}

.ac-tech-check-grid input {
  width: 14px;
  height: 14px;
  margin: 0;
  accent-color: #36c2ff;
}

.ac-tech-check-grid label:has(input:disabled) {
  cursor: default;
}

.ac-tech-no-universal {
  margin-top: 11px;
}

.ac-tech-modal-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 11px;
}

@media (max-width: 1050px) {
  .ac-tech-summary-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .ac-tech-form-grid.four,
  .ac-tech-check-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .ac-tech-card-actions,
  .ac-tech-modal-actions {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .ac-tech-card-actions .btn,
  .ac-tech-modal-actions .btn {
    width: 100%;
  }

  .ac-tech-summary-grid,
  .ac-tech-before-after,
  .ac-tech-form-grid,
  .ac-tech-form-grid.four,
  .ac-tech-check-grid {
    grid-template-columns: 1fr;
  }

  .ac-tech-form-grid .span-2 {
    grid-column: auto;
  }

  .ac-tech-form-section-head {
    align-items: stretch;
    flex-direction: column;
  }

  .ac-tech-pressure-unit {
    min-width: 0;
  }

  .ac-tech-modal-overlay {
    place-items: start center;
    padding: 5px;
  }

  .ac-tech-modal {
    width: 100%;
    max-height: none;
    margin-top: 3px;
    border-radius: 13px;
  }
}


/* =========================================================
   AC AUTO PRO 1.35.0
   HISTÓRICO TÉCNICO DO AR-CONDICIONADO POR VEÍCULO
   ========================================================= */

.history-ac-metric {
  border-color: rgba(54,194,255,.20);
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.035),
      rgba(5,15,27,.22)
    );
}

.history-ac-overview {
  border-color: rgba(54,194,255,.19);
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.025),
      rgba(5,15,27,.22)
    );
}

.history-ac-overview-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 7px;
  margin-top: 10px;
}

.history-ac-overview-grid > div {
  display: grid;
  gap: 3px;
  min-height: 61px;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.22);
}

.history-ac-overview-grid span,
.history-ac-spec-grid span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.25;
}

.history-ac-overview-grid strong,
.history-ac-spec-grid strong {
  font-size:12px;
}

.history-ac-overview-foot {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  margin-top: 8px;
}

.history-ac-overview-foot span {
  padding: 5px 7px;
  border: 1px solid rgba(61,106,147,.11);
  border-radius: 7px;
  color: var(--muted);
  font-size:12px;
}

.history-ac-overview-empty {
  margin-top: 10px;
  padding: 12px;
  border: 1px dashed rgba(54,194,255,.17);
  border-radius: 9px;
  color: var(--muted);
  font-size:12px;
}

.history-ac-record {
  display: grid;
  gap: 8px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.022),
      rgba(5,15,27,.18)
    );
}

.history-ac-record.completed {
  border-color: rgba(69,210,151,.16);
}

.history-ac-record.draft {
  border-color: rgba(246,181,68,.18);
}

.history-ac-record-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
}

.history-ac-record-head > div {
  display: grid;
  gap: 2px;
}

.history-ac-record-head strong {
  font-size:12px;
}

.history-ac-spec-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 6px;
}

.history-ac-spec-grid > div {
  display: grid;
  gap: 3px;
  padding: 7px 8px;
  border: 1px solid rgba(61,106,147,.11);
  border-radius: 8px;
  background: rgba(255,255,255,.01);
}

.history-ac-measurements {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 7px;
}

.history-ac-measurements > div {
  display: grid;
  gap: 3px;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.11);
  border-radius: 8px;
  background: rgba(5,15,27,.18);
}

.history-ac-measurements > div > span {
  color: #8edfff;
  font-size:12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.history-ac-measurements strong {
  font-size:12px;
}

.history-ac-measurements small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.history-ac-tag-block {
  display: grid;
  gap: 5px;
}

.history-ac-tag-block > span,
.history-ac-notes > span {
  color: var(--muted);
  font-size:12px;
  font-weight: 800;
}

.history-ac-tags {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
}

.history-ac-tags span {
  padding: 4px 7px;
  border: 1px solid rgba(54,194,255,.13);
  border-radius: 999px;
  background: rgba(54,194,255,.022);
  color: #beeafa;
  font-size:12px;
}

.history-ac-notes {
  display: grid;
  gap: 4px;
}

.history-ac-notes p {
  margin: 0;
  color: #cad7e1;
  font-size:12px;
  line-height: 1.5;
  white-space: pre-wrap;
}

.history-ac-source {
  display: flex;
  gap: 5px;
  align-items: baseline;
  flex-wrap: wrap;
  padding-top: 5px;
  border-top: 1px solid rgba(61,106,147,.10);
  font-size:12px;
}

.history-ac-source span {
  color: var(--muted);
}

.history-ac-source strong {
  color: #d5e3ec;
}

.history-ac-missing {
  margin-top: 10px;
  padding: 8px 9px;
  border: 1px dashed rgba(61,106,147,.13);
  border-radius: 8px;
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 1100px) {
  .history-ac-overview-grid,
  .history-ac-spec-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 680px) {
  .history-main-metrics {
    grid-template-columns: 1fr 1fr !important;
  }

  .history-ac-overview-grid,
  .history-ac-spec-grid,
  .history-ac-measurements {
    grid-template-columns: 1fr;
  }

  .history-ac-record-head {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (max-width: 440px) {
  .history-main-metrics {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   AC AUTO PRO 1.36.0
   BASE TÉCNICA 2.0
   ========================================================= */

.tech2-summary-grid {
  margin-bottom: 10px;
}

.tech2-metric.info {
  border-color: rgba(54,194,255,.18);
}

.tech2-metric.warning {
  border-color: rgba(246,181,68,.22);
  background:
    linear-gradient(
      135deg,
      rgba(246,181,68,.035),
      rgba(5,15,27,.22)
    );
}

.tech2-metric.ok {
  border-color: rgba(69,210,151,.17);
}

.tech2-shell {
  padding: 0;
  overflow: hidden;
}

.tech2-tabs {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  border-bottom: 1px solid rgba(61,106,147,.14);
}

.tech2-tab {
  min-height: 42px;
  padding: 9px 10px;
  border: 0;
  border-right: 1px solid rgba(61,106,147,.10);
  background: rgba(5,15,27,.15);
  color: var(--muted);
  cursor: pointer;
  font-size:12px;
  font-weight: 800;
}

.tech2-tab:last-child {
  border-right: 0;
}

.tech2-tab:hover {
  color: var(--text);
  background: rgba(54,194,255,.025);
}

.tech2-tab.active {
  background:
    linear-gradient(
      180deg,
      rgba(54,194,255,.075),
      rgba(54,194,255,.018)
    );
  color: #bcecff;
  box-shadow:
    inset 0 -2px 0 rgba(54,194,255,.72);
}

.tech2-section-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 13px 13px 0;
}

.tech2-section-head h2 {
  margin: 3px 0 0;
  font-size: 13px;
}

.tech2-section-head p {
  max-width: 760px;
  margin: 5px 0 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-filter-grid {
  display: grid;
  grid-template-columns:
    minmax(240px,2fr)
    repeat(5,minmax(125px,1fr))
    auto;
  gap: 7px;
  align-items: end;
  padding: 12px 13px 0;
}

.tech2-filter-grid label,
.tech2-generation-selectors label,
.tech2-inner-card label,
.tech2-review-notes {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.tech2-filter-grid input,
.tech2-filter-grid select,
.tech2-generation-selectors select,
.tech2-inner-card input,
.tech2-inner-card select,
.tech2-inner-card textarea,
.tech2-review-notes textarea {
  width: 100%;
  min-height: 36px;
  margin: 0;
  padding: 7px 8px;
  border: 1px solid rgba(88,140,196,.26);
  border-radius: 8px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.tech2-inner-card textarea,
.tech2-review-notes textarea {
  min-height: 88px;
  resize: vertical;
  line-height: 1.45;
}

.tech2-import-note,
.tech2-scope-note,
.tech2-generation-warning {
  display: flex;
  gap: 5px;
  align-items: baseline;
  margin: 10px 13px 0;
  padding: 8px 9px;
  border: 1px solid rgba(54,194,255,.12);
  border-radius: 8px;
  background: rgba(54,194,255,.025);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-import-note strong,
.tech2-scope-note strong,
.tech2-generation-warning strong {
  color: var(--text);
}

.tech2-record-table-wrap {
  margin-top: 10px;
  border-top: 1px solid rgba(61,106,147,.10);
}

.tech2-record-table {
  min-width: 1160px;
}

.tech2-record-table tbody tr {
  cursor: default;
}

.tech2-conflict-row {
  background: rgba(246,181,68,.023);
}

.tech2-conflict-label {
  margin-top: 3px;
  color: #e7c77b;
  font-size:12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.tech2-source-mini {
  display: grid;
  gap: 2px;
  max-width: 230px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.tech2-source-mini small {
  color: #91c9df;
}

.tech2-pagination {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 10px 13px 13px;
  border-top: 1px solid rgba(61,106,147,.10);
}

.tech2-pagination span {
  color: var(--muted);
  font-size:12px;
}

.tech2-pagination strong {
  color: var(--text);
}

.tech2-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 2700;
  display: grid;
  place-items: center;
  overflow-y: auto;
  padding: 12px;
  background: rgba(2,8,15,.87);
  backdrop-filter: blur(7px);
}

.tech2-modal {
  width: min(1040px,96vw);
  max-height: calc(100vh - 24px);
  overflow-y: auto;
  padding: 15px;
  border: 1px solid rgba(88,140,196,.31);
  border-radius: 16px;
  background:
    linear-gradient(
      180deg,
      rgba(11,27,45,.999),
      rgba(6,17,30,.999)
    );
  box-shadow: 0 24px 80px rgba(0,0,0,.62);
}

.tech2-modal-head {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
}

.tech2-modal-head h2 {
  margin: 3px 0 0;
  font-size: 12px;
}

.tech2-modal-head p {
  margin: 4px 0 0;
}

.tech2-conflict-warning {
  display: grid;
  gap: 3px;
  margin-top: 10px;
  padding: 9px;
  border: 1px solid rgba(246,181,68,.22);
  border-radius: 9px;
  background: rgba(246,181,68,.04);
}

.tech2-conflict-warning strong {
  color: #eed08b;
  font-size:12px;
}

.tech2-conflict-warning span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-detail-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 7px;
  margin-top: 10px;
}

.tech2-detail-grid > div {
  display: grid;
  gap: 3px;
  padding: 8px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.01);
}

.tech2-detail-grid span {
  color: var(--muted);
  font-size:12px;
}

.tech2-detail-grid strong {
  font-size:12px;
  line-height: 1.35;
}

.tech2-source-box,
.tech2-notes-box {
  display: grid;
  gap: 4px;
  margin-top: 9px;
  padding: 9px;
  border: 1px solid rgba(54,194,255,.13);
  border-radius: 9px;
  background: rgba(54,194,255,.022);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-source-box > strong {
  color: var(--text);
  font-size:12px;
}

.tech2-source-box p,
.tech2-notes-box p {
  margin: 2px 0 0;
  white-space: pre-wrap;
}

.tech2-notes-box > span {
  color: var(--text);
  font-weight: 800;
}

.tech2-review-notes {
  margin-top: 9px;
}

.tech2-modal-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 10px;
}

.tech2-source-layout {
  gap: 10px;
  padding: 12px 13px 13px;
}

.tech2-inner-card {
  padding: 11px;
}

.tech2-inner-card h3 {
  margin: 0 0 9px;
  font-size:12px;
}

.tech2-inner-card label + label,
.tech2-inner-card .form-grid + label,
.tech2-inner-card label + .form-grid,
.tech2-inner-card .form-grid + .form-grid {
  margin-top: 7px;
}

.tech2-inner-card .btn {
  margin-top: 9px;
}

.tech2-source-list {
  display: grid;
  gap: 7px;
}

.tech2-source-item,
.tech2-generation-list article {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.12);
  border-radius: 8px;
  background: rgba(255,255,255,.01);
}

.tech2-source-item > div,
.tech2-generation-list article > div {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.tech2-source-item strong,
.tech2-generation-list strong {
  font-size:12px;
}

.tech2-source-item span,
.tech2-source-item small,
.tech2-generation-list span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-generation-selectors {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  padding: 12px 13px 0;
}

.tech2-generation-list {
  display: grid;
  gap: 7px;
}

.tech2-generation-warning {
  margin: 8px 0 0;
}

.tech2-legacy-box {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  margin: 12px 13px 0;
  padding: 12px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(255,255,255,.01);
}

.tech2-legacy-box > div {
  display: grid;
  gap: 3px;
}

.tech2-legacy-box strong {
  font-size:12px;
}

.tech2-legacy-box span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-scope-note {
  margin-bottom: 13px;
}

@media (max-width: 1180px) {
  .tech2-filter-grid {
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

  .tech2-search-wide {
    grid-column: span 2;
  }

  .tech2-detail-grid {
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 820px) {
  .tech2-tabs {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .tech2-filter-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .tech2-search-wide {
    grid-column: 1 / -1;
  }

  .tech2-detail-grid {
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .tech2-source-layout {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 580px) {
  .tech2-tabs,
  .tech2-filter-grid,
  .tech2-detail-grid,
  .tech2-generation-selectors {
    grid-template-columns: 1fr;
  }

  .tech2-search-wide {
    grid-column: auto;
  }

  .tech2-pagination,
  .tech2-modal-actions,
  .tech2-legacy-box {
    align-items: stretch;
    flex-direction: column;
  }

  .tech2-pagination .btn,
  .tech2-modal-actions .btn,
  .tech2-legacy-box .btn {
    width: 100%;
  }

  .tech2-modal-overlay {
    place-items: start center;
    padding: 5px;
  }

  .tech2-modal {
    width: 100%;
    max-height: none;
    border-radius: 13px;
  }
}


/* =========================================================
   AC AUTO PRO 1.36.0 REV2
   CORREÇÃO SEGURA DOS DADOS IMPORTADOS
   ========================================================= */

.tech2-correction-applied {
  display: grid;
  gap: 6px;
  margin: 10px 0;
  padding: 10px;
  border: 1px solid rgba(246,181,68,.22);
  border-radius: 10px;
  background: rgba(246,181,68,.035);
}

.tech2-correction-applied > div:first-child {
  display: grid;
  gap: 3px;
}

.tech2-correction-applied strong {
  color: var(--text);
}

.tech2-correction-applied span,
.tech2-correction-applied small,
.tech2-correction-applied p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-original-mini {
  padding-top: 6px;
  border-top: 1px solid rgba(246,181,68,.12);
}

.tech2-original-mini span {
  display: block;
}

.tech2-correction-rule {
  display: grid;
  gap: 3px;
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 9px;
  background: rgba(54,194,255,.025);
}

.tech2-correction-rule strong {
  font-size:12px;
}

.tech2-correction-rule span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-correction-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin-top: 11px;
}

.tech2-correction-grid label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.tech2-correction-grid .span-2 {
  grid-column: span 2;
}

.tech2-correction-grid .span-3 {
  grid-column: 1 / -1;
}

.tech2-correction-grid input,
.tech2-correction-grid textarea {
  width: 100%;
  min-height: 38px;
  margin: 0;
  padding: 8px 9px;
  border: 1px solid rgba(88,140,196,.27);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  outline: none;
}

.tech2-correction-grid textarea {
  min-height: 80px;
  resize: vertical;
  line-height: 1.45;
}

.tech2-correction-grid .correction-reason textarea {
  border-color: rgba(246,181,68,.25);
  background: rgba(246,181,68,.025);
}

.tech2-correction-history-list {
  display: grid;
  gap: 7px;
  margin-top: 10px;
}

.tech2-correction-history-item {
  display: grid;
  grid-template-columns: minmax(170px,.35fr) 1fr;
  gap: 10px;
  padding: 9px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(5,15,27,.18);
}

.tech2-correction-history-item > div {
  display: grid;
  gap: 2px;
}

.tech2-correction-history-item strong {
  font-size:12px;
}

.tech2-correction-history-item small,
.tech2-correction-history-item p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

@media (max-width: 760px) {
  .tech2-correction-grid {
    grid-template-columns: 1fr;
  }

  .tech2-correction-grid .span-2,
  .tech2-correction-grid .span-3 {
    grid-column: auto;
  }

  .tech2-correction-history-item {
    grid-template-columns: 1fr;
  }
}


/* =========================================================
   AC AUTO PRO 1.36.0 REV3
   REPOSIÇÃO DE ÓLEO POR COMPONENTE / INTERVENÇÃO
   ========================================================= */

.tech2-oil-rule-entry {
  display: flex;
  gap: 12px;
  align-items: center;
  justify-content: space-between;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.17);
  border-radius: 10px;
  background:
    linear-gradient(
      135deg,
      rgba(54,194,255,.025),
      rgba(5,15,27,.18)
    );
}

.tech2-oil-rule-entry > div {
  display: grid;
  gap: 3px;
}

.tech2-oil-rule-entry strong {
  font-size:12px;
}

.tech2-oil-rule-entry p {
  max-width: 700px;
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-oil-rule-modal {
  width: min(1120px,96vw);
}

.tech2-oil-rule-warning,
.tech2-oil-rule-bottom-note {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 9px 10px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 9px;
  background: rgba(246,181,68,.035);
}

.tech2-oil-rule-warning strong,
.tech2-oil-rule-bottom-note strong {
  color: var(--text);
  font-size:12px;
}

.tech2-oil-rule-warning span,
.tech2-oil-rule-bottom-note span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.5;
}

.tech2-oil-rule-form,
.tech2-oil-rules-list-section {
  margin-top: 11px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 10px;
  background: rgba(5,15,27,.17);
}

.tech2-oil-rule-form-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 9px;
}

.tech2-oil-rule-form-head h3,
.tech2-oil-rules-list-section h3 {
  margin: 2px 0 0;
  font-size:12px;
}

.tech2-oil-rule-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.tech2-oil-rule-grid label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.tech2-oil-rule-grid .span-2 {
  grid-column: span 2;
}

.tech2-oil-rule-grid .span-3 {
  grid-column: 1 / -1;
}

.tech2-oil-rule-grid input,
.tech2-oil-rule-grid select,
.tech2-oil-rule-grid textarea {
  width: 100%;
  min-height: 38px;
  margin: 0;
  padding: 8px 9px;
  border: 1px solid rgba(88,140,196,.27);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.tech2-oil-rule-grid textarea {
  min-height: 78px;
  resize: vertical;
  line-height: 1.45;
}

.tech2-oil-rule-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  margin-top: 9px;
}

.tech2-oil-rule-source {
  display: flex;
  gap: 5px;
  align-items: baseline;
  flex-wrap: wrap;
  color: var(--muted);
  font-size:12px;
}

.tech2-oil-rule-source strong {
  color: var(--text);
}

.tech2-oil-rules-list {
  display: grid;
  gap: 7px;
  margin-top: 9px;
}

.tech2-oil-rule-card {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  justify-content: space-between;
  padding: 10px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 9px;
  background: rgba(255,255,255,.01);
}

.tech2-oil-rule-card-main {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.tech2-oil-rule-title {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
}

.tech2-oil-rule-title strong {
  font-size:12px;
}

.tech2-oil-rule-card-main > span,
.tech2-oil-rule-card-main > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-oil-rule-card-main > p {
  margin: 2px 0 0;
  color: #c6d3dc;
  font-size:12px;
  line-height: 1.45;
}

.tech2-oil-rule-quantity {
  color: #91e2ff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.1;
}

.tech2-oil-rule-card-actions {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
}

@media (max-width: 780px) {
  .tech2-oil-rule-entry,
  .tech2-oil-rule-actions,
  .tech2-oil-rule-card {
    align-items: stretch;
    flex-direction: column;
  }

  .tech2-oil-rule-entry .btn,
  .tech2-oil-rule-actions .btn {
    width: 100%;
  }

  .tech2-oil-rule-grid {
    grid-template-columns: 1fr;
  }

  .tech2-oil-rule-grid .span-2,
  .tech2-oil-rule-grid .span-3 {
    grid-column: auto;
  }

  .tech2-oil-rule-card-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .tech2-oil-rule-card-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.36.1
   CLASSIFICAR / PROMOVER PARA BASE TÉCNICA
   ========================================================= */

.tech2-classification-modal {
  width: min(1160px,96vw);
}

.tech2-classify-rule,
.tech2-classify-conflict,
.tech2-classify-final-warning,
.tech2-classification-applied {
  display: grid;
  gap: 4px;
  margin-top: 10px;
  padding: 10px;
  border: 1px solid rgba(54,194,255,.17);
  border-radius: 10px;
  background: rgba(54,194,255,.025);
}

.tech2-classify-rule strong,
.tech2-classify-conflict strong,
.tech2-classify-final-warning strong,
.tech2-classification-applied strong {
  color: var(--text);
}

.tech2-classify-rule span,
.tech2-classify-conflict span,
.tech2-classify-final-warning span,
.tech2-classification-applied span,
.tech2-classification-applied small,
.tech2-classification-applied p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.5;
}

.tech2-classify-conflict {
  border-color: rgba(246,181,68,.24);
  background: rgba(246,181,68,.04);
}

.tech2-classify-final-warning {
  border-color: rgba(69,210,151,.18);
  background: rgba(69,210,151,.025);
}

.tech2-classification-applied {
  border-color: rgba(69,210,151,.20);
  background:
    linear-gradient(
      135deg,
      rgba(69,210,151,.035),
      rgba(5,15,27,.16)
    );
}

.tech2-classification-applied > div:first-child {
  display: grid;
  gap: 3px;
}

.tech2-classification-spec {
  display: grid;
  gap: 2px;
  margin-top: 3px;
  padding: 7px 8px;
  border: 1px solid rgba(69,210,151,.12);
  border-radius: 8px;
  background: rgba(0,0,0,.08);
}

.tech2-classification-spec > span {
  color: #9ae4bd;
  font-size:12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}

.tech2-classification-spec > strong {
  font-size:12px;
}

.tech2-classify-source,
.tech2-classify-step {
  margin-top: 10px;
  padding: 11px;
  border: 1px solid rgba(61,106,147,.13);
  border-radius: 10px;
  background: rgba(5,15,27,.17);
}

.tech2-classify-source-grid {
  display: grid;
  grid-template-columns: repeat(6,minmax(0,1fr));
  gap: 6px;
  margin-top: 8px;
}

.tech2-classify-source-grid > div {
  display: grid;
  gap: 3px;
  padding: 7px 8px;
  border: 1px solid rgba(61,106,147,.11);
  border-radius: 8px;
  background: rgba(255,255,255,.01);
}

.tech2-classify-source-grid span {
  color: var(--muted);
  font-size:12px;
}

.tech2-classify-source-grid strong {
  font-size:12px;
}

.tech2-classify-step-head {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin-bottom: 9px;
}

.tech2-classify-step-head > span {
  display: grid;
  place-items: center;
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  border: 1px solid rgba(54,194,255,.20);
  border-radius: 999px;
  background: rgba(54,194,255,.05);
  color: #94e0ff;
  font-size:12px;
  font-weight: 900;
}

.tech2-classify-step-head > div {
  display: grid;
  gap: 2px;
}

.tech2-classify-step-head strong {
  font-size:12px;
}

.tech2-classify-step-head small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.tech2-classify-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.tech2-classify-grid label,
.tech2-classify-existing-spec label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.tech2-classify-grid .span-2 {
  grid-column: span 2;
}

.tech2-classify-grid .span-3 {
  grid-column: 1 / -1;
}

.tech2-classify-grid input,
.tech2-classify-grid select,
.tech2-classify-grid textarea,
.tech2-classify-existing-spec select {
  width: 100%;
  min-height: 38px;
  margin: 0;
  padding: 8px 9px;
  border: 1px solid rgba(88,140,196,.27);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.tech2-classify-grid textarea {
  min-height: 70px;
  resize: vertical;
  line-height: 1.45;
}

.tech2-classify-existing-spec {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(240px,.75fr);
  gap: 10px;
  align-items: end;
  margin-bottom: 9px;
}

.tech2-classify-existing-spec > div {
  padding: 8px 9px;
  border: 1px solid rgba(61,106,147,.10);
  border-radius: 8px;
  line-height: 1.45;
}

.tech2-classify-source-oil {
  display: grid;
  gap: 2px;
  padding: 8px 9px;
  border: 1px solid rgba(246,181,68,.13);
  border-radius: 8px;
  background: rgba(246,181,68,.025);
}

.tech2-classify-source-oil span,
.tech2-classify-source-oil small {
  color: var(--muted);
  font-size:12px;
}

.tech2-classify-source-oil strong {
  font-size:12px;
}

.tech2-classify-grid.disabled-section {
  opacity: .44;
  pointer-events: none;
}

.tech2-classify-ack {
  display: flex;
  gap: 7px;
  align-items: flex-start;
  margin-top: 10px;
  padding: 9px;
  border: 1px solid rgba(246,181,68,.20);
  border-radius: 9px;
  background: rgba(246,181,68,.025);
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-classify-ack input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 1px 0 0;
  accent-color: #36c2ff;
}

@media (max-width: 920px) {
  .tech2-classify-source-grid {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .tech2-classify-existing-spec {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .tech2-classify-grid,
  .tech2-classify-source-grid {
    grid-template-columns: 1fr;
  }

  .tech2-classify-grid .span-2,
  .tech2-classify-grid .span-3 {
    grid-column: auto;
  }
}

/* =========================================================
   AC AUTO PRO 1.36.2
   CONSULTA TÉCNICA 2.0 + VALIDAÇÃO FINAL
   ========================================================= */

.tech2-validation-modal {
  width: min(1120px, 96vw);
}

.tech2-validation-warning,
.tech2-validation-structure,
.tech2-validation-sources,
.tech2-validation-oil-rules {
  margin-top: 10px;
  padding: 11px;
  border: 1px solid rgba(61, 106, 147, .14);
  border-radius: 10px;
  background: rgba(5, 15, 27, .18);
}

.tech2-validation-warning {
  display: grid;
  gap: 4px;
  border-color: rgba(69, 210, 151, .2);
  background: rgba(69, 210, 151, .03);
}

.tech2-validation-warning strong {
  color: var(--text);
  font-size:12px;
}

.tech2-validation-warning span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-validation-path {
  display: flex;
  gap: 6px;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 7px;
}

.tech2-validation-path strong {
  font-size:12px;
}

.tech2-validation-path span {
  color: #5e809a;
  font-size:12px;
}

.tech2-validation-meta {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 7px;
}

.tech2-validation-meta span {
  padding: 4px 7px;
  border: 1px solid rgba(88, 140, 196, .15);
  border-radius: 999px;
  color: var(--muted);
  font-size:12px;
}

.tech2-validation-data-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  margin-top: 10px;
}

.tech2-validation-data-grid article {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(61, 106, 147, .13);
  border-radius: 9px;
  background: rgba(5, 15, 27, .17);
}

.tech2-validation-data-grid article > span,
.tech2-validation-data-grid article > small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.tech2-validation-data-grid article > strong {
  font-size:12px;
}

.tech2-validation-source-list,
.tech2-validation-rule-list {
  display: grid;
  gap: 7px;
  margin-top: 8px;
}

.tech2-validation-source-list article {
  display: grid;
  gap: 3px;
  padding: 8px 9px;
  border: 1px solid rgba(61, 106, 147, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .01);
}

.tech2-validation-source-list article strong {
  font-size:12px;
}

.tech2-validation-source-list article span,
.tech2-validation-source-list article small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-validation-reference,
.tech2-validation-notes {
  display: grid;
  gap: 4px;
  margin-top: 9px;
  color: var(--muted);
  font-size:12px;
}

.tech2-validation-reference input,
.tech2-validation-notes textarea {
  width: 100%;
  min-height: 38px;
  padding: 8px 9px;
  border: 1px solid rgba(88, 140, 196, .27);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  outline: none;
}

.tech2-validation-notes textarea {
  min-height: 82px;
  resize: vertical;
  line-height: 1.45;
}

.tech2-validation-rule {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  padding: 8px 9px;
  border: 1px solid rgba(61, 106, 147, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .01);
}

.tech2-validation-rule.verified {
  border-color: rgba(69, 210, 151, .18);
  background: rgba(69, 210, 151, .02);
}

.tech2-validation-rule > input {
  flex: 0 0 auto;
  width: 15px;
  height: 15px;
  margin: 2px 0 0;
  accent-color: #36c2ff;
}

.tech2-validation-rule-body {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.tech2-validation-rule-body strong {
  font-size:12px;
}

.tech2-validation-rule-body span,
.tech2-validation-rule-body small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-consult-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, .85fr);
  gap: 18px;
  align-items: center;
  padding: 20px;
  border: 1px solid rgba(54, 194, 255, .14);
  border-radius: 16px;
  background:
    radial-gradient(circle at 10% 0%, rgba(54, 194, 255, .07), transparent 34%),
    linear-gradient(135deg, rgba(5, 15, 27, .96), rgba(8, 22, 38, .92));
}

.tech2-consult-copy {
  display: grid;
  gap: 7px;
}

.tech2-consult-copy h2 {
  margin: 0;
  max-width: 680px;
  font-size: clamp(20px, 3vw, 30px);
  line-height: 1.12;
}

.tech2-consult-copy p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.55;
}

.tech2-free-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
  padding: 8px;
  border: 1px solid rgba(88, 140, 196, .18);
  border-radius: 12px;
  background: rgba(4, 12, 22, .55);
}

.tech2-free-search input {
  min-width: 0;
  min-height: 42px;
  padding: 9px 11px;
  border: 1px solid rgba(88, 140, 196, .22);
  border-radius: 9px;
  background: #081522;
  color: var(--text);
  outline: none;
}

.tech2-vehicle-filter-card {
  overflow: visible;
}

.tech2-vehicle-filter-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
  margin-top: 11px;
}

.tech2-vehicle-filter-grid label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size:12px;
}

.tech2-vehicle-filter-grid select {
  width: 100%;
  min-height: 40px;
  padding: 8px 9px;
  border: 1px solid rgba(88, 140, 196, .26);
  border-radius: 9px;
  background: #091625;
  color: var(--text);
  color-scheme: dark;
  outline: none;
}

.tech2-vehicle-filter-grid select:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.tech2-application-filter {
  grid-column: span 2;
}

.tech2-filter-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  margin-top: 10px;
}

.tech2-consult-start {
  display: grid;
  gap: 5px;
  place-items: center;
  min-height: 145px;
  padding: 24px;
  border: 1px dashed rgba(88, 140, 196, .2);
  border-radius: 12px;
  text-align: center;
}

.tech2-consult-start strong {
  font-size:12px;
}

.tech2-consult-start span {
  max-width: 640px;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-result-generation,
.tech2-detail-generation,
.tech2-result-ac-config,
.tech2-detail-ac-config,
.tech2-result-meta {
  color: var(--muted);
  font-size:12px;
}

.tech2-result-generation {
  margin-top: 3px;
  color: #8fcce8;
}

.tech2-result-ac-config {
  display: block;
  margin-top: 4px;
}

.tech2-result-meta {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 7px;
  padding-top: 7px;
  border-top: 1px solid rgba(61, 106, 147, .1);
}

.tech2-result-meta span {
  padding: 3px 6px;
  border: 1px solid rgba(88, 140, 196, .11);
  border-radius: 999px;
}

.tech2-result-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.tech2-detail-header {
  gap: 12px;
}

.tech2-detail-generation {
  margin-top: 3px;
  color: #8fcce8;
}

.tech2-detail-ac-config {
  display: inline-flex;
  gap: 4px;
  align-items: baseline;
  margin-top: 6px;
  padding: 4px 7px;
  border: 1px solid rgba(54, 194, 255, .13);
  border-radius: 999px;
}

.tech2-verification-box {
  display: grid;
  gap: 3px;
  min-width: 190px;
  padding: 10px;
  border: 1px solid rgba(69, 210, 151, .18);
  border-radius: 10px;
  background: rgba(69, 210, 151, .025);
}

.tech2-verification-box span,
.tech2-verification-box small {
  color: var(--muted);
  font-size:12px;
}

.tech2-verification-box strong {
  color: #8be8b9;
  font-size:12px;
}

.tech2-climate-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.tech2-source-oil-note,
.tech2-oil-sum-warning {
  display: grid;
  gap: 3px;
  margin-top: 9px;
  padding: 9px 10px;
  border: 1px solid rgba(246, 181, 68, .17);
  border-radius: 9px;
  background: rgba(246, 181, 68, .025);
}

.tech2-source-oil-note strong,
.tech2-oil-sum-warning strong {
  font-size:12px;
}

.tech2-source-oil-note span,
.tech2-source-oil-note small,
.tech2-oil-sum-warning span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.tech2-source-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.tech2-source-card {
  display: grid;
  gap: 7px;
  padding: 10px;
  border: 1px solid rgba(61, 106, 147, .13);
  border-radius: 9px;
  background: rgba(5, 15, 27, .18);
}

.tech2-source-card > div {
  display: grid;
  gap: 3px;
}

.tech2-source-card span,
.tech2-source-card small {
  color: var(--muted);
  font-size:12px;
}

.tech2-source-card strong {
  font-size:12px;
}

.tech2-source-card p {
  margin: 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.tech2-oil-replenishment-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.tech2-oil-replenishment-card {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid rgba(61, 106, 147, .13);
  border-radius: 9px;
  background: rgba(5, 15, 27, .18);
}

.tech2-oil-replenishment-head {
  display: flex;
  gap: 10px;
  align-items: flex-start;
  justify-content: space-between;
}

.tech2-oil-replenishment-head > div:first-child {
  display: grid;
  gap: 2px;
}

.tech2-oil-replenishment-head span,
.tech2-oil-replenishment-card > small {
  color: var(--muted);
  font-size:12px;
}

.tech2-oil-replenishment-head strong {
  font-size:12px;
}

.tech2-oil-replenishment-value {
  flex: 0 0 auto;
  color: #90e2ff;
  font-size: 12px;
  font-weight: 900;
  line-height: 1;
}

.tech2-oil-replenishment-card > p {
  margin: 0;
  color: #c7d4dd;
  font-size:12px;
  line-height: 1.4;
}

.tech2-disclaimer {
  margin-bottom: 16px;
}

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

  .tech2-validation-data-grid,
  .tech2-climate-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech2-vehicle-filter-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech2-application-filter {
    grid-column: span 2;
  }
}

@media (max-width: 680px) {
  .tech2-free-search,
  .tech2-vehicle-filter-grid,
  .tech2-validation-data-grid,
  .tech2-climate-grid,
  .tech2-source-grid,
  .tech2-oil-replenishment-grid {
    grid-template-columns: 1fr;
  }

  .tech2-application-filter {
    grid-column: auto;
  }

  .tech2-filter-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .tech2-filter-actions .btn,
  .tech2-free-search .btn {
    width: 100%;
  }

  .tech2-result-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .tech2-oil-replenishment-head {
    flex-direction: column;
  }
}


/* =========================================================
   AC AUTO PRO 1.36.2 REV1
   REVISÃO VISUAL GERAL — LEGIBILIDADE E CONSISTÊNCIA
   ---------------------------------------------------------
   Mantém a identidade visual atual.
   Corrige:
   - textos excessivamente pequenos;
   - hierarquia tipográfica;
   - alinhamentos de formulários e cabeçalhos;
   - espaçamento de cards/seções;
   - densidade de tabelas;
   - botões e áreas de toque;
   - modais;
   - Base Técnica 2.0;
   - comportamento mobile.
   ========================================================= */

/* Escala base e hierarquia movidas para ac_design_system.css na consolidação 1.34.0. */

/* ---------- Navegação ---------- */

.nav {
  gap: 7px;
}

.nav button,
.nav .nav-item {
  min-height: 42px;
  padding: 10px 12px;
  font-size: 13px;
  line-height: 1.25;
}

.sidebar-foot small {
  font-size:12px;
  line-height: 1.4;
}

/* ---------- Cards e áreas ---------- */

.card {
  padding: 20px;
}

.section-gap {
  margin-top: 16px;
}

.grid {
  gap: 14px;
}

.card-title-row,
.section-head,
.tech-section-head,
.page-head {
  gap: 12px;
}

.card-title-row {
  align-items: center;
  flex-wrap: wrap;
}

/* ---------- Formulários ---------- */

.form-grid {
  gap: 12px 14px;
}

.form-stack {
  gap: 14px;
}

input,
select,
textarea {
  min-height: 42px;
}

textarea {
  line-height: 1.5;
}

input,
select,
textarea,
.tech-inner-card input,
.tech-inner-card select,
.tech-inner-card textarea {
  padding: 10px 11px;
}

.form-actions,
.toolbar {
  gap: 10px;
}

.btn {
  min-height: 40px;
  padding: 10px 14px;
  font-size: 12.5px;
  line-height: 1.2;
}

.btn-sm {
  min-height: 34px;
  padding: 8px 11px;
  font-size:12px;
}

.icon-btn {
  min-width: 40px;
  min-height: 40px;
}

/* ---------- Tabelas ---------- */

.table th,
.table td {
  padding: 12px;
  line-height: 1.4;
  vertical-align: middle;
}

.table th {
  font-size:12px;
  font-weight: 800;
}

.table td {
  font-size: 12.5px;
}

.table-wrap {
  border-radius: 12px;
}

.badge {
  font-size:12px;
  line-height: 1.15;
  padding: 6px 9px;
}

/* ---------- Métricas ---------- */

.metric-label {
  font-size: 12px;
}

.metric-value {
  font-size: 28px;
  line-height: 1.1;
}

.metric-note {
  font-size:12px;
  line-height: 1.4;
}

/* ---------- Base Técnica 2.0 ---------- */

.tech2-tabs {
  gap: 0;
}

.tech2-tab {
  min-height: 44px;
  padding: 10px 12px;
  font-size:12px;
  line-height: 1.2;
}

.tech2-section-head {
  gap: 12px;
  padding: 16px 16px 0;
}

.tech2-section-head h2 {
  margin-top: 4px;
  font-size: 18px;
  line-height: 1.2;
}

.tech2-section-head p {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.5;
}

.tech2-filter-grid {
  gap: 10px;
  padding: 14px 16px 0;
}

.tech2-filter-grid label,
.tech2-generation-selectors label,
.tech2-inner-card label,
.tech2-review-notes,
.tech2-vehicle-filter-grid label {
  gap: 6px;
  font-size:12px;
  line-height: 1.3;
}

.tech2-filter-grid input,
.tech2-filter-grid select,
.tech2-generation-selectors select,
.tech2-inner-card input,
.tech2-inner-card select,
.tech2-inner-card textarea,
.tech2-review-notes textarea,
.tech2-vehicle-filter-grid input,
.tech2-vehicle-filter-grid select {
  min-height: 42px;
  padding: 9px 10px;
  font-size: 12.5px;
}

.tech2-import-note,
.tech2-scope-note,
.tech2-generation-warning {
  gap: 7px;
  margin: 12px 16px 0;
  padding: 10px 11px;
  font-size:12px;
  line-height: 1.45;
}

.tech2-source-mini {
  gap: 3px;
  font-size:12px;
  line-height: 1.4;
}

.tech2-conflict-label {
  margin-top: 4px;
  font-size:12px;
}

.tech2-pagination {
  gap: 12px;
  padding: 12px 16px 15px;
}

.tech2-pagination span {
  font-size:12px;
}

.tech2-modal-overlay {
  padding: 18px;
}

.tech2-modal {
  padding: 20px;
}

.tech2-modal-head {
  gap: 16px;
}

.tech2-modal-head h2 {
  margin-top: 4px;
  font-size: 18px;
  line-height: 1.2;
}

.tech2-modal-head p {
  margin-top: 6px;
  font-size: 12px;
  line-height: 1.45;
}

.tech2-conflict-warning {
  gap: 5px;
  margin-top: 12px;
  padding: 11px 12px;
}

.tech2-conflict-warning strong {
  font-size: 12px;
}

.tech2-conflict-warning span {
  font-size:12px;
}

.tech2-detail-grid {
  gap: 10px;
  margin-top: 12px;
}

.tech2-detail-grid > div {
  gap: 5px;
  padding: 11px;
}

.tech2-detail-grid span {
  font-size:12px;
  line-height: 1.35;
}

.tech2-detail-grid strong {
  font-size: 13px;
  line-height: 1.4;
}

.tech2-source-box,
.tech2-notes-box {
  gap: 6px;
  margin-top: 11px;
  padding: 11px 12px;
  font-size:12px;
  line-height: 1.5;
}

.tech2-source-box > strong {
  font-size: 13px;
}

.tech2-review-notes {
  margin-top: 12px;
}

.tech2-modal-actions {
  gap: 9px;
  margin-top: 14px;
}

.tech2-source-layout {
  gap: 14px;
  padding: 14px 16px 16px;
}

.tech2-inner-card {
  padding: 14px;
}

.tech2-inner-card h3 {
  margin-bottom: 11px;
  font-size: 15px;
}

.tech2-inner-card label + label,
.tech2-inner-card .form-grid + label,
.tech2-inner-card label + .form-grid,
.tech2-inner-card .form-grid + .form-grid {
  margin-top: 10px;
}

.tech2-source-list,
.tech2-generation-list {
  gap: 9px;
}

.tech2-source-item,
.tech2-generation-list article {
  gap: 12px;
  padding: 10px 11px;
}

.tech2-source-item strong,
.tech2-generation-list strong {
  font-size: 12.5px;
}

.tech2-source-item span,
.tech2-source-item small,
.tech2-generation-list span {
  font-size:12px;
  line-height: 1.45;
}

.tech2-generation-selectors {
  gap: 10px;
  padding: 14px 16px 0;
}

.tech2-legacy-box {
  gap: 14px;
  margin: 14px 16px 0;
  padding: 13px;
}

.tech2-legacy-box strong {
  font-size: 13px;
}

.tech2-legacy-box span {
  font-size:12px;
  line-height: 1.45;
}

/* ---------- Correção / classificação / validação ---------- */

.tech2-correction-grid,
.tech2-oil-rule-grid,
.tech2-classify-grid {
  gap: 10px;
}

.tech2-correction-grid label,
.tech2-oil-rule-grid label,
.tech2-classify-grid label,
.tech2-classify-existing-spec label {
  gap: 6px;
  font-size:12px;
}

.tech2-correction-grid input,
.tech2-correction-grid textarea,
.tech2-oil-rule-grid input,
.tech2-oil-rule-grid select,
.tech2-oil-rule-grid textarea,
.tech2-classify-grid input,
.tech2-classify-grid select,
.tech2-classify-grid textarea,
.tech2-classify-existing-spec select {
  min-height: 42px;
  padding: 9px 10px;
  font-size: 12.5px;
}

.tech2-correction-rule strong,
.tech2-oil-rule-warning strong,
.tech2-oil-rule-bottom-note strong,
.tech2-validation-warning strong {
  font-size: 12px;
}

.tech2-correction-rule span,
.tech2-oil-rule-warning span,
.tech2-oil-rule-bottom-note span,
.tech2-validation-warning span {
  font-size:12px;
  line-height: 1.5;
}

.tech2-correction-applied span,
.tech2-correction-applied small,
.tech2-correction-applied p,
.tech2-classification-applied span,
.tech2-classification-applied small,
.tech2-classification-applied p {
  font-size:12px;
}

.tech2-oil-rule-title strong,
.tech2-oil-rule-entry strong,
.tech2-verification-box strong {
  font-size: 12.5px;
}

.tech2-oil-rule-card-main > span,
.tech2-oil-rule-card-main > small,
.tech2-oil-rule-card-main > p,
.tech2-oil-rule-source,
.tech2-oil-rule-entry p {
  font-size:12px;
}

.tech2-classify-step-head strong {
  font-size: 13px;
}

.tech2-classify-step-head small {
  font-size:12px;
}

.tech2-classify-step-head > span {
  font-size:12px;
}

.tech2-classify-source-grid span,
.tech2-classify-source-oil span,
.tech2-classify-source-oil small {
  font-size:12px;
}

.tech2-classify-source-grid strong,
.tech2-classify-source-oil strong {
  font-size: 12.5px;
}

.tech2-classify-rule span,
.tech2-classify-conflict span,
.tech2-classify-final-warning span {
  font-size:12px;
}

.tech2-classify-ack {
  font-size:12px;
  line-height: 1.45;
}

.tech2-validation-data-grid article > span,
.tech2-validation-data-grid article > small,
.tech2-validation-meta span,
.tech2-validation-rule-body span,
.tech2-validation-rule-body small,
.tech2-validation-source-list article span,
.tech2-validation-source-list article small,
.tech2-validation-path span,
.tech2-validation-reference,
.tech2-validation-notes {
  font-size:12px;
  line-height: 1.45;
}

.tech2-validation-data-grid article > strong,
.tech2-validation-rule-body strong,
.tech2-validation-source-list article strong,
.tech2-validation-path strong {
  font-size: 12.5px;
}

/* ---------- Consulta Técnica 2.0 ---------- */

.tech2-consult-copy p,
.tech2-consult-start span,
.tech2-result-generation,
.tech2-detail-generation,
.tech2-result-ac-config,
.tech2-detail-ac-config,
.tech2-result-meta,
.tech2-source-card span,
.tech2-source-card small,
.tech2-source-card p,
.tech2-oil-replenishment-head span,
.tech2-oil-replenishment-card > small,
.tech2-oil-replenishment-card > p {
  font-size:12px;
  line-height: 1.45;
}

.tech2-consult-start strong,
.tech2-source-card strong,
.tech2-oil-replenishment-head strong {
  font-size: 12.5px;
}

/* ---------- Mobile ---------- */

@media (max-width: 800px) {
  .topbar {
    padding: 14px 16px;
  }

  .topbar h1 {
    font-size: 19px;
  }

  .page-content {
    padding: 15px;
  }

  .card {
    padding: 16px;
  }

  .form-actions,
  .toolbar {
    flex-wrap: wrap;
  }

  .form-actions .btn {
    min-width: 120px;
  }

  .tech2-modal-overlay {
    padding: 6px;
  }

  .tech2-modal {
    padding: 16px;
  }

  .tech2-section-head {
    padding: 14px 14px 0;
  }

  .tech2-filter-grid,
  .tech2-generation-selectors {
    padding-left: 14px;
    padding-right: 14px;
  }

  .tech2-import-note,
  .tech2-scope-note,
  .tech2-generation-warning,
  .tech2-legacy-box {
    margin-left: 14px;
    margin-right: 14px;
  }
}

@media (max-width: 580px) {
  body {
    font-size: 13.5px;
  }

  .topbar h1 {
    font-size: 18px;
  }

  .page-content {
    padding: 12px;
  }

  .card {
    padding: 14px;
    border-radius: 16px;
  }

  .btn {
    min-height: 42px;
  }

  .table th,
  .table td {
    padding: 10px;
  }

  .tech2-modal {
    padding: 14px;
  }

  .tech2-modal-actions .btn,
  .tech2-legacy-box .btn {
    min-height: 44px;
  }
}


/* Normalização histórica de microtipografia movida para ac_design_system.css. */

/* =========================================================
   AC AUTO PRO 1.37.0
   ADMINISTRAÇÃO DA PLATAFORMA
   ========================================================= */

/* ---------- Menu lateral recolhível ---------- */

.desktop-only {
  display: grid;
}

.sidebar-head-actions {
  display: flex;
  align-items: center;
  gap: 7px;
}

.nav .nav-item b,
.sidebar-logout b {
  font: inherit;
  font-weight: 700;
}

.workshop-nav-group,
.admin-mode-nav {
  display: grid;
  gap: 6px;
}

.admin-mode-nav[hidden],
.workshop-nav-group[hidden] {
  display: none !important;
}

.legacy-admin-nav {
  display: none !important;
}

.admin-nav-label {
  margin: 12px 10px 4px;
  color: #698099;
  font-size:12px;
  font-weight: 850;
  letter-spacing: .13em;
}

.admin-nav-divider {
  height: 1px;
  margin: 10px 4px;
  background: var(--line);
}

.admin-exit-item {
  color: #9fb4c8 !important;
}

.sidebar-collapse-button {
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  font-size: 22px;
}

.app-shell.sidebar-collapsed {
  grid-template-columns: 78px minmax(0,1fr);
}

.sidebar-collapsed .sidebar {
  width: 78px;
  padding: 15px 10px;
}

.sidebar-collapsed .sidebar-head {
  justify-content: center;
}

.sidebar-collapsed .brand {
  justify-content: center;
  margin-bottom: 24px;
}

.sidebar-collapsed .brand-copy,
.sidebar-collapsed .user-mini-copy,
.sidebar-collapsed .nav .nav-item b,
.sidebar-collapsed .sidebar-logout b,
.sidebar-collapsed .admin-nav-label {
  display: none;
}

.sidebar-collapsed .sidebar-head-actions {
  position: absolute;
  top: 68px;
  left: 21px;
}

.sidebar-collapsed .nav .nav-item {
  justify-content: center;
  min-height: 46px;
  padding: 10px;
}

.sidebar-collapsed .nav .nav-item > span {
  flex: 0 0 auto;
  width: auto;
  font-size: 18px;
}

.sidebar-collapsed .sidebar-foot {
  display: grid;
  justify-items: center;
}

.sidebar-collapsed .user-mini {
  justify-content: center;
}

.sidebar-collapsed .sidebar-logout {
  width: 46px;
  min-width: 46px;
  padding: 10px;
}

.sidebar-collapsed .sidebar-logout span {
  font-size: 18px;
}

/* ---------- Shell administrativo ---------- */

.platform-admin-mode .topbar {
  background:
    linear-gradient(
      90deg,
      rgba(54,194,255,.045),
      transparent 42%
    );
}

.platform-section-tabs {
  display: flex;
  gap: 6px;
  margin-bottom: 16px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(8,21,35,.72);
  overflow-x: auto;
}

.platform-section-tabs button {
  min-height: 38px;
  border: 0;
  border-radius: 9px;
  padding: 9px 13px;
  background: transparent;
  color: var(--muted);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}

.platform-section-tabs button:hover,
.platform-section-tabs button.active {
  background: var(--surface2);
  color: var(--text);
}

.platform-hero {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 22px;
  border: 1px solid var(--line);
  border-radius: 20px;
  background:
    radial-gradient(
      circle at 0 0,
      rgba(54,194,255,.10),
      transparent 36%
    ),
    var(--surface);
}

.platform-hero h2 {
  margin: 5px 0 0;
  font-size: 22px;
}

.platform-hero p {
  max-width: 720px;
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
}

.platform-metric-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
  margin-top: 14px;
}

.platform-metric {
  display: grid;
  gap: 7px;
}

.platform-metric > span {
  color: var(--muted);
  font-size: 12.5px;
  font-weight: 750;
}

.platform-metric > strong {
  font-size: 27px;
  line-height: 1.08;
}

.platform-metric > small {
  color: var(--muted);
  font-size:12px;
}

.platform-metric.success {
  border-color: rgba(54,211,153,.20);
}

.platform-metric.warning {
  border-color: rgba(247,187,77,.22);
}

.platform-metric.info {
  border-color: rgba(54,194,255,.20);
}

.platform-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 14px;
  margin-top: 14px;
}

.platform-action-card {
  display: grid;
  gap: 6px;
  min-height: 142px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #091726;
  color: var(--text);
  text-align: left;
  cursor: pointer;
}

.platform-action-card:hover {
  border-color: rgba(54,194,255,.34);
  transform: translateY(-1px);
}

.platform-action-card > span {
  color: var(--accent);
  font-size:12px;
  font-weight: 900;
  letter-spacing: .10em;
}

.platform-action-card > strong {
  font-size: 15px;
}

.platform-action-card > p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}

.platform-section-card {
  padding: 20px;
}

.platform-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 15px;
}

.platform-section-head h2 {
  margin: 4px 0 0;
  font-size: 19px;
}

.platform-section-head p {
  margin: 6px 0 0;
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.45;
}

.platform-filter-row {
  display: grid;
  grid-template-columns: minmax(210px,1fr) minmax(150px,230px) auto;
  gap: 10px;
  align-items: end;
  margin-bottom: 15px;
}

.platform-filter-row label {
  display: grid;
  gap: 6px;
  margin: 0;
}

.platform-filter-row input,
.platform-filter-row select {
  margin: 0;
}

.platform-table {
  min-width: 760px;
}

.platform-table th {
  font-size: 12.5px;
}

.platform-table td {
  font-size: 13.5px;
}

.platform-table td small {
  display: block;
  margin-top: 3px;
  color: var(--muted);
  font-size:12px;
}

/* ---------- Assinantes ---------- */

.platform-subscriber-list {
  display: grid;
  gap: 10px;
}

.platform-subscriber-card {
  display: grid;
  gap: 12px;
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: #091726;
}

.platform-subscriber-main {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.platform-subscriber-main > div {
  display: grid;
  gap: 4px;
}

.platform-subscriber-main strong {
  font-size: 14.5px;
}

.platform-subscriber-main span:not(.badge) {
  color: var(--muted);
  font-size: 12px;
}

.platform-subscriber-meta {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 8px;
}

.platform-subscriber-meta > div {
  display: grid;
  gap: 4px;
  padding: 9px 10px;
  border-radius: 9px;
  background: rgba(7,17,31,.46);
}

.platform-subscriber-meta span {
  color: var(--muted);
  font-size:12px;
}

.platform-subscriber-meta strong {
  font-size: 12.5px;
}

.platform-subscriber-actions {
  display: flex;
  gap: 7px;
  flex-wrap: wrap;
  padding-top: 11px;
  border-top: 1px solid rgba(32,54,82,.7);
}

/* ---------- Paginação ---------- */

.platform-pagination {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 14px;
  align-items: center;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.platform-pagination-info {
  color: var(--muted);
  font-size: 12.5px;
}

.platform-pagination-info strong {
  color: var(--text);
}

.platform-page-size {
  display: flex;
  align-items: center;
  gap: 7px;
  color: var(--muted);
  font-size: 12px;
}

.platform-page-size select {
  width: auto;
  min-height: 36px;
  margin: 0;
  padding: 6px 28px 6px 9px;
}

.platform-page-buttons {
  display: flex;
  gap: 5px;
  align-items: center;
  justify-content: flex-end;
}

.platform-page-buttons button {
  min-width: 38px;
  min-height: 36px;
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 7px 10px;
  background: transparent;
  color: var(--muted);
  font-size: 12px;
  font-weight: 750;
  cursor: pointer;
}

.platform-page-buttons button:hover:not(:disabled),
.platform-page-buttons button.active {
  border-color: rgba(54,194,255,.30);
  background: rgba(54,194,255,.08);
  color: var(--text);
}

.platform-page-buttons button:disabled {
  opacity: .38;
  cursor: default;
}

/* ---------- Base Técnica administrativa ---------- */

.admin-tech-card {
  padding: 0;
  overflow: hidden;
}

.admin-tech-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 16px;
  padding: 20px 20px 15px;
}

.admin-tech-head h2 {
  margin: 5px 0 0;
  font-size: 21px;
  line-height: 1.2;
}

.admin-tech-head p {
  margin: 7px 0 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.admin-tech-head-actions {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.admin-tech-tabs {
  display: flex;
  gap: 0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  overflow-x: auto;
}

.admin-tech-tabs button {
  display: flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  border: 0;
  border-right: 1px solid var(--line);
  padding: 10px 15px;
  background: rgba(7,17,31,.34);
  color: var(--muted);
  font-size: 13px;
  cursor: pointer;
  white-space: nowrap;
}

.admin-tech-tabs button strong {
  display: inline-grid;
  place-items: center;
  min-width: 27px;
  min-height: 23px;
  padding: 3px 7px;
  border-radius: 999px;
  background: var(--surface2);
  color: #c9d8e7;
  font-size:12px;
}

.admin-tech-tabs button.active {
  background: var(--surface2);
  color: var(--text);
}

.admin-tech-tabs button.active strong {
  background: rgba(54,194,255,.13);
  color: #8ce4ff;
}

.admin-tech-filter {
  display: grid;
  grid-template-columns: minmax(260px,1fr) minmax(180px,260px) auto auto;
  gap: 10px;
  align-items: end;
  padding: 15px 20px;
}

.admin-tech-filter label {
  display: grid;
  gap: 6px;
  margin: 0;
  font-size: 12px;
}

.admin-tech-filter input,
.admin-tech-filter select {
  min-height: 43px;
  margin: 0;
  font-size: 13px;
}

.admin-tech-table-wrap {
  border-top: 1px solid var(--line);
  border-radius: 0;
}

.admin-tech-table {
  min-width: 760px;
}

.admin-tech-table th,
.admin-tech-table td {
  padding: 14px 16px;
  vertical-align: middle;
}

.admin-tech-table th {
  font-size: 13px;
  font-weight: 900;
  color: #a9bbcc;
  letter-spacing: .01em;
}

.admin-tech-table td {
  font-size: 14px;
  line-height: 1.4;
}

.admin-tech-table td > strong {
  font-size: 14px;
}

.admin-tech-application {
  display: inline;
  font-size: 14.5px !important;
}

.admin-tech-action-col {
  width: 240px;
}

.admin-tech-row-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 7px;
}

.admin-tech-row-actions .btn {
  min-height: 38px;
  padding: 8px 12px;
  font-size: 12.5px;
}

.admin-tech-select {
  display: grid;
  place-items: center;
  width: 38px;
  min-width: 38px;
  height: 38px;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  cursor: pointer;
}

.admin-tech-select input {
  width: 16px;
  height: 16px;
  min-height: 0;
  margin: 0;
}

.admin-tech-conflict {
  display: inline-block;
  margin-left: 8px;
  color: #f7c96d;
  font-size:12px;
  font-weight: 800;
}

/* ---------- Importações ---------- */

.platform-import-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(320px,.75fr);
  gap: 14px;
}

.platform-import-card form {
  display: grid;
  gap: 14px;
}

.platform-import-card label {
  display: grid;
  gap: 6px;
}

.platform-check-line {
  display: flex !important;
  align-items: flex-start;
  gap: 8px !important;
}

.platform-check-line input[type="checkbox"] {
  width: 17px;
  height: 17px;
  min-height: 0;
  margin: 1px 0 0;
}

.platform-import-requirements,
.platform-import-rule {
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background: rgba(54,194,255,.025);
}

.platform-import-requirements strong {
  font-size: 12.5px;
}

.platform-import-requirements p,
.platform-import-rule {
  margin: 5px 0 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.5;
}

.platform-import-flow {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 8px;
}

.platform-import-flow > div {
  display: grid;
  gap: 4px;
  padding: 11px 8px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: #091726;
  text-align: center;
}

.platform-import-flow > div > span {
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  margin: 0 auto 3px;
  border-radius: 999px;
  background: rgba(54,194,255,.10);
  color: #91e4ff;
  font-size:12px;
  font-weight: 900;
}

.platform-import-flow strong {
  font-size:12px;
}

.platform-import-flow small {
  color: var(--muted);
  font-size:12px;
}

.platform-import-rule {
  margin-top: 12px;
}

.platform-batch-list {
  display: grid;
  gap: 10px;
}

.platform-batch-card {
  display: grid;
  grid-template-columns: minmax(220px,1fr) minmax(420px,1.2fr) auto;
  gap: 14px;
  align-items: center;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: #091726;
}

.platform-batch-main {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.platform-batch-main > div {
  display: grid;
  gap: 4px;
}

.platform-batch-main strong {
  font-size: 13.5px;
}

.platform-batch-main span,
.platform-batch-main small {
  color: var(--muted);
  font-size:12px;
}

.platform-batch-stats {
  display: grid;
  grid-template-columns: repeat(4,1fr);
  gap: 7px;
}

.platform-batch-stats > div {
  display: grid;
  gap: 3px;
  padding: 8px;
  border-radius: 8px;
  background: rgba(7,17,31,.55);
}

.platform-batch-stats span {
  color: var(--muted);
  font-size:12px;
}

.platform-batch-stats strong {
  font-size: 13px;
}

.platform-batch-actions {
  display: flex;
  gap: 7px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/* ---------- Modais ---------- */

.platform-modal-overlay {
  position: fixed;
  inset: 0;
  z-index: 250;
  display: grid;
  place-items: center;
  padding: 18px;
  background: rgba(2,8,14,.72);
  backdrop-filter: blur(4px);
}

.platform-modal {
  width: min(720px,96vw);
  max-height: 92vh;
  overflow: auto;
  padding: 20px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: var(--surface);
  box-shadow: 0 24px 70px rgba(0,0,0,.38);
}

.platform-modal-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
}

.platform-modal-head h2 {
  margin: 4px 0 0;
  font-size: 19px;
}

.platform-modal-head p {
  margin: 5px 0 0;
  color: var(--muted);
  font-size: 12px;
}

.platform-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 11px;
  margin-top: 16px;
}

.platform-form-grid label {
  display: grid;
  gap: 6px;
}

.platform-form-grid input,
.platform-form-grid select {
  margin: 0;
}

.platform-modal-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
  margin-top: 16px;
}

/* ---------- Responsivo ---------- */

@media (max-width: 1180px) {
  .platform-metric-grid,
  .platform-dashboard-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .platform-batch-card {
    grid-template-columns: 1fr;
  }

  .platform-batch-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 900px) {
  .platform-subscriber-meta {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .platform-import-grid {
    grid-template-columns: 1fr;
  }

  .admin-tech-filter {
    grid-template-columns: 1fr 1fr;
  }

  .platform-pagination {
    grid-template-columns: 1fr;
  }

  .platform-page-buttons {
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}

@media (max-width: 800px) {
  .desktop-only {
    display: none !important;
  }

  .app-shell.sidebar-collapsed {
    display: block;
  }

  .sidebar-collapsed .sidebar {
    width: min(290px,86vw);
    padding: 18px;
  }

  .sidebar-collapsed .brand-copy,
  .sidebar-collapsed .user-mini-copy,
  .sidebar-collapsed .admin-nav-label {
    display: block;
  }

  .sidebar-collapsed .nav .nav-item b,
  .sidebar-collapsed .sidebar-logout b {
    display: inline;
  }

  .sidebar-collapsed .nav .nav-item {
    justify-content: flex-start;
  }

  .sidebar-collapsed .sidebar-head-actions {
    position: static;
  }

  .platform-section-tabs {
    margin-bottom: 12px;
  }

  .platform-hero,
  .admin-tech-head {
    flex-direction: column;
  }

  .admin-tech-head-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 620px) {
  .platform-metric-grid,
  .platform-dashboard-grid,
  .platform-subscriber-meta,
  .admin-tech-filter,
  .platform-form-grid {
    grid-template-columns: 1fr;
  }

  .platform-import-flow {
    grid-template-columns: repeat(2,1fr);
  }

  .platform-subscriber-main {
    flex-direction: column;
  }

  .admin-tech-table {
    min-width: 690px;
  }

  .admin-tech-table th,
  .admin-tech-table td {
    padding: 12px;
  }
}


/* =========================================================
   AC AUTO PRO 1.37.0 REV7
   Base Técnica — seleção e exclusão em lote
   ========================================================= */

.admin-tech-check-col {
  width: 54px;
  min-width: 54px;
  padding-left: 12px !important;
  padding-right: 8px !important;
  text-align: center;
}

.admin-tech-check-all,
.admin-tech-check-col .admin-tech-select {
  display: inline-grid;
  place-items: center;
  width: 34px;
  min-width: 34px;
  height: 34px;
  margin: 0;
  border: 1px solid var(--line);
  border-radius: 9px;
  cursor: pointer;
  background: rgba(255,255,255,.02);
}

.admin-tech-check-all:hover,
.admin-tech-check-col .admin-tech-select:hover {
  border-color: rgba(54,194,255,.55);
  background: rgba(54,194,255,.06);
}

.admin-tech-check-all input,
.admin-tech-check-col .admin-tech-select input {
  width: 18px;
  height: 18px;
  min-height: 0;
  margin: 0;
  cursor: pointer;
}

.admin-tech-filter .btn-danger {
  min-height: 42px;
}

@media (max-width: 800px) {
  .admin-tech-check-col {
    width: 48px;
    min-width: 48px;
  }
}

/* =========================================================
   AC AUTO PRO 1.38.0
   GESTÃO DE ASSINANTES, PLANOS E PAGAMENTOS
   ========================================================= */

.billing-metric-grid,
.billing-payment-metrics {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.billing-dashboard-grid {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.billing-filter-four {
  grid-template-columns: minmax(260px,1fr) minmax(160px,220px) minmax(170px,240px) auto;
}

.billing-plan-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
}

.billing-plan-card {
  display: grid;
  gap: 13px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #091726;
}

.billing-plan-card.is-inactive {
  opacity: .72;
}

.billing-plan-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
}

.billing-plan-head > div {
  display: grid;
  gap: 4px;
}

.billing-plan-head > div > span {
  color: var(--accent);
  font-size:12px;
  font-weight: 850;
  letter-spacing: .06em;
}

.billing-plan-head h3 {
  margin: 0;
  font-size: 17px;
  line-height: 1.25;
}

.billing-plan-price {
  font-size: 27px;
  line-height: 1.05;
}

.billing-plan-card > p {
  min-height: 42px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.5;
}

.billing-plan-meta {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
}

.billing-plan-meta > div {
  display: grid;
  gap: 4px;
  padding: 10px 11px;
  border-radius: 10px;
  background: rgba(7,17,31,.52);
}

.billing-plan-meta span {
  color: var(--muted);
  font-size:12px;
}

.billing-plan-meta strong {
  font-size: 13.5px;
}

.billing-plan-actions,
.billing-row-actions,
.billing-detail-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.billing-plan-actions {
  padding-top: 12px;
  border-top: 1px solid rgba(32,54,82,.72);
}

.billing-subscriber-card {
  padding: 17px;
}

.billing-subscriber-card .platform-subscriber-main strong {
  font-size: 16px;
}

.billing-subscriber-card .platform-subscriber-main span:not(.badge) {
  font-size: 13px;
}

.billing-subscriber-meta {
  grid-template-columns: repeat(4,minmax(0,1fr));
}

.billing-subscriber-meta > div {
  gap: 5px;
  min-height: 72px;
  padding: 11px 12px;
}

.billing-subscriber-meta span {
  font-size:12px;
}

.billing-subscriber-meta strong {
  font-size: 13.8px;
}

.billing-subscriber-meta small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.35;
}

.platform-modal-medium {
  width: min(760px,96vw);
}

.platform-modal-large {
  width: min(900px,96vw);
}

.platform-modal-xl {
  width: min(1120px,97vw);
}

.platform-form-grid textarea {
  margin: 0;
  padding: 10px 11px;
  font-size: 13px;
  line-height: 1.5;
  resize: vertical;
}

.platform-info-note {
  margin-top: 14px;
  padding: 11px 12px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background: rgba(54,194,255,.035);
  color: var(--muted);
  font-size: 12.5px;
  line-height: 1.5;
}

.platform-selected-subscriber {
  display: grid;
  gap: 4px;
  margin-top: 16px;
  padding: 13px 14px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 12px;
  background: rgba(54,194,255,.035);
}

.platform-selected-subscriber span,
.platform-selected-subscriber small {
  color: var(--muted);
  font-size: 12px;
}

.platform-selected-subscriber strong {
  font-size: 15px;
}

.platform-subscriber-picker {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 11px;
  margin-top: 16px;
}

.platform-subscriber-picker label {
  display: grid;
  gap: 6px;
  margin: 0;
}

.platform-inline-search {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
}

.billing-detail-hero {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 9px;
  margin-top: 16px;
}

.billing-detail-hero > div {
  display: grid;
  gap: 5px;
  padding: 12px 13px;
  border: 1px solid var(--line);
  border-radius: 11px;
  background: #091726;
}

.billing-detail-hero span:not(.badge) {
  color: var(--muted);
  font-size:12px;
}

.billing-detail-hero strong {
  font-size: 14px;
}

.billing-detail-actions {
  margin-top: 11px;
  padding-bottom: 14px;
  border-bottom: 1px solid var(--line);
}

.billing-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 14px;
}

.billing-detail-card,
.billing-history-section {
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: rgba(9,23,38,.75);
}

.billing-detail-card h3,
.billing-history-head h3 {
  margin: 0 0 11px;
  font-size: 15px;
}

.billing-detail-card dl {
  display: grid;
  gap: 8px;
  margin: 0;
}

.billing-detail-card dl > div {
  display: grid;
  grid-template-columns: 120px minmax(0,1fr);
  gap: 10px;
  align-items: start;
}

.billing-detail-card dt {
  color: var(--muted);
  font-size:12px;
}

.billing-detail-card dd {
  margin: 0;
  font-size: 13px;
  line-height: 1.45;
}

.billing-mini-list {
  display: grid;
  gap: 8px;
}

.billing-mini-list > div {
  display: grid;
  gap: 3px;
  padding: 9px 10px;
  border-radius: 9px;
  background: rgba(7,17,31,.55);
}

.billing-mini-list strong {
  font-size: 13px;
}

.billing-mini-list span {
  color: var(--muted);
  font-size:12px;
}

.billing-history-section {
  margin-top: 12px;
}

.billing-history-table {
  min-width: 660px;
}

.billing-table-wide {
  min-width: 980px;
}

.billing-payment-table {
  min-width: 1120px;
}

.billing-payment-section {
  margin-top: 14px;
}

.billing-renewed {
  color: #62ddb0;
  font-weight: 800;
}

.billing-renew-pending {
  color: #8ddfff;
  font-weight: 750;
}

.platform-page-gap {
  display: inline-grid;
  place-items: center;
  min-width: 24px;
  color: var(--muted);
  font-size: 12px;
}

/* Administração financeira precisa ser confortável para uso diário. */
.platform-admin-mode .platform-section-card .table th {
  font-size: 13px;
}

.platform-admin-mode .platform-section-card .table td {
  font-size: 13.8px;
  line-height: 1.45;
}

.platform-admin-mode .platform-section-card .table td > strong {
  font-size: 14px;
}

.platform-admin-mode .platform-section-card .table td small {
  font-size:12px;
  line-height: 1.4;
}

.platform-admin-mode .platform-section-head h2 {
  font-size: 20px;
}

.platform-admin-mode .platform-filter-row label,
.platform-admin-mode .platform-form-grid label,
.platform-admin-mode .platform-subscriber-picker label {
  font-size: 12.5px;
}

.platform-admin-mode .platform-filter-row input,
.platform-admin-mode .platform-filter-row select,
.platform-admin-mode .platform-form-grid input,
.platform-admin-mode .platform-form-grid select,
.platform-admin-mode .platform-subscriber-picker input,
.platform-admin-mode .platform-subscriber-picker select {
  min-height: 43px;
  font-size: 13px;
}

@media (max-width: 1180px) {
  .billing-plan-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .billing-subscriber-meta,
  .billing-detail-hero {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 980px) {
  .billing-filter-four {
    grid-template-columns: 1fr 1fr;
  }

  .billing-detail-grid {
    grid-template-columns: 1fr;
  }

  .platform-subscriber-picker {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  .billing-metric-grid,
  .billing-payment-metrics,
  .billing-dashboard-grid,
  .billing-plan-grid,
  .billing-filter-four,
  .billing-subscriber-meta,
  .billing-detail-hero {
    grid-template-columns: 1fr;
  }

  .billing-detail-card dl > div {
    grid-template-columns: 1fr;
    gap: 3px;
  }

  .billing-plan-price {
    font-size: 24px;
  }
}


/* =========================================================
   AC AUTO PRO 1.39.0
   USUÁRIOS E ACESSOS — ADMINISTRAÇÃO DA PLATAFORMA
   ========================================================= */

.platform-users-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.platform-users-hero h2 {
  margin: 4px 0 5px;
  font-size: 22px;
  line-height: 1.2;
}

.platform-users-hero p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.platform-users-metrics {
  grid-template-columns: repeat(5,minmax(0,1fr));
  margin-bottom: 16px;
}

.platform-users-card {
  padding: 0;
  overflow: hidden;
}

.platform-users-filter {
  display: grid;
  grid-template-columns:
    minmax(240px,1.6fr)
    minmax(145px,.65fr)
    minmax(145px,.65fr)
    minmax(190px,.9fr)
    auto;
  align-items: end;
  gap: 10px;
  padding: 16px;
}

.platform-users-filter label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 800;
}

.platform-users-filter input,
.platform-users-filter select {
  min-height: 42px;
  font-size: 13px;
}

.platform-users-table-wrap {
  border-top: 1px solid var(--line);
  border-radius: 0;
}

.platform-users-table {
  min-width: 940px;
}

.platform-users-table th,
.platform-users-table td {
  padding: 13px 14px;
  vertical-align: middle;
}

.platform-users-table th {
  font-size: 12.5px;
}

.platform-users-table td {
  font-size: 13px;
}

.platform-users-identity,
.platform-users-org-cell {
  display: grid;
  gap: 3px;
}

.platform-users-identity strong,
.platform-users-org-cell strong {
  font-size: 13.5px;
  line-height: 1.35;
}

.platform-users-identity span,
.platform-users-org-cell span,
.platform-users-identity small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.platform-users-row-actions {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.platform-users-detail-grid {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 14px;
  margin-top: 14px;
}

.platform-users-panel {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.018);
}

.platform-users-panel-head {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.platform-users-panel-head > div {
  display: grid;
  gap: 4px;
}

.platform-users-panel-head strong {
  font-size: 15px;
}

.platform-users-panel-head span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.platform-users-form {
  display: grid;
  gap: 13px;
}

.platform-users-form .form-grid,
.platform-users-link-box .form-grid,
.platform-users-add-membership .form-grid {
  gap: 10px 12px;
}

.platform-users-form label,
.platform-users-link-box label,
.platform-users-add-membership label {
  display: grid;
  gap: 6px;
  font-size:12px;
  font-weight: 800;
}

.platform-users-form input,
.platform-users-form select,
.platform-users-link-box select,
.platform-users-add-membership select {
  min-height: 42px;
  font-size: 12.8px;
}

.platform-users-link-box,
.platform-users-password-box,
.platform-users-add-membership {
  display: grid;
  gap: 11px;
  margin-top: 14px;
  padding: 13px;
  border: 1px solid rgba(54,194,255,.15);
  border-radius: 12px;
  background: rgba(54,194,255,.025);
}

.platform-users-link-box > div:first-child,
.platform-users-password-box > div:first-child {
  display: grid;
  gap: 4px;
}

.platform-users-link-box strong,
.platform-users-password-box strong,
.platform-users-add-membership > strong {
  font-size: 12.8px;
}

.platform-users-link-box span,
.platform-users-password-box span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.platform-users-password-box form {
  display: grid;
  grid-template-columns: minmax(180px,1fr) auto;
  align-items: end;
  gap: 9px;
}

.platform-users-password-box .platform-check-line {
  grid-column: 1 / -1;
}

.platform-users-memberships {
  display: grid;
  gap: 9px;
}

.platform-users-membership {
  display: grid;
  gap: 9px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 12px;
}

.platform-users-membership-main,
.platform-users-membership-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9px;
}

.platform-users-membership-main > div {
  display: grid;
  gap: 3px;
}

.platform-users-membership-main strong {
  font-size: 13.5px;
}

.platform-users-membership-main span {
  color: var(--muted);
  font-size:12px;
}

.platform-users-membership-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  color: var(--muted);
  font-size:12px;
}

.platform-users-membership-meta strong {
  color: var(--text);
}

.platform-users-membership-actions {
  justify-content: flex-start;
  flex-wrap: wrap;
}

.platform-users-membership-actions select {
  min-height: 36px;
  min-width: 150px;
  font-size: 12px;
}

.platform-users-footnote {
  margin-top: 12px;
  color: var(--muted);
  font-size:12px;
  text-align: right;
}

@media (max-width: 1180px) {
  .platform-users-metrics {
    grid-template-columns: repeat(3,minmax(0,1fr));
  }

  .platform-users-filter {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }

  .platform-users-filter .wide {
    grid-column: span 2;
  }

  .platform-users-detail-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .platform-users-hero {
    align-items: stretch;
    flex-direction: column;
  }

  .platform-users-metrics {
    grid-template-columns: 1fr 1fr;
  }

  .platform-users-filter {
    grid-template-columns: 1fr;
    padding: 13px;
  }

  .platform-users-filter .wide {
    grid-column: auto;
  }

  .platform-users-password-box form {
    grid-template-columns: 1fr;
  }

  .platform-users-membership-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .platform-users-membership-actions select,
  .platform-users-membership-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.40.0
   PRIMEIRO ACESSO — CADASTRO COMPLETO DA OFICINA
   ========================================================= */

.onboarding-shell {
  place-items: start center;
  padding: 28px 20px 44px;
}

.onboarding-setup-card {
  width: min(980px,100%);
  padding: 24px;
}

.onboarding-head {
  margin-bottom: 18px;
}

.onboarding-head .brand {
  margin-bottom: 20px;
}

.onboarding-head h2 {
  margin: 7px 0 6px;
  font-size: 24px;
  line-height: 1.2;
}

.onboarding-head > p {
  max-width: 760px;
  margin: 0;
  font-size: 13px;
  line-height: 1.5;
}

.onboarding-form {
  display: grid;
  gap: 14px;
}

.onboarding-section {
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: rgba(255,255,255,.015);
}

.onboarding-section-head {
  display: flex;
  align-items: flex-start;
  gap: 11px;
  margin-bottom: 16px;
}

.onboarding-step {
  display: grid;
  place-items: center;
  width: 30px;
  min-width: 30px;
  height: 30px;
  border-radius: 9px;
  background: rgba(54,194,255,.12);
  border: 1px solid rgba(54,194,255,.32);
  color: var(--accent);
  font-size: 13px;
  font-weight: 900;
}

.onboarding-section-head h3 {
  margin: 1px 0 3px;
  font-size: 16px;
  line-height: 1.25;
}

.onboarding-section-head p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.onboarding-grid {
  gap: 12px 14px;
}

.onboarding-grid label {
  display: grid;
  gap: 6px;
  font-size: 12.5px;
  font-weight: 700;
}

.onboarding-grid input {
  min-height: 44px;
  margin-top: 0;
  padding: 10px 11px;
  font-size: 13.5px;
}

.onboarding-address-grid {
  grid-template-columns:
    minmax(140px,.55fr)
    minmax(280px,1.45fr)
    minmax(110px,.45fr);
}

.onboarding-address-grid .address-street {
  grid-column: span 1;
}

.onboarding-logo-box {
  display: grid;
  grid-template-columns: 130px minmax(0,1fr);
  gap: 16px;
  align-items: center;
}

.onboarding-logo-preview {
  width: 130px;
  height: 100px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px dashed var(--line);
  border-radius: 13px;
  background: #091625;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
}

.onboarding-logo-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 8px;
}

.onboarding-logo-actions {
  display: grid;
  justify-items: start;
  gap: 8px;
}

.onboarding-file-label {
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 9px 14px;
  border: 1px solid var(--line);
  border-radius: 11px;
  color: var(--text);
  font-size: 12.5px !important;
  font-weight: 800 !important;
  cursor: pointer;
  background: rgba(255,255,255,.025);
}

.onboarding-file-label:hover {
  border-color: rgba(54,194,255,.48);
}

.onboarding-file-label input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.onboarding-logo-actions small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.onboarding-submit {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 16px 18px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 15px;
  background: rgba(54,194,255,.035);
}

.onboarding-submit > div:first-child {
  display: grid;
  gap: 4px;
}

.onboarding-submit strong {
  font-size: 13px;
}

.onboarding-submit span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.onboarding-submit .form-actions {
  flex-shrink: 0;
}

@media (max-width: 820px) {
  .onboarding-shell {
    padding: 14px 10px 28px;
  }

  .onboarding-setup-card {
    padding: 15px;
  }

  .onboarding-section {
    padding: 14px;
  }

  .onboarding-address-grid {
    grid-template-columns: 1fr;
  }

  .onboarding-address-grid .address-street {
    grid-column: auto;
  }

  .onboarding-submit {
    align-items: stretch;
    flex-direction: column;
  }

  .onboarding-submit .form-actions {
    width: 100%;
  }

  .onboarding-submit .form-actions .btn {
    flex: 1;
  }
}

@media (max-width: 520px) {
  .onboarding-head h2 {
    font-size: 21px;
  }

  .onboarding-logo-box {
    grid-template-columns: 1fr;
  }

  .onboarding-logo-preview {
    width: 100%;
    height: 120px;
  }

  .onboarding-submit .form-actions {
    flex-direction: column;
  }
}


/* =========================================================
   AC AUTO PRO 1.41.0
   FUNCIONÁRIOS + NÍVEIS DE ACESSO
   ========================================================= */

.employees-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 16px;
}

.employees-page-head h2 {
  margin: 5px 0;
  font-size: 22px;
  line-height: 1.2;
}

.employees-page-head p {
  max-width: 720px;
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.employees-metrics {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin-bottom: 16px;
}

.employees-metrics article {
  display: grid;
  gap: 5px;
  padding: 16px;
}

.employees-metrics article > span {
  color: var(--muted);
  font-size: 12px;
  font-weight: 800;
}

.employees-metrics article > strong {
  font-size: 27px;
  line-height: 1.05;
}

.employees-metrics article > small {
  color: var(--muted);
  font-size:12px;
}

.employees-list-card {
  padding: 0;
  overflow: hidden;
}

.employees-filter {
  display: grid;
  grid-template-columns:
    minmax(260px,1.6fr)
    minmax(160px,.7fr)
    minmax(150px,.65fr)
    auto;
  gap: 10px;
  align-items: end;
  padding: 16px;
}

.employees-filter label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 800;
}

.employees-filter input,
.employees-filter select {
  min-height: 42px;
  font-size: 13px;
}

.employees-table-wrap {
  border-top: 1px solid var(--line);
  border-radius: 0;
}

.employees-table {
  min-width: 800px;
}

.employees-table th,
.employees-table td {
  padding: 13px 14px;
  vertical-align: middle;
}

.employees-table th {
  font-size: 12.5px;
}

.employees-table td {
  font-size: 13px;
}

.employees-name-cell,
.employees-contact-cell {
  display: grid;
  gap: 3px;
}

.employees-name-cell strong {
  font-size: 13.5px;
}

.employees-name-cell span,
.employees-contact-cell span,
.employees-contact-cell small {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.employees-row-actions {
  display: flex;
  justify-content: flex-end;
  gap: 7px;
  flex-wrap: wrap;
}

.employees-modal {
  max-width: 920px;
}

.employees-form {
  display: grid;
  gap: 14px;
  margin-top: 14px;
}

.employees-section {
  padding: 15px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.015);
}

.employees-section-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.employees-section-head > div {
  display: grid;
  gap: 4px;
}

.employees-section-head strong {
  font-size: 14px;
}

.employees-section-head span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.employees-fields {
  gap: 10px 12px;
}

.employees-fields label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 800;
}

.employees-fields input,
.employees-fields select,
.employees-fields textarea {
  min-height: 42px;
  font-size: 13px;
}

.employees-fields textarea {
  line-height: 1.45;
  resize: vertical;
}

.employees-access-box {
  margin-top: 14px;
  padding: 13px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 12px;
  background: rgba(54,194,255,.025);
}

.employees-access-title {
  display: grid;
  gap: 4px;
  margin-bottom: 11px;
}

.employees-access-title strong {
  font-size: 12.8px;
}

.employees-access-title span {
  color: var(--muted);
  font-size:12px;
}

.employees-permission-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
}

.employees-permission-item {
  display: flex !important;
  align-items: center;
  gap: 8px !important;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid var(--line);
  border-radius: 10px;
  cursor: pointer;
  background: rgba(255,255,255,.015);
}

.employees-permission-item:hover {
  border-color: rgba(54,194,255,.4);
}

.employees-permission-item input {
  width: 17px;
  height: 17px;
  min-height: 0;
  margin: 0;
}

.employees-permission-item span {
  font-size: 12px;
  font-weight: 700;
}

.employees-permission-note {
  margin: 9px 0 0;
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

.employees-owner-access {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(70,220,150,.25);
  border-radius: 10px;
  background: rgba(70,220,150,.035);
}

.employees-owner-access strong {
  font-size: 12.8px;
}

.employees-owner-access span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.45;
}

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

  .employees-filter {
    grid-template-columns: 1fr 1fr;
  }

  .employees-filter .wide {
    grid-column: span 2;
  }

  .employees-permission-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 600px) {
  .employees-page-head {
    align-items: stretch;
    flex-direction: column;
  }

  .employees-filter {
    grid-template-columns: 1fr;
    padding: 13px;
  }

  .employees-filter .wide {
    grid-column: auto;
  }

  .employees-permission-grid {
    grid-template-columns: 1fr;
  }

  .employees-modal-actions {
    flex-direction: column;
  }

  .employees-modal-actions .btn {
    width: 100%;
  }
}


/* =========================================================
   AC AUTO PRO 1.42.0
   CONFIGURAÇÕES DA OFICINA
   ========================================================= */

.settings-loading {
  padding: 24px;
  color: var(--muted);
}

.settings-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 15px;
}

.settings-page-head h2 {
  margin: 5px 0;
  font-size: 23px;
  line-height: 1.2;
}

.settings-page-head p {
  margin: 0;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.45;
}

.settings-company-status {
  display: grid;
  justify-items: end;
  gap: 5px;
}

.settings-company-status small {
  color: var(--muted);
  font-size:12px;
}

.settings-tabs {
  display: flex;
  gap: 7px;
  margin-bottom: 14px;
  padding: 5px;
  overflow-x: auto;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: rgba(255,255,255,.015);
}

.settings-tabs button {
  min-height: 39px;
  padding: 8px 14px;
  border: 0;
  border-radius: 9px;
  background: transparent;
  color: var(--muted);
  font-size: 12.5px;
  font-weight: 800;
  white-space: nowrap;
  cursor: pointer;
}

.settings-tabs button.active {
  background: rgba(54,194,255,.11);
  color: var(--text);
}

.settings-panel {
  display: grid;
  gap: 14px;
}

.settings-panel-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
  padding: 18px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.015);
}

.settings-panel-head h2 {
  margin: 5px 0;
  font-size: 19px;
}

.settings-panel-head p {
  max-width: 680px;
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.45;
}

.settings-permission-note {
  padding: 11px 13px;
  border: 1px solid rgba(247,201,109,.22);
  border-radius: 11px;
  background: rgba(247,201,109,.04);
  color: #e8cf96;
  font-size: 12px;
  line-height: 1.45;
}

.settings-form {
  display: grid;
  gap: 14px;
}

.settings-block {
  padding: 17px;
  border: 1px solid var(--line);
  border-radius: 14px;
  background: rgba(255,255,255,.012);
}

.settings-block-title {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
}

.settings-block-title strong {
  font-size: 14px;
}

.settings-block-title span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.settings-grid {
  gap: 11px 13px;
}

.settings-grid label,
.settings-address-grid label,
.settings-password-grid label {
  display: grid;
  gap: 6px;
  font-size: 12px;
  font-weight: 800;
}

.settings-grid input,
.settings-address-grid input,
.settings-password-grid input {
  min-height: 43px;
  font-size: 13px;
}

.settings-address-grid {
  display: grid;
  grid-template-columns:
    minmax(135px,.55fr)
    minmax(280px,1.45fr)
    minmax(100px,.42fr);
  gap: 11px 13px;
}

.settings-address-street {
  min-width: 0;
}

.settings-logo-row {
  display: grid;
  grid-template-columns: 155px minmax(0,1fr);
  align-items: center;
  gap: 16px;
}

.settings-logo-preview {
  display: grid;
  place-items: center;
  width: 155px;
  height: 110px;
  overflow: hidden;
  border: 1px dashed var(--line);
  border-radius: 13px;
  background: #091625;
  color: var(--muted);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
}

.settings-logo-preview img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 8px;
}

.settings-logo-controls {
  display: flex;
  align-items: center;
  gap: 9px;
  flex-wrap: wrap;
}

.settings-file-button {
  position: relative;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  padding: 8px 13px;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: rgba(255,255,255,.025);
  font-size: 12px !important;
  font-weight: 800 !important;
  cursor: pointer;
}

.settings-file-button input {
  position: absolute;
  width: 1px;
  height: 1px;
  opacity: 0;
  pointer-events: none;
}

.settings-save-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  padding: 14px 16px;
  border: 1px solid rgba(54,194,255,.18);
  border-radius: 13px;
  background: rgba(54,194,255,.025);
}

.settings-save-bar > div {
  display: grid;
  gap: 4px;
}

.settings-save-bar strong {
  font-size: 12.8px;
}

.settings-save-bar span {
  color: var(--muted);
  font-size:12px;
  line-height: 1.4;
}

.settings-password-form {
  max-width: 780px;
}

.settings-password-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 11px;
}

.settings-security-note {
  display: grid;
  gap: 4px;
  margin-bottom: 14px;
  padding: 12px;
  border: 1px solid rgba(54,194,255,.16);
  border-radius: 10px;
  background: rgba(54,194,255,.025);
}

.settings-security-note strong {
  font-size: 12.8px;
}

.settings-security-note span {
  color: var(--muted);
  font-size:12px;
}

@media (max-width: 850px) {
  .settings-address-grid {
    grid-template-columns: 1fr 1fr;
  }

  .settings-address-street {
    grid-column: span 2;
  }

  .settings-password-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .settings-page-head,
  .settings-panel-head,
  .settings-save-bar {
    align-items: stretch;
    flex-direction: column;
  }

  .settings-company-status {
    justify-items: start;
  }

  .settings-address-grid {
    grid-template-columns: 1fr;
  }

  .settings-address-street {
    grid-column: auto;
  }

  .settings-logo-row {
    grid-template-columns: 1fr;
  }

  .settings-logo-preview {
    width: 100%;
    height: 125px;
  }

  .settings-save-bar .btn {
    width: 100%;
  }
}

/* AC AUTO PRO 1.42.1 — BUSCA AUTOMÁTICA DE CEP */
.cep-lookup-status {
  display:block;
  min-height:16px;
  margin-top:1px;
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  line-height:1.35;
}
.cep-lookup-status.success { color:#7edfb0; }
.cep-lookup-status.error { color:#f29b9b; }

/* =========================================================
   AC AUTO PRO 1.43.0
   CONSULTA CNPJ + CNPJ ALFANUMÉRICO
   ========================================================= */

.document-lookup-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 8px;
  align-items: center;
}

.document-lookup-row input {
  min-width: 0;
}

.document-lookup-button {
  min-height: 43px;
  white-space: nowrap;
}

.cnpj-lookup-status {
  display: block;
  min-height: 16px;
  margin-top: 2px;
  color: var(--muted);
  font-size:12px;
  font-weight: 600;
  line-height: 1.35;
}

.cnpj-lookup-status.loading {
  color: var(--muted);
}

.cnpj-lookup-status.success {
  color: #7edfb0;
}

.cnpj-lookup-status.error {
  color: #f29b9b;
}

@media (max-width: 520px) {
  .document-lookup-row {
    grid-template-columns: 1fr;
  }

  .document-lookup-button {
    width: 100%;
  }
}

/* =========================================================
   AC Auto Pro 1.20.0 - Planos dinâmicos e bloqueio visual
   ========================================================= */
.workshop-nav-item.plan-locked{
  position:relative;
  opacity:.62;
  border:1px dashed rgba(247,187,77,.28)!important;
}
.workshop-nav-item.plan-locked:hover{
  background:rgba(247,187,77,.06)!important;
  color:var(--muted)!important;
}
.plan-lock-indicator{
  margin-left:auto;
  padding-left:8px;
  font-size:12px;
  line-height:1;
  opacity:.9;
}
.billing-plan-modules-box{
  padding:15px;
  border:1px solid var(--line);
  border-radius:14px;
  background:rgba(5,15,27,.35);
}
.billing-plan-modules-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  margin-bottom:12px;
}
.billing-plan-modules-head>div:first-child{
  display:grid;
  gap:4px;
}
.billing-plan-modules-head strong{font-size:13px}
.billing-plan-modules-head span{
  color:var(--muted);
  font-size:12px;
  line-height:1.45;
}
.billing-plan-modules-head>div:last-child{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.billing-plan-modules-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.billing-plan-module-option{
  display:grid!important;
  grid-template-columns:18px 28px minmax(0,1fr);
  gap:8px;
  align-items:center;
  min-width:0;
  margin:0!important;
  padding:10px;
  border:1px solid rgba(61,106,147,.2);
  border-radius:11px;
  background:rgba(8,20,34,.72);
  cursor:pointer;
}
.billing-plan-module-option:has(input:checked){
  border-color:rgba(54,194,255,.42);
  background:rgba(54,194,255,.06);
}
.billing-plan-module-option input{
  width:16px!important;
  height:16px!important;
  min-height:0!important;
  margin:0!important;
  accent-color:var(--accent);
}
.billing-plan-module-option>span:last-child{
  display:grid;
  min-width:0;
  gap:2px;
}
.billing-plan-module-option strong{
  font-size:12px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.billing-plan-module-option small{
  color:var(--muted);
  font-size:12px;
}
.billing-plan-module-icon{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:8px;
  background:rgba(54,194,255,.08);
  color:var(--accent);
  font-size:14px;
}
.billing-plan-statuses{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  justify-content:flex-end;
}
.billing-plan-module-summary{
  display:grid;
  gap:7px;
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(61,106,147,.18);
}
.billing-plan-module-summary>span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.billing-plan-module-summary>div{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
.billing-plan-module-summary small{
  padding:4px 7px;
  border-radius:999px;
  background:rgba(54,194,255,.07);
  color:#bcd1e2;
  font-size:12px;
}
.platform-check-line span small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:12px;
  font-weight:400;
}
@media(max-width:900px){
  .billing-plan-modules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .billing-plan-modules-head{display:grid}
  .billing-plan-modules-head>div:last-child{justify-content:flex-start}
  .billing-plan-modules-grid{grid-template-columns:1fr}
}

/* =========================================================
   AC AUTO PRO 1.21.0
   ONBOARDING ADIADO — LIMITE DE CONSULTAS
   ========================================================= */

.onboarding-submit {
  flex-wrap: wrap;
}

.onboarding-skip-notice {
  flex: 0 0 100%;
  display: grid;
  gap: 4px;
  padding-top: 12px;
  border-top: 1px solid rgba(54,194,255,.12);
}

.onboarding-skip-notice[hidden],
#workshopSkip[hidden] {
  display: none !important;
}

.onboarding-required .onboarding-submit {
  border-color: rgba(255,185,77,.3);
  background: rgba(255,185,77,.045);
}

.onboarding-required .onboarding-head .eyebrow {
  color: #ffbf69;
}

/* AC Auto Pro 1.22.0 — Clientes e Portal do Cliente */
.customer-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;flex-wrap:wrap}.customer-page-head h2{margin:.2rem 0}.customer-page-head p{margin:0;color:var(--muted,#758096)}.customer-address-block{padding:16px;border:1px solid rgba(127,139,158,.18);border-radius:16px;background:rgba(127,139,158,.045)}.customer-address-block h3{margin:0}.input-action-row{display:flex;gap:8px;align-items:center}.input-action-row input{flex:1}.customer-form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.table-subtext{display:block;margin-top:4px;color:var(--muted,#758096);max-width:320px}.table-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.portal-create-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.portal-list{display:grid;gap:10px}.portal-list-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px;border:1px solid rgba(127,139,158,.18);border-radius:16px}.portal-list-card.is-inactive{opacity:.7}.portal-list-main{display:flex;align-items:center;gap:13px;min-width:0}.portal-list-main>div:last-child{display:grid;gap:4px;min-width:0}.portal-list-main small{color:var(--muted,#758096)}.portal-visibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.portal-link-box{padding:14px;border-radius:14px;background:rgba(127,139,158,.07);display:grid;gap:9px}.portal-link-box span{font-size:12px;color:var(--muted,#758096)}.portal-link-box code{overflow-wrap:anywhere;font-size:12px}.portal-link-box>div{display:flex;gap:8px;flex-wrap:wrap}.timeline-mini{display:grid;gap:8px}.timeline-mini>div{display:grid;gap:3px;padding:10px 12px;border-left:3px solid currentColor;background:rgba(127,139,158,.06);border-radius:0 12px 12px 0}.timeline-mini span,.timeline-mini small{color:var(--muted,#758096)}.portal-ad-preview{min-height:90px;display:flex;align-items:center}.portal-ad-preview img{width:min(100%,320px);max-height:140px;object-fit:cover;border-radius:12px}.portal-settings-meta{margin-top:12px;font-size:12px;color:var(--muted,#758096)}
@media(max-width:760px){.portal-create-row{grid-template-columns:1fr}.portal-list-card{align-items:flex-start;flex-direction:column}.portal-visibility-grid{grid-template-columns:1fr}.customer-table th:nth-child(2),.customer-table td:nth-child(2),.customer-table th:nth-child(4),.customer-table td:nth-child(4){display:none}}

/* =========================================================
   PUBLICIDADE AC AUTO PRO 1.24.0
   ========================================================= */
.ac-ad-slot{margin:16px 0}.ac-platform-ad-card{display:grid;grid-template-columns:minmax(150px,240px) 1fr;gap:18px;align-items:center;background:linear-gradient(135deg,#fff,#f7f9fc);border:1px solid #e4e8ef;border-radius:18px;padding:14px;box-shadow:0 6px 22px rgba(16,24,38,.05)}.ac-platform-ad-media{border-radius:13px;overflow:hidden;background:#eef2f6;min-height:100px}.ac-platform-ad-media img{display:block;width:100%;height:130px;object-fit:cover}.ac-platform-ad-copy strong{display:block;font-size:17px;margin:6px 0}.ac-platform-ad-copy p{margin:0 0 10px;color:#697386;line-height:1.45}.ac-platform-ad-kicker{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#7b8494;font-weight:700}.ac-sponsored-badge{display:inline-flex;padding:4px 7px;border-radius:999px;background:#fff3cd;color:#7a5900;border:1px solid #f0dda1}.ac-ad-popup-overlay{position:fixed;inset:0;z-index:9999;background:rgba(10,16,28,.64);display:grid;place-items:center;padding:20px}.ac-ad-popup{position:relative;width:min(560px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:22px;box-shadow:0 28px 80px rgba(0,0,0,.28)}.ac-ad-popup-close{position:absolute;right:12px;top:12px;z-index:2;width:38px;height:38px;border:0;border-radius:50%;background:rgba(16,24,38,.82);color:#fff;font-size:25px;cursor:pointer}.ac-ad-popup-image{width:100%;max-height:300px;object-fit:cover;display:block;border-radius:22px 22px 0 0}.ac-ad-popup-body{padding:24px}.ac-ad-popup-body h2{margin:8px 0 10px}.ac-ad-popup-body p{color:#596273;line-height:1.55}.ac-ad-popup-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.ad-admin-list{display:grid;gap:12px}.ad-admin-card{border:1px solid #e4e8ef;border-radius:16px;padding:16px;display:grid;grid-template-columns:100px 1fr auto;gap:14px;align-items:center}.ad-admin-thumb{width:100px;height:72px;border-radius:10px;object-fit:cover;background:#eef2f6}.ad-admin-meta{display:flex;gap:8px;flex-wrap:wrap;color:#7a8495;font-size:12px}.ad-admin-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ad-plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:8px;margin-top:8px}.ad-plan-option{display:flex;gap:8px;align-items:center;border:1px solid #e4e8ef;border-radius:10px;padding:9px}.ad-admin-tabs{display:flex;gap:8px;margin:14px 0;flex-wrap:wrap}.ad-admin-tabs button.active{background:#101826;color:#fff}.ad-admin-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ad-admin-upload-preview{width:100%;max-height:220px;object-fit:contain;background:#f4f6f8;border-radius:12px;margin-top:8px}.ad-admin-empty-image{padding:20px;border:1px dashed #ccd3de;border-radius:12px;color:#7b8494;text-align:center;margin-top:8px}
@media(max-width:760px){.ac-platform-ad-card{grid-template-columns:1fr}.ac-platform-ad-media img{height:160px}.ad-admin-card{grid-template-columns:1fr}.ad-admin-thumb{width:100%;height:160px}.ad-admin-actions{justify-content:flex-start}.ad-admin-summary{grid-template-columns:1fr}}


/* =========================================================
   PUBLICIDADE AC AUTO PRO 1.24.1 — CONTRASTE
   Cartões de publicidade usam superfície clara dentro do tema escuro.
   As cores abaixo são explícitas para não herdarem --text (#eef5fb).
   ========================================================= */
.ac-platform-ad-card{color:#172033}
.ac-platform-ad-copy{color:#172033;min-width:0}
.ac-platform-ad-copy strong{color:#172033;font-weight:800}
.ac-platform-ad-copy p{color:#596273}
.ac-platform-ad-copy .btn-ghost{background:#101826;border-color:#101826;color:#fff}
.ac-platform-ad-copy .btn-ghost:hover{background:#17263b;border-color:#17263b;color:#fff}
.ac-ad-popup{color:#172033}
.ac-ad-popup-body{color:#172033}
.ac-ad-popup-body h2{color:#172033;font-weight:800}
.ac-ad-popup-body .btn-ghost{background:#eef2f6;border:1px solid #d7dee8;color:#172033}
.ac-ad-popup-body .btn-ghost:hover{background:#e4e9f0;color:#101826}

/* AC Auto Pro 1.25.0 - Super Admin Portal do Fornecedor */
.supplier-admin-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) 220px auto;gap:10px;margin:14px 0 18px}.supplier-admin-list{display:grid;gap:10px}.supplier-admin-card{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--border-color,#20384e);border-radius:14px;padding:14px;background:rgba(255,255,255,.02)}.supplier-admin-logo{width:64px;height:64px;border-radius:12px;background:#10283d;display:grid;place-items:center;font-size:26px;overflow:hidden}.supplier-admin-logo img{width:100%;height:100%;object-fit:contain;background:#eef3f7}.supplier-admin-meta{display:flex;gap:8px;flex-wrap:wrap;margin:7px 0}.supplier-admin-meta span{font-size:12px;background:#10283d;border-radius:999px;padding:4px 8px;color:#c9d9e8}.supplier-admin-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:900px){.supplier-admin-toolbar{grid-template-columns:1fr}.supplier-admin-card{grid-template-columns:52px 1fr}.supplier-admin-logo{width:52px;height:52px}.supplier-admin-actions{grid-column:1/-1;justify-content:flex-start}}

/* AC Auto Pro 1.25.0 - Portal do Fornecedor / validação técnica */
.supplier-admin-tabs{display:flex;gap:8px;flex-wrap:wrap}.supplier-admin-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 220px auto;gap:10px;margin:14px 0}.supplier-admin-list,.supplier-tech-admin-list{display:grid;gap:10px}.supplier-admin-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.supplier-admin-logo{width:58px;height:58px;border-radius:12px;display:grid;place-items:center;background:var(--surface);overflow:hidden;font-size:22px}.supplier-admin-logo img{width:100%;height:100%;object-fit:contain}.supplier-admin-main{min-width:0}.supplier-admin-meta{display:flex;gap:10px;flex-wrap:wrap;margin:7px 0;font-size:12px;color:var(--muted)}.supplier-admin-meta span{padding:4px 7px;border-radius:999px;background:var(--surface)}.supplier-admin-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.supplier-tech-admin-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.supplier-tech-review-modal{width:min(980px,96vw)}.supplier-tech-review-head{display:grid;gap:6px;margin:16px 0;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}.supplier-tech-review-head>div:first-child{display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap}.supplier-tech-review-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.supplier-tech-review-grid section,.supplier-tech-review-section{border:1px solid var(--line);border-radius:12px;padding:13px;background:var(--surface-2)}.supplier-tech-review-grid h3,.supplier-tech-review-section h3{font-size:13px;margin:0 0 9px}.supplier-tech-review-grid dl{display:grid;grid-template-columns:140px 1fr;gap:6px 10px;margin:0;font-size:12px}.supplier-tech-review-grid dt{color:var(--muted)}.supplier-tech-review-grid dd{margin:0;font-weight:650}.supplier-tech-review-section{margin-top:12px}.supplier-tech-review-section p{margin:0;font-size:12px;line-height:1.55}.preline{white-space:pre-line}.supplier-tech-app-list{display:flex;gap:7px;flex-wrap:wrap}.supplier-tech-app-list span{border:1px solid var(--line);background:var(--surface);padding:7px 9px;border-radius:999px;font-size:12px}.supplier-tech-review-notes{display:grid;gap:6px;margin-top:14px;font-weight:700;font-size:12px}.supplier-tech-review-notes textarea{resize:vertical}.supplier-tech-review-actions{flex-wrap:wrap}.badge-info{background:rgba(52,189,242,.14);color:#5bd2ff;border-color:rgba(52,189,242,.35)}
@media(max-width:850px){.supplier-admin-toolbar{grid-template-columns:1fr}.supplier-admin-card{grid-template-columns:48px 1fr}.supplier-admin-logo{width:48px;height:48px}.supplier-admin-actions{grid-column:1/-1;justify-content:flex-start}.supplier-tech-review-grid{grid-template-columns:1fr}.supplier-tech-admin-card{align-items:flex-start;flex-direction:column}}

/* 1.26.0 — entrada separada para oficinas e fornecedores */
.auth-audience-links{display:grid;gap:9px;margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.45}.auth-audience-links a{color:#7bdcff;text-decoration:none;font-weight:800}.auth-audience-links a:hover{text-decoration:underline}.auth-home-link{justify-self:start}

/* ========================================================================== 
   AC Auto Pro 1.29.0 • Componentes / vitrine técnica dos fornecedores
   ========================================================================== */
.components-hero{display:flex;justify-content:space-between;gap:18px;align-items:stretch;padding:22px;border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg,rgba(12,31,50,.98),rgba(5,18,31,.98));margin-bottom:16px}.components-hero h2{margin:4px 0 8px;font-size:26px}.components-hero p{margin:0;color:var(--muted);max-width:760px;line-height:1.55}.components-hero-note{min-width:270px;max-width:360px;padding:15px;border:1px solid rgba(54,194,255,.2);border-radius:15px;background:rgba(54,194,255,.06);display:flex;flex-direction:column;justify-content:center;gap:5px}.components-hero-note strong{color:var(--accent)}.components-hero-note span{font-size:12px;color:var(--muted);line-height:1.45}.components-context{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px;padding:12px 14px;border:1px solid rgba(184,132,91,.22);border-radius:14px;background:rgba(184,132,91,.07)}.components-context span{font-size:12px;color:var(--muted)}.components-context strong{color:var(--text)}.components-context .btn{margin-left:auto}.components-search-card{margin-bottom:16px}.components-search-grid{display:grid;grid-template-columns:minmax(260px,1.7fr) minmax(180px,.8fr) minmax(180px,.7fr) auto;gap:10px;align-items:end}.components-search-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px}.components-search-grid input,.components-search-grid select{width:100%}.components-results-head{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:18px 2px 10px}.components-results-head h3{margin:0 0 3px}.components-results-head p{margin:0;color:var(--muted);font-size:12px}.components-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.components-card{min-width:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:linear-gradient(180deg,rgba(13,29,47,.98),rgba(7,20,34,.98));display:flex;flex-direction:column}.components-card-media{height:170px;display:grid;place-items:center;background:rgba(233,239,244,.95);border-bottom:1px solid var(--line)}.components-card-media img{width:100%;height:100%;object-fit:contain;padding:12px}.components-image-placeholder{width:100%;height:100%;min-height:130px;display:grid;place-items:center;color:#718096;font-size:42px;background:linear-gradient(135deg,#edf2f7,#dfe7ee)}.components-card-body{padding:14px;display:flex;flex-direction:column;gap:9px;flex:1}.components-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.components-card h3{font-size:15px;line-height:1.3;margin:0}.components-code{font-size:12px;color:var(--muted);margin:0}.components-spec-list{display:flex;gap:5px;flex-wrap:wrap}.components-spec-list span{padding:5px 7px;border:1px solid rgba(61,106,147,.22);border-radius:8px;background:rgba(5,15,27,.32);font-size:12px;color:var(--muted)}.components-spec-list b{color:var(--text)}.components-no-spec{font-size:12px;color:var(--muted);font-style:italic}.components-supplier-line{display:flex;justify-content:space-between;gap:8px;align-items:center;padding-top:8px;border-top:1px solid rgba(61,106,147,.16)}.components-supplier-line span{font-weight:800;font-size:12px}.components-supplier-line small{color:var(--muted);font-size:12px}.components-card-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:end;gap:10px}.components-card-foot>div:first-child{display:grid;gap:5px}.components-card-foot strong{font-size:14px}.components-actions{display:flex;gap:6px;flex-wrap:wrap}.components-equivalence-warning{display:flex;gap:12px;align-items:flex-start;padding:13px 15px;border:1px solid rgba(240,180,70,.2);border-radius:14px;background:rgba(240,180,70,.07)}.components-equivalence-warning strong{white-space:nowrap;font-size:12px;color:#f0b446}.components-equivalence-warning span{font-size:12px;line-height:1.5;color:var(--muted)}
.components-modal-overlay{position:fixed;inset:0;z-index:9999;background:rgba(1,8,15,.82);backdrop-filter:blur(8px);display:grid;place-items:center;padding:18px;overflow:auto}.components-modal{width:min(1080px,100%);max-height:92vh;overflow:auto;border:1px solid var(--line);border-radius:20px;background:#081827;box-shadow:0 24px 70px rgba(0,0,0,.45)}.components-modal-head{position:sticky;top:0;z-index:4;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:16px 18px;border-bottom:1px solid var(--line);background:rgba(8,24,39,.97);backdrop-filter:blur(8px)}.components-modal-head h2{font-size:20px;margin:3px 0 0}.components-modal-body{padding:18px}.components-detail-grid{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(0,1.25fr);gap:20px}.components-detail-media{min-width:0}.components-detail-media>img{width:100%;height:310px;object-fit:contain;border-radius:16px;background:#eef3f7;padding:14px}.components-thumbs{display:flex;gap:7px;overflow:auto;margin-top:8px}.components-thumbs img{width:70px;height:60px;object-fit:contain;border-radius:9px;background:#eef3f7;padding:4px}.components-detail-main{display:flex;flex-direction:column;gap:11px}.components-detail-main h3{font-size:18px;margin:0}.components-detail-main>p{color:var(--muted);line-height:1.55;margin:0}.components-price{display:grid;gap:3px;padding:12px;border-radius:13px;background:rgba(54,194,255,.07);border:1px solid rgba(54,194,255,.15)}.components-price span{font-size:12px;color:var(--muted)}.components-price strong{font-size:23px;color:var(--accent)}.components-supplier-box{display:grid;gap:3px;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(5,15,27,.35)}.components-supplier-box span{font-size:12px;color:var(--muted)}.components-supplier-box strong{font-size:14px}.components-supplier-box small{color:var(--muted)}.components-detail-section{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.components-detail-section h3{margin:0 0 10px}.components-app-list{display:flex;gap:7px;flex-wrap:wrap}.components-app-list span{padding:7px 9px;border-radius:9px;background:rgba(54,194,255,.06);border:1px solid rgba(54,194,255,.14);font-size:12px}.components-equivalent-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.components-equivalent-card{display:flex;flex-direction:column;gap:7px;padding:12px;border:1px solid var(--line);border-radius:13px;background:rgba(5,15,27,.35)}.components-equivalent-card>span,.components-equivalent-card>div:not(.components-badges){font-size:12px;color:var(--muted)}.components-equivalent-card .btn{align-self:flex-start}
@media (max-width:1050px){.components-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.components-search-grid{grid-template-columns:1fr 1fr}.components-search-grid .btn{width:100%}.components-detail-grid{grid-template-columns:1fr}.components-detail-media>img{height:260px}}
@media (max-width:700px){.components-hero{display:grid;padding:16px}.components-hero-note{min-width:0;max-width:none}.components-search-grid{grid-template-columns:1fr}.components-grid{grid-template-columns:1fr}.components-card-media{height:190px}.components-card-foot{align-items:flex-start;flex-direction:column}.components-modal-overlay{padding:0;place-items:stretch}.components-modal{width:100%;max-height:100vh;border-radius:0}.components-modal-body{padding:14px}.components-equivalent-grid{grid-template-columns:1fr}.components-context .btn{margin-left:0;width:100%}.components-equivalence-warning{display:grid}.components-equivalence-warning strong{white-space:normal}}
.tech2-components-marketplace{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border:1px solid rgba(54,194,255,.18);border-radius:15px;background:rgba(54,194,255,.055)}.tech2-components-marketplace>div{display:grid;gap:4px}.tech2-components-marketplace strong{font-size:13px}.tech2-components-marketplace span{font-size:12px;color:var(--muted)}.tech2-components-marketplace small{font-size:12px;color:var(--muted);line-height:1.45}@media(max-width:700px){.tech2-components-marketplace{display:grid}.tech2-components-marketplace .btn{width:100%}}

/* =========================================================
   AC AUTO PRO 1.30.0 — ONDE COMPRAR / LOCALIZAÇÃO
   ========================================================= */
.components-nearby-section{border-top:1px solid rgba(127,139,158,.18);padding-top:18px}
.components-location-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0 14px}.components-location-actions>span{color:var(--muted);font-size:12px;line-height:1.4}
.components-nearby-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:rgba(54,194,255,.07);border:1px solid rgba(54,194,255,.16);margin-bottom:10px;font-size:12px}.components-nearby-meta span{font-weight:800}.components-nearby-meta small{color:var(--muted)}
.components-nearby-list{display:grid;gap:10px}.components-nearby-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:13px;border:1px solid rgba(127,139,158,.2);border-radius:15px;background:rgba(127,139,158,.045)}.components-nearby-card.is-nearest{border-color:rgba(54,194,255,.45);box-shadow:0 0 0 1px rgba(54,194,255,.08) inset}.components-nearby-rank{font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:var(--accent,#36c2ff);min-width:64px}.components-nearby-main{display:grid;gap:4px;min-width:0}.components-nearby-main>strong{font-size:14px}.components-nearby-main>span,.components-nearby-main>small{color:var(--muted);font-size:12px;line-height:1.35}.components-nearby-distance{display:grid;gap:3px;text-align:right;white-space:nowrap}.components-nearby-distance>strong{font-size:13px}.components-nearby-distance>span{font-weight:800}.components-nearby-distance>small{font-size:12px;color:#6ccf9d}.components-nearby-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.components-nearby-actions .is-sent{opacity:.7}
@media(max-width:900px){.components-nearby-card{grid-template-columns:auto 1fr}.components-nearby-distance{text-align:left}.components-nearby-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:560px){.components-nearby-card{grid-template-columns:1fr}.components-nearby-rank{min-width:0}.components-nearby-meta{align-items:flex-start;flex-direction:column}}

/* =========================================================
   AC AUTO PRO 1.31.0 — ECOSSISTEMA AC AUTO PRO
   ========================================================= */
.ecosystem-main-nav{border:1px solid rgba(184,132,91,.18)!important;background:linear-gradient(135deg,rgba(7,23,57,.55),rgba(184,132,91,.07))!important}.ecosystem-main-nav.active{border-color:rgba(184,132,91,.55)!important;box-shadow:inset 3px 0 0 #B8845B}.ecosystem-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:22px;align-items:center;padding:28px;border:1px solid rgba(184,132,91,.28);border-radius:22px;background:radial-gradient(circle at 88% 16%,rgba(184,132,91,.16),transparent 34%),linear-gradient(135deg,#071739,#031722);box-shadow:0 20px 55px rgba(0,0,0,.18)}.ecosystem-hero h2{font-size:clamp(25px,3.2vw,42px);line-height:1.06;margin:9px 0 12px;max-width:850px}.ecosystem-hero p{color:#b8c4d3;line-height:1.65;max-width:880px;margin:0}.ecosystem-flow{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;padding:18px;border:1px solid rgba(158,170,186,.18);border-radius:16px;background:rgba(3,23,34,.7)}.ecosystem-flow span{padding:9px 11px;border-radius:10px;background:rgba(158,170,186,.09);font-size:12px;font-weight:800}.ecosystem-flow b{color:#B8845B}.ecosystem-search-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}.ecosystem-search-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:15px;padding:21px;border:1px solid var(--line);border-radius:19px;background:linear-gradient(145deg,#0b1a2c,#0a1625);overflow:hidden}.ecosystem-search-card:after{content:"";position:absolute;inset:auto -40px -70px auto;width:180px;height:180px;border-radius:50%;background:rgba(184,132,91,.07);pointer-events:none}.ecosystem-search-base{border-color:rgba(54,194,255,.22)}.ecosystem-search-components{border-color:rgba(184,132,91,.32)}.ecosystem-search-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#10243a;color:#fff;font-size:24px}.ecosystem-search-card h3{margin:5px 0 6px;font-size:20px}.ecosystem-search-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.5}.ecosystem-search-action{grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:9px;margin-top:5px}.ecosystem-search-action input,.ecosystem-directory-search input,.ecosystem-event-filters input,.ecosystem-event-filters select{margin:0}.ecosystem-search-card.is-locked{opacity:.7}.ecosystem-lock{grid-column:1/-1;display:inline-flex;width:max-content;max-width:100%;padding:6px 9px;border-radius:999px;background:rgba(247,187,77,.1);color:#ffd47b;border:1px solid rgba(247,187,77,.2);font-size:12px;font-weight:800}.ecosystem-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ecosystem-module-card{display:grid;grid-template-columns:auto 1fr;gap:13px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:18px;border-radius:17px;cursor:pointer}.ecosystem-module-card>span:first-child{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:#10243a;font-size:21px}.ecosystem-module-card strong,.ecosystem-module-card small{display:block}.ecosystem-module-card small{color:var(--muted);margin-top:4px;line-height:1.4}.ecosystem-module-card:hover{border-color:#365b7b;transform:translateY(-1px)}.ecosystem-module-card.is-locked{opacity:.7}.ecosystem-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ecosystem-principles article{padding:15px 16px;border:1px solid var(--line);border-radius:14px;background:#091625}.ecosystem-principles strong,.ecosystem-principles span{display:block}.ecosystem-principles span{color:var(--muted);font-size:12px;margin-top:5px;line-height:1.45}.ecosystem-context-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px;padding:10px;border:1px solid var(--line);border-radius:14px;background:#081523}.ecosystem-context-tabs{display:flex;gap:6px;flex-wrap:wrap}.ecosystem-context-tab{border:1px solid transparent;background:transparent;color:var(--muted);padding:8px 10px;border-radius:9px;font-weight:750;cursor:pointer}.ecosystem-context-tab:hover,.ecosystem-context-tab.active{background:#10243a;color:#fff;border-color:#29425e}.ecosystem-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:22px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(135deg,#091827,#0c1d30)}.ecosystem-section-head h2{margin:5px 0}.ecosystem-section-head p{margin:0;color:var(--muted);max-width:780px;line-height:1.55}.ecosystem-directory-search{display:grid;grid-template-columns:minmax(220px,340px) auto;gap:8px}.ecosystem-separation-note{display:flex;gap:9px;align-items:center;margin-top:12px;padding:11px 13px;border:1px solid rgba(184,132,91,.25);border-radius:12px;background:rgba(184,132,91,.06);font-size:12px}.ecosystem-separation-note span{color:var(--muted)}.ecosystem-supplier-list{display:grid;gap:10px}.ecosystem-supplier-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:15px;align-items:center;padding:17px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.ecosystem-supplier-logo{width:62px;height:62px;display:grid;place-items:center;border-radius:14px;background:#10243a;font-size:24px;overflow:hidden}.ecosystem-supplier-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.ecosystem-supplier-main h3{margin:5px 0;font-size:17px}.ecosystem-supplier-main p{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.ecosystem-inline-badges{display:flex;gap:6px;flex-wrap:wrap}.ecosystem-supplier-meta,.ecosystem-event-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;color:#b3c0cf;font-size:12px}.ecosystem-supplier-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ecosystem-event-filters{display:grid;grid-template-columns:1fr minmax(170px,240px) auto;gap:9px;margin-top:13px}.ecosystem-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.ecosystem-event-card{overflow:hidden;border:1px solid var(--line);border-radius:17px;background:var(--surface)}.ecosystem-event-media{height:145px;display:grid;place-items:center;background:#0a1b2d;font-size:34px}.ecosystem-event-media img{width:100%;height:100%;object-fit:cover}.ecosystem-event-body{padding:15px}.ecosystem-event-body h3{margin:7px 0;font-size:17px}.ecosystem-event-body p{color:var(--muted);font-size:12px;line-height:1.5;min-height:54px}.ecosystem-event-body .btn{margin-top:11px}.nav .nav-item.ecosystem-main-nav b{line-height:1.15}
@media(max-width:980px){.ecosystem-hero{grid-template-columns:1fr}.ecosystem-event-grid{grid-template-columns:repeat(2,1fr)}.ecosystem-principles{grid-template-columns:1fr}.ecosystem-section-head{align-items:stretch;flex-direction:column}.ecosystem-directory-search{grid-template-columns:1fr auto}}
@media(max-width:720px){.ecosystem-search-grid,.ecosystem-module-grid,.ecosystem-event-grid{grid-template-columns:1fr}.ecosystem-context-bar{align-items:stretch;flex-direction:column}.ecosystem-context-tabs{display:grid;grid-template-columns:1fr 1fr}.ecosystem-context-tab{text-align:left}.ecosystem-supplier-card{grid-template-columns:auto 1fr}.ecosystem-supplier-actions{grid-column:1/-1;justify-content:flex-start}.ecosystem-event-filters{grid-template-columns:1fr}.ecosystem-search-action{grid-template-columns:1fr}.ecosystem-flow{justify-content:flex-start}.ecosystem-separation-note{align-items:flex-start;flex-direction:column}}

/* 1.32.0 — Eventos & Cursos do Ecossistema */
.ecosystem-event-filters{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(150px,210px)) auto auto}
.ecosystem-event-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:12px}.ecosystem-event-footer strong{font-size:14px}.ecosystem-event-footer .btn{margin-top:0}
.ecosystem-event-detail-modal{max-width:1040px}.ecosystem-event-detail-cover{width:100%;height:min(320px,38vh);object-fit:cover;border-radius:16px;border:1px solid var(--line)}.section-gap-sm{margin-top:10px}.ecosystem-event-detail-grid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:18px;margin-top:16px}.ecosystem-event-detail-grid section,.ecosystem-event-detail-section{padding:15px;border:1px solid var(--line);border-radius:14px;background:#091625}.ecosystem-event-detail-grid h3,.ecosystem-event-detail-section h3{margin:0 0 10px}.ecosystem-event-detail-grid dl{display:grid;grid-template-columns:130px 1fr;gap:7px 12px;margin:0}.ecosystem-event-detail-grid dt{color:var(--muted);font-size:12px}.ecosystem-event-detail-grid dd{margin:0;font-size:13px}.ecosystem-event-detail-grid p,.ecosystem-event-detail-section p{color:#c4cfdb;font-size:13px;line-height:1.6;margin:0}.ecosystem-event-detail-section{margin-top:12px}.ecosystem-event-detail-actions{flex-wrap:wrap}
@media(max-width:1180px){.ecosystem-event-filters{grid-template-columns:1fr 1fr 1fr}.ecosystem-event-filters button{width:100%}}
@media(max-width:760px){.ecosystem-event-detail-grid{grid-template-columns:1fr}.ecosystem-event-filters{grid-template-columns:1fr}.ecosystem-event-detail-grid dl{grid-template-columns:1fr}.ecosystem-event-detail-grid dt{margin-top:5px}}
