/* AutoGestão Pro 2.6 — identidade visual do Portal > Meus Veículos & Contratos.
 * Escopo deliberadamente restrito à seção do cliente; não afeta a Central Admin,
 * componentes financeiros, formulários PIX, modais ou dados contratuais.
 */
.agp-v26-portal-vehicles-page {
  --agp-v26-purple: #9a23eb;
  --agp-v26-gold: #f1be5e;
  --agp-v26-outline: rgba(111, 129, 183, .30);
  color: #f2f4ff;
  padding-bottom: calc(5rem + env(safe-area-inset-bottom, 0px));
  min-width: 0;
}
.agp-v26-portal-vehicles-page > .agp-v26-portal-vehicles-section > div:first-child h2 {
  font-size: clamp(13px, 3.65vw, 16px);
  font-weight: 800;
  letter-spacing: .065em;
  line-height: 1.3;
}
.agp-v26-portal-vehicles-page > .agp-v26-portal-vehicles-section > div:first-child p {
  font-size: clamp(12px, 3.25vw, 14px);
  line-height: 1.55;
  color: #aebbd8;
}
.agp-v26-vehicle-search {
  min-width: 0;
  gap: 10px;
}
.agp-v26-vehicle-search input[type="search"] {
  min-width: 0;
  min-height: 46px;
  background: #080f23;
  border: 1px solid #354466;
  border-radius: 15px;
  color: #f4f5ff;
  font-size: 13px;
  padding: 11px 15px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.agp-v26-vehicle-search input[type="search"]:focus-visible {
  outline: 2px solid #be8dff;
  outline-offset: 2px;
  border-color: #aa71fa;
}
.agp-v26-vehicle-search > span {
  color: #aebbd8;
  font-size: 12px;
  white-space: nowrap;
}
.agp-v26-vehicle-grid {gap: 16px;}
.agp-v26-vehicle-card {
  min-width: 0;
  border: 1px solid var(--agp-v26-outline);
  background: linear-gradient(158deg, #152039 0%, #111a30 51%, #0c1428 100%);
  border-radius: 22px;
  padding: clamp(13px, 3.4vw, 19px);
  box-shadow: 0 10px 28px rgba(0,0,0,.23);
  overflow: hidden;
}
.agp-v26-vehicle-card .agp-v26-vehicle-photo {
  height: clamp(150px, 37vw, 235px);
  max-height: 235px;
  width: 100%;
  border: 1px solid rgba(182, 196, 237, .12);
  border-radius: 16px;
  object-fit: cover;
  object-position: 50% 48%;
  display: block;
}
.agp-v26-vehicle-card .agp-v26-vehicle-photo-placeholder {
  min-height: 140px;
  height: auto;
  padding: 20px;
  border-radius: 16px;
  background: #080f22;
}
.agp-v26-vehicle-card .agp-v26-contract-line {
  gap: 8px;
  min-width: 0;
}
.agp-v26-vehicle-card .agp-v26-contract-line > span:first-child {
  font-size: clamp(11px, 3vw, 13px);
  line-height: 1.45;
  overflow-wrap: anywhere;
  letter-spacing: .012em;
  color: #f6f5ff;
}
.agp-v26-vehicle-information h3 {
  font-size: clamp(15px, 4vw, 19px);
  line-height: 1.3;
  letter-spacing: .012em;
  font-weight: 800;
}
.agp-v26-vehicle-information p {
  font-size: 12px;
  line-height: 1.5;
  color: #b5c1da;
}
.agp-v26-vehicle-information strong {color: #ecedff;}
.agp-v26-vehicle-actions {
  display: flex;
  flex-direction: column;
  gap: 11px;
  min-width: 0;
  background: linear-gradient(154deg, rgba(66,67,128,.16), rgba(17,25,50,.78));
  border: 1px solid rgba(112,125,183,.23);
  border-radius: 19px;
  padding: clamp(11px, 3vw, 15px);
  margin-top: 15px !important;
}
.agp-v26-vehicle-actions > button {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(7px, 2.2vw, 11px);
  width: 100%;
  min-width: 0;
  min-height: 53px;
  height: auto;
  padding: 12px clamp(9px, 2.9vw, 17px);
  border-radius: 15px;
  box-sizing: border-box;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
  font-family: inherit;
  font-size: clamp(11px, 3.1vw, 14px);
  line-height: 1.4;
  font-weight: 800;
  letter-spacing: -.008em;
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease;
}
.agp-v26-vehicle-actions > button::before {
  content: "";
  display: block;
  flex: 0 0 21px;
  width: 21px;
  height: 21px;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}
.agp-v26-vehicle-actions > button::after {
  content: "→";
  display: block;
  flex: 0 0 auto;
  font-size: 19px;
  line-height: 1;
  font-weight: 500;
}
.agp-v26-open-contract-btn {
  color: #fff;
  background: linear-gradient(110deg, #8511e2 0%, #8d13e9 56%, #b12af5 100%);
  border: 1px solid rgba(226,161,255,.4);
  box-shadow: 0 9px 20px rgba(119,19,213,.24), inset 0 1px 0 rgba(255,255,255,.20);
}
.agp-v26-open-contract-btn::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%23ffffff%22%20stroke-width=%221.8%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M7%203h7l5%205v12a1%201%200%200%201-1%201H7a2%202%200%200%201-2-2V5a2%202%200%200%201%202-2z%22/%3E%3Cpath%20d=%22M14%203v5h5%22/%3E%3Cpath%20d=%22M9%2013h6M9%2017h6%22/%3E%3C/svg%3E"); }
.agp-v26-update-mileage-btn {
  background: linear-gradient(105deg, #19243d, #111b31);
  color: #f8d88e;
  border: 1px solid rgba(235,179,80,.73);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.agp-v26-update-mileage-btn::before { background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%23f1be5e%22%20stroke-width=%221.9%22%20stroke-linecap=%22round%22%20stroke-linejoin=%22round%22%3E%3Cpath%20d=%22M4%2017a8%208%200%200%201%2016%200%22/%3E%3Cpath%20d=%22m12%2015%204-6%22/%3E%3Ccircle%20cx=%2212%22%20cy=%2215%22%20r=%221%22%20fill=%22%23f1be5e%22/%3E%3Cpath%20d=%22M6%2017h1M17%2017h1%22/%3E%3C/svg%3E"); }
.agp-v26-vehicle-actions > button:focus-visible,
.agp-v26-mileage-summary:focus-visible {
  outline: 3px solid #d5b0ff;
  outline-offset: 3px;
}
.agp-v26-vehicle-actions > button:disabled {
  opacity: .55;
  cursor: not-allowed;
  filter: grayscale(.3);
}
.agp-v26-mileage-history {
  min-width: 0;
  margin-top: clamp(14px, 4vw, 23px) !important;
  padding: 6px !important;
  border: 1px solid var(--agp-v26-outline);
  background: linear-gradient(145deg, #111a30, #0e152b);
  border-radius: 20px;
  box-shadow: 0 9px 24px rgba(0,0,0,.16);
}
.agp-v26-mileage-summary {
  display: flex;
  align-items: center;
  gap: clamp(9px, 2.6vw, 14px);
  min-width: 0;
  min-height: 64px;
  padding: 12px clamp(11px, 3vw, 17px) !important;
  border: 1px solid rgba(133,121,202,.30);
  border-radius: 15px;
  background: linear-gradient(110deg, #1b2441, #171e36);
  color: #f2f0ff;
  font-size: clamp(11px, 3vw, 14px);
  font-weight: 750;
  line-height: 1.45;
  list-style: none;
  cursor: pointer;
  overflow-wrap: anywhere;
}
.agp-v26-mileage-summary::-webkit-details-marker {display:none;}
.agp-v26-mileage-summary::marker {content:"";}
.agp-v26-mileage-summary::before {
  content: "";
  flex: 0 0 34px;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  border: 1px solid rgba(159, 76, 255, .36);
  background-color: rgba(111,47,218,.19);
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20width=%2224%22%20height=%2224%22%20viewBox=%220%200%2024%2024%22%20fill=%22none%22%20stroke=%22%23c38cff%22%20stroke-width=%221.6%22%20stroke-linecap=%22round%22%3E%3Cpath%20d=%22M5%2018v-4M10%2018V8M15%2018v-7M20%2018V4%22%20stroke-width=%223.5%22/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 22px;
}
.agp-v26-mileage-summary::after {
  content: "";
  flex: 0 0 11px;
  width: 11px;
  height: 11px;
  margin-left: auto;
  margin-right: 5px;
  margin-bottom: 4px;
  border-right: 2px solid #e5e7fb;
  border-bottom: 2px solid #e5e7fb;
  transform: rotate(45deg);
  transition: transform .18s ease;
}
.agp-v26-mileage-history[open] > .agp-v26-mileage-summary::after { transform: rotate(225deg); }
.agp-v26-mileage-history > div {padding: 14px clamp(8px, 3vw, 19px) 16px;}
@media (hover:hover) and (pointer:fine) {
  .agp-v26-open-contract-btn:hover {filter: brightness(1.12);box-shadow:0 11px 28px rgba(141,23,222,.36);transform:translateY(-1px);}
  .agp-v26-update-mileage-btn:hover {border-color:#ffd589;background:#1d2a47;transform:translateY(-1px);}
  .agp-v26-mileage-summary:hover {border-color:rgba(172,145,240,.65);}
}
@media (max-width: 390px) {
  .agp-v26-vehicle-search input[type="search"] {flex-basis: 100%;}
  .agp-v26-vehicle-card {padding:12px;}
  .agp-v26-vehicle-actions {padding:9px;}
  .agp-v26-vehicle-actions > button {font-size:12px;gap:6px;padding:12px 10px;}
  .agp-v26-vehicle-actions > button::before {flex-basis:18px;width:18px;height:18px;}
  .agp-v26-mileage-summary {gap:9px;}
  .agp-v26-mileage-summary::before {flex-basis:30px;width:30px;height:30px;}
}
@media (min-width: 900px) {
  .agp-v26-portal-vehicles-page {padding-bottom:2rem;}
  .agp-v26-vehicle-card .agp-v26-vehicle-photo {height:195px;}
}
@media (prefers-reduced-motion:reduce) {
  .agp-v26-portal-vehicles-page button,
  .agp-v26-portal-vehicles-page summary,
  .agp-v26-portal-vehicles-page summary::after {transition:none !important;}
}
