@import '_content/Simplicity.UI/Simplicity.UI.b2nh86po0n.bundle.scp.css';

/* /Features/Clinic/Components/CreateAppointmentModal.razor.rz.scp.css */
/* Wider modal */
.cam-modal[b-lnl4d1zs75] {
    max-width: 620px;
    width: 100%;
}

/* Section label */
.cam-section-label[b-lnl4d1zs75] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
    margin-bottom: 8px;
}

/* ── Patient search ─────────────────────────── */

.cam-search-wrap[b-lnl4d1zs75] {
    position: relative;
}

.cam-search-icon-wrap[b-lnl4d1zs75] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--fg-3);
    pointer-events: none;
    display: flex;
    align-items: center;
    z-index: 1;
}

.cam-search-input[b-lnl4d1zs75] {
    width: 100%;
    padding-left: 32px !important;
}

.cam-patient-dropdown[b-lnl4d1zs75] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    z-index: 200;
    overflow: hidden;
}

.cam-patient-item[b-lnl4d1zs75] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    cursor: pointer;
    transition: background .12s;
}

.cam-patient-item:hover[b-lnl4d1zs75] {
    background: var(--primary-50);
}

.cam-patient-item__body[b-lnl4d1zs75] {
    flex: 1;
    min-width: 0;
}

.cam-patient-item__name[b-lnl4d1zs75] {
    font-size: 14px;
    font-weight: 500;
    color: var(--fg-1);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cam-patient-item__meta[b-lnl4d1zs75] {
    font-size: 12px;
    color: var(--fg-3);
    margin-top: 1px;
}

.cam-dropdown-empty[b-lnl4d1zs75] {
    padding: 12px 14px;
    font-size: 13px;
    color: var(--fg-3);
}

.cam-dropdown-footer[b-lnl4d1zs75] {
    border-top: 1px solid var(--border-subtle);
    padding: 8px 14px;
}

.cam-new-link[b-lnl4d1zs75] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    font-weight: 500;
    color: var(--primary-600);
    text-decoration: none;
}

.cam-new-link:hover[b-lnl4d1zs75] {
    text-decoration: underline;
}

.cam-hint[b-lnl4d1zs75] {
    font-size: 12px;
    color: var(--fg-3);
    margin-top: 6px;
}

.cam-hint a[b-lnl4d1zs75] {
    color: var(--primary-600);
    text-decoration: none;
}

.cam-hint a:hover[b-lnl4d1zs75] {
    text-decoration: underline;
}

/* Selected patient chip */
.cam-selected-patient[b-lnl4d1zs75] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--primary-50);
    border: 1px solid var(--primary-200);
    border-radius: var(--radius-md);
    padding: 10px 14px;
}

.cam-selected-patient__body[b-lnl4d1zs75] {
    flex: 1;
    min-width: 0;
}

.cam-selected-patient__name[b-lnl4d1zs75] {
    font-size: 14px;
    font-weight: 600;
    color: var(--fg-1);
}

.cam-selected-patient__meta[b-lnl4d1zs75] {
    font-size: 12px;
    color: var(--fg-3);
    margin-top: 1px;
}

/* ── Layout helpers ─────────────────────────── */

.cam-2col[b-lnl4d1zs75] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-3);
}

/* ── Duration quick-pick ────────────────────── */

.cam-dur-block[b-lnl4d1zs75] {
    margin-bottom: var(--space-3);
}

.cam-dur-label[b-lnl4d1zs75] {
    font-size: 13px;
    font-weight: 500;
    color: var(--fg-2);
    margin-bottom: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.cam-ends-at[b-lnl4d1zs75] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 12px;
    font-weight: 400;
    color: var(--primary-600);
    background: var(--primary-50);
    border-radius: 99px;
    padding: 1px 8px;
}

.cam-dur-chips[b-lnl4d1zs75] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.cam-chip[b-lnl4d1zs75] {
    height: 32px;
    padding: 0 14px;
    border: 1.5px solid var(--border-default);
    border-radius: 99px;
    background: #fff;
    font-size: 13px;
    font-weight: 500;
    color: var(--fg-2);
    cursor: pointer;
    transition: border-color .12s, background .12s, color .12s;
    white-space: nowrap;
}

.cam-chip:hover[b-lnl4d1zs75] {
    border-color: var(--primary-400);
    color: var(--primary-700);
    background: var(--primary-50);
}

.cam-chip--on[b-lnl4d1zs75] {
    border-color: var(--primary-500);
    background: var(--primary-600);
    color: #fff;
}

.cam-chip--on:hover[b-lnl4d1zs75] {
    background: var(--primary-700);
    border-color: var(--primary-700);
    color: #fff;
}

.cam-custom-dur[b-lnl4d1zs75] {
    display: flex;
    gap: 6px;
    align-items: center;
}

/* ── Procedure section ──────────────────────── */

.cam-procedure-section[b-lnl4d1zs75] {
    border-top: 1px solid var(--border-subtle);
    margin-top: 4px;
    padding-top: 12px;
}

.cam-proc-toggle[b-lnl4d1zs75] {
    display: flex;
    align-items: center;
    gap: 6px;
    background: none;
    border: none;
    padding: 4px 0;
    cursor: pointer;
    font-size: 13px;
    font-weight: 600;
    color: var(--fg-2);
    width: 100%;
    text-align: left;
}

.cam-proc-toggle:hover[b-lnl4d1zs75] {
    color: var(--fg-1);
}

.cam-tag-optional[b-lnl4d1zs75] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    background: var(--neutral-100);
    color: var(--fg-3);
    border-radius: 99px;
    padding: 1px 6px;
}

.cam-tag-selected[b-lnl4d1zs75] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .06em;
    background: var(--primary-100);
    color: var(--primary-700);
    border-radius: 99px;
    padding: 1px 6px;
    margin-left: auto;
}

.cam-loading-templates[b-lnl4d1zs75] {
    padding: 10px 0 4px;
    font-size: 13px;
    color: var(--fg-3);
}

.cam-template-grid[b-lnl4d1zs75] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    gap: 8px;
    margin-top: 10px;
}

.cam-tpl-card[b-lnl4d1zs75] {
    position: relative;
    border: 1.5px solid var(--border-default);
    border-radius: var(--radius-md);
    padding: 10px 12px;
    cursor: pointer;
    transition: border-color .15s, background .15s;
    background: #fff;
}

.cam-tpl-card:hover[b-lnl4d1zs75] {
    border-color: var(--primary-400);
    background: var(--primary-50);
}

