/* ==========================================================================
   WooCommerce — Style overrides for Consulta ADV Theme
   ========================================================================== */

/* -----------------------------------------------------------------------
   RESET WooCommerce default My Account layout (float + % widths)
----------------------------------------------------------------------- */
.woocommerce-account .woocommerce-MyAccount-navigation {
    float: none !important;
    width: 100% !important;
}
.woocommerce-account .woocommerce-MyAccount-content {
    float: none !important;
    width: 100% !important;
}

/* -----------------------------------------------------------------------
   MY ACCOUNT — LAYOUT
----------------------------------------------------------------------- */
.cadv-myaccount {
    display: grid;
    grid-template-columns: 260px 1fr;
    gap: 32px;
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 20px 80px;
    min-height: 60vh;
}

/* Sidebar */
.cadv-myaccount__sidebar {
    position: sticky;
    top: 84px;
    align-self: start;
    min-width: 260px;
    width: 260px;
}

.cadv-myaccount__user {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--off-white);
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
    margin-bottom: 16px;
}

.cadv-myaccount__avatar {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.cadv-myaccount__user strong {
    display: block;
    font-size: 14px;
    font-weight: 700;
    color: var(--navy);
    line-height: 1.3;
}

.cadv-myaccount__user small {
    font-size: 12px;
    color: var(--gray-500);
}

/* Navigation */
.woocommerce-MyAccount-navigation ul {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 0;
    margin: 0;
    background: var(--white);
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
}

/* Clip border-radius sem esconder texto */
.woocommerce-MyAccount-navigation ul li:first-child a {
    border-radius: var(--radius-lg) var(--radius-lg) 0 0;
}
.woocommerce-MyAccount-navigation ul li:last-child a {
    border-radius: 0 0 var(--radius-lg) var(--radius-lg);
}

.woocommerce-MyAccount-navigation ul li {
    margin: 0;
}

.woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    font-size: 14px;
    font-weight: 500;
    color: var(--gray-600);
    transition: var(--transition);
    text-decoration: none;
    border-left: 3px solid transparent;
    white-space: nowrap;
    overflow: visible;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background: var(--navy-50);
    color: var(--navy);
    border-left-color: var(--navy-100);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
    background: var(--navy);
    color: var(--white);
    font-weight: 600;
    border-left-color: var(--accent);
}

/* Add icons to nav items via CSS */
.woocommerce-MyAccount-navigation ul li a::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    flex-shrink: 0;
    opacity: 0.7;
}

.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--editar-perfil a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--consultas a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z'/%3E%3Cpolyline points='14 2 14 8 20 8'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--financeiro a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Crect x='1' y='4' width='22' height='16' rx='2' ry='2'/%3E%3Cline x1='1' y1='10' x2='23' y2='10'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--meus-advogados a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='9' cy='7' r='4'/%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'/%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--nova-consulta a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cline x1='12' y1='5' x2='12' y2='19'/%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a::before {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E");
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
    color: var(--danger);
}

.woocommerce-MyAccount-navigation ul li.is-active a::before {
    filter: brightness(10);
}

