:root {
    --agendei-primary: #00c7d8;
    --agendei-primary-dark: #009dad;
    --agendei-secondary: #0b2a52;
    --agendei-success: #10b981;
    --agendei-warning: #f59e0b;
    --agendei-danger: #dc2626;
    --agendei-light: #f5fbfd;
    --agendei-muted: #64748b;
    --agendei-border: #dce8f1;
}

body {
    font-family: "Inter", "Segoe UI", Arial, sans-serif;
}

.brand-link {
    background: var(--agendei-secondary) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.brand-link .brand-text {
    color: #ffffff !important;
    font-weight: 700 !important;
    letter-spacing: 0;
}

.main-sidebar {
    background: var(--agendei-secondary) !important;
}

.nav-sidebar .nav-item>.nav-link {
    border-radius: 8px;
    margin: 2px 8px;
}

.nav-sidebar .nav-item>.nav-link.active {
    background: var(--agendei-primary) !important;
    color: #ffffff !important;
}

.nav-sidebar .nav-item>.nav-link:hover {
    background: rgba(10, 168, 165, 0.18) !important;
    color: #ffffff !important;
}

.content-wrapper {
    background: #f4f8f7;
}

.content-header h1 {
    font-weight: 700;
    color: #0f2d4a;
}

.card {
    border: 0;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

.card-header {
    border-bottom: 1px solid var(--agendei-border);
    background: #ffffff;
    border-radius: 8px 8px 0 0 !important;
}

.card-title {
    font-weight: 600;
    color: #0f2d4a;
}

.btn {
    border-radius: 8px;
    font-weight: 600;
}

.btn-primary {
    background: var(--agendei-primary);
    border-color: var(--agendei-primary);
}

.btn-primary:hover {
    background: var(--agendei-primary-dark);
    border-color: var(--agendei-primary-dark);
}

.btn-outline-primary {
    color: var(--agendei-primary);
    border-color: var(--agendei-primary);
}

.btn-outline-primary:hover {
    background: var(--agendei-primary);
    border-color: var(--agendei-primary);
}

.agendalo-btn-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #526575;
    background: #ffffff;
    border-color: #aebcc6;
}

.agendalo-btn-back:hover,
.agendalo-btn-back:focus {
    color: #17354d;
    background: #edf4f5;
    border-color: #8295a2;
}

.agendalo-btn-back:focus {
    box-shadow: 0 0 0 .2rem rgba(82, 101, 117, .2);
}

.dark-mode .agendalo-btn-back {
    color: #dce7ed !important;
    background: #303840 !important;
    border-color: #71808b !important;
}

.dark-mode .agendalo-btn-back:hover,
.dark-mode .agendalo-btn-back:focus {
    color: #ffffff !important;
    background: #3b4852 !important;
    border-color: #9aabb6 !important;
}

.form-control {
    border-radius: 8px;
    border-color: #cbd5e1;
}

.form-control:focus {
    border-color: var(--agendei-primary);
    box-shadow: 0 0 0 0.2rem rgba(10, 168, 165, 0.15);
}

.small-box {
    border-radius: 8px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12);
    overflow: hidden;
}

.small-box .inner h3 {
    font-weight: 800;
}

.small-box .icon {
    opacity: 0.25;
}

.small-box-footer {
    font-weight: 600;
}

.table thead th {
    border-bottom: 1px solid #cbd5e1;
    color: #334155;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.badge {
    padding: 6px 8px;
    border-radius: 999px;
}

.alert {
    border-radius: 10px;
    border: 1px solid transparent;
    box-shadow: 0 4px 14px rgba(15, 23, 42, 0.06);
}

.agendalo-global-alerts {
    position: relative;
    z-index: 5;
    width: 100%;
    margin-bottom: 16px;
}

.agendalo-global-alerts .alert:last-child {
    margin-bottom: 0;
}

.agendalo-global-alerts .alert {
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.agendalo-global-alerts .alert.is-dismissing {
    opacity: 0 !important;
    transform: translateY(-4px);
}

.agendalo-public-flash-container {
    width: min(1180px, calc(100% - 32px));
    margin: 16px auto 0;
}

/* AdminLTE applies white text to contextual alerts. Keep every visible alert
   readable even when a package stylesheet is loaded after the application. */
.alert:not(.d-none),
.agendalo-feedback:not(.d-none) {
    opacity: 1 !important;
    visibility: visible !important;
}

.alert-success {
    color: #14532d !important;
    background-color: #ecfdf5 !important;
    border-color: #86efac !important;
    border-left: 4px solid #16a34a;
}

.alert-danger {
    color: #7f1d1d !important;
    background-color: #fef2f2 !important;
    border-color: #fecaca !important;
    border-left: 4px solid #dc2626;
}

.alert-warning {
    color: #713f12 !important;
    background-color: #fffbeb !important;
    border-color: #fde68a !important;
    border-left: 4px solid #f59e0b;
}

.alert-info {
    color: #164e63 !important;
    background-color: #ecfeff !important;
    border-color: #a5f3fc !important;
    border-left: 4px solid #0891b2;
}

.alert-secondary,
.alert-light {
    color: #334155 !important;
    background-color: #f8fafc !important;
    border-color: #cbd5e1 !important;
    border-left: 4px solid #64748b;
}

.alert-success > :not(.close),
.alert-danger > :not(.close),
.alert-warning > :not(.close),
.alert-info > :not(.close),
.alert-secondary > :not(.close),
.alert-light > :not(.close),
.alert-success p,
.alert-danger p,
.alert-warning p,
.alert-info p,
.alert-secondary p,
.alert-light p,
.alert-success li,
.alert-danger li,
.alert-warning li,
.alert-info li,
.alert-secondary li,
.alert-light li {
    color: inherit !important;
}

.alert-success a,
.alert-danger a,
.alert-warning a,
.alert-info a,
.alert-secondary a,
.alert-light a {
    color: inherit;
    font-weight: 700;
}

.agendalo-feedback {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 16px;
    padding: 14px 16px;
    border: 1px solid transparent;
    border-radius: 8px;
    opacity: 1 !important;
    visibility: visible !important;
}

.agendalo-feedback--success {
    color: #14532d !important;
    background: #ecfdf5 !important;
    border-color: #86efac !important;
    border-left: 4px solid #16a34a;
}

.agendalo-feedback__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    color: #ffffff;
    background: #16a34a;
    border-radius: 50%;
}

.agendalo-feedback strong,
.agendalo-feedback p {
    color: inherit;
}

.agendalo-feedback p {
    margin: 2px 0 0;
}

.service-form-guidance {
    margin-bottom: 20px;
    padding: 16px;
    color: #164e63;
    background: #ecfeff;
    border: 1px solid #a5f3fc;
    border-left: 4px solid #0891b2;
    border-radius: 8px;
}

.service-form-guidance__header {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.service-form-guidance__header p {
    margin: 2px 0 0;
    color: #155e75;
}

.service-form-guidance__icon {
    margin-top: 2px;
    color: #0891b2;
    font-size: 1.1rem;
}

.service-form-guidance__items {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
}

.service-form-guidance__items > div {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
    padding-top: 12px;
    border-top: 1px solid #a5f3fc;
}

.service-form-guidance__items i {
    flex: 0 0 18px;
    margin-top: 3px;
    color: #0e7490;
}

@media (max-width: 767.98px) {
    .service-form-guidance__items {
        grid-template-columns: 1fr;
    }
}

.agendei-help-banner {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    margin-bottom: 18px;
    padding: 14px 16px;
    color: #164e63;
    background: #ecfeff;
    border: 1px solid #a5f3fc;
    border-left: 4px solid #0891b2;
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(8, 145, 178, 0.08);
}

.agendei-help-banner__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    color: #ffffff;
    background: #0891b2;
    border-radius: 9px;
}

.agendei-help-banner strong {
    display: block;
    margin: 1px 0 2px;
    color: #0e7490;
    font-size: 0.95rem;
}

.agendei-help-banner p {
    margin: 0;
    color: #155e75;
    font-size: 0.875rem;
    line-height: 1.45;
}

.agendei-page-title {
    display: flex;
    flex-direction: column;
}

.agendei-page-title small {
    color: var(--agendei-muted);
    font-weight: 400;
    font-size: 14px;
    margin-top: 4px;
}

.agendei-hero {
    background: linear-gradient(135deg, #2563eb 0%, #1e40af 55%, #0f172a 100%);
    border-radius: 18px;
    color: #ffffff;
    padding: 28px;
    margin-bottom: 24px;
    box-shadow: 0 12px 32px rgba(37, 99, 235, 0.28);
}

.agendei-hero h2 {
    font-weight: 800;
    margin-bottom: 8px;
}

.agendei-hero p {
    margin-bottom: 0;
    color: rgba(255, 255, 255, 0.85);
}

.agendalo-dashboard-welcome {
    max-height: 160px;
    overflow: hidden;
    opacity: 1;
    transform: translateY(0);
    transition: max-height .4s ease, margin .4s ease, padding .4s ease, opacity .25s ease, transform .25s ease;
}

.agendalo-dashboard-welcome.is-leaving {
    max-height: 0;
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0;
    padding-bottom: 0;
    opacity: 0;
    transform: translateY(-6px);
}

.agendei-profile-sidebar {
    position: sticky;
    top: 1rem;
}

.agendei-profile-card {
    overflow: hidden;
}

.agendei-profile-cover {
    height: 96px;
    background:
        radial-gradient(circle at 85% 25%, rgba(255, 255, 255, 0.22) 0 4px, transparent 5px),
        radial-gradient(circle at 75% 65%, rgba(255, 255, 255, 0.14) 0 7px, transparent 8px),
        linear-gradient(135deg, #2563eb 0%, #1d4ed8 45%, #0f766e 100%);
}

.agendei-profile-card .card-body {
    padding: 0 24px 24px;
}

.agendei-profile-avatar {
    width: 96px;
    height: 96px;
    border: 5px solid #ffffff;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb, #0f766e);
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 36px;
    font-weight: 800;
    margin: -48px auto 14px;
    overflow: hidden;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.18);
    position: relative;
}

.agendei-profile-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.agendei-profile-identity {
    text-align: center;
}

.agendei-profile-identity h2 {
    color: #0f172a;
    font-size: 22px;
    font-weight: 800;
    line-height: 1.25;
    margin-bottom: 5px;
    overflow-wrap: anywhere;
}

.agendei-profile-identity p {
    color: #64748b;
    margin-bottom: 14px;
}

.agendei-profile-meta {
    display: grid;
    gap: 10px;
    margin-bottom: 18px;
}

.agendei-profile-meta div {
    display: flex;
    align-items: center;
    color: #334155;
    min-width: 0;
}

.agendei-profile-meta i {
    width: 28px;
    color: #2563eb;
}

.agendei-profile-meta span {
    overflow-wrap: anywhere;
}

.agendei-profile-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
}

.agendei-profile-completeness {
    padding: 16px;
    margin-bottom: 20px;
    border: 1px solid #dbeafe;
    border-radius: 10px;
    background: #eff6ff;
}

.agendei-profile-completeness strong,
.agendei-profile-completeness span {
    color: #1e3a8a;
    font-size: 13px;
}

.agendei-profile-completeness .progress {
    height: 7px;
    border-radius: 999px;
    background: #dbeafe;
}

.agendei-profile-completeness .progress-bar {
    border-radius: 999px;
}

.agendei-profile-completeness small {
    display: block;
    color: #64748b;
    line-height: 1.4;
    margin-top: 9px;
}

.agendei-profile-card .agendei-profile-meta {
    border-top: 1px solid var(--agendei-border);
    margin-bottom: 0;
    padding-top: 18px;
}

.agendei-public-profile-card .card-body {
    padding: 22px;
}

.agendei-public-profile-card h3 {
    color: #0f172a;
    font-size: 17px;
    font-weight: 700;
    margin: 14px 0 6px;
}

.agendei-public-profile-card p {
    color: #64748b;
    font-size: 14px;
}

.agendei-card-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.bg-primary-soft {
    color: var(--agendei-primary);
    background: #dbeafe;
}

.agendei-profile-form-card .card-header {
    padding: 20px 24px;
}

.agendei-profile-form-card .card-title {
    float: none;
    font-size: 18px;
    margin-bottom: 3px;
}

.agendei-profile-form-card .card-subtitle {
    color: #64748b;
    font-size: 13px;
    margin: 0;
}

.agendei-profile-form-card .card-body {
    padding: 26px;
}

.agendei-form-section {
    border-bottom: 1px solid var(--agendei-border);
    margin-bottom: 28px;
    padding-bottom: 28px;
}

.agendei-form-section-heading {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 20px;
}

.agendei-form-section-heading>span {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    color: var(--agendei-primary);
    background: #eff6ff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.agendei-form-section-heading h4 {
    color: #0f172a;
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 3px;
}

.agendei-form-section-heading p {
    color: #64748b;
    font-size: 13px;
    margin: 0;
}

.agendei-profile-form-card label {
    color: #334155;
    font-size: 13px;
    font-weight: 700;
}

.agendei-profile-form-card textarea {
    line-height: 1.55;
    resize: vertical;
}

.agendei-profile-form-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 16px 24px;
    background: #ffffff;
    border-top: 1px solid var(--agendei-border);
}

@media (max-width: 991.98px) {
    .agendei-profile-sidebar {
        position: static;
    }

    .agendei-profile-page-header .btn {
        margin-top: 12px;
    }
}

@media (max-width: 575.98px) {
    .agendei-profile-page-header {
        align-items: flex-start !important;
        flex-direction: column;
    }

    .agendei-profile-page-header .btn {
        width: 100%;
    }

    .agendei-profile-form-card .card-body {
        padding: 20px;
    }

    .agendei-profile-form-actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .agendei-profile-form-actions .btn {
        width: 100%;
    }
}