.cam-tpl-card--on[b-lnl4d1zs75] {
    border-color: var(--primary-500);
    background: var(--primary-50);
}

.cam-tpl-card__name[b-lnl4d1zs75] {
    font-size: 13px;
    font-weight: 600;
    color: var(--fg-1);
    margin-bottom: 4px;
    line-height: 1.3;
}

.cam-tpl-card__meta[b-lnl4d1zs75] {
    font-size: 11px;
    color: var(--fg-3);
    display: flex;
    gap: 4px;
}

.cam-tpl-card__meta span + span[b-lnl4d1zs75]::before {
    content: '· ';
}

.cam-tpl-check[b-lnl4d1zs75] {
    position: absolute;
    top: 6px;
    right: 6px;
    width: 18px;
    height: 18px;
    background: var(--primary-600);
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* /Features/Clinic/Pages/AppointmentDetailPage.razor.rz.scp.css */
/* ── Page subline ─────────────────────────────────────────── */
.adp-subline[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--fg-3);
    margin-top: 4px;
    flex-wrap: wrap;
}
.adp-sep[b-bsygpam6vq] { color: var(--fg-4); }

/* ── Two-column grid ──────────────────────────────────────── */
.adp-grid[b-bsygpam6vq] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 16px;
    align-items: start;
}
.adp-col[b-bsygpam6vq] { display: flex; flex-direction: column; gap: 16px; }

/* ── Next-step CTA ────────────────────────────────────────── */
.adp-next-step[b-bsygpam6vq] {
    background: linear-gradient(180deg, var(--primary-50) 0%, #fff 100%);
    border: 1px solid var(--primary-100);
    border-radius: var(--radius-lg);
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
}
.adp-next-step[b-bsygpam6vq]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: radial-gradient(600px 60px at 100% 0%, rgba(14,124,138,0.05), transparent);
    pointer-events: none;
}
.adp-ns-icon[b-bsygpam6vq] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--primary-100);
    display: grid;
    place-items: center;
    color: var(--primary-600);
    flex-shrink: 0;
}
.adp-ns-body[b-bsygpam6vq] { flex: 1; min-width: 0; }
.adp-ns-eyebrow[b-bsygpam6vq] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--primary-600);
    margin-bottom: 2px;
}
.adp-ns-title[b-bsygpam6vq] {
    font-size: 15px;
    font-weight: 600;
    color: var(--fg-1);
    margin-bottom: 2px;
}
.adp-ns-sub[b-bsygpam6vq] { font-size: 13px; color: var(--fg-3); }