/* Nova Consulta special highlight */
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--nova-consulta a {
    color: var(--accent);
    font-weight: 600;
    border-top: 1px solid var(--gray-200);
    margin-top: 4px;
    padding-top: 14px;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--nova-consulta a:hover {
    background: rgba(212,164,76,0.08);
    border-left-color: var(--accent);
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--nova-consulta.is-active a {
    background: var(--accent);
    color: var(--white);
}

/* Content area */
.cadv-myaccount__content {
    min-width: 0;
}

/* -----------------------------------------------------------------------
   DASHBOARD
----------------------------------------------------------------------- */
.cadv-dash__welcome {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 28px;
    background: linear-gradient(135deg, var(--navy-dark), var(--navy), var(--navy-light));
    border-radius: var(--radius-lg);
    color: var(--white);
    margin-bottom: 24px;
    flex-wrap: wrap;
}

.cadv-dash__avatar img {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    border: 3px solid rgba(255,255,255,0.2);
    object-fit: cover;
}

.cadv-dash__info {
    flex: 1;
    min-width: 200px;
}

.cadv-dash__info h2 {
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 4px;
    color: var(--white);
}

.cadv-dash__meta {
    display: flex;
    gap: 16px;
    font-size: 13px;
    color: rgba(255,255,255,0.65);
    flex-wrap: wrap;
}

.cadv-dash__meta span {
    display: flex;
    align-items: center;
    gap: 4px;
}

.cadv-dash__meta svg {
    opacity: 0.6;
}

.cadv-dash__cta {
    margin-left: auto;
    white-space: nowrap;
    background: var(--accent) !important;
    border-color: var(--accent) !important;
    color: var(--white) !important;
}
.cadv-dash__cta:hover {
    background: #c29340 !important;
    border-color: #c29340 !important;
}

/* Stats */
.cadv-dash__stats {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 28px;
}

.cadv-stat {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px;
    background: var(--white);
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
    transition: var(--transition);
}

.cadv-stat:hover {
    box-shadow: var(--shadow);
    border-color: var(--navy-100);
}

.cadv-stat__icon {
    width: 44px;
    height: 44px;
    border-radius: var(--radius);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cadv-stat__icon--blue { background: #eff6ff; color: #3b82f6; }
.cadv-stat__icon--green { background: #f0fdf4; color: #16a34a; }
.cadv-stat__icon--amber { background: #fffbeb; color: #d97706; }
.cadv-stat__icon--navy { background: var(--navy-50); color: var(--navy); }

.cadv-stat__number {
    display: block;
    font-size: 20px;
    font-weight: 800;
    color: var(--navy);
    line-height: 1.2;
}

.cadv-stat__label {
    display: block;
    font-size: 12px;
    color: var(--gray-500);
    font-weight: 500;
}

/* Quick actions */
.cadv-dash__actions h3,
.cadv-dash__recent h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 14px;
}

.cadv-dash__actions-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    margin-bottom: 28px;
}

.cadv-action-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    background: var(--white);
    border: 1px solid var(--gray-200);
    border-radius: var(--radius);
    transition: var(--transition);
    text-decoration: none;
    color: var(--gray-700);
    font-size: 14px;
    font-weight: 600;
}

.cadv-action-card:hover {
    border-color: var(--navy);
    box-shadow: var(--shadow-sm);
    color: var(--navy);
    transform: translateY(-1px);
}

.cadv-action-card__icon {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-sm);
    background: var(--navy-50);
    color: var(--navy);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cadv-action-card__arrow {
    margin-left: auto;
    color: var(--gray-400);
}

/* Recent consultations */
.cadv-dash__recent-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 12px;
}

.cadv-recent-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: var(--white);
    border: 1px solid var(--gray-200);
    border-radius: var(--radius);
}

.cadv-recent-item__area {
    font-weight: 600;
    color: var(--navy);
    flex: 1;
    font-size: 14px;
}

.cadv-recent-item__date {
    font-size: 13px;
    color: var(--gray-500);
}

.cadv-dash__view-all {
    font-size: 13px;
    font-weight: 600;
    color: var(--navy);
}

/* -----------------------------------------------------------------------
   BADGES
----------------------------------------------------------------------- */
.cadv-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
}

.cadv-badge--pending {
    background: #fef3c7;
    color: #92400e;
}
.cadv-badge--paid {
    background: #dbeafe;
    color: #1e40af;
}
.cadv-badge--matched {
    background: #e0e7ff;
    color: #3730a3;
}
.cadv-badge--completed {
    background: #dcfce7;
    color: #166534;
}
.cadv-badge--cancelled {
    background: #fee2e2;
    color: #991b1b;
}

/* -----------------------------------------------------------------------
   PANEL (shared by all endpoint pages)
----------------------------------------------------------------------- */
.cadv-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 28px;
    flex-wrap: wrap;
    gap: 16px;
}

