/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-3go6kgwdwx] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-3go6kgwdwx] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-u9ll3qfe9q],
.components-reconnect-repeated-attempt-visible[b-u9ll3qfe9q],
.components-reconnect-failed-visible[b-u9ll3qfe9q],
.components-pause-visible[b-u9ll3qfe9q],
.components-resume-failed-visible[b-u9ll3qfe9q],
.components-rejoining-animation[b-u9ll3qfe9q] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-retrying[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-failed[b-u9ll3qfe9q],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-u9ll3qfe9q] {
    display: block;
}


#components-reconnect-modal[b-u9ll3qfe9q] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-u9ll3qfe9q 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-u9ll3qfe9q 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-u9ll3qfe9q 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-u9ll3qfe9q]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-u9ll3qfe9q 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-u9ll3qfe9q {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-u9ll3qfe9q {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-u9ll3qfe9q {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-u9ll3qfe9q] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-u9ll3qfe9q] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-u9ll3qfe9q] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-u9ll3qfe9q] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-u9ll3qfe9q] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-u9ll3qfe9q] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-u9ll3qfe9q] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-u9ll3qfe9q 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-u9ll3qfe9q] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-u9ll3qfe9q {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Agenda.razor.rz.scp.css */
/* ── Page wrapper ── */
.agenda-wrap[b-rgmv9sxs9z] {
    width: 92%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 0 60px;
}

/* ── Header ── */
.agenda-header[b-rgmv9sxs9z] { margin-bottom: 28px; }

.agenda-title-row[b-rgmv9sxs9z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 4px;
}

.agenda-header h1[b-rgmv9sxs9z] {
    margin: 0;
    font-size: 26px;
    font-weight: 800;
    color: var(--c-text);
}

.agenda-sub[b-rgmv9sxs9z] {
    margin: 0;
    font-size: 14px;
    color: var(--c-muted);
    text-transform: capitalize;
}

/* ── Month picker ── */
.month-picker[b-rgmv9sxs9z] { display: flex; align-items: center; gap: 6px; }

.month-input[b-rgmv9sxs9z] {
    padding: 7px 12px;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    color: var(--c-text);
    background: #fafafa;
    cursor: pointer;
    transition: border-color .2s;
}

.month-input:focus[b-rgmv9sxs9z] {
    outline: none;
    border-color: var(--c-primary);
    box-shadow: 0 0 0 3px rgba(var(--c-primary-rgb),.08);
}

.month-nav[b-rgmv9sxs9z] {
    width: 32px;
    height: 32px;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    font-size: 20px;
    line-height: 1;
    color: var(--c-body);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: border-color .2s, color .2s;
}

.month-nav:hover[b-rgmv9sxs9z] { border-color: var(--c-primary); color: var(--c-primary); }

/* ── Calendar card ── */
.cal-card[b-rgmv9sxs9z], .detail-card[b-rgmv9sxs9z] {
    background: #fff;
    border-radius: var(--radius-lg);
    border: 1px solid var(--c-border);
    box-shadow: var(--shadow-sm);
    padding: 24px 20px;
    margin-bottom: 20px;
}

/* ── 7-column grid ── */
.cal-grid[b-rgmv9sxs9z] {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 4px;
}

/* ── Header row ── */
.cal-header-cell[b-rgmv9sxs9z] {
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    color: var(--c-muted);
    padding: 8px 4px 10px;
    border-bottom: 2px solid var(--c-border);
}

/* ── Day cells ── */
.cal-cell[b-rgmv9sxs9z] {
    min-height: 88px;
    border: 1px solid #ebebeb;
    border-radius: 4px;
    padding: 6px 5px 5px;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    display: flex;
    flex-direction: column;
    gap: 3px;
    background: #fafafa;
}

.cal-cell:hover[b-rgmv9sxs9z] { border-color: var(--c-primary); background: var(--c-primary-lt); }

.cal-cell--empty[b-rgmv9sxs9z] {
    border-color: transparent;
    background: transparent;
    cursor: default;
    pointer-events: none;
}

.cal-cell--today[b-rgmv9sxs9z]  { border-color: var(--c-primary); background: var(--c-primary-lt); }
.cal-cell--selected[b-rgmv9sxs9z] {
    border-color: var(--c-primary-dk);
    background: var(--c-primary-lt);
    box-shadow: 0 0 0 2px rgba(var(--c-primary-rgb),.20);
}

/* ── Day number ── */
.cal-day-num[b-rgmv9sxs9z] {
    font-size: 13px;
    font-weight: 700;
    color: var(--c-body);
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
}

.cal-day-num--today[b-rgmv9sxs9z] {
    background: var(--c-primary);
    color: #fff;
}

/* ── Chips ── */
.cal-chips[b-rgmv9sxs9z] { display: flex; flex-direction: column; gap: 2px; }

.cal-chip[b-rgmv9sxs9z] {
    display: block;
    background: var(--c-primary-100);
    color: var(--c-primary-dk);
    border-radius: 3px;
    font-size: 10px;
    font-weight: 600;
    padding: 2px 5px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    line-height: 1.4;
}

.cal-chip--more[b-rgmv9sxs9z] { background: #e9e9e9; color: #666; }

/* ── Detail panel ── */

.no-items[b-rgmv9sxs9z] { color: var(--c-muted); font-size: 14px; font-style: italic; margin: 0; }

.detail-list[b-rgmv9sxs9z] { display: flex; flex-direction: column; gap: 10px; }

.detail-row[b-rgmv9sxs9z] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 12px 14px;
    border: 1px solid #ebebeb;
    border-radius: 4px;
    background: #fafafa;
    transition: border-color .15s, background .15s;
}

.detail-row:hover[b-rgmv9sxs9z] { border-color: var(--c-primary); background: var(--c-primary-lt); }

.detail-chip[b-rgmv9sxs9z] {
    display: inline-block;
    background: var(--c-primary-100);
    color: var(--c-primary-dk);
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    padding: 5px 12px;
    white-space: nowrap;
}

.detail-info[b-rgmv9sxs9z] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 16px;
    font-size: 14px;
    color: var(--c-body);
}