/* ── Billing CTA states ───────────────────────────────────── */
.adp-billing-paid[b-bsygpam6vq] {
    background: linear-gradient(180deg, var(--success-50, #f0fdf4) 0%, #fff 100%);
    border-color: var(--success-200, #bbf7d0);
}
.adp-billing-paid .adp-ns-eyebrow[b-bsygpam6vq] { color: var(--success-600, #16a34a); }
.adp-billing-paid .adp-ns-icon[b-bsygpam6vq] {
    border-color: var(--success-200, #bbf7d0);
    color: var(--success-600, #16a34a);
}

.adp-billing-partial[b-bsygpam6vq] {
    background: linear-gradient(180deg, var(--warning-50, #fffbeb) 0%, #fff 100%);
    border-color: var(--warning-200, #fde68a);
}
.adp-billing-partial .adp-ns-eyebrow[b-bsygpam6vq] { color: var(--warning-700, #b45309); }
.adp-billing-partial .adp-ns-icon[b-bsygpam6vq] {
    border-color: var(--warning-200, #fde68a);
    color: var(--warning-600, #d97706);
}

/* ── Card ─────────────────────────────────────────────────── */
.adp-card[b-bsygpam6vq] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.adp-card-head[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 20px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-subtle);
}
.adp-card-head-flush[b-bsygpam6vq] { border-bottom: none; }

.adp-card-title[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 11.5px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--fg-3);
}

.adp-card-body[b-bsygpam6vq] { padding: 18px 20px; }

/* ── Detail grid ──────────────────────────────────────────── */
.adp-detail-grid[b-bsygpam6vq] {
    display: grid;
    grid-template-columns: 140px 1fr;
    row-gap: 14px;
    column-gap: 24px;
    padding: 4px 0;
}
.adp-dk[b-bsygpam6vq] {
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--fg-3);
    padding-top: 1px;
}
.adp-dv[b-bsygpam6vq] { font-size: 14px; color: var(--fg-1); }
.adp-muted[b-bsygpam6vq] { color: var(--fg-3); }

/* ── Linked procedure ─────────────────────────────────────── */
.adp-proc-row[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 20px;
    border-bottom: 1px solid var(--border-subtle);
}
.adp-proc-icon[b-bsygpam6vq] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--primary-50);
    border: 1px solid var(--primary-100);
    display: grid;
    place-items: center;
    color: var(--primary-600);
    flex-shrink: 0;
}
.adp-proc-body[b-bsygpam6vq] { flex: 1; min-width: 0; }
.adp-proc-name[b-bsygpam6vq] { font-weight: 500; font-size: 14px; color: var(--fg-1); }
.adp-proc-sub[b-bsygpam6vq]  { font-size: 12.5px; color: var(--fg-3); margin-top: 2px; }

.adp-proc-footer[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 20px;
    background: var(--neutral-50);
}

.adp-proc-link[b-bsygpam6vq] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--primary-600);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}
.adp-proc-link:hover[b-bsygpam6vq] { text-decoration: underline; }

.adp-proc-empty[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 22px 20px;
    color: var(--fg-3);
    font-size: 13px;
    border-bottom: 1px solid var(--border-subtle);
}

/* ── Patient summary ──────────────────────────────────────── */
.adp-pt-summary[b-bsygpam6vq] {
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 14px;
    align-items: start;
}
.adp-pt-avatar[b-bsygpam6vq] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--primary-100);
    color: var(--primary-700);
    display: grid;
    place-items: center;
    font-weight: 700;
    font-size: 15px;
    flex-shrink: 0;
}
.adp-pt-name[b-bsygpam6vq] {
    font-size: 15px;
    font-weight: 600;
    color: var(--fg-1);
    text-decoration: none;
    display: block;
}
a.adp-pt-name:hover[b-bsygpam6vq] { color: var(--primary-600); text-decoration: underline; }
.adp-pt-id[b-bsygpam6vq]   { font-size: 12.5px; color: var(--fg-3); margin-top: 2px; }
.adp-pt-tags[b-bsygpam6vq] { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.adp-pt-tag[b-bsygpam6vq] {
    padding: 2px 9px;
    font-size: 11.5px;
    background: var(--neutral-100);
    border: 1px solid var(--border-subtle);
    border-radius: 999px;
    color: var(--fg-3);
}

/* ── Divider ──────────────────────────────────────────────── */
.adp-divider[b-bsygpam6vq] { height: 1px; background: var(--border-subtle); margin: 14px 0; }

/* ── Contact rows ─────────────────────────────────────────── */
.adp-contacts[b-bsygpam6vq]  { display: grid; gap: 10px; font-size: 13px; }
.adp-contact-row[b-bsygpam6vq] { display: flex; justify-content: space-between; align-items: baseline; }
.adp-ck[b-bsygpam6vq] { color: var(--fg-3); }
.adp-cv[b-bsygpam6vq] { color: var(--fg-1); }

/* ── View profile link ────────────────────────────────────── */
.adp-view-profile[b-bsygpam6vq] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    font-weight: 500;
    color: var(--primary-600);
    text-decoration: none;
}
.adp-view-profile:hover[b-bsygpam6vq] { color: var(--primary-700); text-decoration: underline; }

/* ── Cancel appointment ───────────────────────────────────── */
.adp-cancel-btn[b-bsygpam6vq] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 16px;
    border-radius: var(--radius-md);
    font-size: 13px;
    font-weight: 500;
    color: var(--danger-600);
    background: #fff;
    border: 1px solid var(--danger-200, #fca5a5);
    cursor: pointer;
    transition: background .12s;
}
.adp-cancel-btn:hover[b-bsygpam6vq] { background: var(--danger-50, #fef2f2); }

.adp-action-note[b-bsygpam6vq] {
    font-size: 12px;
    color: var(--fg-4);
    margin-top: 8px;
    text-align: center;
}

.adp-cancel-inline[b-bsygpam6vq] { display: flex; flex-direction: column; gap: 8px; }

.adp-cancel-input[b-bsygpam6vq] {
    width: 100%;
    height: 36px;
    padding: 0 12px;
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    font-size: 13px;
    color: var(--fg-1);
    background: #fff;
    box-sizing: border-box;
    font-family: inherit;
}
.adp-cancel-input:focus[b-bsygpam6vq] { outline: none; border-color: var(--primary-400); }

.adp-cancel-actions[b-bsygpam6vq] { display: flex; gap: 8px; }

/* ── Edit card ────────────────────────────────────────────── */
.adp-edit-card[b-bsygpam6vq] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 20px;
    margin-bottom: 16px;
}
.adp-edit-title[b-bsygpam6vq] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
    margin: 0 0 16px;
}

/* ── Vitals button in Actions card ────────────────────────── */
.adp-vitals-btn[b-bsygpam6vq] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    margin-bottom: 10px;
    background: #f0fdfa;
    border: 1.5px solid #a5f3fc;
    border-radius: var(--radius-md);
    color: #0e7490;
    font-size: 13.5px;
    font-weight: 600;
    cursor: pointer;
    transition: background .12s, border-color .12s;
}
.adp-vitals-btn:hover[b-bsygpam6vq] { background: #e0f9f8; border-color: #67e8f9; }

.adp-vitals-recorded-dot[b-bsygpam6vq] {
    margin-left: auto;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #0e7490;
    flex-shrink: 0;
}

/* ── Vitals display card ──────────────────────────────────── */
.adp-vitals-grid[b-bsygpam6vq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.adp-vital-item[b-bsygpam6vq] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 12px;
    background: var(--neutral-50);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
}

.adp-vital-item--full[b-bsygpam6vq] { grid-column: 1 / -1; }

.adp-vital-icon[b-bsygpam6vq] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    flex-shrink: 0;
}
.adp-vital-icon--bp[b-bsygpam6vq]       { background: #fee2e2; color: #dc2626; }
.adp-vital-icon--temp[b-bsygpam6vq]     { background: #fef3c7; color: #d97706; }
.adp-vital-icon--weight[b-bsygpam6vq]   { background: #dbeafe; color: #1d4ed8; }
.adp-vital-icon--symptoms[b-bsygpam6vq] { background: #f3e8ff; color: #7c3aed; }

.adp-vital-label[b-bsygpam6vq] { font-size: 11px; font-weight: 600; color: var(--fg-3); margin-bottom: 2px; text-transform: uppercase; letter-spacing: .06em; }
.adp-vital-value[b-bsygpam6vq] { font-size: 15px; font-weight: 700; color: var(--fg-1); }
.adp-vital-unit[b-bsygpam6vq]  { font-size: 11px; font-weight: 500; color: var(--fg-3); }
.adp-vital-symptoms[b-bsygpam6vq] { font-size: 13.5px; font-weight: 500; line-height: 1.5; }

/* ── Vitals modal ─────────────────────────────────────────── */
.adp-modal-backdrop[b-bsygpam6vq] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.adp-modal[b-bsygpam6vq] {
    background: #fff;
    border-radius: 14px;
    width: 100%;
    max-width: 480px;
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    box-shadow: 0 24px 64px rgba(0,0,0,.2);
}

.adp-modal-head[b-bsygpam6vq] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 20px 20px 0;
    gap: 12px;
}

.adp-modal-title[b-bsygpam6vq] {
    margin: 0 0 4px;
    font-size: 17px;
    font-weight: 700;
    color: var(--fg-1);
}

.adp-modal-sub[b-bsygpam6vq] {
    margin: 0;
    font-size: 13px;
    color: var(--fg-3);
}

.adp-modal-close[b-bsygpam6vq] {
    width: 30px;
    height: 30px;
    border: none;
    background: var(--neutral-100);
    cursor: pointer;
    display: grid;
    place-items: center;
    border-radius: 6px;
    color: var(--fg-3);
    flex-shrink: 0;
    transition: background .12s;
}
.adp-modal-close:hover[b-bsygpam6vq] { background: var(--neutral-200); }

.adp-modal-body[b-bsygpam6vq] { padding: 20px; }

.adp-modal-field-label[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
    margin-bottom: 8px;
}

/* Blood pressure row */
.adp-bp-row[b-bsygpam6vq] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
}

.adp-bp-wrap[b-bsygpam6vq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 4px;
    flex: 1;
}

.adp-bp-input[b-bsygpam6vq] {
    width: 100%;
    padding: 10px 12px;
    font-size: 20px;
    font-weight: 700;
    text-align: center;
    border: 2px solid var(--border-subtle);
    border-radius: 8px;
    outline: none;
    transition: border-color .15s;
    box-sizing: border-box;
}
.adp-bp-input:focus[b-bsygpam6vq] { border-color: var(--primary-400); }

.adp-bp-label[b-bsygpam6vq] { font-size: 11px; color: var(--fg-3); font-weight: 500; }

.adp-bp-sep[b-bsygpam6vq] {
    font-size: 28px;
    font-weight: 700;
    color: var(--fg-3);
    padding-bottom: 18px;
}

.adp-bp-unit[b-bsygpam6vq] {
    font-size: 12px;
    font-weight: 600;
    color: var(--fg-3);
    white-space: nowrap;
    padding-bottom: 18px;
}

/* Temperature + weight 2-col */
.adp-modal-2col[b-bsygpam6vq] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.adp-unit-input-wrap[b-bsygpam6vq] {
    position: relative;
    display: flex;
    align-items: center;
}

.adp-unit-input-wrap input[b-bsygpam6vq] {
    width: 100%;
    padding: 10px 44px 10px 12px;
    font-size: 15px;
    font-weight: 600;
    border: 2px solid var(--border-subtle);
    border-radius: 8px;
    outline: none;
    box-sizing: border-box;
    transition: border-color .15s;
}
.adp-unit-input-wrap input:focus[b-bsygpam6vq] { border-color: var(--primary-400); }

.adp-unit-badge[b-bsygpam6vq] {
    position: absolute;
    right: 10px;
    font-size: 12px;
    font-weight: 600;
    color: var(--fg-3);
    pointer-events: none;
}

/* Symptoms textarea */
.adp-symptoms-input[b-bsygpam6vq] {
    width: 100%;
    padding: 10px 12px;
    font-size: 14px;
    border: 2px solid var(--border-subtle);
    border-radius: 8px;
    outline: none;
    resize: vertical;
    box-sizing: border-box;
    font-family: inherit;
    color: var(--fg-1);
    transition: border-color .15s;
}
.adp-symptoms-input:focus[b-bsygpam6vq] { border-color: var(--primary-400); }

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 768px) {
    .adp-grid[b-bsygpam6vq] { grid-template-columns: 1fr; }
    .adp-modal-2col[b-bsygpam6vq] { grid-template-columns: 1fr; }
    .adp-vitals-grid[b-bsygpam6vq] { grid-template-columns: 1fr; }
    .adp-vital-item--full[b-bsygpam6vq] { grid-column: 1; }
}

/* ── Vitals modal placeholder opacity ─────────────────────── */
.adp-bp-input[b-bsygpam6vq]::placeholder,
.adp-unit-input-wrap input[b-bsygpam6vq]::placeholder,
.adp-symptoms-input[b-bsygpam6vq]::placeholder {
    color: var(--fg-4);
    opacity: .45;
}
/* /Features/Clinic/Pages/BillingDetailPage.razor.rz.scp.css */
/* ── Meta row under header ───────────────────────────────────── */
.bdr-meta-row[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    color: var(--fg-3);
    margin-top: 4px;
}

.bdr-record-id[b-ij5gip6s6i] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-family: var(--font-mono);
    font-size: 12px;
    background: var(--neutral-100);
    padding: 2px 7px;
    border-radius: 4px;
    color: var(--fg-2);
}

.bdr-dot[b-ij5gip6s6i] { color: var(--fg-4); }

/* ── Card ────────────────────────────────────────────────────── */
.bdr-card[b-ij5gip6s6i] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.bdr-card-header[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 12px 18px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-subtle);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
}

.bdr-badge-count[b-ij5gip6s6i] {
    margin-left: auto;
    font-size: 11px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    background: var(--neutral-200);
    color: var(--fg-2);
    padding: 1px 8px;
    border-radius: 20px;
}

/* ── Table ───────────────────────────────────────────────────── */
.bdr-table[b-ij5gip6s6i] {
    width: 100%;
    border-collapse: collapse;
}

.bdr-table thead th[b-ij5gip6s6i] {
    padding: 9px 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--fg-3);
    background: transparent;
    border-bottom: 1px solid var(--border-subtle);
}

.bdr-table tbody tr[b-ij5gip6s6i] {
    border-bottom: 1px solid var(--neutral-100);
    transition: background .12s;
}

.bdr-table tbody tr:last-child[b-ij5gip6s6i] { border-bottom: none; }
.bdr-table tbody tr:hover[b-ij5gip6s6i] { background: var(--neutral-50); }

.bdr-table td[b-ij5gip6s6i] {
    padding: 11px 16px;
    font-size: 13.5px;
    vertical-align: middle;
}

.bdr-th-r[b-ij5gip6s6i] { text-align: right; }
.bdr-td-r[b-ij5gip6s6i] { text-align: right; }
.bdr-muted[b-ij5gip6s6i] { color: var(--fg-3); }
.bdr-mono[b-ij5gip6s6i]  { font-family: var(--font-mono); font-size: 13px; }
.bdr-bold[b-ij5gip6s6i]  { font-weight: 600; }

.bdr-item-name[b-ij5gip6s6i] {
    font-weight: 500;
    color: var(--fg-1);
}

.bdr-empty-row[b-ij5gip6s6i] {
    text-align: center;
    color: var(--fg-3);
    font-size: 13px;
    padding: 28px !important;
}

.bdr-tfoot-row[b-ij5gip6s6i] { background: var(--neutral-50); }

.bdr-tfoot-label[b-ij5gip6s6i] {
    text-align: right;
    font-weight: 600;
    color: var(--fg-2);
    padding: 11px 16px;
    font-size: 13px;
}

.bdr-tfoot-val[b-ij5gip6s6i] {
    text-align: right;
    font-weight: 700;
    font-family: var(--font-mono);
    font-size: 14px;
    padding: 11px 16px;
    color: var(--fg-1);
}

/* ── Payment method cell ─────────────────────────────────────── */
.bdr-method-cell[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 9px;
}

.bdr-method-icon[b-ij5gip6s6i] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--primary-50);
    border: 1px solid var(--primary-100);
    display: grid;
    place-items: center;
    flex-shrink: 0;
    color: var(--primary-600);
}