/* Login artwork supplied for the Agendalo identity. */
.agendei-auth-page.login-page {
    background-color: #f5fbfa;
    background-image: url("../images/brand/login-background.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.agendei-auth-page .agendei-login-brand {
    min-height: 600px;
    padding: 42px;
    background-color: #fffaf5;
    background-image:
        linear-gradient(to top, rgba(255, 250, 245, .98) 0 24%, rgba(255, 250, 245, .18) 48%, rgba(255, 250, 245, 0) 66%),
        url("../images/brand/elo-profissional.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.agendei-auth-page .agendei-login-brand .agendei-auth-icon {
    width: 58px;
    height: 58px;
    padding: 9px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 12px 30px rgba(15, 45, 74, .14);
}

.agendei-auth-page .agendei-login-brand .agendei-auth-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 860px) {
    .agendei-auth-page .agendei-login-brand {
        min-height: 300px;
        padding: 88px 28px 24px;
        background-image:
            linear-gradient(to top, rgba(255, 250, 245, .98) 0 34%, rgba(255, 250, 245, .08) 70%),
            url("../images/brand/elo-profissional.png");
        background-position: center 34%;
    }
}

/* Artes contextuais das telas de acesso. */
.agendei-auth-page.agendei-auth-login .agendei-login-shell,
.agendei-auth-page.agendei-auth-logout .agendei-login-shell,
.agendei-auth-page.agendei-auth-recovery .agendei-login-shell,
.agendei-auth-page.agendei-auth-register .agendei-login-shell {
    background-color: #f4fcfe;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.agendei-auth-page.agendei-auth-login .agendei-login-shell { background-image: url("../images/brand/auth-login.png"); }
.agendei-auth-page.agendei-auth-logout .agendei-login-shell { background-image: url("../images/brand/auth-logout.png"); }
.agendei-auth-page.agendei-auth-recovery .agendei-login-shell { background-image: url("../images/brand/auth-recuperacao.png"); }
.agendei-auth-page.agendei-auth-register .agendei-login-shell { background-image: url("../images/brand/auth-register.png"); }
.agendei-auth-page.agendei-auth-login .agendei-login-brand,
.agendei-auth-page.agendei-auth-logout .agendei-login-brand,
.agendei-auth-page.agendei-auth-recovery .agendei-login-brand,
.agendei-auth-page.agendei-auth-register .agendei-login-brand {
    background-color: transparent;
    background-image: linear-gradient(to top, rgba(244, 252, 254, .98) 0 24%, rgba(244, 252, 254, .74) 34%, rgba(244, 252, 254, 0) 58%);
    background-position: center;
    background-size: cover;
}
.agendei-auth-page.agendei-auth-login .agendei-auth-card,
.agendei-auth-page.agendei-auth-logout .agendei-auth-card,
.agendei-auth-page.agendei-auth-recovery .agendei-auth-card,
.agendei-auth-page.agendei-auth-register .agendei-auth-card {
    background: rgba(255, 255, 255, .97);
    backdrop-filter: blur(8px);
}

@media (max-width: 860px) {
    .agendei-auth-page.agendei-auth-login .agendei-login-shell,
    .agendei-auth-page.agendei-auth-logout .agendei-login-shell,
    .agendei-auth-page.agendei-auth-recovery .agendei-login-shell,
    .agendei-auth-page.agendei-auth-register .agendei-login-shell {
        background-position: 34% center;
        background-size: auto 100%;
    }
    .agendei-auth-page.agendei-auth-login .agendei-login-brand,
    .agendei-auth-page.agendei-auth-logout .agendei-login-brand,
    .agendei-auth-page.agendei-auth-recovery .agendei-login-brand,
    .agendei-auth-page.agendei-auth-register .agendei-login-brand {
        background-image: linear-gradient(to top, rgba(244, 252, 254, .99) 0 30%, rgba(244, 252, 254, .42) 50%, rgba(244, 252, 254, 0) 72%);
    }
}

@media (max-width: 420px) {
    .agendei-auth-page.login-page {
        align-items: flex-start;
        overflow-y: auto;
    }

    .agendei-auth-page .agendei-login-brand {
        min-height: 230px;
        padding: 72px 20px 20px;
    }

    .agendei-login-brand h1 {
        font-size: 30px;
    }

    .agendei-login-brand p {
        margin-bottom: 0;
        font-size: 14px;
        line-height: 1.45;
    }
}

.agendei-settings-list {
    display: grid;
    gap: 12px;
    margin-top: 8px;
}

.agendei-setting-toggle {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #f8fafc;
    cursor: pointer;
}

.agendei-setting-toggle input {
    margin-top: 4px;
}

.agendei-setting-toggle strong {
    display: block;
    color: #0f172a;
}

.agendei-setting-toggle small {
    display: block;
    color: #64748b;
    margin-top: 3px;
}

.agendei-account-status {
    display: grid;
    gap: 14px;
}

.agendei-account-status span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.agendei-account-status strong {
    display: block;
    color: #0f172a;
    overflow-wrap: anywhere;
}

.agendei-auth-page {
    min-height: 100vh;
    background:
        linear-gradient(135deg, rgba(15, 23, 42, 0.94), rgba(15, 23, 42, 0.68)),
        linear-gradient(90deg, #0f172a 0%, #134e4a 48%, #2563eb 100%);
    padding: 24px;
}

.agendei-auth-card {
    border: 0;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.35);
    overflow: hidden;
}

.agendei-auth-brand {
    text-align: center;
    margin-bottom: 20px;
    color: #ffffff;
}

.agendei-auth-brand h1 {
    font-size: 36px;
    font-weight: 800;
    margin-bottom: 6px;
}

.agendei-auth-brand p {
    color: rgba(255, 255, 255, 0.78);
    margin-bottom: 0;
}

.agendei-auth-icon {
    width: 64px;
    height: 64px;
    border-radius: 8px;
    background: #ffffff;
    color: var(--agendei-primary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    margin-bottom: 14px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.25);
}

.agendei-auth-footer {
    text-align: center;
    margin-top: 18px;
    color: #64748b;
    font-size: 14px;
}

.agendei-auth-footer a {
    font-weight: 700;
    margin-left: 4px;
}

.agendei-login-box {
    width: min(960px, calc(100vw - 32px));
}

.agendei-login-shell {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 390px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 24px 70px rgba(2, 6, 23, 0.36);
}

.agendei-login-brand {
    position: relative;
    min-height: 520px;
    padding: 44px;
    color: #ffffff;
    background:
        linear-gradient(160deg, rgba(15, 23, 42, 0.84), rgba(19, 78, 74, 0.72)),
        url("https://images.unsplash.com/photo-1551836022-d5d88e9218df?auto=format&fit=crop&w=1200&q=80");
    background-position: center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.agendei-login-brand .agendei-auth-icon {
    position: absolute;
    top: 36px;
    left: 44px;
    margin-bottom: 0;
    box-shadow: 0 16px 34px rgba(2, 6, 23, 0.24);
}

.agendei-login-brand h1 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.05;
    margin-bottom: 12px;
}

.agendei-login-brand p {
    max-width: 410px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 16px;
    line-height: 1.6;
}

.agendei-login-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.agendei-login-highlights span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 7px 10px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.9);
    font-size: 13px;
    font-weight: 600;
}

.agendei-login-highlights i {
    margin-right: 7px;
    color: #a7f3d0;
}

.agendei-login-shell .login-card-body {
    padding: 42px 38px;
}

.agendei-login-shell .agendei-auth-card {
    border-radius: 0;
    box-shadow: none;
}

.agendei-login-heading {
    margin-bottom: 24px;
}

.agendei-login-heading span {
    display: block;
    margin-bottom: 6px;
    color: #0f766e;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.agendei-login-heading h2 {
    margin: 0;
    color: #0f172a;
    font-size: 28px;
    font-weight: 800;
}

.agendei-input-group .form-control,
.agendei-input-group .input-group-text {
    height: 46px;
    border-color: #d8dee8;
    background: #ffffff;
}

.agendei-input-group .form-control {
    border-right: 0;
    font-size: 15px;
}

.agendei-input-group .input-group-text {
    min-width: 46px;
    color: #64748b;
    border-left: 0;
    justify-content: center;
}

.agendei-input-group .form-control:focus + .input-group-append .input-group-text {
    border-color: var(--agendei-primary);
}

.agendei-login-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 4px 0 18px;
    color: #475569;
    font-size: 14px;
}

.agendei-login-submit {
    height: 46px;
    box-shadow: 0 10px 22px rgba(37, 99, 235, 0.22);
}

.agendei-login-divider {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 22px 0;
    color: #94a3b8;
    font-size: 13px;
    font-weight: 700;
}

.agendei-login-divider::before,
.agendei-login-divider::after {
    content: "";
    height: 1px;
    flex: 1;
    background: #e2e8f0;
}

.agendei-google-btn {
    height: 46px;
    border: 1px solid #d8dee8;
    background: #ffffff;
    color: #0f172a;
}

.agendei-google-btn:hover {
    border-color: #cbd5e1;
    background: #f8fafc;
    color: #0f172a;
}

.agendei-google-btn i {
    color: #dc2626;
}

@media (max-width: 860px) {
    .agendei-auth-page {
        padding: 16px;
    }

    .agendei-login-shell {
        grid-template-columns: 1fr;
    }

    .agendei-login-brand {
        min-height: 260px;
        padding: 96px 28px 28px;
    }

    .agendei-login-brand .agendei-auth-icon {
        top: 24px;
        left: 28px;
    }

    .agendei-login-brand h1 {
        font-size: 34px;
    }

    .agendei-login-shell .login-card-body {
        padding: 32px 24px;
    }
}

@media (max-width: 420px) {
    .agendei-login-box {
        width: calc(100vw - 32px) !important;
        max-width: calc(100vw - 32px) !important;
        box-sizing: border-box;
    }

    .agendei-login-highlights {
        display: none;
    }

    .agendei-login-heading h2 {
        font-size: 24px;
    }
}

/* Agendalo brand refresh. Technical agendei-* selectors stay stable for compatibility. */
body,
.wrapper {
    color: #16334f;
}

.main-header.navbar-white {
    background: #ffffff;
    border-bottom-color: #dfe7e9;
}

.main-header.navbar {
    min-height: 52px;
    padding-top: 5px;
    padding-bottom: 5px;
}

.layout-navbar-fixed .wrapper .content-wrapper {
    margin-top: 52px;
}

.agendalo-navbar-primary {
    min-width: 0;
    align-items: center;
}

.agendalo-navbar-context {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 7px;
    padding: 0 8px;
    color: #718291;
    font-size: .78rem;
    white-space: nowrap;
}

.agendalo-navbar-context i {
    color: #a8b5bf;
    font-size: .55rem;
}

.agendalo-navbar-context strong {
    overflow: hidden;
    max-width: 260px;
    color: #183750;
    font-size: .84rem;
    text-overflow: ellipsis;
}

.agendalo-navbar-actions {
    align-items: center;
    gap: 2px;
}

.agendalo-navbar-actions > .nav-item > .nav-link,
.agendalo-navbar-actions > .nav-item > button.nav-link {
    display: inline-flex;
    min-width: 36px;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
}

.agendalo-navbar-actions > .nav-item > .nav-link:hover,
.agendalo-navbar-actions > .nav-item > .nav-link:focus,
.agendalo-navbar-actions > .nav-item > button.nav-link:hover,
.agendalo-navbar-actions > .nav-item > button.nav-link:focus {
    background: #edf7f6;
}

.dark-mode .main-header.navbar {
    background: #20262b !important;
    border-bottom-color: #414b53 !important;
}

.dark-mode .agendalo-navbar-context,
.dark-mode .agendalo-navbar-context strong {
    color: #dce5ea;
}

.dark-mode .main-header.navbar .navbar-nav > .nav-item > .nav-link,
.dark-mode .main-header.navbar .navbar-nav > .nav-item > button.nav-link {
    color: #dce7ed !important;
}

.dark-mode .agendalo-navbar-actions > .nav-item > .nav-link:hover,
.dark-mode .agendalo-navbar-actions > .nav-item > .nav-link:focus,
.dark-mode .agendalo-navbar-actions > .nav-item > .nav-link[aria-expanded="true"],
.dark-mode .agendalo-navbar-actions > .nav-item > button.nav-link:hover,
.dark-mode .agendalo-navbar-actions > .nav-item > button.nav-link:focus,
.dark-mode .agendalo-navbar-actions > .nav-item > button.nav-link[aria-expanded="true"] {
    color: #ffffff !important;
    background: #303a41;
}

.main-sidebar,
.brand-link {
    background: #0f2d4a !important;
}

.brand-link .fas {
    color: #2bc4c0;
}

.nav-sidebar > .nav-header {
    color: #8eb0bf;
    letter-spacing: .06em;
}

.nav-sidebar .nav-item > .nav-link.active {
    background: #0aa8a5 !important;
}

.card-primary:not(.card-outline) > .card-header,
.bg-primary,
.btn-primary {
    background-color: #0aa8a5 !important;
    border-color: #0aa8a5 !important;
}

.text-primary,
a:not(.btn):not(.nav-link) {
    color: #087d7b;
}

.agendei-hero {
    color: #0f2d4a;
    background: #e9f8f4;
    border: 1px solid #c6eee5;
    border-radius: 8px;
    box-shadow: none;
}

.agendei-hero p {
    color: #50677a;
}

.agendei-auth-page {
    background: #effaf7;
}