.cadv-panel__header h2 {
    font-size: 22px;
    font-weight: 800;
    color: var(--navy);
    margin-bottom: 2px;
}

.cadv-panel__header p {
    font-size: 14px;
    color: var(--gray-500);
}

/* -----------------------------------------------------------------------
   TABLES
----------------------------------------------------------------------- */
.cadv-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-lg);
}

.cadv-table {
    width: 100%;
    border-collapse: collapse;
}

.cadv-table thead th {
    padding: 12px 16px;
    font-size: 12px;
    font-weight: 600;
    color: var(--gray-500);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background: var(--gray-50);
    border-bottom: 1px solid var(--gray-200);
    text-align: left;
    white-space: nowrap;
}

.cadv-table tbody td {
    padding: 12px 16px;
    font-size: 14px;
    color: var(--gray-700);
    border-bottom: 1px solid var(--gray-100);
    vertical-align: middle;
}

.cadv-table tbody tr:last-child td {
    border-bottom: none;
}

.cadv-table tbody tr:hover {
    background: var(--gray-50);
}

.cadv-details-row td {
    padding: 0 !important;
}

.cadv-details-content {
    padding: 16px 16px 20px;
    background: var(--gray-50);
    border-top: 1px solid var(--gray-200);
}

.cadv-details-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
}

.cadv-details-grid small {
    display: block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--gray-500);
    letter-spacing: 0.5px;
    margin-bottom: 4px;
}

.cadv-details-grid p {
    font-size: 14px;
    color: var(--gray-700);
    margin: 0;
}

/* -----------------------------------------------------------------------
   EMPTY STATE
----------------------------------------------------------------------- */
.cadv-empty {
    text-align: center;
    padding: 60px 20px;
    background: var(--gray-50);
    border-radius: var(--radius-lg);
    border: 2px dashed var(--gray-200);
}

.cadv-empty svg {
    color: var(--gray-400);
    margin-bottom: 16px;
}

.cadv-empty h3 {
    font-size: 18px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 8px;
}

.cadv-empty p {
    font-size: 14px;
    color: var(--gray-500);
    margin-bottom: 20px;
}

.cadv-empty--sm {
    padding: 32px 20px;
}
.cadv-empty--sm svg { margin-bottom: 10px; }

/* -----------------------------------------------------------------------
   FINANCEIRO
----------------------------------------------------------------------- */
.cadv-fin__cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 32px;
}

.cadv-fin__card {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px;
    background: var(--white);
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-lg);
}

.cadv-fin__card svg {
    color: var(--navy);
    flex-shrink: 0;
}

.cadv-fin__card-value {
    display: block;
    font-size: 20px;
    font-weight: 800;
    color: var(--navy);
    line-height: 1.2;
}

.cadv-fin__card-label {
    display: block;
    font-size: 12px;
    color: var(--gray-500);
    font-weight: 500;
}

.cadv-section {
    margin-bottom: 32px;
}

.cadv-section h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--gray-200);
}

.cadv-cards-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cadv-card-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 16px;
    background: var(--gray-50);
    border-radius: var(--radius);
    border: 1px solid var(--gray-200);
}

.cadv-card-item__icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: var(--navy-50);
    color: var(--navy);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.cadv-card-item__info {
    flex: 1;
}

.cadv-card-item__info strong {
    display: block;
    font-size: 14px;
    color: var(--navy);
}

.cadv-card-item__info small {
    font-size: 12px;
    color: var(--gray-500);
}

/* -----------------------------------------------------------------------
   LAWYERS GRID
----------------------------------------------------------------------- */
.cadv-lawyers-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 16px;
}

.cadv-lawyer-card {
    background: var(--white);
    border: 1px solid var(--gray-200);
    border-radius: var(--radius-lg);
    padding: 20px;
    transition: var(--transition);
}