.bdr-method-label[b-ij5gip6s6i] {
    font-weight: 500;
    color: var(--fg-1);
}

.bdr-paid[b-ij5gip6s6i] {
    color: var(--success-700, #047857);
}

/* ── Empty state ─────────────────────────────────────────────── */
.bdr-empty-state[b-ij5gip6s6i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 32px;
    color: var(--fg-3);
    font-size: 13px;
}

/* ── Status timeline ─────────────────────────────────────────── */
.bdr-timeline[b-ij5gip6s6i] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 4px 18px;
}

.bdr-timeline-step[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 11px 0;
    border-bottom: 1px solid var(--neutral-100);
    font-size: 13.5px;
}

.bdr-timeline-step:last-child[b-ij5gip6s6i] { border-bottom: none; }

.bdr-timeline-dot[b-ij5gip6s6i] {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    flex-shrink: 0;
}

.bdr-dot-done[b-ij5gip6s6i]    { background: #059669; color: #fff; }
.bdr-dot-current[b-ij5gip6s6i] { border: 2px solid var(--primary-500); background: var(--primary-50); }
.bdr-dot-future[b-ij5gip6s6i]  { border: 2px solid var(--border-subtle); background: #fff; }

.bdr-tl-done[b-ij5gip6s6i]    { color: var(--fg-2); }
.bdr-tl-current[b-ij5gip6s6i] { font-weight: 600; color: var(--fg-1); }
.bdr-tl-future[b-ij5gip6s6i]  { color: var(--fg-4); }

.bdr-current-pill[b-ij5gip6s6i] {
    margin-left: auto;
    font-size: 11px;
    font-weight: 600;
    color: var(--primary-600);
    background: var(--primary-50);
    padding: 2px 10px;
    border-radius: 20px;
    border: 1px solid var(--primary-200);
}

/* ── Balance card ────────────────────────────────────────────── */
.bdr-balance-card[b-ij5gip6s6i] {
    background: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-800) 100%);
    border-radius: var(--radius-lg);
    padding: 22px;
    color: #fff;
}