.agendei-auth-home-link {
    position: fixed;
    z-index: 10;
    top: 20px;
    left: 20px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 13px;
    color: #0f2d4a;
    background: rgba(255, 255, 255, .92);
    border: 1px solid #cfe3df;
    border-radius: 7px;
    box-shadow: 0 8px 22px rgba(15, 45, 74, .1);
    font-weight: 700;
}

.agendei-auth-home-link:hover,
.agendei-auth-home-link:focus {
    color: #087d7b;
    border-color: #69cfc8;
    text-decoration: none;
}

.agendei-login-brand h1 a {
    color: inherit;
    text-decoration: none;
}

.agendei-login-brand h1 a:hover,
.agendei-login-brand h1 a:focus {
    color: #087d7b;
}

.agendei-password-toggle {
    min-width: 46px;
    justify-content: center;
    color: #50677a;
    background: #fff;
    border-left: 0;
    cursor: pointer;
}

.agendei-password-toggle:hover,
.agendei-password-toggle:focus {
    color: #087d7b;
    background: #effaf7;
    outline: 0;
}

.agendei-auth-card {
    border-radius: 8px;
    box-shadow: 0 18px 48px rgba(15, 45, 74, .14);
}

.agendei-auth-brand {
    color: #0f2d4a;
}

.agendei-auth-brand p {
    color: #607083;
}

.agendei-login-shell {
    border-color: #dfe7e9;
    box-shadow: 0 24px 70px rgba(15, 45, 74, .16);
}

.agendei-login-brand {
    color: #0f2d4a;
    background-color: #fff7f2;
    background-image: linear-gradient(to top, rgba(246, 252, 254, .98) 0 24%, rgba(246, 252, 254, .12) 52%, rgba(246, 252, 254, 0) 70%), url("../images/brand/elo-profissional.png");
    background-position: center;
    background-size: cover;
}

.agendei-login-brand p {
    color: #435d73;
}

.agendei-login-highlights span {
    color: #16334f;
    background: rgba(255, 255, 255, .86);
    border-color: #d8e8e4;
}

.agendei-login-highlights i {
    color: #0aa8a5;
}

.agendei-login-heading span {
    color: #087d7b;
    letter-spacing: .06em;
}

.agendei-login-heading h2,
.agendei-google-btn {
    color: #0f2d4a;
}

.agendei-login-submit {
    box-shadow: 0 10px 22px rgba(10, 168, 165, .2);
}

.elo-dashboard-intro {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 22px;
    padding: 18px 22px;
    background: #effaf7;
    border: 1px solid #c6eee5;
    border-radius: 8px;
}

.elo-dashboard-intro img {
    flex: 0 0 84px;
    width: 84px;
    height: 84px;
    object-fit: cover;
    object-position: center 22%;
    border: 3px solid #ffffff;
    border-radius: 50%;
}

.elo-dashboard-intro span {
    color: #087d7b;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.elo-dashboard-intro h2 {
    margin: 3px 0 4px;
    color: #0f2d4a;
    font-size: 1.35rem;
    font-weight: 800;
}

.elo-dashboard-intro p {
    margin: 0;
    color: #50677a;
}