.cadv-lawyer-card:hover {
    box-shadow: var(--shadow);
    border-color: var(--navy-100);
}

.cadv-lawyer-card__top {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

.cadv-lawyer-card__avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.cadv-lawyer-card__info {
    flex: 1;
    min-width: 0;
}

.cadv-lawyer-card__info h4 {
    font-size: 15px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 2px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cadv-lawyer-card__oab {
    font-size: 12px;
    color: var(--gray-500);
    font-weight: 500;
}

.cadv-lawyer-card__location {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    color: var(--gray-500);
}

.cadv-lawyer-card__fav {
    color: var(--accent);
    font-size: 20px;
}

.cadv-lawyer-card__areas {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 14px;
}

.cadv-tag {
    display: inline-block;
    padding: 3px 10px;
    background: var(--navy-50);
    color: var(--navy);
    border-radius: 50px;
    font-size: 11px;
    font-weight: 600;
}

.cadv-lawyer-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 14px;
    border-top: 1px solid var(--gray-100);
}

.cadv-lawyer-card__consults {
    font-size: 12px;
    color: var(--gray-500);
}

.cadv-lawyer-card__actions {
    display: flex;
    gap: 6px;
    align-items: center;
}

.cadv-btn--whatsapp {
    background: #25d366 !important;
    color: var(--white) !important;
    border-color: #25d366 !important;
}

.cadv-btn--whatsapp:hover {
    background: #1fb855 !important;
}

/* -----------------------------------------------------------------------
   PROFILE FORM
----------------------------------------------------------------------- */
.cadv-profile-header {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--gray-50);
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
    margin-bottom: 28px;
}

.cadv-profile-avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
}

.cadv-profile-header__info {
    flex: 1;
}

.cadv-profile-header__info strong {
    display: block;
    font-size: 16px;
    color: var(--navy);
    margin-bottom: 2px;
}

.cadv-profile-header__info span {
    display: block;
    font-size: 13px;
    color: var(--gray-500);
}

.cadv-profile-header__info small {
    font-size: 12px;
    color: var(--gray-400);
}

.cadv-profile-header__info small a {
    color: var(--navy);
    text-decoration: underline;
}

.cadv-form-section {
    margin-bottom: 28px;
}

.cadv-form-section h3 {
    font-size: 16px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--gray-200);
}

.cadv-form-hint {
    font-size: 13px;
    color: var(--gray-500);
    margin-top: -8px;
    margin-bottom: 14px;
}

.cadv-form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 16px;
}

.cadv-form-group--full {
    grid-column: 1 / -1;
}

.cadv-form-group label {
    display: block;
    font-size: 13px;
    font-weight: 600;
    color: var(--gray-700);
    margin-bottom: 6px;
}

.cadv-form-group input,
.cadv-form-group select,
.cadv-form-group textarea {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--gray-200);
    border-radius: var(--radius);
    font-size: 14px;
    font-family: var(--font);
    color: var(--gray-800);
    background: var(--white);
    transition: var(--transition);
}

.cadv-form-group input:focus,
.cadv-form-group select:focus,
.cadv-form-group textarea:focus {
    outline: none;
    border-color: var(--navy);
    box-shadow: 0 0 0 3px rgba(15,43,76,0.08);
}

.cadv-form-actions {
    padding-top: 20px;
    border-top: 1px solid var(--gray-200);
}

/* -----------------------------------------------------------------------
   NOVA CONSULTA
----------------------------------------------------------------------- */
.cadv-nova-consulta__hero {
    text-align: center;
    padding: 48px 24px;
    background: linear-gradient(135deg, var(--navy-50), var(--off-white));
    border-radius: var(--radius-lg);
    border: 1px solid var(--gray-200);
}