.bdr-balance-paid[b-ij5gip6s6i] {
    background: linear-gradient(135deg, #059669 0%, #065f46 100%);
}

.bdr-balance-label[b-ij5gip6s6i] {
    font-size: 10.5px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    opacity: .75;
    margin-bottom: 6px;
}

.bdr-balance-amount[b-ij5gip6s6i] {
    font-size: 36px;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1;
    margin-bottom: 18px;
}

.bdr-balance-divider[b-ij5gip6s6i] {
    height: 1px;
    background: rgba(255,255,255,.2);
    margin-bottom: 14px;
}

.bdr-balance-grid[b-ij5gip6s6i] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 16px;
}

.bdr-balance-sub-label[b-ij5gip6s6i] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .65;
    margin-bottom: 3px;
}

.bdr-balance-sub-val[b-ij5gip6s6i] {
    font-size: 16px;
    font-weight: 700;
}

.bdr-progress-track[b-ij5gip6s6i] {
    background: rgba(255,255,255,.2);
    border-radius: 4px;
    height: 6px;
    overflow: hidden;
    margin-bottom: 6px;
}

.bdr-progress-fill[b-ij5gip6s6i] {
    height: 100%;
    background: #fff;
    border-radius: 4px;
    transition: width .4s;
}

.bdr-progress-label[b-ij5gip6s6i] {
    font-size: 11px;
    opacity: .75;
}

/* ── Record details list ─────────────────────────────────────── */
.bdr-detail-list[b-ij5gip6s6i] { display: flex; flex-direction: column; }

.bdr-detail-row[b-ij5gip6s6i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 9px 18px;
    border-bottom: 1px solid var(--neutral-100);
    font-size: 13px;
}

.bdr-detail-key[b-ij5gip6s6i] { color: var(--fg-3); }
.bdr-detail-val[b-ij5gip6s6i] { font-weight: 500; color: var(--fg-1); }

/* ── Modal ───────────────────────────────────────────────────── */
.bdr-modal-backdrop[b-ij5gip6s6i] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.45);
    z-index: 400;
    display: flex;
    align-items: center;
    justify-content: center;
}

.bdr-modal[b-ij5gip6s6i] {
    background: #fff;
    border-radius: 14px;
    width: 460px;
    max-width: calc(100vw - 32px);
    box-shadow: 0 24px 64px rgba(0,0,0,.2);
    overflow: hidden;
}

.bdr-modal-header[b-ij5gip6s6i] {
    padding: 18px 20px;
    border-bottom: 1px solid var(--border-subtle);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.bdr-modal-title[b-ij5gip6s6i] {
    margin: 0;
    font-size: 17px;
    font-weight: 700;
    color: var(--fg-1);
}

.bdr-modal-close[b-ij5gip6s6i] {
    width: 30px;
    height: 30px;
    border: none;
    background: var(--neutral-100);
    cursor: pointer;
    display: grid;
    place-items: center;
    border-radius: 6px;
    color: var(--fg-3);
    transition: background .12s;
}

.bdr-modal-close:hover[b-ij5gip6s6i] { background: var(--neutral-200); }

.bdr-modal-body[b-ij5gip6s6i] { padding: 22px 20px; }

.bdr-modal-field-label[b-ij5gip6s6i] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
    margin-bottom: 6px;
}

.bdr-modal-amount-wrap[b-ij5gip6s6i] { margin-bottom: 20px; }

.bdr-amount-input-wrap[b-ij5gip6s6i] {
    position: relative;
}

.bdr-currency-symbol[b-ij5gip6s6i] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    font-weight: 600;
    color: var(--fg-3);
    pointer-events: none;
}

.bdr-amount-input[b-ij5gip6s6i] {
    width: 100%;
    padding: 12px 14px 12px 34px;
    font-size: 24px;
    font-weight: 700;
    border: 2px solid var(--border-subtle);
    border-radius: 8px;
    box-sizing: border-box;
    outline: none;
    color: var(--fg-1);
    transition: border-color .15s;
}

.bdr-amount-input:focus[b-ij5gip6s6i] { border-color: var(--primary-400); }

.bdr-amount-hint[b-ij5gip6s6i] {
    font-size: 12px;
    color: var(--fg-3);
    margin-top: 6px;
}