.detail-client[b-rgmv9sxs9z] {
    font-weight: 700;
    color: var(--c-primary);
    text-decoration: none;
}
.detail-client:hover[b-rgmv9sxs9z] { text-decoration: underline; color: var(--c-primary-dk); }

.detail-preco[b-rgmv9sxs9z] { font-weight: 700; color: var(--c-text); }
.detail-obs[b-rgmv9sxs9z]   { color: var(--c-muted); font-style: italic; font-size: 13px; }
.detail-hora[b-rgmv9sxs9z]  {
    display: inline-block;
    background: #fef9c3;
    color: #854d0e;
    border-radius: 3px;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 7px;
    margin-top: 4px;
}

/* ── Detail card header row ── */
.detail-card-header[b-rgmv9sxs9z] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 2px solid var(--c-border);
}
.detail-card-header h2[b-rgmv9sxs9z] {
    margin: 0;
    padding: 0;
    border: none;
    font-size: 15px;
    font-weight: 700;
    color: var(--c-text);
    text-transform: capitalize;
}
.btn-nova[b-rgmv9sxs9z] {
    padding: 7px 16px;
    background: var(--c-primary);
    color: #fff;
    border: none;
    border-radius: 4px;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: background .2s;
}
.btn-nova:hover[b-rgmv9sxs9z] { background: var(--c-primary-dk); }