.cadv-nova-consulta__icon {
    width: 80px;
    height: 80px;
    margin: 0 auto 20px;
    background: var(--navy);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cadv-nova-consulta__hero h3 {
    font-size: 22px;
    font-weight: 800;
    color: var(--navy);
    margin-bottom: 10px;
}

.cadv-nova-consulta__hero > p {
    font-size: 14px;
    color: var(--gray-600);
    max-width: 420px;
    margin: 0 auto 24px;
    line-height: 1.6;
}

.cadv-nova-consulta__steps {
    display: flex;
    justify-content: center;
    gap: 24px;
    margin-bottom: 28px;
    flex-wrap: wrap;
}

.cadv-mini-step {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 500;
    color: var(--gray-600);
}

.cadv-mini-step__num {
    width: 24px;
    height: 24px;
    background: var(--navy);
    color: var(--white);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    flex-shrink: 0;
}

.cadv-nova-consulta__price {
    display: block;
    margin-top: 12px;
    font-size: 14px;
    color: var(--gray-500);
}

.cadv-nova-consulta__price strong {
    color: var(--navy);
}

/* -----------------------------------------------------------------------
   CHECKOUT
----------------------------------------------------------------------- */
.woocommerce-checkout .woocommerce {
    max-width: 700px;
    margin: 0 auto;
}

.woocommerce-checkout h3 {
    font-size: 20px;
    font-weight: 700;
    color: var(--navy);
    margin-bottom: 16px;
    padding-bottom: 10px;
    border-bottom: 2px solid var(--navy-50);
}

.woocommerce-checkout-review-order-table {
    border-radius: var(--radius) !important;
}

#payment {
    background: var(--gray-50) !important;
    border-radius: var(--radius-lg) !important;
    border: 1px solid var(--gray-200) !important;
    padding: 20px !important;
}

#payment .payment_methods {
    border-bottom: 1px solid var(--gray-200) !important;
    padding-bottom: 16px !important;
}

#place_order {
    font-size: 16px !important;
    padding: 14px 28px !important;
    border-radius: var(--radius) !important;
    width: 100%;
}

/* Cart */
.woocommerce-cart .wc-proceed-to-checkout {
    padding: 16px 0;
}

.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
    font-size: 16px !important;
    padding: 14px 28px !important;
    display: block;
    text-align: center;
}

/* Notices */
.woocommerce-error {
    border-top-color: var(--danger) !important;
}

.woocommerce-error li {
    color: var(--danger);
}

.woocommerce-message {
    border-top-color: var(--success) !important;
}

/* -----------------------------------------------------------------------
   RESPONSIVE
----------------------------------------------------------------------- */
@media (max-width: 900px) {
    .cadv-myaccount {
        grid-template-columns: 1fr;
        padding: 20px 16px 60px;
    }

    .cadv-myaccount__sidebar {
        position: static;
        min-width: unset;
        width: 100%;
    }

    .woocommerce-MyAccount-navigation ul {
        flex-direction: row;
        overflow-x: auto;
        flex-wrap: nowrap;
        gap: 0;
        -webkit-overflow-scrolling: touch;
    }

    .woocommerce-MyAccount-navigation ul li a {
        white-space: nowrap;
        padding: 10px 14px;
        font-size: 13px;
        border-left: none;
        border-bottom: 3px solid transparent;
    }

    .woocommerce-MyAccount-navigation ul li.is-active a {
        border-left: none;
        border-bottom-color: var(--accent);
    }

    .woocommerce-MyAccount-navigation ul li a:hover {
        border-left: none;
        border-bottom-color: var(--navy-100);
    }

    .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--nova-consulta a {
        border-top: none;
        margin-top: 0;
        padding-top: 10px;
    }

    .cadv-dash__stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .cadv-dash__actions-grid {
        grid-template-columns: 1fr;
    }

    .cadv-fin__cards {
        grid-template-columns: 1fr;
    }

    .cadv-lawyers-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .cadv-dash__welcome {
        flex-direction: column;
        text-align: center;
    }

    .cadv-dash__cta {
        margin-left: 0;
        width: 100%;
    }

    .cadv-dash__stats {
        grid-template-columns: 1fr;
    }
}