/* ── Complete appointment banner ─────────────────────────────── */
.bdr-complete-banner[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 16px;
    background: linear-gradient(180deg, var(--success-50, #f0fdf4) 0%, #fff 100%);
    border: 1px solid var(--success-200, #bbf7d0);
    border-radius: var(--radius-lg);
    padding: 16px 20px;
    margin-bottom: 20px;
}

.bdr-complete-banner--done[b-ij5gip6s6i] {
    background: var(--neutral-50);
    border-color: var(--border-subtle);
}

.bdr-complete-icon[b-ij5gip6s6i] {
    color: var(--success-600, #16a34a);
    flex-shrink: 0;
}

.bdr-complete-banner--done .bdr-complete-icon[b-ij5gip6s6i] { color: var(--fg-3); }

.bdr-complete-body[b-ij5gip6s6i] { flex: 1; min-width: 0; }

.bdr-complete-title[b-ij5gip6s6i] {
    font-size: 14px;
    font-weight: 600;
    color: var(--fg-1);
    margin-bottom: 2px;
}

.bdr-complete-sub[b-ij5gip6s6i] {
    font-size: 13px;
    color: var(--fg-3);
}

/* ── Two-column grid ─────────────────────────────────────────── */
.bdr-grid[b-ij5gip6s6i] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 16px;
    align-items: start;
}

/* ── Balance hero (full-width dark gradient) ─────────────────── */
.bdr-bal-hero[b-ij5gip6s6i] {
    background: linear-gradient(135deg, #0c5b66 0%, #0a4753 100%);
    color: #fff;
    padding: 24px 28px;
    margin: -28px -28px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.bdr-bal-hero--paid[b-ij5gip6s6i] {
    background: linear-gradient(135deg, #065f46 0%, #064e3b 100%);
}

.bdr-bal-hero-left[b-ij5gip6s6i] { flex: 1; min-width: 180px; }

.bdr-bal-eyebrow[b-ij5gip6s6i] {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    opacity: .7;
    margin-bottom: 6px;
}

.bdr-bal-amount[b-ij5gip6s6i] {
    font-size: 38px;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1;
}

.bdr-bal-stats[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 20px;
}

.bdr-bal-stat[b-ij5gip6s6i] { display: flex; flex-direction: column; gap: 3px; }

.bdr-bal-stat-label[b-ij5gip6s6i] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .65;
}

.bdr-bal-stat-val[b-ij5gip6s6i] {
    font-size: 15px;
    font-weight: 700;
}

.bdr-bal-stat-sep[b-ij5gip6s6i] {
    width: 1px;
    height: 32px;
    background: rgba(255,255,255,.25);
    flex-shrink: 0;
}

.bdr-bal-progress-wrap[b-ij5gip6s6i] {
    width: 100%;
    flex-basis: 100%;
    padding-top: 16px;
}

.bdr-bal-progress-track[b-ij5gip6s6i] {
    background: rgba(255,255,255,.2);
    border-radius: 4px;
    height: 6px;
    overflow: hidden;
}

.bdr-bal-progress-fill[b-ij5gip6s6i] {
    height: 100%;
    background: linear-gradient(90deg, #79e0d6, #b9eee8);
    border-radius: 4px;
    transition: width .4s;
}

/* ── Payment empty state ─────────────────────────────────────── */
.bdr-pay-empty[b-ij5gip6s6i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 40px 24px;
}

.bdr-pay-empty-icon[b-ij5gip6s6i] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--neutral-100);
    border: 1px solid var(--border-subtle);
    display: grid;
    place-items: center;
    color: var(--fg-4);
    margin-bottom: 4px;
}

.bdr-pay-empty-title[b-ij5gip6s6i] {
    font-size: 14px;
    font-weight: 600;
    color: var(--fg-2);
}

.bdr-pay-empty-sub[b-ij5gip6s6i] {
    font-size: 13px;
    color: var(--fg-3);
    margin-bottom: 6px;
}

/* ── Header breakdown chips ──────────────────────────────────── */
.bdr-header-breakdown[b-ij5gip6s6i] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 6px;
}

.bdr-breakdown-sep[b-ij5gip6s6i] {
    color: var(--fg-4);
    font-size: 11px;
}

.bdr-breakdown-chip[b-ij5gip6s6i] {
    font-size: 11px;
    font-weight: 600;
    padding: 2px 9px;
    border-radius: 20px;
    text-transform: none;
    letter-spacing: 0;
}

.bdr-breakdown-chip--service[b-ij5gip6s6i] {
    background: #cffafe;
    color: #0e7490;
}

.bdr-breakdown-chip--consumable[b-ij5gip6s6i] {
    background: var(--neutral-200);
    color: var(--fg-2);
}

/* ── Line item section labels ────────────────────────────────── */
.bdr-section-label[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 7px 16px;
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .09em;
    border-top: 1px solid var(--border-subtle);
}

.bdr-section-label--service[b-ij5gip6s6i] {
    background: #f0fdfa;
    color: #0e7490;
    border-top: none;
    border-bottom: 1px solid #cffafe;
}

.bdr-section-label--consumables[b-ij5gip6s6i] {
    background: var(--neutral-50);
    color: var(--fg-3);
    border-bottom: 1px solid var(--border-subtle);
}

.bdr-section-count[b-ij5gip6s6i] {
    margin-left: auto;
    font-size: 10.5px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    background: var(--neutral-200);
    color: var(--fg-3);
    padding: 1px 7px;
    border-radius: 20px;
}

/* Service fee row — subtle teal tint + left border accent */
.bdr-row-service[b-ij5gip6s6i] {
    border-bottom: none !important;
    background: #f0fdfa;
}

.bdr-row-service:hover[b-ij5gip6s6i] { background: #e6faf7 !important; }

.bdr-row-service td:first-child[b-ij5gip6s6i] {
    border-left: 3px solid #0e7490;
}

.bdr-service-total[b-ij5gip6s6i] { color: #0e7490 !important; }

/* Consumable item name with dot marker */
.bdr-consumable-name[b-ij5gip6s6i] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-weight: 500;
    color: var(--fg-1);
}

.bdr-consumable-dot[b-ij5gip6s6i] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--neutral-300);
    flex-shrink: 0;
}

/* Grand total bar */
.bdr-grand-total[b-ij5gip6s6i] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 13px 16px;
    background: var(--neutral-50);
    border-top: 2px solid var(--border-subtle);
}

.bdr-grand-total-label[b-ij5gip6s6i] {
    font-size: 13px;
    font-weight: 600;
    color: var(--fg-2);
}

.bdr-grand-total-val[b-ij5gip6s6i] {
    font-family: var(--font-mono);
    font-size: 15px;
    font-weight: 700;
    color: var(--fg-1);
}

/* ── Payment method tiles ────────────────────────────────────── */
.cl-pay-methods[b-ij5gip6s6i] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.pay-method-tile[b-ij5gip6s6i] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    padding: 10px 14px;
    border: 1.5px solid var(--border-default);
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
    font-size: 12px;
    font-weight: 500;
    color: var(--fg-2);
    min-width: 62px;
    transition: border-color .12s, background .12s, color .12s;
}