.integration-connected,.help-elo-banner{display:flex;align-items:center;gap:16px;margin-bottom:20px;padding:18px;background:#effaf7;border:1px solid #c6eee5;border-radius:8px}.integration-connected>i{color:#0aa8a5;font-size:2rem}.integration-connected strong,.integration-connected span{display:block}.integration-connected span{color:#607083}.help-elo-banner img{width:78px;height:78px;object-fit:cover;object-position:center 22%;border:3px solid #fff;border-radius:50%}.help-elo-banner span{color:#087d7b;font-size:12px;font-weight:800;text-transform:uppercase}.help-elo-banner h2{margin:3px 0;color:#0f2d4a;font-size:1.35rem;font-weight:800}.help-elo-banner p{margin:0;color:#50677a}.help-topic{display:flex;align-items:center;gap:13px;min-height:104px;margin-bottom:16px;padding:16px;color:#16334f;background:#fff;border:1px solid #dfe7e9;border-radius:8px}.help-topic:hover{color:#087d7b;border-color:#8edbd5;text-decoration:none}.help-topic>i:first-child{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;color:#fff;background:#0aa8a5;border-radius:8px}.help-topic span{min-width:0;flex:1}.help-topic strong,.help-topic small{display:block}.help-topic small{margin-top:3px;color:#607083;line-height:1.4}.help-topic>i:last-child{color:#9aabb8;font-size:.75rem}

.agendalo-user-actions{display:flex!important;flex-direction:row!important;align-items:center;flex-wrap:nowrap;gap:4px;white-space:nowrap}.agendalo-user-name{display:flex;align-items:center;gap:7px;font-weight:700;color:#16334f!important}.agendalo-user-name i{color:#0aa8a5;font-size:1.05rem}.agendalo-logout-form{display:inline-flex!important;flex:0 0 auto;margin:0;padding-left:4px;border-left:1px solid #dfe7e9}.agendalo-logout-button{display:inline-flex!important;align-items:center;gap:5px;margin:0;border:0;background:transparent;color:#dc3545!important;font-weight:700}.agendalo-user-name:hover,.agendalo-logout-button:hover{background:#f1f7f6;border-radius:6px}.preloader{background:#effaf7!important}.preloader img{object-fit:contain}
.agendalo-navbar-avatar{display:inline-flex;flex:0 0 26px;width:26px;height:26px;align-items:center;justify-content:center;object-fit:cover;border:2px solid #b9e8e3;border-radius:50%;background:#e2f7f4;color:#087d7b;font-size:.75rem;font-weight:800}.agendalo-profile-photo-field{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:16px;margin-bottom:22px;padding:14px;border:1px solid #dfe7e9;border-radius:8px;background:#f8fbfa}.agendalo-profile-photo-field>img{width:72px;height:72px;object-fit:cover;border:3px solid #fff;border-radius:50%;box-shadow:0 5px 14px rgba(15,45,74,.14)}
.elo-context-tip{position:fixed;z-index:1045;right:20px;bottom:20px;display:flex;align-items:flex-start;gap:12px;width:min(390px,calc(100vw - 32px));padding:14px;color:#16334f;background:#fff;border:1px solid #bde8df;border-left:4px solid #0aa8a5;border-radius:8px;box-shadow:0 18px 44px rgba(15,45,74,.18)}.elo-context-tip img{flex:0 0 48px;width:48px;height:48px;object-fit:cover;object-position:center 20%;border-radius:50%}.elo-context-tip div{min-width:0;flex:1}.elo-context-tip strong{color:#0f2d4a}.elo-context-tip p{margin:2px 0 4px;color:#607083;font-size:.85rem;line-height:1.4}.elo-context-tip a{color:#087d7b;font-size:.82rem;font-weight:700}.elo-context-tip button{padding:4px;color:#718294;background:transparent;border:0}@media(max-width:575.98px){.elo-context-tip{right:16px;bottom:16px}.elo-context-tip img{display:none}}
.elo-assistant{position:fixed;z-index:1055;left:18px;bottom:18px;color:#16334f}.elo-assistant-launcher{display:flex;align-items:center;gap:8px;height:60px;padding:5px 14px 5px 5px;color:#0f2d4a;background:#fff;border:2px solid #2bc4c0;border-radius:30px;box-shadow:0 12px 34px rgba(15,45,74,.24);font-weight:800;touch-action:none;user-select:none}.elo-assistant-launcher img{width:46px;height:46px;object-fit:cover;object-position:center 18%;border-radius:50%}.elo-assistant-panel{position:absolute;left:0;bottom:70px;width:min(370px,calc(100vw - 32px));height:min(570px,calc(100vh - 110px));overflow:hidden;background:#fff;border:1px solid #bde8df;border-radius:8px;box-shadow:0 22px 56px rgba(15,45,74,.25)}.elo-assistant-header{display:flex;align-items:center;gap:10px;height:66px;padding:9px 12px;color:#fff;background:#0f2d4a}.elo-assistant-header img{width:46px;height:46px;object-fit:cover;object-position:center 18%;border:2px solid #fff;border-radius:50%}.elo-assistant-header div{min-width:0;flex:1}.elo-assistant-header strong,.elo-assistant-header span{display:block}.elo-assistant-header span{color:#c6f2ed;font-size:.75rem}.elo-assistant-header button{width:34px;height:34px;color:#fff;background:transparent;border:0;border-radius:6px}.elo-assistant-messages{height:calc(100% - 190px);overflow:auto;padding:14px;background:#f4faf9}.elo-assistant-message{display:flex;margin-bottom:10px}.elo-assistant-message p{max-width:88%;margin:0;padding:10px 12px;white-space:pre-line;background:#fff;border:1px solid #dce9e7;border-radius:8px;font-size:.86rem;line-height:1.45}.elo-assistant-message.is-user{justify-content:flex-end}.elo-assistant-message.is-user p{color:#fff;background:#087d7b;border-color:#087d7b}.elo-assistant-message.is-assistant{flex-wrap:wrap}.elo-assistant-message.is-typing p{display:flex;align-items:center;min-width:58px;height:38px}.elo-assistant-typing{display:flex;align-items:center;justify-content:center;gap:4px;width:32px}.elo-assistant-typing i{display:block;width:6px;height:6px;background:#0aa8a5;border-radius:50%;animation:elo-typing 1.15s infinite ease-in-out}.elo-assistant-typing i:nth-child(2){animation-delay:.16s}.elo-assistant-typing i:nth-child(3){animation-delay:.32s}@keyframes elo-typing{0%,60%,100%{opacity:.35;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.elo-assistant-actions{display:flex;flex-wrap:wrap;gap:6px;width:100%;margin-top:6px}.elo-assistant-actions a{padding:6px 9px;color:#087d7b;background:#fff;border:1px solid #8edbd5;border-radius:6px;font-size:.75rem;font-weight:700}.elo-assistant-suggestions{display:flex;gap:6px;overflow-x:auto;padding:7px 10px;background:#fff;border-top:1px solid #e4eceb}.elo-assistant-suggestions button{flex:0 0 auto;padding:5px 8px;color:#087d7b;background:#effaf7;border:1px solid #bde8df;border-radius:6px;font-size:.72rem}.elo-assistant-suggestions button:disabled{opacity:.55;cursor:wait}.elo-assistant-form{display:flex;align-items:flex-end;gap:7px;padding:8px 10px;background:#fff;border-top:1px solid #e4eceb}.elo-assistant-form textarea{min-height:38px;max-height:80px;resize:none;flex:1;padding:8px 10px;border:1px solid #b8c9cf;border-radius:6px;font-size:.84rem}.elo-assistant-form button{flex:0 0 38px;width:38px;height:38px;color:#fff;background:#0aa8a5;border:0;border-radius:6px}.elo-assistant-form.is-loading button{opacity:.55;cursor:wait}.elo-assistant-help{display:block;height:27px;color:#087d7b;background:#fff;text-align:center;font-size:.72rem;font-weight:700}.elo-assistant.is-open .elo-assistant-launcher{box-shadow:0 6px 20px rgba(15,45,74,.14)}@media(prefers-reduced-motion:reduce){.elo-assistant-typing i{animation:none}.elo-assistant-typing i:nth-child(2){opacity:.65}.elo-assistant-typing i:nth-child(3){opacity:1}}@media(max-width:575.98px){.elo-assistant{left:12px;bottom:12px}.elo-assistant-launcher{width:56px;height:56px;padding:4px}.elo-assistant-launcher img{width:44px;height:44px}.elo-assistant-launcher span{display:none}.elo-assistant-panel{position:fixed;right:10px;bottom:76px;left:10px;width:auto;height:min(560px,calc(100vh - 90px))}}

@media (max-width: 860px) {
    .agendei-login-brand {
        min-height: 310px;
        background-position: center 25%;
    }

    .agendei-login-box,
    .agendei-login-shell,
    .agendei-login-shell > * {
        min-width: 0;
        max-width: 100%;
    }
}

@media (max-width: 575.98px) {
    .agendei-auth-home-link {
        top: 10px;
        left: 10px;
        min-height: 38px;
        padding: 7px 10px;
        font-size: .86rem;
    }

    .agendalo-user-name span,
    .agendalo-logout-button span {
        display: none;
    }

    .agendalo-user-name,
    .agendalo-logout-button {
        padding-right: 10px;
        padding-left: 10px;
    }

    .elo-dashboard-intro {
        align-items: flex-start;
        padding: 16px;
    }

    .elo-dashboard-intro img {
        flex-basis: 60px;
        width: 60px;
        height: 60px;
    }

    .elo-dashboard-intro h2 {
        font-size: 1.05rem;
    }
}
.elo-assistant .elo-assistant-panel{position:fixed;right:auto;bottom:auto}
@media(max-width:575.98px){.elo-assistant .elo-assistant-panel{right:10px;bottom:76px;left:10px!important;top:auto!important}}

@media (max-width: 575.98px) {
    .elo-assistant {
        right: 12px;
        left: auto;
    }
}

.agendei-auth-page.register-page {
    overflow-y: auto;
    background-color: #f5fbfa;
    background-image: url("../images/brand/login-background.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.agendei-auth-page .agendei-register-brand {
    background-image:
        linear-gradient(to top, rgba(255, 250, 245, .98) 0 24%, rgba(255, 250, 245, .18) 48%, rgba(255, 250, 245, 0) 66%),
        url("../images/brand/elo-profissional.png");
}

.register-page .agendei-login-heading p {
    margin: 6px 0 0;
    color: #607083;
}

@media (max-width: 860px) {
    .agendei-auth-page .agendei-register-brand {
        background-image:
            linear-gradient(to top, rgba(255, 250, 245, .98) 0 34%, rgba(255, 250, 245, .08) 70%),
            url("../images/brand/elo-profissional.png");
        background-position: center 38%;
    }
}

@media (max-width: 420px) {
    .agendei-auth-page.register-page { align-items: flex-start; }
}

.billing-toggle { display: flex; width: max-content; max-width: 100%; align-items: center; gap: 4px; margin: 22px auto 30px; padding: 4px; background: #eaf6f4; border: 1px solid #c7e8e3; border-radius: 8px; }
.billing-toggle button { min-height: 40px; padding: 8px 16px; color: #50677a; background: transparent; border: 0; border-radius: 6px; font-weight: 800; }
.billing-toggle button.active { color: #fff; background: #087d7b; box-shadow: 0 5px 14px rgba(8,125,123,.2); }
.billing-toggle button span { margin-left: 5px; font-size: .72rem; }
.plan-saving { margin: -5px 0 12px; color: #087d7b; font-size: .82rem; font-weight: 800; }
.billing-cycle-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 18px; background: #fff; border: 1px solid #dfe7e9; border-radius: 8px; }
.billing-cycle-toolbar strong, .billing-cycle-toolbar small { display: block; }
.billing-cycle-toolbar small { margin-top: 3px; color: #607083; }
.billing-cycle-toolbar .billing-toggle { flex: 0 0 auto; margin: 0; }
@media (max-width: 575.98px) { .billing-cycle-toolbar { align-items: stretch; flex-direction: column; } .billing-cycle-toolbar .billing-toggle { align-self: flex-start; } .billing-toggle button { padding-right: 12px; padding-left: 12px; } }

.subscription-eyebrow {
    display: block;
    margin-bottom: 3px;
    color: #087d7b;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.subscription-current-panel {
    display: grid;
    grid-template-columns: minmax(240px, 1.1fr) minmax(360px, 1.4fr) minmax(210px, .8fr);
    gap: 24px;
    align-items: center;
    padding: 20px 22px;
    background: #fff;
    border: 1px solid #dbe5e8;
    border-left: 5px solid #0aa7a4;
    border-radius: 8px;
    box-shadow: 0 10px 28px rgba(15, 45, 66, .08);
}

.subscription-current-main,
.subscription-current-state,
.subscription-current-actions {
    display: flex;
    align-items: center;
}

.subscription-current-main { gap: 14px; }
.subscription-current-main h2 { margin: 0; color: #0f2d42; font-size: 1.55rem; font-weight: 800; }
.subscription-current-state { gap: 8px; flex-wrap: wrap; margin-top: 6px; color: #607083; }
.subscription-current-icon {
    display: inline-flex;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    align-items: center;
    justify-content: center;
    color: #fff;
    background: #0f5165;
    border-radius: 8px;
    font-size: 1.2rem;
}

.subscription-current-limits {
    display: grid;
    grid-template-columns: repeat(3, minmax(90px, 1fr));
    border-right: 1px solid #e2e8eb;
    border-left: 1px solid #e2e8eb;
}

.subscription-current-limits div { padding: 4px 18px; }
.subscription-current-limits span,
.subscription-current-limits strong { display: block; }
.subscription-current-limits span { color: #607083; font-size: .76rem; }
.subscription-current-limits strong { margin-top: 2px; color: #0f2d42; font-size: 1.2rem; }
.subscription-current-actions { flex-direction: column; align-items: stretch; gap: 9px; }
.subscription-current-actions small { color: #607083; text-align: center; }

.billing-cycle-toolbar { box-shadow: 0 6px 20px rgba(15, 45, 66, .05); }
.billing-cycle-toolbar > div:first-child strong { color: #0f2d42; font-size: 1.1rem; }

.subscription-plan-card {
    position: relative;
    display: flex;
    min-height: 480px;
    flex-direction: column;
    overflow: hidden;
    background: #fff;
    border: 1px solid #dbe5e8;
    border-top: 5px solid #97a6b2;
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(15, 45, 66, .07);
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.subscription-plan-card:hover,
.subscription-plan-card:focus-within {
    transform: translateY(-5px);
    border-color: #8fd5d1;
    box-shadow: 0 16px 34px rgba(15, 45, 66, .14);
}

.subscription-plan-card--mint { border-top-color: #20aaa2; }
.subscription-plan-card--coral { border-top-color: #ff7180; }
.subscription-plan-card--navy { border-top-color: #0f2d4a; }
.subscription-plan-card.is-current { border-color: #0aa7a4; box-shadow: 0 12px 30px rgba(10, 167, 164, .16); }
.subscription-plan-highlight {
    position: absolute;
    top: 0;
    right: 0;
    padding: 6px 11px;
    color: #7f1d2d;
    background: #fff0f2;
    border-bottom: 1px solid #ffc4cb;
    border-left: 1px solid #ffc4cb;
    font-size: .72rem;
    font-weight: 800;
}

.subscription-plan-header {
    display: flex;
    min-height: 78px;
    gap: 11px;
    align-items: center;
    padding: 18px 18px 12px;
}

.subscription-plan-header h3 { margin: 0; color: #0f2d42; font-size: 1.2rem; font-weight: 800; }
.subscription-plan-header .badge { margin-left: auto; }
.subscription-plan-icon {
    display: inline-flex;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    align-items: center;
    justify-content: center;
    color: #087d7b;
    background: #e5f7f4;
    border-radius: 8px;
}
.subscription-plan-card--coral .subscription-plan-icon { color: #b82d42; background: #fff0f2; }
.subscription-plan-card--navy .subscription-plan-icon { color: #fff; background: #0f2d4a; }

.subscription-plan-body { display: flex; flex: 1 1 auto; flex-direction: column; padding: 4px 18px 18px; }
.subscription-plan-price { min-height: 70px; padding-bottom: 12px; border-bottom: 1px solid #edf1f3; }
.subscription-plan-price strong { color: #0f2d42; font-size: 1.65rem; font-weight: 850; }
.subscription-plan-price small { display: block; margin-top: 3px; font-weight: 700; }
.subscription-plan-description { min-height: 66px; margin: 15px 0; color: #526779; line-height: 1.5; }
.subscription-plan-features { display: grid; gap: 10px; margin: 0 0 22px; padding: 0; list-style: none; }
.subscription-plan-features li { display: grid; grid-template-columns: 20px 1fr; gap: 7px; align-items: start; color: #294458; }
.subscription-plan-features i { margin-top: 3px; color: #16a085; }
.subscription-plan-features i.is-unavailable { color: #9ba8b2; }
.subscription-plan-cta { min-height: 42px; font-weight: 800; }

@media (max-width: 1199.98px) {
    .subscription-current-panel { grid-template-columns: 1fr 1.3fr; }
    .subscription-current-actions { grid-column: 1 / -1; flex-direction: row; align-items: center; justify-content: flex-end; }
    .subscription-plan-card { min-height: 440px; }
}

@media (max-width: 767.98px) {
    .subscription-current-panel { grid-template-columns: 1fr; padding: 18px; }
    .subscription-current-limits { border: 0; border-top: 1px solid #e2e8eb; border-bottom: 1px solid #e2e8eb; }
    .subscription-current-limits div { padding: 12px 8px; }
    .subscription-current-actions { grid-column: auto; flex-direction: column; align-items: stretch; }
    .subscription-plan-card { min-height: 0; }
    .subscription-plan-description { min-height: 0; }
}

@media (prefers-reduced-motion: reduce) {
    .subscription-plan-card { transition: none; }
    .subscription-plan-card:hover,
    .subscription-plan-card:focus-within { transform: none; }
}

.checkout-pending-alert { gap: 12px; border: 1px solid #9fded8; border-left: 4px solid #087d7b; background: #f2fbfa; color: #173e4f; }
.checkout-pending-actions { gap: 8px; }
.checkout-pending-actions form { margin: 0 !important; }
.agendalo-confirmation-modal { overflow: hidden; border: 0; border-radius: 8px; box-shadow: 0 22px 55px rgba(15,45,66,.24); }
.agendalo-confirmation-modal .modal-header { align-items: flex-start; }
.agendalo-confirmation-modal .confirmation-icon { display: inline-flex; width: 44px; height: 44px; align-items: center; justify-content: center; color: #087d7b; background: #ddf6f2; border: 1px solid #b7e8e1; border-radius: 50%; }
.agendalo-confirmation-modal .modal-title { color: #0f2d42; }
.agendalo-confirmation-modal .modal-footer .btn { min-width: 112px; }
@media (max-width: 575.98px) {
    .checkout-pending-alert, .checkout-pending-actions, .checkout-pending-actions form, .checkout-pending-actions .btn { width: 100%; }
    .agendalo-confirmation-modal .modal-footer { flex-wrap: nowrap; }
    .agendalo-confirmation-modal .modal-footer .btn { min-width: 0; flex: 1 1 50%; }
}

/* Mobile workspace: preserve the desktop composition while making touch layouts denser. */
@media (max-width: 575.98px) {
    .content-wrapper > .content { padding: 0 10px 16px; }
    .content-header { padding: 14px 10px 9px; }
    .content-header h1 { margin: 0; font-size: 1.45rem; line-height: 1.2; }
    .content-header p { margin-top: 4px; font-size: .86rem; line-height: 1.4; }
    .card { margin-bottom: 14px; border-radius: 8px; }
    .card-header { padding: 13px 14px; }
    .card-body { padding: 14px; }
    .agendalo-page-heading { align-items: stretch !important; flex-direction: column; gap: 10px; }
    .agendalo-page-heading .btn { min-height: 42px; }

    .agendei-hero { margin-bottom: 14px; padding: 20px 17px; border-radius: 8px; }
    .agendei-hero h2 { font-size: 1.42rem; line-height: 1.2; }
    .agendei-hero p { font-size: .9rem; line-height: 1.5; }

    .small-box { min-height: 132px; margin-bottom: 10px; }
    .small-box .inner { min-height: 96px; padding: 14px 12px 10px; }
    .small-box .inner h3 { max-width: 100%; margin-bottom: 4px; font-size: clamp(1.32rem, 6.4vw, 1.72rem); line-height: 1.08; overflow-wrap: anywhere; }
    .small-box .inner p { max-width: 100%; margin: 0; font-size: .78rem; line-height: 1.25; }
    .small-box .icon { display: none; }
    .small-box-footer { padding: 6px 4px; font-size: .72rem; }

    .timeline::before { left: 16px; }
    .timeline > div { margin: 0 0 10px; }
    .timeline > div > .fa,
    .timeline > div > .fab,
    .timeline > div > .far,
    .timeline > div > .fas,
    .timeline > div > .glyphicon,
    .timeline > div > .ion { left: 0; width: 32px; height: 32px; font-size: .8rem; line-height: 32px; }
    .timeline > div > .timeline-item { margin-right: 0; margin-left: 43px; box-shadow: none; border: 1px solid #dfe7e9; border-radius: 7px; }
    .timeline > div > .timeline-item > .timeline-header { padding: 10px 11px 4px; font-size: .9rem; line-height: 1.3; }
    .timeline > div > .timeline-item > .timeline-body { padding: 4px 11px 11px; font-size: .8rem; line-height: 1.4; }

    .agendalo-filter-panel .row { margin-right: -5px; margin-left: -5px; }
    .agendalo-filter-panel [class*="col-"] { padding-right: 5px; padding-left: 5px; }
    .agendalo-filter-panel .form-group,
    .agendalo-filter-panel .form-control { margin-bottom: 9px; }
    .agendalo-filter-panel .btn { min-height: 40px; }

    .agendalo-responsive-table { display: block; padding: 10px; background: #f4f8f7; }
    .agendalo-responsive-table thead { display: none; }
    .agendalo-responsive-table tbody { display: block; }
    .agendalo-responsive-table tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 14px; margin-bottom: 10px; padding: 12px; background: #fff !important; border: 1px solid #dfe7e9; border-radius: 8px; box-shadow: 0 5px 14px rgba(15,45,74,.06); }
    .agendalo-responsive-table td { display: block; min-width: 0; padding: 7px 0 !important; border: 0 !important; text-align: left !important; overflow-wrap: anywhere; }
    .agendalo-responsive-table td::before { display: block; margin-bottom: 2px; color: #718294; font-size: .65rem; font-weight: 800; text-transform: uppercase; content: attr(data-label); }
    .agendalo-responsive-table td:nth-child(3),
    .agendalo-responsive-table td:nth-child(4),
    .agendalo-responsive-table td:nth-child(5),
    .agendalo-responsive-table .agendalo-row-actions { grid-column: 1 / -1; }
    .agendalo-responsive-table .agendalo-row-actions { display: flex; flex-wrap: wrap; gap: 7px; padding-top: 11px !important; border-top: 1px solid #edf2f1 !important; }
    .agendalo-responsive-table .agendalo-row-actions::before { width: 100%; }
    .agendalo-responsive-table .agendalo-row-actions .btn { display: inline-flex; width: 38px; height: 38px; align-items: center; justify-content: center; padding: 0; }
    .agendalo-responsive-table .agendalo-row-actions form { display: inline-flex !important; }
    .agendalo-responsive-table .agendalo-empty-row { display: block; margin: 0; padding: 24px 14px; }
    .agendalo-responsive-table .agendalo-empty-state::before { display: none; }

    .agendei-help-banner { align-items: flex-start; padding: 12px; }
    .agendei-help-banner__icon { flex-basis: 34px; width: 34px; height: 34px; }
    .agendei-help-banner p { font-size: .8rem; line-height: 1.4; }
    .elo-assistant { right: 8px; bottom: 10px; }
    .elo-assistant-launcher { width: 50px; height: 50px; }
    .elo-assistant-launcher img { width: 38px; height: 38px; }
    .agendalo-profile-photo-field { grid-template-columns: 58px minmax(0, 1fr); gap: 12px; padding: 12px; }
    .agendalo-profile-photo-field > img { width: 58px; height: 58px; }
}

/* Mobile navigation drawer: translucent glass with a readable dark fallback. */
@media (max-width: 991.98px) {
    body.sidebar-open {
        overflow: hidden;
    }

    body:not(.layout-top-nav) .main-sidebar,
    body:not(.layout-top-nav) .main-sidebar::before {
        background: rgba(10, 39, 63, .88) !important;
    }

    body:not(.layout-top-nav) .main-sidebar {
        z-index: 1040;
        overflow: hidden;
        border-right: 1px solid rgba(255, 255, 255, .16);
        box-shadow: 18px 0 48px rgba(3, 20, 35, .34) !important;
        -webkit-backdrop-filter: blur(22px) saturate(145%);
        backdrop-filter: blur(22px) saturate(145%);
    }

    body:not(.layout-top-nav) .main-sidebar .brand-link {
        background: rgba(8, 34, 56, .58) !important;
        border-bottom-color: rgba(255, 255, 255, .13) !important;
    }

    body:not(.layout-top-nav) .main-sidebar .sidebar {
        background: transparent;
    }

    body:not(.layout-top-nav) .main-sidebar .nav-sidebar .nav-link {
        border: 1px solid transparent;
    }

    body:not(.layout-top-nav) .main-sidebar .nav-sidebar .nav-link:hover,
    body:not(.layout-top-nav) .main-sidebar .nav-sidebar .nav-link:focus {
        background: rgba(255, 255, 255, .11) !important;
        border-color: rgba(255, 255, 255, .1);
    }

    body:not(.layout-top-nav) .main-sidebar .nav-sidebar .nav-link.active {
        background: rgba(10, 184, 180, .9) !important;
        border-color: rgba(255, 255, 255, .18);
        box-shadow: 0 8px 20px rgba(0, 23, 36, .2);
    }

    #sidebar-overlay {
        display: block;
        visibility: hidden;
        background: rgba(4, 15, 25, .32);
        opacity: 0;
        -webkit-backdrop-filter: blur(8px) saturate(85%);
        backdrop-filter: blur(8px) saturate(85%);
        transition: opacity .24s ease, visibility 0s linear .24s;
    }

    .sidebar-open #sidebar-overlay {
        visibility: visible;
        opacity: 1;
        transition-delay: 0s;
    }

    .sidebar-open .elo-assistant,
    .sidebar-open .elo-context-tip {
        z-index: 1036;
        pointer-events: none;
    }
}

@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {
    #sidebar-overlay {
        transition: none;
    }
}

/* Account and Elo settings */
.agendalo-settings-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.agendalo-settings-eyebrow{display:block;margin-bottom:3px;color:#087d7b;font-size:.72rem;font-weight:800;text-transform:uppercase}.agendalo-settings-layout{align-items:flex-start}.agendalo-settings-card,.agendalo-settings-summary,.agendalo-settings-links,.agendalo-danger-zone,.agendalo-protection-card{border:1px solid #dce7e8;border-radius:8px;box-shadow:0 8px 24px rgba(15,45,74,.06)}.agendalo-settings-section+.agendalo-settings-section{margin-top:28px;padding-top:28px;border-top:1px solid #e3ebec}.agendalo-settings-section-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.agendalo-settings-section-heading>span{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;color:#087d7b;background:#e5f8f5;border-radius:8px}.agendalo-settings-section-heading h2{margin:0;color:#0f2d4a;font-size:1.06rem;font-weight:800}.agendalo-settings-section-heading p{margin:3px 0 0;color:#607083;font-size:.86rem}.agendalo-settings-savebar{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#f8fbfa}.agendalo-settings-savebar>span{color:#607083;font-size:.78rem}.agendalo-setting-icon{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;color:#087d7b;background:#e5f8f5;border-radius:7px}.agendalo-setting-icon.is-whatsapp{color:#168b48;background:#e8f8ee}.agendei-setting-toggle.is-disabled{opacity:.68;background:#f5f7f7}.agendei-setting-toggle.is-disabled:hover{border-color:#e2e8f0}.agendalo-settings-summary .card-body{display:grid;grid-template-columns:44px 1fr;gap:12px}.agendalo-settings-summary-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;color:#fff;background:#0aa8a5;border-radius:8px}.agendalo-settings-summary small,.agendalo-settings-summary h2{display:block}.agendalo-settings-summary h2{margin:0;color:#0f2d4a;font-size:1.1rem;font-weight:800}.agendalo-settings-summary .btn{grid-column:1/-1}.agendalo-settings-person{display:flex;align-items:center;gap:11px;padding-bottom:15px;border-bottom:1px solid #e4eceb}.agendalo-settings-person>img,.agendalo-settings-person>span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;object-fit:cover;border:2px solid #b9e8e3;border-radius:50%;background:#e2f7f4;color:#087d7b;font-weight:800}.agendalo-settings-person div{min-width:0}.agendalo-settings-person strong,.agendalo-settings-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agendalo-settings-person small{color:#607083}.agendalo-settings-links nav{display:grid;margin:0 -12px -12px}.agendalo-settings-links nav a{display:grid;grid-template-columns:24px minmax(0,1fr) 12px;align-items:center;gap:8px;padding:12px;color:#16334f;border-bottom:1px solid #edf2f2}.agendalo-settings-links nav a:hover{color:#087d7b;background:#f4faf9;text-decoration:none}.agendalo-settings-links nav a>i:first-child{color:#0aa8a5;text-align:center}.agendalo-settings-links nav a>i:last-child{color:#9aabb8;font-size:.68rem}.agendalo-danger-zone{overflow:hidden}.agendalo-danger-zone>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;color:#a12c38;background:#fff;cursor:pointer;font-weight:800;list-style:none}.agendalo-danger-zone>summary::-webkit-details-marker{display:none}.agendalo-danger-zone[open]>summary{border-bottom:1px solid #f1d9dc}.agendalo-danger-zone[open]>summary>i{transform:rotate(180deg)}.agendalo-danger-zone p{color:#607083}.agendalo-capabilities-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.agendalo-protection-card{border-top:3px solid #0aa8a5}.agendalo-protection-card .card-body>p{color:#607083;font-size:.86rem}.agendalo-protection-list{display:grid;gap:15px;margin:0;padding:0;list-style:none}.agendalo-protection-list li{display:flex;align-items:flex-start;gap:10px;color:#50677a;font-size:.82rem;line-height:1.42}.agendalo-protection-list li>i{display:flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px;color:#087d7b;background:#e5f8f5;border-radius:50%;font-size:.65rem}.agendalo-protection-list strong{display:block;margin-bottom:1px;color:#16334f;font-size:.86rem}

@media(max-width:1199.98px){.agendalo-settings-layout aside{margin-top:4px}.agendalo-settings-heading{align-items:flex-start}}
@media(max-width:767.98px){.agendalo-settings-heading{align-items:stretch;flex-direction:column;gap:12px}.agendalo-settings-heading .btn{align-self:flex-start}.agendalo-settings-savebar{align-items:stretch;flex-direction:column}.agendalo-settings-savebar .btn{width:100%}.agendalo-capabilities-grid{grid-template-columns:1fr}}
@media(max-width:575.98px){.agendalo-settings-section-heading>span{flex-basis:36px;width:36px;height:36px}.agendalo-settings-card>.card-body{padding:16px}.agendalo-settings-section+.agendalo-settings-section{margin-top:22px;padding-top:22px}.agendei-setting-toggle{padding:12px}.agendalo-setting-icon{flex-basis:32px;width:32px;height:32px}}

/* Personalizacao visual da conta */
body.agendalo-accent-turquesa{--agendalo-accent:#0aa8a5;--agendalo-accent-dark:#087d7b;--agendalo-accent-soft:#e5f8f5}
body.agendalo-accent-azul{--agendalo-accent:#2563eb;--agendalo-accent-dark:#1d4ed8;--agendalo-accent-soft:#eff6ff}
body.agendalo-accent-verde{--agendalo-accent:#169b62;--agendalo-accent-dark:#107548;--agendalo-accent-soft:#eaf8f0}
body.agendalo-accent-coral{--agendalo-accent:#e85d68;--agendalo-accent-dark:#bd3f4b;--agendalo-accent-soft:#fff0f1}
body[class*="agendalo-accent-"] .btn-primary,body[class*="agendalo-accent-"] .bg-info,body[class*="agendalo-accent-"] .nav-sidebar>.nav-item>.nav-link.active{background-color:var(--agendalo-accent)!important;border-color:var(--agendalo-accent)!important}
body[class*="agendalo-accent-"] .btn-outline-primary{color:var(--agendalo-accent-dark);border-color:var(--agendalo-accent)}
body[class*="agendalo-accent-"] .btn-outline-primary:hover{color:#fff;background:var(--agendalo-accent);border-color:var(--agendalo-accent)}
body[class*="agendalo-accent-"] a:not(.btn):not(.nav-link){color:var(--agendalo-accent-dark)}
body[class*="agendalo-accent-"] .form-control:focus{border-color:var(--agendalo-accent);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--agendalo-accent) 20%,transparent)}
.agendalo-appearance-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.agendalo-appearance-option,.agendalo-accent-option{margin:0;cursor:pointer}.agendalo-appearance-option input,.agendalo-accent-option input{position:absolute;opacity:0;pointer-events:none}.agendalo-appearance-option>span{display:flex;align-items:center;gap:9px;min-height:48px;padding:10px 12px;background:#fff;border:2px solid #dce7e8;border-radius:8px}.agendalo-appearance-option input:checked+span{color:var(--agendalo-accent-dark,#087d7b);background:var(--agendalo-accent-soft,#e5f8f5);border-color:var(--agendalo-accent,#0aa8a5)}.agendalo-accent-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.agendalo-accent-option>span{--option-color:#0aa8a5;display:grid;grid-template-columns:32px minmax(0,1fr) 18px;align-items:center;gap:9px;min-height:50px;padding:8px 10px;background:#fff;border:2px solid #dce7e8;border-radius:8px}.agendalo-accent-option>span>i:first-child{display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#fff;background:var(--option-color);border-radius:7px}.agendalo-accent-option>span>i:last-child{visibility:hidden;color:var(--option-color)}.agendalo-accent-option input:checked+span{border-color:var(--option-color);background:color-mix(in srgb,var(--option-color) 8%,#fff)}.agendalo-accent-option input:checked+span>i:last-child{visibility:visible}.agendalo-accent-option.is-azul>span{--option-color:#2563eb}.agendalo-accent-option.is-verde>span{--option-color:#169b62}.agendalo-accent-option.is-coral>span{--option-color:#e85d68}
.elo-assistant{left:auto;right:18px}.elo-assistant.is-positioned{right:auto}.elo-assistant-panel{position:fixed!important;right:auto;bottom:auto}
.dark-mode .agendalo-settings-card,.dark-mode .agendalo-settings-summary,.dark-mode .agendalo-settings-links,.dark-mode .agendalo-danger-zone,.dark-mode .agendalo-appearance-option>span,.dark-mode .agendalo-accent-option>span{background:#343a40;border-color:#4b545c;color:#f4f6f9}.dark-mode .agendalo-settings-section-heading h2,.dark-mode .agendalo-settings-summary h2,.dark-mode .agendalo-settings-person strong,.dark-mode .agendalo-settings-links nav a{color:#f4f6f9}.dark-mode .agendalo-settings-section-heading p,.dark-mode .agendalo-settings-person small,.dark-mode .agendalo-settings-savebar>span{color:#c2c7d0}.dark-mode .agendalo-settings-savebar{background:#2f353b}.dark-mode .agendalo-danger-zone>summary{color:#ff9ca6;background:#343a40}.dark-mode .elo-assistant-panel,.dark-mode .elo-assistant-launcher,.dark-mode .elo-assistant-form,.dark-mode .elo-assistant-suggestions,.dark-mode .elo-assistant-help,.dark-mode .elo-assistant-message p{background:#343a40;color:#f4f6f9;border-color:#4b545c}.dark-mode .elo-assistant-messages{background:#252a2f}
@media(max-width:767.98px){.agendalo-appearance-options{grid-template-columns:1fr}.agendalo-accent-options{grid-template-columns:1fr}}
@media(max-width:575.98px){.elo-assistant{left:auto;right:12px}.elo-assistant.is-positioned{right:auto}.elo-assistant-panel{right:10px;left:10px}}

/* Cookie notice and complete dark appearance */
.agendalo-cookie-consent{position:fixed;z-index:1090;left:18px;right:18px;bottom:18px;max-width:1060px;margin:auto;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:18px;background:#fff;border:1px solid #cfe4e3;border-left:4px solid #0aa8a5;border-radius:8px;box-shadow:0 16px 45px rgba(15,45,58,.2)}
.agendalo-cookie-consent[hidden],.agendalo-cookie-settings[hidden],.agendalo-cookie-modal[hidden]{display:none}.agendalo-cookie-consent p{margin:3px 0 0;color:#536477}.agendalo-cookie-actions{display:flex;flex:0 0 auto;gap:8px}.agendalo-cookie-settings{position:fixed;z-index:1030;left:14px;bottom:12px;padding:7px 10px;border:1px solid #cfe4e3;border-radius:6px;background:#fff;color:#385164;font-size:.78rem;box-shadow:0 5px 16px rgba(15,45,58,.12)}
.agendalo-cookie-modal{position:fixed;z-index:1100;inset:0;display:flex;align-items:center;justify-content:center;padding:18px}.agendalo-cookie-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.62)}.agendalo-cookie-modal-content{position:relative;width:min(620px,100%);max-height:calc(100vh - 36px);overflow:auto;padding:22px;background:#fff;border-radius:8px;box-shadow:0 24px 70px rgba(15,23,42,.3)}.agendalo-cookie-modal-content header,.agendalo-cookie-modal-content footer,.agendalo-cookie-category{display:flex;align-items:center;justify-content:space-between;gap:18px}.agendalo-cookie-modal-content h2{margin:0 0 4px;font-size:1.35rem}.agendalo-cookie-modal-content header p,.agendalo-cookie-category p{margin:0;color:#64748b}.agendalo-cookie-category{padding:18px 0;border-top:1px solid #e2e8f0}.agendalo-cookie-category:first-of-type{margin-top:18px}.agendalo-cookie-modal-content footer{justify-content:flex-end;padding-top:18px;border-top:1px solid #e2e8f0}.agendalo-cookie-modal-open{overflow:hidden}
.agendalo-image-preview{width:120px;height:120px;border:1px solid #d8e2e8;border-radius:8px;overflow:hidden;background:#f5f8fa}.agendalo-image-preview img{width:100%;height:100%;object-fit:cover}
.agendalo-cadastro-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--avatar-size);width:var(--avatar-size);height:var(--avatar-size);overflow:hidden;border:1px solid #cfe1e5;border-radius:50%;background:#e3f5f4;color:#087f7d;font-weight:700;vertical-align:middle}.agendalo-cadastro-avatar img{width:100%;height:100%;object-fit:cover}
.dark-mode .content-wrapper,.dark-mode .main-footer{background:#181d22;color:#e9ecef}.dark-mode .card,.dark-mode .modal-content,.dark-mode .dropdown-menu,.dark-mode .list-group-item,.dark-mode .agendei-help-banner,.dark-mode .callout{background:#2b3035;color:#f4f6f9;border-color:#4b545c}.dark-mode .card-header,.dark-mode .card-footer,.dark-mode .modal-header,.dark-mode .modal-footer{background:#30363c;border-color:#4b545c}.dark-mode .table{color:#edf1f4}.dark-mode .table td,.dark-mode .table th{border-color:#495057}.dark-mode .table-hover tbody tr:hover{color:#fff;background:rgba(255,255,255,.05)}.dark-mode .form-control,.dark-mode .custom-select,.dark-mode .input-group-text{color:#f4f6f9;background:#24292e;border-color:#59636d}.dark-mode .form-control::placeholder{color:#9ba6af}.dark-mode .text-muted{color:#b6c0c8!important}.dark-mode .agendalo-cookie-consent{background:#2b3035;color:#f4f6f9;border-color:#4b545c;border-left-color:#2bc4c0}.dark-mode .agendalo-cookie-consent p{color:#c7d0d7}
.agendalo-help-tip{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;color:#607083;background:transparent;border:0;border-radius:50%;font-size:.88rem;vertical-align:middle}.agendalo-help-tip:hover,.agendalo-help-tip:focus{color:#087f7d;background:#e5f8f5;outline:0}.dark-mode .agendalo-help-tip{color:#bdc7cf}.dark-mode .agendalo-help-tip:hover,.dark-mode .agendalo-help-tip:focus{color:#7be0dc;background:#39464b}

/* Títulos e rótulos estruturais devem permanecer legíveis no tema escuro. */
.dark-mode .content-header h1,
.dark-mode .content-header h2,
.dark-mode .agendei-page-title h1,
.dark-mode .agendei-page-title h2,
.dark-mode .card-title,
.dark-mode .modal-title,
.dark-mode .card-header > h1,
.dark-mode .card-header > h2,
.dark-mode .card-header > h3,
.dark-mode .card-header > h4,
.dark-mode .card-header > h5,
.dark-mode .card-header > h6,
.dark-mode .card-body > h1,
.dark-mode .card-body > h2,
.dark-mode .card-body > h3,
.dark-mode .card-body > h4,
.dark-mode .card-body > h5,
.dark-mode .card-body > h6 {
    color: #f4f6f9 !important;
}
.dark-mode .content-header small,
.dark-mode .agendei-page-title small,
.dark-mode .card-header .text-muted {
    color: #bdc7cf !important;
}
.dark-mode .table thead th {
    color: #f4f6f9 !important;
    background: #24292e !important;
    border-color: #59636d !important;
}
.dark-mode .table thead th a:not(.btn) {
    color: #f4f6f9 !important;
}
.dark-mode .table thead th a:not(.btn):hover,
.dark-mode .table thead th a:not(.btn):focus {
    color: #7be0dc !important;
}

/* Superfícies personalizadas que precisam acompanhar integralmente o tema escuro. */
.dark-mode .alert-light,
.dark-mode .oportunidade-metrica,
.dark-mode .oportunidade-ociosidade,
.dark-mode .oportunidade-dias a,
.dark-mode .oportunidade-filtros,
.dark-mode .oportunidade-lista,
.dark-mode .public-status-panel,
.dark-mode .public-theme-card,
.dark-mode .public-logo-preview,
.dark-mode .tab-content.bg-white,
.dark-mode .fidelidade-section,
.dark-mode .agendei-setting-toggle,
.dark-mode .agendalo-profile-photo-field,
.dark-mode .google-calendar-status-grid > div,
.dark-mode .google-calendar-icon,
.dark-mode .integration-connected,
.dark-mode .help-search-panel,
.dark-mode .public-desktop-banner-settings,
.dark-mode .help-navigation,
.dark-mode .help-article,
.dark-mode .help-checklist,
.dark-mode .help-troubleshooting {
    color: #f4f6f9 !important;
    background: #2b3035 !important;
    border-color: #4b545c !important;
}
.help-navigation nav {
    max-height: calc(100vh - 150px);
    overflow-y: auto;
    scrollbar-width: thin;
}
@media (max-width: 991.98px) {
    .help-navigation nav {
        max-height: none;
        overflow-x: auto;
        overflow-y: hidden;
    }
}
.dark-mode .oportunidade-metrica strong,
.dark-mode .oportunidade-dias strong,
.dark-mode .public-theme-card strong,
.dark-mode .public-desktop-banner-settings h4,
.dark-mode .fidelidade-section h2,
.dark-mode .agendei-setting-toggle strong,
.dark-mode .agendalo-protection-list strong,
.dark-mode .agendei-profile-identity h2,
.dark-mode .agendei-public-profile-card h3,
.dark-mode .agendei-form-section-heading h4,
.dark-mode .agendei-profile-form-card label,
.dark-mode .google-calendar-status-grid strong,
.dark-mode .google-calendar-empty h4,
.dark-mode .google-sync-direction strong,
.dark-mode .help-search-copy h2,
.dark-mode .help-navigation > strong,
.dark-mode .help-navigation a,
.dark-mode .help-article-header h2,
.dark-mode .help-section h3,
.dark-mode .help-detail-grid h3,
.dark-mode .help-steps strong,
.dark-mode .help-troubleshooting summary,
.dark-mode .help-empty h2 {
    color: #f4f6f9 !important;
}
.dark-mode .oportunidade-metrica span,
.dark-mode .oportunidade-ociosidade small,
.dark-mode .public-theme-card small,
.dark-mode .public-desktop-banner-settings p,
.dark-mode .agendei-setting-toggle small,
.dark-mode .agendalo-protection-card .card-body > p,
.dark-mode .agendalo-protection-list li,
.dark-mode .agendei-profile-identity p,
.dark-mode .agendei-profile-meta div,
.dark-mode .agendei-public-profile-card p,
.dark-mode .agendei-profile-form-card .card-subtitle,
.dark-mode .agendei-form-section-heading p,
.dark-mode .google-calendar-status-grid small,
.dark-mode .google-calendar-empty p,
.dark-mode .google-sync-direction span,
.dark-mode .integration-connected span,
.dark-mode .help-search-copy p,
.dark-mode .help-results-summary,
.dark-mode .help-article-header p,
.dark-mode .help-article-meta small,
.dark-mode .help-steps p,
.dark-mode .help-checklist li,
.dark-mode .help-troubleshooting details p,
.dark-mode .help-empty {
    color: #bdc7cf !important;
}
.dark-mode .oportunidade-dias a:hover,
.dark-mode .oportunidade-dias a:focus,
.dark-mode .help-navigation a:hover,
.dark-mode .help-navigation a.is-active {
    color: #7be0dc !important;
    background: #343a40 !important;
    border-color: #6b757f !important;
}
.dark-mode .public-theme-option input:checked + .public-theme-card {
    background: #30363c !important;
}
.dark-mode .public-color-field input[type="color"] {
    background: #24292e !important;
    border-color: #59636d !important;
}
.dark-mode .public-text-color-panel,
.dark-mode .public-text-color-mode span,
.dark-mode .public-background-mode span,
.dark-mode .public-background-palette,
.dark-mode .public-text-palette,
.dark-mode .public-contrast-status,
.dark-mode .public-upload-preview-box,
.dark-mode .public-background-preview {
    color: #f4f6f9 !important;
    background: #2b3035 !important;
    border-color: #59636d !important;
}
.dark-mode .public-text-color-mode small,
.dark-mode .public-background-mode small {
    color: #bdc7cf !important;
}
.dark-mode .public-text-color-mode:hover span,
.dark-mode .public-background-mode:hover span,
.dark-mode .public-background-palette:hover,
.dark-mode .public-text-palette:hover {
    background: #343a40 !important;
    border-color: #7b8792 !important;
}
.dark-mode .public-text-color-mode input:checked + span {
    color: #e0f2fe !important;
    background: #0c4a6e !important;
    border-color: #38bdf8 !important;
}
.dark-mode .public-background-mode input:checked + span {
    color: #dcfce7 !important;
    background: #14532d !important;
    border-color: #4ade80 !important;
}
.dark-mode .public-contrast-status.is-safe {
    color: #dcfce7 !important;
    background: #14532d !important;
    border-color: #4ade80 !important;
}
.dark-mode .public-contrast-status.has-warning {
    color: #fef3c7 !important;
    background: #713f12 !important;
    border-color: #fbbf24 !important;
}
.dark-mode .public-upload-error {
    color: #fecaca !important;
    background: #4c1d24 !important;
    border-color: #b94a58 !important;
}
.dark-mode .nav-tabs .nav-link {
    color: #bdc7cf;
    border-color: transparent;
}
.dark-mode .nav-tabs .nav-link:hover,
.dark-mode .nav-tabs .nav-link:focus {
    color: #f4f6f9;
    border-color: #4b545c;
}
.dark-mode .nav-tabs .nav-link.active {
    color: #f4f6f9 !important;
    background: #343a40 !important;
    border-color: #59636d #59636d #343a40 !important;
}
.dark-mode .pedido-new {
    color: #f4f6f9 !important;
    background: #26343b !important;
}
.dark-mode .agendei-setting-toggle.is-disabled {
    background: #24292e !important;
    border-color: #4b545c !important;
}
.dark-mode .agendalo-appearance-option input:checked + span {
    color: #f4f6f9 !important;
    background: #263c3b !important;
    border-color: var(--agendalo-accent, #0aa8a5) !important;
}
.dark-mode .agendalo-accent-option input:checked + span {
    color: #f4f6f9 !important;
    background: #30363c !important;
}
.dark-mode .agendalo-settings-links nav a:hover,
.dark-mode .agendalo-settings-links nav a:focus {
    color: #7be0dc !important;
    background: #2b3035 !important;
}
.dark-mode .agendalo-protection-card {
    color: #f4f6f9;
    background: #2b3035;
    border-color: #4b545c;
}
.dark-mode .agendei-profile-completeness {
    background: #26374a;
    border-color: #40566f;
}
.dark-mode .agendei-profile-completeness strong,
.dark-mode .agendei-profile-completeness span,
.dark-mode .agendei-profile-completeness small {
    color: #dce8f5 !important;
}
.dark-mode .agendei-profile-completeness .progress {
    background: #182535;
}
.dark-mode .agendei-profile-card .agendei-profile-meta,
.dark-mode .agendei-form-section,
.dark-mode .agendei-profile-form-actions,
.dark-mode .google-sync-direction,
.dark-mode .help-article-header,
.dark-mode .help-troubleshooting details,
.dark-mode .help-article-footer {
    border-color: #4b545c !important;
}
.dark-mode .agendei-profile-form-actions {
    background: #30363c !important;
}
.dark-mode .help-steps li > span {
    color: #f4f6f9;
    background: #3f4b55;
}

/* Painel: superfícies sóbrias e hierarquia consistente no tema escuro. */
.dark-mode .agendalo-dashboard .agendei-hero {
    color: #f5f8fa;
    background: #263c3b;
    border-color: #3e615f;
}
.dark-mode .agendalo-dashboard .agendei-hero h2 {
    color: #ffffff;
}
.dark-mode .agendalo-dashboard .agendei-hero p {
    color: #c8d7d6;
}
.dark-mode .agendalo-dashboard .agendei-hero .btn-light {
    color: #173433;
    background: #f1f7f6;
    border-color: #f1f7f6;
}
.dark-mode .agendalo-dashboard .agendei-hero .btn-outline-light {
    color: #e5f4f2;
    border-color: #92b8b5;
}
.dark-mode .agendalo-dashboard .agendei-hero .btn-outline-light:hover,
.dark-mode .agendalo-dashboard .agendei-hero .btn-outline-light:focus {
    color: #173433;
    background: #d9ece9;
}
.dark-mode .agendalo-dashboard .small-box {
    --dashboard-accent: #22b8b5;
    color: #f4f6f9 !important;
    background: #2b3035 !important;
    border: 1px solid #4b545c;
    border-top: 3px solid var(--dashboard-accent);
    box-shadow: 0 8px 20px rgba(0, 0, 0, .2);
}
.dark-mode .agendalo-dashboard .small-box.bg-success { --dashboard-accent: #45bd72; }
.dark-mode .agendalo-dashboard .small-box.bg-warning { --dashboard-accent: #f2bd35; }
.dark-mode .agendalo-dashboard .small-box.bg-danger { --dashboard-accent: #e56875; }
.dark-mode .agendalo-dashboard .small-box .inner h3,
.dark-mode .agendalo-dashboard .small-box .inner p {
    color: #f4f6f9 !important;
}
.dark-mode .agendalo-dashboard .small-box .icon {
    color: var(--dashboard-accent);
    opacity: .16;
}
.dark-mode .agendalo-dashboard .small-box-footer {
    color: #dce5e9 !important;
    background: #24292e;
    border-top: 1px solid #414950;
}
.dark-mode .agendalo-dashboard .small-box-footer:hover,
.dark-mode .agendalo-dashboard .small-box-footer:focus {
    color: #ffffff !important;
    background: #343b41;
}
.dark-mode .agendalo-dashboard .card {
    border-color: #46515a;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .14);
}
.dark-mode .agendalo-dashboard .timeline::before {
    background: #56616a;
}
.dark-mode .agendalo-dashboard .timeline > div > .timeline-item {
    color: #e8edf0;
    background: #30363c;
    border: 1px solid #48525b;
    box-shadow: none;
}
.dark-mode .agendalo-dashboard .timeline > div > .timeline-item > .timeline-header {
    color: #f4f6f9;
    border-color: #505a63;
}
.dark-mode .agendalo-dashboard .timeline > div > .timeline-item > .timeline-body {
    color: #cbd3d9;
}
.dark-mode .agendalo-dashboard .progress {
    background: #1f252a;
}

/* Contraste dos módulos operacionais que usam painéis próprios fora do AdminLTE. */
.dark-mode .drive-panel,
.dark-mode .ficha-identidade,
.dark-mode .ficha-metrica,
.dark-mode .ficha-conteudo,
.dark-mode .ficha-form,
.dark-mode .ficha-arquivo,
.dark-mode .capture-proposal,
.dark-mode .resource-form,
.dark-mode .resource-item,
.dark-mode .resource-empty,
.dark-mode .analytics-filter,
.dark-mode .analytics-section,
.dark-mode .analytics-metric,
.dark-mode .finance-summary,
.dark-mode .commission-summary,
.dark-mode .calendar-workspace,
.dark-mode #calendar {
    color: #f4f6f9 !important;
    background: #2b3035 !important;
    border-color: #4b545c !important;
}
.dark-mode .drive-heading h2,
.dark-mode .drive-title,
.dark-mode .ficha-identidade h2,
.dark-mode .ficha-metrica strong,
.dark-mode .ficha-section-title,
.dark-mode .resource-form h2,
.dark-mode .resource-item h2,
.dark-mode .analytics-metric strong,
.dark-mode .analytics-section h2,
.dark-mode .calendar-page-header h1,
.dark-mode .calendar-detail strong,
.dark-mode .calendar-detail span,
.dark-mode .fc .fc-toolbar-title {
    color: #f4f6f9 !important;
}
.dark-mode .drive-selected,
.dark-mode .resource-blocks,
.dark-mode .ficha-empty,
.dark-mode .calendar-controls,
.dark-mode .calendar-detail,
.dark-mode .calendar-modal .modal-footer,
.dark-mode .fc .fc-col-header-cell,
.dark-mode .fc .fc-list-day-cushion {
    color: #e9ecef !important;
    background: #24292e !important;
    border-color: #4b545c !important;
}
.dark-mode .ficha-tab { color: #c5ced6; }
.dark-mode .ficha-tab:hover,
.dark-mode .ficha-tab.active { color: #7be0dc; }
.dark-mode .fc {
    --fc-border-color: #4b545c;
    --fc-page-bg-color: #2b3035;
    --fc-neutral-bg-color: #24292e;
    --fc-today-bg-color: #303f46;
    color: #e9ecef;
}
.dark-mode .fc .fc-daygrid-day-number,
.dark-mode .fc .fc-col-header-cell-cushion,
.dark-mode .calendar-filter label,
.dark-mode .calendar-legend-item { color: #d9e0e5 !important; }

/* Sidebar discovery and personal appearance controls. */
.main-sidebar .sidebar {
    padding-bottom: 176px;
}

.agendalo-sidebar-search {
    position: sticky;
    top: 0;
    z-index: 4;
    padding: 12px 8px 7px;
    background: linear-gradient(180deg, #0f2d4a 82%, rgba(15, 45, 74, 0));
}

.agendalo-sidebar-search-field {
    display: flex;
    min-width: 0;
    height: 42px;
    margin: 0;
    align-items: center;
    gap: 9px;
    padding: 0 11px;
    color: #a8bfce;
    background: rgba(4, 20, 35, .38);
    border: 1px solid rgba(255, 255, 255, .09);
    border-radius: 10px;
    transition: border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.agendalo-sidebar-search-field:focus-within {
    color: #dff9f7;
    background: rgba(4, 20, 35, .58);
    border-color: rgba(43, 196, 192, .72);
    box-shadow: 0 0 0 3px rgba(43, 196, 192, .12);
}

.agendalo-sidebar-search-field > i {
    flex: 0 0 auto;
    width: 18px;
    text-align: center;
}

.agendalo-sidebar-search-field input {
    min-width: 0;
    flex: 1 1 auto;
    padding: 0;
    color: #f4fbff;
    background: transparent;
    border: 0;
    outline: 0;
    font-size: .88rem;
}

.agendalo-sidebar-search-field input::placeholder {
    color: #89a2b4;
    opacity: 1;
}

.agendalo-sidebar-search-field button {
    display: inline-flex;
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: #a8bfce;
    background: transparent;
    border: 0;
    border-radius: 50%;
}

.agendalo-sidebar-search-field button:hover,
.agendalo-sidebar-search-field button:focus {
    color: #fff;
    background: rgba(255, 255, 255, .12);
    outline: 0;
}

.agendalo-sidebar-search-empty {
    margin: 8px 4px 2px;
    color: #a8bfce;
    font-size: .78rem;
    text-align: center;
}

.agendalo-sidebar-footer {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 5;
    width: 250px;
    padding: 9px 10px 10px;
    background: rgba(9, 34, 56, .98);
    border-top: 1px solid rgba(255, 255, 255, .1);
    transition: width .3s ease;
}

.agendalo-sidebar-theme {
    width: 100%;
    margin-bottom: 8px;
}

.agendalo-sidebar-theme-title {
    display: block;
    margin: 0 0 6px 2px;
    color: #8eb0bf;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.agendalo-sidebar-theme-options {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    padding: 4px;
    background: rgba(3, 17, 29, .42);
    border-radius: 10px;
}

.agendalo-sidebar-theme-options button {
    display: inline-flex;
    min-width: 0;
    height: 34px;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 0 8px;
    color: #9eb4c2;
    background: transparent;
    border: 0;
    border-radius: 7px;
    font-size: .8rem;
    transition: color .18s ease, background .18s ease, box-shadow .18s ease;
}

.agendalo-sidebar-theme-options button:hover,
.agendalo-sidebar-theme-options button:focus {
    color: #fff;
    background: rgba(255, 255, 255, .08);
    outline: 0;
}

.agendalo-sidebar-theme-options button[aria-pressed="true"] {
    color: #0f2d4a;
    background: #f7fbfb;
    box-shadow: 0 2px 8px rgba(0, 0, 0, .2);
}

.agendalo-sidebar-theme-options button:disabled {
    cursor: wait;
    opacity: .7;
}

.agendalo-sidebar-user {
    position: relative;
}

.agendalo-sidebar-user-toggle {
    display: flex;
    width: 100%;
    min-width: 0;
    height: 58px;
    align-items: center;
    gap: 10px;
    padding: 7px 9px;
    color: #edf7fa;
    text-align: left;
    background: rgba(255, 255, 255, .065);
    border: 1px solid rgba(255, 255, 255, .07);
    border-radius: 10px;
    transition: background .18s ease, border-color .18s ease;
}

.agendalo-sidebar-user-toggle:hover,
.agendalo-sidebar-user-toggle:focus,
.agendalo-sidebar-user.is-open .agendalo-sidebar-user-toggle {
    color: #fff;
    background: rgba(255, 255, 255, .11);
    border-color: rgba(43, 196, 192, .45);
    outline: 0;
}

.agendalo-sidebar-user-avatar-wrap {
    position: relative;
    display: inline-flex;
    flex: 0 0 38px;
}

.agendalo-sidebar-user-avatar-wrap::after {
    position: absolute;
    top: 1px;
    right: -1px;
    width: 9px;
    height: 9px;
    content: '';
    background: #43d39e;
    border: 2px solid #173a57;
    border-radius: 50%;
}

.agendalo-sidebar-user-avatar-wrap img,
.agendalo-sidebar-user-avatar {
    display: inline-flex;
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    align-items: center;
    justify-content: center;
    object-fit: cover;
    color: #0f2d4a;
    background: #dff7f5;
    border: 2px solid rgba(255, 255, 255, .8);
    border-radius: 50%;
    font-size: .78rem;
    font-weight: 800;
}

.agendalo-sidebar-user-copy {
    min-width: 0;
    flex: 1 1 auto;
}

.agendalo-sidebar-user-copy strong,
.agendalo-sidebar-user-copy small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.agendalo-sidebar-user-copy strong {
    font-size: .84rem;
}

.agendalo-sidebar-user-copy small {
    margin-top: 1px;
    color: #9fb7c5;
    font-size: .7rem;
}

.agendalo-sidebar-user-more {
    flex: 0 0 auto;
    color: #91a9b7;
    font-size: .85rem;
}

.agendalo-sidebar-user-menu {
    position: absolute;
    right: 0;
    bottom: calc(100% + 8px);
    left: 0;
    z-index: 7;
    margin: 0;
    overflow: hidden;
    background: #fff;
    border: 1px solid #d9e4e8;
    border-radius: 10px;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, .22);
}

.agendalo-sidebar-user-menu a,
.agendalo-sidebar-user-menu button {
    display: flex;
    width: 100%;
    align-items: center;
    gap: 9px;
    padding: 9px 11px;
    color: #28465f;
    text-align: left;
    background: transparent;
    border: 0;
    font-size: .78rem;
}

.agendalo-sidebar-user-menu a:hover,
.agendalo-sidebar-user-menu a:focus,
.agendalo-sidebar-user-menu button:hover,
.agendalo-sidebar-user-menu button:focus {
    color: #087f7d;
    text-decoration: none;
    background: #eff9f8;
    outline: 0;
}

.agendalo-sidebar-user-menu form {
    margin: 0;
    border-top: 1px solid #e3eaed;
}

.agendalo-sidebar-user-menu form button {
    color: #b73743;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-search {
    padding-right: 12px;
    padding-left: 12px;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-search-field {
    width: 42px;
    padding: 0;
    justify-content: center;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-search-field input,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-search-field button,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-search-empty,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-theme-title,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-theme-options span,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-user-copy,
.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-user-more {
    display: none !important;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-footer {
    width: 4.6rem;
    padding: 8px;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-theme-options {
    gap: 2px;
    padding: 3px;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-theme-options button {
    height: 32px;
    padding: 0;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-user-toggle {
    height: 48px;
    justify-content: center;
    padding: 4px;
}

.sidebar-mini.sidebar-collapse .main-sidebar:not(:hover) .agendalo-sidebar-user-menu {
    bottom: 0;
    left: 54px;
    width: 218px;
}

@media (max-width: 991.98px) {
    .main-sidebar .sidebar { padding-bottom: 176px; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-footer { width: 250px; padding: 9px 10px 10px; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-theme-title,
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-theme-options span,
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-user-copy,
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-user-more { display: block !important; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-search { padding: 12px 8px 7px; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-search-field { width: auto; padding: 0 11px; justify-content: flex-start; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-search-field input { display: block !important; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-user-toggle { height: 58px; justify-content: flex-start; padding: 7px 9px; }
    .sidebar-mini.sidebar-collapse .main-sidebar .agendalo-sidebar-user-menu { right: 0; bottom: calc(100% + 8px); left: 0; width: auto; }

    /* Keep the mobile drawer independent from the fixed navbar offsets. */
    body:not(.layout-top-nav) .wrapper .main-sidebar {
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        display: flex;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 0 !important;
        margin-top: 0 !important;
        flex-direction: column;
    }

    body:not(.layout-top-nav) .wrapper .main-sidebar::before {
        top: 0 !important;
        bottom: 0 !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 0 !important;
        margin-top: 0 !important;
    }

    body:not(.layout-top-nav) .wrapper .main-sidebar .brand-link {
        position: relative !important;
        top: auto !important;
        width: 250px;
        flex: 0 0 auto;
    }

    body:not(.layout-top-nav) .wrapper .main-sidebar .sidebar {
        height: auto !important;
        min-height: 0;
        margin-top: 0 !important;
        flex: 1 1 auto;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    body:not(.layout-top-nav) .wrapper .main-sidebar .agendalo-sidebar-footer {
        padding-bottom: max(10px, env(safe-area-inset-bottom));
    }
}

@media (max-width: 767.98px) {
    .agendalo-navbar-context span,
    .agendalo-navbar-context i {
        display: none;
    }

    .agendalo-navbar-context {
        max-width: calc(100vw - 190px);
        padding-right: 2px;
        padding-left: 2px;
    }

    .agendalo-navbar-context strong {
        max-width: 150px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .agendalo-dashboard-welcome {
        transition: none;
    }
}

/* Dashboard metrics: neutral surfaces with color used only as a visual cue. */
.agendalo-dashboard {
    padding-top: 18px;
}

.agendalo-dashboard .agendalo-metrics-row {
    margin-right: -11px;
    margin-bottom: 8px;
    margin-left: -11px;
}

.agendalo-dashboard .agendalo-metrics-row > [class*="col-"] {
    padding-right: 11px;
    padding-left: 11px;
}

.agendalo-dashboard .agendalo-metric-card {
    --metric-accent: #0a9996;
    --metric-soft: #e7f7f5;
    display: flex;
    min-height: 138px;
    flex-direction: column;
    overflow: hidden;
    color: #183750 !important;
    background: #fff !important;
    border: 1px solid #dfe8eb;
    border-left: 3px solid var(--metric-accent);
    border-radius: 11px;
    box-shadow: 0 4px 14px rgba(15, 45, 74, .055);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.agendalo-dashboard .agendalo-metric-card:hover {
    border-color: #cadadd;
    border-left-color: var(--metric-accent);
    box-shadow: 0 7px 18px rgba(15, 45, 74, .09);
    transform: translateY(-1px);
}

.agendalo-dashboard .agendalo-metric-services {
    --metric-accent: #339762;
    --metric-soft: #eaf7ef;
}

.agendalo-dashboard .agendalo-metric-schedule {
    --metric-accent: #b78112;
    --metric-soft: #fff6df;
}

.agendalo-dashboard .agendalo-metric-revenue {
    --metric-accent: #c7525e;
    --metric-soft: #fcecef;
}

.agendalo-dashboard .agendalo-metric-card .inner {
    display: flex;
    min-height: 96px;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 17px 16px 12px;
}

.agendalo-dashboard .agendalo-metric-card .inner p {
    margin: 0 0 7px;
    color: #6a7c89 !important;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .035em;
    line-height: 1.25;
    text-transform: uppercase;
}

.agendalo-dashboard .agendalo-metric-card .inner h3 {
    margin: 0;
    color: #17344c !important;
    font-size: 1.65rem;
    font-weight: 750;
    line-height: 1.1;
    letter-spacing: -.035em;
}

.agendalo-dashboard .agendalo-metric-card .icon {
    position: static;
    display: inline-flex;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    color: var(--metric-accent);
    background: var(--metric-soft);
    border-radius: 10px;
    opacity: 1;
}

.agendalo-dashboard .agendalo-metric-card .icon > i {
    position: static;
    top: auto;
    right: auto;
    font-size: 1rem;
}

.agendalo-dashboard .agendalo-metric-card .small-box-footer {
    display: flex;
    margin-top: auto;
    align-items: center;
    justify-content: space-between;
    padding: 9px 16px;
    color: #526b7c !important;
    text-align: left;
    background: #fbfcfc !important;
    border-top: 1px solid #edf1f2;
    font-size: .74rem;
    font-weight: 650;
}

.agendalo-dashboard .agendalo-metric-card .small-box-footer i {
    color: var(--metric-accent);
    font-size: .68rem;
}

.agendalo-dashboard .agendalo-metric-card .small-box-footer:hover,
.agendalo-dashboard .agendalo-metric-card .small-box-footer:focus {
    color: var(--metric-accent) !important;
    background: var(--metric-soft) !important;
    text-decoration: none;
}

.dark-mode .agendalo-dashboard .agendalo-metric-card {
    color: #e8eef1 !important;
    background: #293036 !important;
    border-color: #465159;
    border-left-color: var(--metric-accent);
    box-shadow: 0 5px 16px rgba(0, 0, 0, .16);
}

.dark-mode .agendalo-dashboard .agendalo-metric-card .inner p {
    color: #aebdc6 !important;
}

.dark-mode .agendalo-dashboard .agendalo-metric-card .inner h3 {
    color: #f5f8fa !important;
}

.dark-mode .agendalo-dashboard .agendalo-metric-card .icon {
    color: var(--metric-accent);
    background: rgba(255, 255, 255, .065);
    opacity: 1;
}

.dark-mode .agendalo-dashboard .agendalo-metric-card .small-box-footer {
    color: #c6d1d7 !important;
    background: #252b30 !important;
    border-top-color: #3e484f;
}

@media (max-width: 575.98px) {
    .agendalo-dashboard {
        padding-top: 12px;
    }

    .agendalo-dashboard .agendalo-metrics-row {
        margin-right: -5px;
        margin-left: -5px;
    }

    .agendalo-dashboard .agendalo-metrics-row > [class*="col-"] {
        padding-right: 5px;
        padding-left: 5px;
    }

    .agendalo-dashboard .agendalo-metric-card {
        margin-bottom: 10px;
        min-height: 126px;
    }

    .agendalo-dashboard .agendalo-metric-card .inner {
        min-height: 88px;
        padding: 14px 12px 10px;
    }

    .agendalo-dashboard .agendalo-metric-card .inner p {
        font-size: .66rem;
    }

    .agendalo-dashboard .agendalo-metric-card .inner h3 {
        font-size: clamp(1.2rem, 5.7vw, 1.55rem);
    }

    .agendalo-dashboard .agendalo-metric-card .icon {
        display: inline-flex;
        width: 34px;
        height: 34px;
        flex-basis: 34px;
    }

    .agendalo-dashboard .agendalo-metric-card .small-box-footer {
        padding: 8px 12px;
        font-size: .68rem;
    }
}
.dark-mode .calendar-legend-item,
.dark-mode .calendar-reset,
.dark-mode .calendar-filter .input-group-text,
.dark-mode .fc .fc-button-primary {
    color: #d9e0e5 !important;
    background: #343a40 !important;
    border-color: #59636d !important;
}

/* Confirmacoes em vidro: compactas no mobile e consistentes no desktop. */
.swal2-container.agendalo-swal-backdrop {
    padding: 16px;
    background: rgba(7, 20, 32, .38);
    -webkit-backdrop-filter: blur(10px) saturate(115%);
    backdrop-filter: blur(10px) saturate(115%);
}

.swal2-popup.agendalo-swal-popup {
    width: min(440px, calc(100vw - 32px));
    padding: 24px;
    overflow: hidden;
    color: #203747;
    background: rgba(255, 255, 255, .86);
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(4, 20, 32, .3);
    -webkit-backdrop-filter: blur(22px) saturate(145%);
    backdrop-filter: blur(22px) saturate(145%);
}

.agendalo-swal-popup .swal2-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 14px;
    font-size: .72rem;
}

.agendalo-swal-popup .swal2-title {
    padding: 0;
    color: #16334f;
    font-size: 1.55rem;
    line-height: 1.18;
}

.agendalo-swal-popup .swal2-html-container {
    margin: 12px 0 0;
    color: #526779;
    font-size: .98rem;
    line-height: 1.45;
}

.agendalo-swal-popup .agendalo-swal-actions {
    display: grid !important;
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 22px 0 0;
}

.agendalo-swal-popup .agendalo-swal-actions .swal2-styled {
    min-width: 0;
    min-height: 42px;
    margin: 0;
    padding: 9px 12px;
    border-radius: 10px;
    font-size: .9rem;
    font-weight: 750;
    line-height: 1.25;
}

.dark-mode .swal2-popup.agendalo-swal-popup {
    color: #edf4f6;
    background: rgba(31, 39, 46, .86);
    border-color: rgba(255, 255, 255, .14);
    box-shadow: 0 24px 70px rgba(0, 0, 0, .48);
}

.dark-mode .agendalo-swal-popup .swal2-title { color: #f4f8fa; }
.dark-mode .agendalo-swal-popup .swal2-html-container { color: #c3cdd3; }

@media (max-width: 575.98px) {
    .swal2-container.agendalo-swal-backdrop { padding: 14px; }
    .swal2-popup.agendalo-swal-popup {
        width: min(370px, calc(100vw - 28px));
        padding: 18px 16px 16px;
        border-radius: 15px;
    }
    .agendalo-swal-popup .swal2-icon {
        width: 52px;
        height: 52px;
        margin-bottom: 10px;
        font-size: .58rem;
    }
    .agendalo-swal-popup .swal2-title {
        font-size: 1.3rem;
        line-height: 1.16;
    }
    .agendalo-swal-popup .swal2-html-container {
        margin-top: 9px;
        font-size: .88rem;
        line-height: 1.38;
    }
    .agendalo-swal-popup .agendalo-swal-actions {
        gap: 8px;
        margin-top: 16px;
    }
    .agendalo-swal-popup .agendalo-swal-actions .swal2-styled {
        min-height: 40px;
        padding: 8px;
        font-size: .8rem;
    }
}
@media(max-width:767.98px){.agendalo-cookie-consent{left:10px;right:10px;bottom:10px;align-items:stretch;flex-direction:column}.agendalo-cookie-actions{display:grid;grid-template-columns:1fr}.agendalo-cookie-actions .btn{width:100%}.agendalo-cookie-category{align-items:flex-start;flex-direction:column}.agendalo-cookie-modal-content footer{align-items:stretch;flex-direction:column-reverse}.agendalo-cookie-modal-content footer .btn{width:100%}}

/* Utilitarios sem atributos style: mantem a CSP estrita nas paginas web. */
.agendalo-actions-w-120{width:120px}.agendalo-actions-w-180{width:180px}.agendalo-actions-w-220{width:220px}.agendalo-actions-w-260{width:260px}
.agendalo-min-w-150{min-width:150px}.agendalo-min-w-180{min-width:180px}.agendalo-max-w-280{max-width:280px}.agendalo-max-w-420{max-width:420px}
.agendalo-size-42{width:42px;height:42px}.agendalo-gap-12{gap:12px}.agendalo-pre-line{white-space:pre-line}.agendalo-pre-wrap{white-space:pre-wrap}
.agendalo-product-thumb{width:72px;height:72px;object-fit:cover;border-radius:10px}.agendalo-chat-history{height:520px}.agendalo-chat-outgoing{margin-left:0;margin-right:50px}.agendalo-chat-incoming{margin-left:50px;margin-right:0}
.agendalo-modal-eyebrow{opacity:.75;letter-spacing:.08em}.agendalo-cadastro-avatar.avatar-size-36{--avatar-size:36px}.agendalo-cadastro-avatar.avatar-size-44{--avatar-size:44px}.agendalo-cadastro-avatar.avatar-size-76{--avatar-size:76px}.agendalo-cadastro-avatar.avatar-size-88{--avatar-size:88px}
.agendalo-brand-logo{opacity:.8}

/* Identidade visual Agendalo 2026: Elô profissional, Poppins e paleta oficial. */
.agendei-auth-page {
    color: #173b63;
    background-color: #f5fbfd;
    background-image:
        radial-gradient(circle at 12% 18%, rgba(0, 199, 216, .16), transparent 28%),
        radial-gradient(circle at 88% 82%, rgba(255, 127, 134, .12), transparent 26%);
    font-family: "Agendalo Poppins", Poppins, "Segoe UI", sans-serif;
}
.agendei-auth-page .agendei-login-shell {
    border-color: #dce8f1;
    background: rgba(255, 255, 255, .98);
    box-shadow: 0 28px 72px rgba(11, 42, 82, .16);
}
.agendei-auth-page .agendei-login-brand,
.agendei-auth-page .agendei-register-brand {
    color: #0b2a52;
    background-color: #f4fcfe;
    background-image:
        linear-gradient(to top, rgba(244, 252, 254, .99) 0 27%, rgba(244, 252, 254, .18) 55%, rgba(244, 252, 254, 0) 72%),
        radial-gradient(circle at 50% 38%, rgba(0, 199, 216, .2), transparent 52%),
        url("../images/brand/elo-profissional.png");
    background-position: center, center, center bottom;
    background-repeat: no-repeat;
    background-size: auto, auto, auto 91%;
}
.agendei-auth-page .agendei-login-brand h1,
.agendei-auth-page .agendei-login-heading h2 {
    color: #0b2a52;
    font-family: "Agendalo Poppins", Poppins, "Segoe UI", sans-serif;
    letter-spacing: -.025em;
}
.agendei-auth-page .agendei-login-brand p { color: #48647e; }
.agendei-auth-page .agendei-login-heading span,
.agendei-auth-page a:not(.btn) { color: #009dad; }
.agendei-auth-page .agendei-login-submit,
.agendei-auth-page .btn-primary {
    color: #fff;
    background: linear-gradient(90deg, #00c7d8, #00aebe);
    border-color: #00aebe;
    box-shadow: 0 10px 22px rgba(0, 199, 216, .22);
}
.agendei-auth-page .agendei-login-submit:hover,
.agendei-auth-page .btn-primary:hover { background: #009dad; border-color: #009dad; }
.agendei-auth-page .agendei-login-highlights i { color: #00aebe; }
.agendei-auth-page .agendei-auth-card { border: 1px solid #e4edf3; }
.elo-assistant-header { background: #0b2a52; }
.elo-assistant-launcher { border-color: #00c7d8; }
.elo-assistant-launcher img,
.elo-assistant-header img,
.elo-context-tip img,
.help-elo-banner img,
.elo-dashboard-intro img {
    background: #dff9fc;
    object-fit: cover;
    object-position: center 16%;
}

@media (max-width: 860px) {
    .agendei-auth-page .agendei-login-brand,
    .agendei-auth-page .agendei-register-brand {
        background-image:
            linear-gradient(to top, rgba(244, 252, 254, .99) 0 34%, rgba(244, 252, 254, .08) 68%),
            radial-gradient(circle at 50% 38%, rgba(0, 199, 216, .2), transparent 52%),
            url("../images/brand/elo-profissional.png");
        background-position: center, center, center 16%;
        background-size: auto, auto, auto 145%;
    }
}