/* ── Add-appointment form ── */
.add-form[b-rgmv9sxs9z] {
    margin-top: 20px;
    padding: 20px;
    border: 1px solid var(--c-border);
    border-radius: 6px;
    background: #f9fafb;
}
.add-form h3[b-rgmv9sxs9z] {
    margin: 0 0 16px;
    font-size: 14px;
    font-weight: 700;
    color: var(--c-body);
    text-transform: capitalize;
}
.add-form-grid[b-rgmv9sxs9z] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 16px;
}
.form-field[b-rgmv9sxs9z] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 180px;
    flex: 1;
}
.form-field--full[b-rgmv9sxs9z] { flex-basis: 100%; }
.form-field label[b-rgmv9sxs9z] {
    font-size: 12px;
    font-weight: 700;
    color: #666;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.form-field input[b-rgmv9sxs9z],
.form-field select[b-rgmv9sxs9z],
.form-field textarea[b-rgmv9sxs9z] {
    padding: 8px 10px;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    background: #fff;
    color: var(--c-text);
    transition: border-color .2s, box-shadow .2s;
    box-sizing: border-box;
    width: 100%;
}
.form-field input:focus[b-rgmv9sxs9z],
.form-field select:focus[b-rgmv9sxs9z],
.form-field textarea:focus[b-rgmv9sxs9z] {
    outline: none;
    border-color: var(--c-primary);
    box-shadow: 0 0 0 3px rgba(var(--c-primary-rgb),.08);
}
.form-field textarea[b-rgmv9sxs9z] { resize: vertical; min-height: 60px; }
.form-note[b-rgmv9sxs9z] { margin: 4px 0 0; font-size: 13px; color: var(--c-muted); font-style: italic; }

/* ── Search dropdown ── */
.search-wrap[b-rgmv9sxs9z] { position: relative; }
.search-dropdown[b-rgmv9sxs9z] {
    position: absolute;
    top: calc(100% + 2px);
    left: 0;
    right: 0;
    z-index: 100;
    background: #fff;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0,0,0,.10);
    list-style: none;
    margin: 0;
    padding: 4px 0;
    max-height: 200px;
    overflow-y: auto;
}
.search-dropdown li[b-rgmv9sxs9z] {
    padding: 8px 14px;
    font-size: 14px;
    color: var(--c-text);
    cursor: pointer;
    transition: background .15s;
}
.search-dropdown li:hover[b-rgmv9sxs9z],
.search-dropdown li:focus[b-rgmv9sxs9z] { background: var(--c-primary-lt); color: var(--c-primary-dk); outline: none; }
.search-dropdown li[b-rgmv9sxs9z] { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px; }
.dropdown-name[b-rgmv9sxs9z] { font-weight: 500; }
.dropdown-sub[b-rgmv9sxs9z]  { font-size: 12px; color: #6b7280; }

/* ── Detail row actions ── */
.detail-actions[b-rgmv9sxs9z] {
    margin-left: auto;
    display: flex;
    gap: 6px;
    flex-shrink: 0;
    align-items: flex-start;
}

.btn-edit-small[b-rgmv9sxs9z] {
    padding: 5px 10px;
    background: #fff;
    color: #374151;
    border: 1.5px solid #d1d5db;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    font-family: var(--font);
    cursor: pointer;
    white-space: nowrap;
    transition: border-color .2s, color .2s;
}
.btn-edit-small:hover[b-rgmv9sxs9z] { border-color: var(--c-primary); color: var(--c-primary-dk); }

.btn-delete-small[b-rgmv9sxs9z] {
    padding: 5px 10px;
    background: #fff;
    color: #dc2626;
    border: 1.5px solid #fca5a5;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 600;
    font-family: var(--font);
    cursor: pointer;
    white-space: nowrap;
    transition: border-color .2s, background .2s, color .2s;
}
.btn-delete-small:hover[b-rgmv9sxs9z] { border-color: #dc2626; background: #fef2f2; }

/* ── Inline edit form ── */
.edit-form[b-rgmv9sxs9z] {
    padding: 16px 18px;
    border: 1.5px solid var(--c-primary);
    border-radius: 6px;
    background: var(--c-primary-lt);
}
.edit-form-title[b-rgmv9sxs9z] {
    font-size: 13px;
    font-weight: 700;
    color: var(--c-primary-dk);
    margin-bottom: 14px;
}

/* ── Form actions ── */
.form-actions[b-rgmv9sxs9z] { display: flex; gap: 10px; margin-top: 16px; }
.btn-save[b-rgmv9sxs9z] {
    padding: 9px 22px;
    background: var(--c-primary);
    color: #fff;
    border: none;
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: background .2s;
}
.btn-save:hover:not(:disabled)[b-rgmv9sxs9z] { background: var(--c-primary-dk); }
.btn-save:disabled[b-rgmv9sxs9z] { background: #9ca3af; cursor: not-allowed; }
.btn-cancel[b-rgmv9sxs9z] {
    padding: 9px 18px;
    background: #fff;
    color: var(--c-body);
    border: 1px solid var(--c-border);
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    cursor: pointer;
    transition: border-color .2s, color .2s;
}
.btn-cancel:hover[b-rgmv9sxs9z] { border-color: var(--c-body); color: var(--c-text); }
.form-error[b-rgmv9sxs9z] { margin: 8px 0 0; font-size: 13px; color: #dc2626; }

/* ── Loading ── */
.loading-container[b-rgmv9sxs9z] { text-align: center; padding: 60px 0; color: var(--c-muted); }

.spinner[b-rgmv9sxs9z] {
    width: 36px;
    height: 36px;
    border: 4px solid var(--c-border);
    border-top-color: var(--c-primary);
    border-radius: 50%;
    animation: spin-b-rgmv9sxs9z .75s linear infinite;
    margin: 0 auto 14px;
}

@keyframes spin-b-rgmv9sxs9z { to { transform: rotate(360deg); } }

/* ── Responsive ── */
@media (max-width: 768px) {
    .agenda-wrap[b-rgmv9sxs9z] { width: 96%; padding: 24px 0 40px; }
    .cal-card[b-rgmv9sxs9z], .detail-card[b-rgmv9sxs9z] { padding: 14px 8px; }
    .cal-cell[b-rgmv9sxs9z] { min-height: 68px; }
    .cal-chip[b-rgmv9sxs9z] { font-size: 9px; padding: 1px 3px; }
    .add-form-grid .form-field[b-rgmv9sxs9z] { min-width: 0; flex-basis: calc(50% - 8px); }
}

@media (max-width: 540px) {
    .agenda-title-row[b-rgmv9sxs9z] { flex-direction: column; align-items: flex-start; gap: 8px; }
    .agenda-header h1[b-rgmv9sxs9z] { font-size: 22px; }
    .cal-header-cell[b-rgmv9sxs9z] { font-size: 9px; letter-spacing: 0; padding: 6px 2px 8px; }
    .add-form-grid .form-field[b-rgmv9sxs9z] { flex-basis: 100%; }
    .form-actions[b-rgmv9sxs9z] { flex-direction: column; }
    .form-actions .btn-save[b-rgmv9sxs9z],
    .form-actions .btn-cancel[b-rgmv9sxs9z] { width: 100%; text-align: center; }
}

@media (max-width: 480px) {
    .agenda-wrap[b-rgmv9sxs9z] { width: 100%; padding: 16px 0 40px; }
    .cal-card[b-rgmv9sxs9z], .detail-card[b-rgmv9sxs9z] { padding: 12px 6px; border-radius: 0; }
    .agenda-header[b-rgmv9sxs9z] { padding: 0 6px; }
    .cal-grid[b-rgmv9sxs9z] { gap: 2px; }
    .cal-cell[b-rgmv9sxs9z] { min-height: 52px; padding: 4px 3px; }
    .cal-chip[b-rgmv9sxs9z] { display: none; }
    .cal-chip:first-child[b-rgmv9sxs9z] { display: block; }
    .cal-day-num[b-rgmv9sxs9z] { font-size: 11px; width: 20px; height: 20px; }
    .detail-row[b-rgmv9sxs9z] { flex-direction: column; gap: 8px; }
}
/* /Components/Pages/Consulta.razor.rz.scp.css */
/* Clientes list: three columns on desktop, cards on a phone. Shared look comes from the bo-* kit in app.css. */

.cl-row[b-m2co5dgtq7] {
    grid-template-columns: minmax(200px, 1.1fr) minmax(0, 1.6fr) 170px 84px;
    position: relative;
}

/* The client's name is the link, stretched over the whole row; the WhatsApp button sits above it. */
.cl-link[b-m2co5dgtq7] { color: var(--c-text); text-decoration: none; }
.cl-link[b-m2co5dgtq7]::after { content: ""; position: absolute; inset: 0; }
.cl-row:hover .cl-link[b-m2co5dgtq7] { color: var(--c-primary-dk); }
.cl-link:focus-visible[b-m2co5dgtq7] { outline: none; }
.cl-link:focus-visible[b-m2co5dgtq7]::after { outline: 2px solid var(--c-primary); outline-offset: -2px; border-radius: 4px; }
.cl-row .bo-row-actions a[b-m2co5dgtq7] { position: relative; z-index: 1; }

.cl-pets[b-m2co5dgtq7] { min-width: 0; line-height: 1.2; }

.cl-visit[b-m2co5dgtq7] { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; }
.cl-visit .bo-badge[b-m2co5dgtq7] { margin-top: 3px; }

.cl-chev[b-m2co5dgtq7] { color: #c3c8d0; display: inline-flex; }
.cl-row:hover .cl-chev[b-m2co5dgtq7] { color: var(--c-primary); }

@media (max-width: 820px) {
    .cl-list > .bo-row--head[b-m2co5dgtq7] { display: none; }
    .cl-row[b-m2co5dgtq7] {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "who   actions"
            "pets  pets"
            "visit visit";
        gap: 8px 12px;
    }
    .cl-row .bo-who[b-m2co5dgtq7] { grid-area: who; }
    .cl-pets[b-m2co5dgtq7] { grid-area: pets; padding-left: 48px; }
    .cl-visit[b-m2co5dgtq7] { grid-area: visit; padding-left: 48px; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 4px 8px; }
    .cl-visit .bo-badge[b-m2co5dgtq7] { margin-top: 0; }
    .cl-row .bo-row-actions[b-m2co5dgtq7] { grid-area: actions; }
    .cl-chev[b-m2co5dgtq7] { display: none; }
}

@media (max-width: 560px) {
    .cl-hide-sm[b-m2co5dgtq7] { display: none; }
}
/* /Components/Pages/PetsDue.razor.rz.scp.css */
.due-wrap[b-z9xu49mxfi] {
    width: 92%;
    max-width: 1100px;
    margin: 0 auto;
    padding: 40px 0 60px;
}

/* ── Header ── */
.due-header[b-z9xu49mxfi] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 28px;
}
.due-header h1[b-z9xu49mxfi] {
    margin: 0 0 6px;
    font-size: 26px;
    font-weight: 800;
    color: var(--c-text);
}
.due-sub[b-z9xu49mxfi] {
    margin: 0;
    font-size: 14px;
    color: var(--c-muted);
}
.btn-back[b-z9xu49mxfi] {
    padding: 8px 18px;
    border: 1px solid var(--c-border);
    border-radius: 4px;
    font-size: 14px;
    font-weight: 600;
    color: var(--c-body);
    text-decoration: none;
    white-space: nowrap;
    transition: border-color .2s, color .2s;
}
.btn-back:hover[b-z9xu49mxfi] { border-color: var(--c-body); color: var(--c-text); }

/* ── Summary pills ── */
.summary-row[b-z9xu49mxfi] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}
.pill[b-z9xu49mxfi] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 16px;
    border: 2px solid var(--c-border);
    border-radius: 100px;
    background: #fff;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 600;
    color: var(--c-body);
    cursor: pointer;
    transition: border-color .15s, background .15s, color .15s;
}
.pill:hover[b-z9xu49mxfi]           { border-color: var(--c-muted); color: var(--c-text); }
.pill--active[b-z9xu49mxfi]         { background: #1e293b; border-color: #1e293b; color: #fff; }
.pill--red[b-z9xu49mxfi]            { border-color: #fca5a5; color: #dc2626; }
.pill--red.pill--active[b-z9xu49mxfi]    { background: #dc2626; border-color: #dc2626; color: #fff; }
.pill--orange[b-z9xu49mxfi]         { border-color: #fdba74; color: #ea580c; }
.pill--orange.pill--active[b-z9xu49mxfi] { background: #ea580c; border-color: #ea580c; color: #fff; }
.pill--yellow[b-z9xu49mxfi]         { border-color: #fde68a; color: #d97706; }
.pill--yellow.pill--active[b-z9xu49mxfi] { background: #d97706; border-color: #d97706; color: #fff; }
.pill-count[b-z9xu49mxfi] {
    background: rgba(0,0,0,.10);
    border-radius: 100px;
    padding: 1px 7px;
    font-size: 11px;
}
.pill--active .pill-count[b-z9xu49mxfi] { background: rgba(255,255,255,.25); }

/* ── Copy-all bar ── */
.copy-all-bar[b-z9xu49mxfi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    border-radius: 6px;
    margin-bottom: 20px;
    font-size: 14px;
    color: var(--c-body);
    flex-wrap: wrap;
    gap: 10px;
}
.btn-copy-all[b-z9xu49mxfi] {
    padding: 6px 14px;
    background: #fff;
    border: 1px solid #cbd5e1;
    border-radius: 4px;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 600;
    color: #334155;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}
.btn-copy-all:hover[b-z9xu49mxfi] { background: #f8fafc; border-color: #94a3b8; }

/* ── Cards grid ── */
.cards-grid[b-z9xu49mxfi] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 16px;
}

/* ── Pet card ── */
.pet-card[b-z9xu49mxfi] {
    background: #fff;
    border-radius: 8px;
    border: 2px solid var(--c-border);
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    box-shadow: 0 1px 4px rgba(0,0,0,.05);
    transition: box-shadow .2s, border-color .2s;
    position: relative;
}
.pet-card:hover[b-z9xu49mxfi] { box-shadow: 0 4px 14px rgba(0,0,0,.09); }

.pet-card--red[b-z9xu49mxfi]    { border-left: 5px solid #dc2626; }
.pet-card--orange[b-z9xu49mxfi] { border-left: 5px solid #ea580c; }
.pet-card--yellow[b-z9xu49mxfi] { border-left: 5px solid #d97706; }

/* ── Card top ── */
.pet-card-top[b-z9xu49mxfi] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
}
.pet-name-row[b-z9xu49mxfi] { display: flex; flex-direction: column; gap: 3px; }
.pet-name[b-z9xu49mxfi]  { font-size: 17px; font-weight: 800; color: #1e293b; }
.pet-raca[b-z9xu49mxfi]  { font-size: 12px; color: var(--c-muted); font-style: italic; }

.status-badge[b-z9xu49mxfi] {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 100px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    white-space: nowrap;
    flex-shrink: 0;
}
.status-badge--red[b-z9xu49mxfi]    { background: #fee2e2; color: #dc2626; }
.status-badge--orange[b-z9xu49mxfi] { background: #ffedd5; color: #ea580c; }
.status-badge--yellow[b-z9xu49mxfi] { background: #fef3c7; color: #d97706; }

/* ── Stats ── */
.pet-stats[b-z9xu49mxfi] { display: flex; flex-direction: column; gap: 5px; }
.pet-stat[b-z9xu49mxfi]  { display: flex; justify-content: space-between; font-size: 13px; gap: 8px; }
.pet-stat-label[b-z9xu49mxfi] { color: var(--c-muted); white-space: nowrap; }
.pet-stat-value[b-z9xu49mxfi] { color: var(--c-text); font-weight: 600; text-align: right; }
.pet-stat-value em[b-z9xu49mxfi] { font-style: normal; font-weight: 400; color: var(--c-muted); }
.overdue-value[b-z9xu49mxfi] { color: #dc2626; }
.soon-value[b-z9xu49mxfi]    { color: #d97706; }

/* ── Owner info ── */
.pet-owner[b-z9xu49mxfi] { display: flex; flex-direction: column; gap: 3px; padding-top: 4px; border-top: 1px solid #f1f5f9; }
.owner-name[b-z9xu49mxfi]  { font-size: 14px; font-weight: 600; color: var(--c-text); }
.owner-phone[b-z9xu49mxfi] { font-size: 13px; color: var(--c-body); }

/* ── Actions ── */
.pet-actions[b-z9xu49mxfi] { display: flex; flex-wrap: wrap; gap: 8px; }
.btn-whatsapp[b-z9xu49mxfi] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 14px;
    background: #25d366;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
    cursor: pointer;
    transition: background .2s;
}
.btn-whatsapp:hover[b-z9xu49mxfi] { background: #1ebe5d; color: #fff; }
.btn-copy[b-z9xu49mxfi] {
    padding: 7px 12px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 4px;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 600;
    color: #475569;
    cursor: pointer;
    transition: background .15s, border-color .15s;
}
.btn-copy:hover[b-z9xu49mxfi] { background: #f1f5f9; border-color: #94a3b8; }
.btn-client[b-z9xu49mxfi] {
    padding: 7px 14px;
    border: 1px solid var(--c-primary);
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    color: var(--c-primary);
    text-decoration: none;
    transition: background .15s, color .15s;
}
.btn-client:hover[b-z9xu49mxfi] { background: var(--c-primary); color: #fff; }

/* ── Copied toast ── */
.copied-toast[b-z9xu49mxfi] {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: #1e293b;
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 4px;
    animation: fadeInOut-b-z9xu49mxfi 2s ease forwards;
}
@keyframes fadeInOut-b-z9xu49mxfi {
    0%   { opacity: 0; transform: translateY(4px); }
    15%  { opacity: 1; transform: translateY(0); }
    80%  { opacity: 1; }
    100% { opacity: 0; }
}

/* ── Empty state ── */
.empty-state[b-z9xu49mxfi] {
    text-align: center;
    padding: 80px 20px;
    color: var(--c-muted);
}
.empty-icon[b-z9xu49mxfi] { font-size: 56px; margin-bottom: 16px; }
.empty-state h2[b-z9xu49mxfi] { font-size: 22px; font-weight: 800; color: var(--c-text); margin: 0 0 8px; }
.empty-state p[b-z9xu49mxfi]  { font-size: 15px; margin: 0; }

/* ── Loading ── */
.loading-container[b-z9xu49mxfi] { text-align: center; padding: 60px 0; color: var(--c-muted); }
.spinner[b-z9xu49mxfi] {
    width: 36px; height: 36px;
    border: 4px solid var(--c-border);
    border-top-color: var(--c-primary);
    border-radius: 50%;
    animation: spin-b-z9xu49mxfi .75s linear infinite;
    margin: 0 auto 14px;
}
@keyframes spin-b-z9xu49mxfi { to { transform: rotate(360deg); } }

/* ── Responsive ── */
@media (max-width: 768px) {
    .due-wrap[b-z9xu49mxfi] { width: 96%; padding: 24px 0 40px; }
    .cards-grid[b-z9xu49mxfi] { grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
}

@media (max-width: 640px) {
    .due-header[b-z9xu49mxfi] { flex-direction: column; align-items: flex-start; gap: 12px; }
    .due-header h1[b-z9xu49mxfi] { font-size: 22px; }
    .cards-grid[b-z9xu49mxfi] { grid-template-columns: 1fr; }
    .summary-row[b-z9xu49mxfi] { gap: 6px; }
    .pill[b-z9xu49mxfi] { padding: 6px 12px; font-size: 12px; }
}

@media (max-width: 480px) {
    .due-wrap[b-z9xu49mxfi] { width: 100%; padding: 16px 12px 40px; }
    .copy-all-bar[b-z9xu49mxfi] { flex-direction: column; align-items: flex-start; gap: 8px; }
    .pet-card[b-z9xu49mxfi] { padding: 16px; }
}
/* /Components/Pages/Produtos.razor.rz.scp.css */
/* Produtos: sales list and per-product summary. Shared look comes from the bo-* kit in app.css. */

.pr-month[b-9yvh8ezha7] {
    padding: 9px 12px;
    border: 1px solid var(--c-border); border-radius: var(--radius);
    background: var(--c-surface); color: var(--c-text);
    font-family: var(--font); font-size: 14px; font-weight: 600;
}

.pr-kpi-text[b-9yvh8ezha7] { font-size: 17px; line-height: 1.6; }
@media (max-width: 640px) { .pr-kpi-text[b-9yvh8ezha7] { font-size: 14px; line-height: 1.9; } }

.pr-sale[b-9yvh8ezha7] { grid-template-columns: 96px minmax(140px, 1fr) minmax(0, 1.6fr) 80px 90px 76px; }
.pr-prod[b-9yvh8ezha7] { grid-template-columns: minmax(0, 2fr) 100px 110px minmax(120px, 1fr) 110px; }

.pr-date[b-9yvh8ezha7] { color: var(--c-muted); font-variant-numeric: tabular-nums; }
.pr-client[b-9yvh8ezha7] { color: var(--c-text); font-weight: 600; text-decoration: none; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pr-client:hover[b-9yvh8ezha7] { color: var(--c-primary-dk); }
.pr-what[b-9yvh8ezha7] { min-width: 0; }
.pr-what .bo-tag[b-9yvh8ezha7] { margin-left: 6px; }
.pr-qty[b-9yvh8ezha7] { color: var(--c-muted); }
.pr-90[b-9yvh8ezha7] { display: flex; align-items: center; gap: 8px; }
.pr-90 .bo-bar[b-9yvh8ezha7] { flex: 1; }
.pr-90 .bo-sub[b-9yvh8ezha7] { min-width: 22px; text-align: right; }

@media (max-width: 820px) {
    .pr-list > .bo-row--head[b-9yvh8ezha7], .pr-prod.bo-row--head[b-9yvh8ezha7] { display: none; }
    .pr-sale[b-9yvh8ezha7] {
        grid-template-columns: minmax(0, 1fr) auto auto;
        grid-template-areas:
            "what  money actions"
            "client date date";
        gap: 4px 10px;
    }
    .pr-sale .pr-what[b-9yvh8ezha7] { grid-area: what; }
    .pr-sale .bo-money[b-9yvh8ezha7] { grid-area: money; }
    .pr-sale .bo-row-actions[b-9yvh8ezha7] { grid-area: actions; }
    .pr-sale .pr-client[b-9yvh8ezha7] { grid-area: client; font-weight: 500; font-size: 13px; color: var(--c-muted); }
    .pr-sale .pr-date[b-9yvh8ezha7] { grid-area: date; text-align: right; font-size: 13px; }
    .pr-sale .pr-qty[b-9yvh8ezha7] { display: none; }

    .pr-prod[b-9yvh8ezha7] {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "what money"
            "bar  bar";
        gap: 6px 10px;
    }
    .pr-prod .pr-what[b-9yvh8ezha7] { grid-area: what; }
    .pr-prod .bo-money[b-9yvh8ezha7] { grid-area: money; }
    .pr-prod .pr-90[b-9yvh8ezha7] { grid-area: bar; }
    .pr-prod > [data-label="Vendidos"][b-9yvh8ezha7], .pr-prod > [data-label="Última venda"][b-9yvh8ezha7] { display: none; }
}
/* /Components/Public/Gallery.razor.rz.scp.css */
.gallery-section[b-yb6dltm5de] {
    background: #fff;
    border-radius: var(--radius-lg);
    border: 1px solid var(--c-border);
    box-shadow: var(--shadow-sm);
    padding: 32px 36px;
    margin-bottom: 28px;
}

.gallery-title[b-yb6dltm5de] {
    margin: 0 0 24px;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--c-muted);
    padding-bottom: 12px;
    border-bottom: 1px solid var(--c-border);
}

.gallery-grid[b-yb6dltm5de] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.gallery-item[b-yb6dltm5de] {
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: 4px;
    background: var(--c-bg);
}

.gallery-item img[b-yb6dltm5de] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}

.gallery-item:hover img[b-yb6dltm5de] { transform: scale(1.05); }

.gallery-empty[b-yb6dltm5de] {
    text-align: center;
    color: var(--c-muted);
    font-size: 14px;
    padding: 32px 0;
    margin: 0;
}

@media (max-width: 640px) {
    .gallery-section[b-yb6dltm5de] { padding: 22px 18px; }
    .gallery-grid[b-yb6dltm5de] { grid-template-columns: repeat(2, 1fr); gap: 8px; }
}
/* /Components/Public/GroomSuiteLanding.razor.rz.scp.css */
/* GroomSuite presentation page (demo site homepage). Uses the logo's teal palette. */

.gs[b-racalnp1th] {
    --gs-teal:      #0c918d;
    --gs-teal-dk:   #087e83;
    --gs-teal-900:  #0b4f55;
    --gs-ink:       #173c43;
    --gs-muted:     #658187;
    --gs-tint:      #f0fdfa;
    --gs-gold:      #ffe19b;
    color: var(--gs-muted);
    background: #fff;
    font-size: 16px;
}

.gs h1[b-racalnp1th], .gs h2[b-racalnp1th], .gs h3[b-racalnp1th] { color: var(--gs-ink); letter-spacing: -.01em; }

.gs-container[b-racalnp1th] { width: min(1140px, 92%); margin: 0 auto; }

/* ── Buttons ── */
.gs-ctas[b-racalnp1th] { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.gs-ctas--center[b-racalnp1th] { justify-content: center; }

.gs-btn[b-racalnp1th] {
    display: inline-block;
    padding: 13px 26px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 15px;
    text-decoration: none;
    transition: transform .15s, background .2s, color .2s, box-shadow .2s;
}
.gs-btn:hover[b-racalnp1th] { transform: translateY(-1px); }

.gs-btn--light[b-racalnp1th] { background: #fff; color: var(--gs-teal-dk); box-shadow: 0 6px 18px rgba(0,0,0,.18); }
.gs-btn--light:hover[b-racalnp1th] { color: var(--gs-teal-900); }

.gs-btn--ghost[b-racalnp1th] { border: 2px solid rgba(255,255,255,.65); color: #fff; }
.gs-btn--ghost:hover[b-racalnp1th] { background: rgba(255,255,255,.12); color: #fff; }

/* ── Hero ── */
.gs-hero[b-racalnp1th] {
    background:
        radial-gradient(circle at 85% 10%, rgba(255,255,255,.12), transparent 45%),
        linear-gradient(140deg, #17a79a 0%, var(--gs-teal-dk) 45%, var(--gs-teal-900) 100%);
    color: #e6fffb;
    padding: 72px 0 84px;
    overflow: hidden;
}

.gs-hero-grid[b-racalnp1th] {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    gap: 56px;
    align-items: center;
}

.gs-eyebrow[b-racalnp1th] {
    display: inline-block;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.3);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: 6px 14px;
    border-radius: 100px;
    margin-bottom: 20px;
}

.gs-hero h1[b-racalnp1th] {
    color: #fff;
    font-size: clamp(32px, 4.6vw, 50px);
    line-height: 1.12;
    font-weight: 800;
    margin-bottom: 18px;
}

.gs-lead[b-racalnp1th] { font-size: 18px; line-height: 1.65; color: #d5f5f1; margin: 0; }

.gs-creds[b-racalnp1th] {
    display: inline-flex;
    flex-direction: column;
    gap: 2px;
    margin-top: 26px;
    padding: 12px 18px;
    background: rgba(0,0,0,.16);
    border-left: 4px solid var(--gs-gold);
    border-radius: 8px;
    font-size: 14px;
    color: #e6fffb;
}
.gs-creds strong[b-racalnp1th] { color: #fff; }
.gs-creds-title[b-racalnp1th] { font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--gs-gold); }

/* ── Browser frame for screenshots ── */
.gs-frame[b-racalnp1th] {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 24px 60px rgba(9, 52, 56, .35);
    border: 1px solid rgba(23, 60, 67, .12);
}
.gs-frame-bar[b-racalnp1th] { display: flex; gap: 6px; padding: 10px 12px; background: #eef4f4; border-bottom: 1px solid #dde8e8; }
.gs-frame-bar i[b-racalnp1th] { width: 10px; height: 10px; border-radius: 50%; background: #c9d8d8; }
.gs-frame img[b-racalnp1th] { display: block; width: 100%; height: auto; }

.gs-hero-shot .gs-frame[b-racalnp1th] { transform: perspective(1400px) rotateY(-6deg); }

/* ── Sections ── */
.gs-section[b-racalnp1th] { padding: 88px 0; }
.gs-section--tint[b-racalnp1th] { background: var(--gs-tint); }

.gs-section-head[b-racalnp1th] { text-align: center; max-width: 680px; margin: 0 auto 48px; }
.gs-section-head h2[b-racalnp1th] { font-size: clamp(26px, 3.4vw, 36px); margin-bottom: 12px; }
.gs-section-head p[b-racalnp1th] { font-size: 17px; margin: 0; }

.gs-kicker[b-racalnp1th] {
    display: inline-block;
    color: var(--gs-teal);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

/* ── Features ── */
.gs-features[b-racalnp1th] { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }

.gs-feature[b-racalnp1th] {
    background: #fff;
    border: 1px solid #e3eeee;
    border-radius: 14px;
    padding: 24px 22px;
    transition: box-shadow .2s, transform .2s, border-color .2s;
}
.gs-feature:hover[b-racalnp1th] { box-shadow: 0 12px 30px rgba(12,145,141,.12); transform: translateY(-2px); border-color: #bfe9e4; }

.gs-feature-icon[b-racalnp1th] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    border-radius: 12px;
    background: var(--gs-tint);
    font-size: 22px;
    margin-bottom: 14px;
}
.gs-feature h3[b-racalnp1th] { font-size: 17px; margin-bottom: 6px; }
.gs-feature p[b-racalnp1th] { font-size: 14.5px; line-height: 1.6; margin: 0; }

/* ── Showcase ── */
.gs-show[b-racalnp1th] {
    display: grid;
    grid-template-columns: 1fr 1.25fr;
    gap: 56px;
    align-items: center;
}
.gs-show + .gs-show[b-racalnp1th] { margin-top: 88px; }
.gs-show--flip .gs-show-copy[b-racalnp1th] { order: 2; }

.gs-show-copy h2[b-racalnp1th] { font-size: clamp(24px, 3vw, 32px); margin-bottom: 12px; }
.gs-show-copy p[b-racalnp1th] { font-size: 17px; line-height: 1.65; }
.gs-show-copy ul[b-racalnp1th] { list-style: none; padding: 0; margin: 18px 0 0; }
.gs-show-copy li[b-racalnp1th] { position: relative; padding-left: 30px; margin-bottom: 10px; color: var(--gs-ink); font-weight: 600; }
.gs-show-copy li[b-racalnp1th]::before {
    content: "✓";
    position: absolute;
    left: 0;
    top: 1px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--gs-teal);
    color: #fff;
    font-size: 12px;
    line-height: 20px;
    text-align: center;
}

/* ── Pillars ── */
.gs-pillars[b-racalnp1th] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.gs-pillar[b-racalnp1th] {
    text-align: center;
    padding: 32px 26px;
    border-radius: 16px;
    background: linear-gradient(180deg, var(--gs-tint), #fff);
    border: 1px solid #d7f0ec;
}
.gs-pillar-icon[b-racalnp1th] { font-size: 34px; display: block; margin-bottom: 12px; }
.gs-pillar h3[b-racalnp1th] { font-size: 19px; margin-bottom: 8px; }
.gs-pillar p[b-racalnp1th] { margin: 0; line-height: 1.6; }

/* ── Steps ── */
.gs-steps[b-racalnp1th] { list-style: none; padding: 0; margin: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; counter-reset: none; }
.gs-steps li[b-racalnp1th] { background: #fff; border-radius: 16px; padding: 30px 26px; border: 1px solid #d7f0ec; }
.gs-step-num[b-racalnp1th] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--gs-teal);
    color: #fff;
    font-weight: 800;
    margin-bottom: 14px;
}
.gs-steps h3[b-racalnp1th] { font-size: 18px; margin-bottom: 6px; }
.gs-steps p[b-racalnp1th] { margin: 0; line-height: 1.6; }

/* ── Final CTA ── */
.gs-cta[b-racalnp1th] {
    background: linear-gradient(140deg, var(--gs-teal-dk), var(--gs-teal-900));
    padding: 80px 0;
    text-align: center;
    color: #d5f5f1;
}
.gs-cta-inner[b-racalnp1th] { max-width: 720px; }
.gs-cta h2[b-racalnp1th] { color: #fff; font-size: clamp(26px, 3.4vw, 36px); margin-bottom: 12px; }
.gs-cta p[b-racalnp1th] { font-size: 17px; margin: 0; }
.gs-cta .gs-cta-creds[b-racalnp1th] { margin-top: 18px; font-size: 14px; }
.gs-cta-creds strong[b-racalnp1th] { color: #fff; }

/* ── Footer ── */
.gs-footer[b-racalnp1th] { border-top: 1px solid #e3eeee; padding: 26px 0; font-size: 14px; }
.gs-footer-inner[b-racalnp1th] { display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.gs-footer img[b-racalnp1th] { height: 40px; margin-right: auto; }
.gs-footer a[b-racalnp1th] { color: var(--gs-teal); text-decoration: none; }

/* ── Responsive ── */
@media (max-width: 1000px) {
    .gs-features[b-racalnp1th] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 860px) {
    .gs-hero[b-racalnp1th] { padding: 48px 0 60px; }
    .gs-hero-grid[b-racalnp1th], .gs-show[b-racalnp1th] { grid-template-columns: 1fr; gap: 36px; }
    .gs-hero-shot .gs-frame[b-racalnp1th] { transform: none; }
    .gs-show--flip .gs-show-copy[b-racalnp1th] { order: 0; }
    .gs-pillars[b-racalnp1th], .gs-steps[b-racalnp1th] { grid-template-columns: 1fr; }
    .gs-section[b-racalnp1th] { padding: 60px 0; }
    .gs-show + .gs-show[b-racalnp1th] { margin-top: 60px; }
}

@media (max-width: 520px) {
    .gs-features[b-racalnp1th] { grid-template-columns: 1fr; }
    .gs-btn[b-racalnp1th] { width: 100%; text-align: center; }
    .gs-footer img[b-racalnp1th] { margin-right: 0; }
}
/* /Components/Public/InstagramFeed.razor.rz.scp.css */
.insta-widget[b-d9vbbnu9c4] {
    background: #fff;
    border-radius: var(--radius-lg);
    border: 1px solid var(--c-border);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    margin-bottom: 28px;
}

.insta-header[b-d9vbbnu9c4] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 24px;
    border-bottom: 1px solid var(--c-border);
}

.insta-icon[b-d9vbbnu9c4] {
    width: 30px;
    height: 30px;
    color: #e1306c;
    flex-shrink: 0;
}

.insta-meta[b-d9vbbnu9c4] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.insta-handle[b-d9vbbnu9c4] {
    font-weight: 700;
    font-size: 15px;
    color: var(--c-text);
    text-decoration: none;
}

.insta-handle:hover[b-d9vbbnu9c4] { color: var(--c-primary); }

.insta-sub[b-d9vbbnu9c4] {
    font-size: 13px;
    color: var(--c-muted);
    margin-top: 1px;
}

.insta-follow-btn[b-d9vbbnu9c4] {
    padding: 7px 20px;
    background: #0095f6;
    color: white;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    font-family: var(--font);
    transition: background .2s;
    white-space: nowrap;
    flex-shrink: 0;
}

.insta-follow-btn:hover[b-d9vbbnu9c4] { background: #0077c5; color: white; }

.insta-grid[b-d9vbbnu9c4] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 3px;
    background: var(--c-border);
}

.insta-item[b-d9vbbnu9c4] {
    position: relative;
    display: block;
    aspect-ratio: 1;
    overflow: hidden;
    background: var(--c-bg);
}

.insta-item img[b-d9vbbnu9c4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
}

.insta-item:hover img[b-d9vbbnu9c4] { transform: scale(1.04); }

.insta-overlay[b-d9vbbnu9c4] {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,.52);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    opacity: 0;
    transition: opacity .22s ease;
}

.insta-item:hover .insta-overlay[b-d9vbbnu9c4] { opacity: 1; }

.insta-overlay p[b-d9vbbnu9c4] {
    color: #fff;
    font-size: 13px;
    text-align: center;
    line-height: 1.5;
    margin: 0;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.insta-footer[b-d9vbbnu9c4] {
    text-align: center;
    padding: 16px;
    border-top: 1px solid var(--c-border);
}

.insta-footer a[b-d9vbbnu9c4] {
    color: var(--c-primary);
    font-weight: 700;
    font-size: 14px;
    text-decoration: none;
}

.insta-footer a:hover[b-d9vbbnu9c4] { text-decoration: underline; }
/* /Components/Shared/ConfirmModal.razor.rz.scp.css */
.modal-backdrop[b-z42xmejjvq] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 9000;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: fadeIn-b-z42xmejjvq .15s ease;
}

.modal-box[b-z42xmejjvq] {
    background: #fff;
    border-radius: 6px;
    box-shadow: 0 8px 32px rgba(0,0,0,.18);
    padding: 32px 36px 28px;
    width: 100%;
    max-width: 420px;
    animation: slideUp-b-z42xmejjvq .15s ease;
    margin: 16px;
}

.modal-title[b-z42xmejjvq] {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 700;
    color: var(--c-text);
}

.modal-msg[b-z42xmejjvq] {
    margin: 0 0 24px;
    font-size: 15px;
    color: var(--c-body);
    line-height: 1.6;
}

.modal-actions[b-z42xmejjvq] {
    display: flex;
    gap: 10px;
    justify-content: flex-end;
}

.modal-cancel[b-z42xmejjvq] {
    padding: 9px 20px;
    background: #fff;
    color: var(--c-body);
    border: 2px solid var(--c-border);
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: border-color .2s, color .2s;
}

.modal-cancel:hover[b-z42xmejjvq] { border-color: var(--c-muted); color: var(--c-text); }

.modal-confirm[b-z42xmejjvq] {
    padding: 9px 20px;
    background: var(--c-primary);
    color: #fff;
    border: 2px solid var(--c-primary);
    border-radius: 4px;
    font-family: var(--font);
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: background .2s, border-color .2s;
}

.modal-confirm:hover[b-z42xmejjvq] { background: var(--c-primary-dk); border-color: var(--c-primary-dk); }

.modal-confirm.danger[b-z42xmejjvq] { background: #dc2626; border-color: #dc2626; }
.modal-confirm.danger:hover[b-z42xmejjvq] { background: #b91c1c; border-color: #b91c1c; }

@keyframes fadeIn-b-z42xmejjvq  { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideUp-b-z42xmejjvq { from { transform: translateY(16px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
/* /Components/Shared/LicenceSummary.razor.rz.scp.css */
.lic-card[b-qb27kfrf4j] {
    background: #fff;
    border: 1px solid #e2e2e2;
    border-radius: 10px;
    padding: 24px;
}

.lic-card h3[b-qb27kfrf4j] {
    font-size: 16px;
    margin: 24px 0 8px;
}

.lic-status[b-qb27kfrf4j] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 6px 10px;
    padding: 12px 16px;
    border-radius: 8px;
    margin-bottom: 20px;
    background: #f0fdf4;
    color: #166534;
}

.lic-status--duesoon[b-qb27kfrf4j] { background: #fffbeb; color: #92400e; }
.lic-status--overdue[b-qb27kfrf4j] { background: #fff7ed; color: #9a3412; }
.lic-status--blocked[b-qb27kfrf4j] { background: #fef2f2; color: #991b1b; }

.lic-dot[b-qb27kfrf4j] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: currentColor;
    align-self: center;
}

.lic-status-detail[b-qb27kfrf4j] { font-size: 14px; }

.lic-grid[b-qb27kfrf4j] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 16px;
}

.lic-label[b-qb27kfrf4j] { font-size: 12px; color: #888; text-transform: uppercase; letter-spacing: .04em; }
.lic-value[b-qb27kfrf4j] { font-size: 18px; font-weight: 600; margin-top: 2px; }
.lic-muted[b-qb27kfrf4j] { color: #888; font-size: 13px; font-weight: 400; }

.lic-message[b-qb27kfrf4j],
.lic-instructions[b-qb27kfrf4j] {
    white-space: pre-line;
    background: #f8f8f8;
    border-radius: 8px;
    padding: 12px 16px;
    margin-top: 16px;
}

.lic-refresh[b-qb27kfrf4j] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

.lic-refresh button[b-qb27kfrf4j] {
    padding: 8px 18px;
    background: var(--c-primary);
    color: #fff;
    border: none;
    border-radius: 4px;
    font-weight: 600;
    cursor: pointer;
}

.lic-table[b-qb27kfrf4j] { width: 100%; border-collapse: collapse; font-size: 14px; }
.lic-table th[b-qb27kfrf4j], .lic-table td[b-qb27kfrf4j] { padding: 8px 6px; border-bottom: 1px solid #eee; text-align: left; }
.lic-table th[b-qb27kfrf4j] { color: #888; font-weight: 600; }
.lic-table .lic-num[b-qb27kfrf4j] { text-align: right; }