.pay-method-tile:hover[b-ij5gip6s6i] {
    border-color: var(--primary-400);
    color: var(--primary-600);
    background: var(--primary-50);
}

.pay-method-tile--selected[b-ij5gip6s6i] {
    border-color: var(--primary-500);
    background: var(--primary-50);
    color: var(--primary-700);
    box-shadow: 0 0 0 2px var(--primary-200);
}
/* /Features/Clinic/Pages/BillingIndexPage.razor.rz.scp.css */
.bi-summary-row[b-02v3pi2q5e] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 12px;
    margin-bottom: 20px;
}

.bi-stat-card[b-02v3pi2q5e] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 18px 20px;
}

.bi-stat-card__label[b-02v3pi2q5e] {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
    margin-bottom: 8px;
}

.bi-stat-card__value[b-02v3pi2q5e] {
    font-size: 22px;
    font-weight: 700;
    color: var(--fg-1);
    letter-spacing: -.02em;
}

.bi-stat-card__value--success[b-02v3pi2q5e] { color: var(--success-600, #16a34a); }
.bi-stat-card__value--danger[b-02v3pi2q5e]  { color: var(--danger-600); }

/* Lookup card */
.bi-lookup-card[b-02v3pi2q5e] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    padding: 20px;
}

.bi-lookup-title[b-02v3pi2q5e] {
    font-size: 13px;
    font-weight: 600;
    color: var(--fg-2);
    margin: 0 0 12px;
}

.bi-search-wrap[b-02v3pi2q5e] {
    position: relative;
}

.bi-search-icon[b-02v3pi2q5e] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--fg-3);
    pointer-events: none;
    display: flex;
    align-items: center;
    z-index: 1;
}

.bi-search-input[b-02v3pi2q5e] {
    width: 100%;
    max-width: 480px;
    padding-left: 32px !important;
}

.bi-dropdown[b-02v3pi2q5e] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    width: 480px;
    background: #fff;
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    z-index: 200;
    overflow: hidden;
}

.bi-dropdown__item[b-02v3pi2q5e] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    cursor: pointer;
    transition: background .12s;
}

.bi-dropdown__item:hover[b-02v3pi2q5e] {
    background: var(--primary-50);
}

.bi-dropdown__body[b-02v3pi2q5e] {
    flex: 1;
    min-width: 0;
}

.bi-dropdown__name[b-02v3pi2q5e] {
    font-size: 14px;
    font-weight: 500;
    color: var(--fg-1);
}

.bi-dropdown__meta[b-02v3pi2q5e] {
    font-size: 12px;
    color: var(--fg-3);
    margin-top: 1px;
}

.bi-dropdown__empty[b-02v3pi2q5e] {
    padding: 12px 14px;
    font-size: 13px;
    color: var(--fg-3);
}

/* Filter pills */
.bi-filter-group[b-02v3pi2q5e] {
    display: flex;
    gap: 4px;
}

.bi-filter-btn[b-02v3pi2q5e] {
    padding: 4px 12px;
    font-size: 12px;
    font-weight: 500;
    border-radius: var(--radius-full, 9999px);
    border: 1px solid var(--border-default);
    background: transparent;
    color: var(--fg-2);
    cursor: pointer;
    transition: background .12s, border-color .12s, color .12s;
    white-space: nowrap;
}

.bi-filter-btn:hover[b-02v3pi2q5e] {
    background: var(--primary-50);
    border-color: var(--primary-200);
    color: var(--fg-1);
}

.bi-filter-btn--active[b-02v3pi2q5e] {
    background: var(--primary-600);
    border-color: var(--primary-600);
    color: #fff;
}

.bi-filter-btn--active:hover[b-02v3pi2q5e] {
    background: var(--primary-700);
    border-color: var(--primary-700);
    color: #fff;
}
/* /Features/Clinic/Pages/ProcedureExecutionPage.razor.rz.scp.css */
/* ── Fee hero ─────────────────────────────────────────────────── */
.pep-fee-hero[b-4w34vieg2h] {
    background: linear-gradient(135deg, var(--primary-600) 0%, var(--primary-700) 100%);
    color: #fff;
    padding: 22px 28px;
    margin: -28px -28px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    border-bottom: 1px solid rgba(255,255,255,.15);
}

.pep-fee-left[b-4w34vieg2h] { flex: 1; }

.pep-fee-eyebrow[b-4w34vieg2h] {
    font-size: 10.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .12em;
    opacity: .7;
    margin-bottom: 6px;
}

.pep-fee-amount[b-4w34vieg2h] {
    font-size: 36px;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1;
}

.pep-fee-meta[b-4w34vieg2h] {
    display: flex;
    gap: 24px;
    align-items: center;
}

.pep-fee-meta-item[b-4w34vieg2h] { display: flex; flex-direction: column; gap: 3px; }

.pep-fee-meta-label[b-4w34vieg2h] {
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .08em;
    opacity: .65;
}

.pep-fee-meta-val[b-4w34vieg2h] {
    font-size: 14px;
    font-weight: 600;
}

.pep-fee-meta-sep[b-4w34vieg2h] {
    width: 1px;
    height: 32px;
    background: rgba(255,255,255,.25);
    flex-shrink: 0;
}

/* ── Page grid ────────────────────────────────────────────────── */
.pep-grid[b-4w34vieg2h] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 16px;
    align-items: start;
}

/* ── Next-step CTA (confirmed state) ─────────────────────────── */
.pep-cta[b-4w34vieg2h] {
    background: linear-gradient(180deg, var(--success-50, #f0fdf4) 0%, #fff 100%);
    border: 1px solid var(--success-200, #bbf7d0);
    border-radius: var(--radius-lg);
    padding: 18px 20px;
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 20px;
}

.pep-cta-icon[b-4w34vieg2h] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: #fff;
    border: 1px solid var(--success-200, #bbf7d0);
    display: grid;
    place-items: center;
    color: var(--success-600, #16a34a);
    flex-shrink: 0;
}

.pep-cta-body[b-4w34vieg2h] { flex: 1; min-width: 0; }

.pep-cta-eyebrow[b-4w34vieg2h] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--success-600, #16a34a);
    margin-bottom: 2px;
}

.pep-cta-title[b-4w34vieg2h] {
    font-size: 15px;
    font-weight: 600;
    color: var(--fg-1);
    margin-bottom: 2px;
}

.pep-cta-sub[b-4w34vieg2h] { font-size: 13px; color: var(--fg-3); }

/* ── Consumables card ─────────────────────────────────────────── */
.pep-con-card[b-4w34vieg2h] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.pep-con-head[b-4w34vieg2h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 18px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-subtle);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
}

.pep-con-count[b-4w34vieg2h] {
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    background: var(--neutral-200);
    color: var(--fg-2);
    padding: 1px 8px;
    border-radius: 20px;
    font-size: 11px;
}

.pep-con-table[b-4w34vieg2h] {
    width: 100%;
    border-collapse: collapse;
}

.pep-con-table thead th[b-4w34vieg2h] {
    padding: 9px 16px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--fg-3);
    background: transparent;
    border-bottom: 1px solid var(--border-subtle);
}

.pep-con-table tbody tr[b-4w34vieg2h] {
    border-bottom: 1px solid var(--neutral-100);
    transition: background .12s;
}

.pep-con-table tbody tr:last-child[b-4w34vieg2h] { border-bottom: none; }
.pep-con-table tbody tr:hover[b-4w34vieg2h] { background: var(--neutral-50); }

.pep-con-table td[b-4w34vieg2h] {
    padding: 11px 16px;
    font-size: 13.5px;
    vertical-align: middle;
}

.pep-th-c[b-4w34vieg2h] { text-align: center; }
.pep-td-c[b-4w34vieg2h] { text-align: center; }

/* Overridden row */
.pep-row-overridden[b-4w34vieg2h] {
    background: linear-gradient(90deg, rgba(183,110,0,.06), rgba(183,110,0,.02)) !important;
}

.pep-row-overridden td:first-child[b-4w34vieg2h] {
    box-shadow: inset 3px 0 0 var(--warning-500, #f59e0b);
}

.pep-item-name[b-4w34vieg2h] { font-weight: 500; color: var(--fg-1); }

.pep-item-sub[b-4w34vieg2h] {
    font-size: 11px;
    color: var(--fg-4);
    margin-top: 2px;
    font-family: var(--font-mono);
}

.pep-over-tag[b-4w34vieg2h] {
    display: inline-flex;
    align-items: center;
    margin-left: 8px;
    font-size: 10px;
    font-weight: 700;
    color: var(--warning-700, #b45309);
    background: var(--warning-50, #fffbeb);
    border: 1px solid var(--warning-200, #fde68a);
    padding: 1px 7px;
    border-radius: 20px;
    vertical-align: middle;
}

/* Qty with mini bar */
.pep-qty-wrap[b-4w34vieg2h] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    min-width: 56px;
}

.pep-qty-val[b-4w34vieg2h] {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--fg-1);
}

.pep-qty-bar-track[b-4w34vieg2h] {
    width: 44px;
    height: 4px;
    background: var(--neutral-200);
    border-radius: 2px;
    overflow: hidden;
}

.pep-qty-bar-fill[b-4w34vieg2h] {
    height: 100%;
    border-radius: 2px;
    background: var(--primary-500);
    transition: width .3s;
}

.pep-qty-bar-fill--over[b-4w34vieg2h] { background: var(--warning-500, #f59e0b); }

/* Variance */
.pep-variance[b-4w34vieg2h] { font-size: 12.5px; font-weight: 600; }
.pep-var-pos[b-4w34vieg2h]  { color: var(--warning-600, #d97706); }
.pep-var-neg[b-4w34vieg2h]  { color: var(--success-600, #16a34a); }
.pep-var-zero[b-4w34vieg2h] { color: var(--fg-4); }

/* Qty stepper control */
.pep-qty-ctrl[b-4w34vieg2h] {
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--border-subtle);
    border-radius: 6px;
    overflow: hidden;
}

.pep-qty-btn[b-4w34vieg2h] {
    width: 28px;
    height: 28px;
    border: none;
    background: var(--neutral-50);
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    color: var(--fg-2);
    display: grid;
    place-items: center;
    transition: background .1s;
}

.pep-qty-btn:hover[b-4w34vieg2h] { background: var(--neutral-100); }

.pep-qty-display[b-4w34vieg2h] {
    min-width: 32px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    color: var(--fg-1);
    padding: 0 4px;
}

/* ── Procedure details card ───────────────────────────────────── */
.pep-details-card[b-4w34vieg2h] {
    background: #fff;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg);
    overflow: hidden;
}

.pep-details-head[b-4w34vieg2h] {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 12px 18px;
    background: var(--neutral-50);
    border-bottom: 1px solid var(--border-subtle);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fg-3);
}

.pep-details-list[b-4w34vieg2h] { display: flex; flex-direction: column; }

.pep-details-row[b-4w34vieg2h] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 18px;
    border-bottom: 1px solid var(--neutral-100);
    font-size: 13px;
    gap: 12px;
}

.pep-details-row:last-child[b-4w34vieg2h] { border-bottom: none; }
.pep-dk[b-4w34vieg2h] { color: var(--fg-3); flex-shrink: 0; }
.pep-dv[b-4w34vieg2h] { font-weight: 500; color: var(--fg-1); text-align: right; }
/* /Features/Marketing/Pricing/PricingPage.razor.rz.scp.css */
/* Dental-specific header nav styles for the /pricing page.
   The rest of the pricing layout lives in the shared
   Simplicity.UI/Components/Marketing/PricingPanel.razor.css component. */

[b-431mzmo6dp] .dpx-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 32px;
    max-width: 1240px;
    width: 100%;
    margin: 0 auto;
}

[b-431mzmo6dp] .dpx-nav__logo {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #161a21;
}

[b-431mzmo6dp] .dpx-nav__logo-mark {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: linear-gradient(135deg, #2596be, #195f7c);
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

[b-431mzmo6dp] .dpx-nav__logo-name {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.01em;
}

[b-431mzmo6dp] .dpx-nav__logo-product {
    color: #1d7a9d;
    font-weight: 600;
}

[b-431mzmo6dp] .dpx-nav__actions {
    display: flex;
    align-items: center;
    gap: 22px;
}

[b-431mzmo6dp] .dpx-nav__link {
    color: #363d49;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    transition: color 120ms;
}

[b-431mzmo6dp] .dpx-nav__link:hover { color: #161a21; }

[b-431mzmo6dp] .dpx-nav__link--active {
    color: #195f7c;
    font-weight: 600;
}

@media (max-width: 900px) {
    [b-431mzmo6dp] .dpx-nav { padding: 16px 20px; }
    [b-431mzmo6dp] .dpx-nav__actions { gap: 12px; }
}
