html, body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

a, .btn-link {
    color: #006bb7;
}

.btn-primary {
    color: #fff;
    background-color: #1b6ec2;
    border-color: #1861ac;
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

.content {
    padding-top: 1.1rem;
}

h1:focus {
    outline: none;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.business-page {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 1180px;
}

.page-heading {
    display: flex;
    gap: 1rem;
    align-items: flex-start;
    justify-content: space-between;
    border-bottom: 1px solid #d9dee5;
    padding-bottom: 1rem;
}

.page-heading h1 {
    margin: 0;
    font-size: 1.65rem;
}

.page-heading p {
    margin: 0.35rem 0 0;
    color: #5d6673;
}

.button-row,
.form-actions,
.home-actions,
.pager,
.status-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.toolbar {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(160px, auto) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.85rem;
    background: #f4f6f8;
    border: 1px solid #dfe4ea;
    border-radius: 8px;
}

.business-form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.business-form.compact {
    gap: 0.75rem;
}

.form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.form-field {
    min-width: 0;
}

.form-field.wide {
    grid-column: 1 / -1;
}

.form-field.span-2 {
    grid-column: 1 / -1;
}

.form-label {
    font-weight: 600;
}

.table-wrap {
    width: 100%;
    overflow-x: auto;
}

.business-table {
    min-width: 760px;
}

.pricing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.pricing-card {
    display: grid;
    gap: 0.9rem;
    align-content: start;
    padding: 1rem;
    border: 1px solid #dfe4ea;
    border-radius: 8px;
    background: #fff;
}

.pricing-card h2 {
    margin: 0;
    font-size: 1.25rem;
}

.pricing-card p {
    overflow-wrap: anywhere;
}

.pricing-prices {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
    margin: 0;
}

.pricing-prices.is-monthly-only {
    grid-template-columns: 1fr;
}

.pricing-prices div {
    min-width: 0;
    padding: 0.75rem;
    border-radius: 6px;
    background: #f4f6f8;
}

.pricing-prices dt {
    color: #667085;
    font-size: 0.85rem;
    font-weight: 700;
}

.pricing-prices dd {
    margin: 0;
    font-weight: 700;
    overflow-wrap: anywhere;
}

.pricing-meta {
    color: #5d6673;
}

.delivery-card-list {
    display: none;
}

.delivery-list-card {
    display: grid;
    gap: 0.8rem;
    padding: 0.95rem;
    border: 1px solid #dfe4ea;
    border-radius: 8px;
    background: #fff;
}

.delivery-list-card-head {
    display: flex;
    gap: 0.75rem;
    align-items: flex-start;
    justify-content: space-between;
}

.delivery-list-card-title {
    display: grid;
    gap: 0.2rem;
    min-width: 0;
}

.delivery-list-card-title strong,
.delivery-list-card-title span {
    overflow-wrap: anywhere;
}

.delivery-list-card-title span {
    color: #3f4a55;
}

.delivery-list-card-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem 0.9rem;
    margin: 0;
}

.delivery-list-card-meta div {
    min-width: 0;
}

.delivery-list-card-meta dt {
    color: #667085;
    font-size: 0.83rem;
    font-weight: 700;
}

.delivery-list-card-meta dd {
    margin: 0;
    overflow-wrap: anywhere;
}

.delivery-list-card .btn {
    justify-self: stretch;
}

.empty-state,
.notes-block,
.detail-grid {
    border: 1px solid #dfe4ea;
    border-radius: 8px;
    background: #fff;
    padding: 1rem;
}

.empty-state {
    color: #5d6673;
    background: #f8fafb;
}

.detail-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.detail-grid div {
    min-width: 0;
    padding: 0.65rem;
    background: #f8fafb;
    border-radius: 6px;
}

.detail-grid span {
    display: block;
    color: #667085;
    font-size: 0.85rem;
}

.detail-grid strong {
    display: block;
    overflow-wrap: anywhere;
}

.notes-block h2 {
    margin: 0 0 0.75rem;
    font-size: 1.15rem;
}

.notes-block p {
    margin-bottom: 0;
    white-space: pre-wrap;
}

.pager {
    justify-content: flex-end;
}

.totals {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: flex-end;
    padding: 0.85rem 0 0;
}

.item-actions {
    min-width: 220px;
}

.dashboard-page {
    gap: 1.15rem;
}

.dashboard-hero,
.dashboard-card,
.dashboard-loading,
.dashboard-alert {
    border: 1px solid #dfe7ec;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(23, 55, 63, 0.07);
}

.dashboard-hero {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    padding: 1.35rem;
    background: #f8fbfc;
}

.dashboard-hero-text {
    min-width: 0;
}

.dashboard-eyebrow,
.dashboard-card-label {
    margin: 0 0 0.35rem;
    color: #27606d;
    font-size: 0.86rem;
    font-weight: 700;
}

.dashboard-hero h1 {
    margin: 0;
    color: #17373f;
    font-size: 1.8rem;
    line-height: 1.25;
}

.dashboard-hero p {
    margin: 0.45rem 0 0;
    color: #52616b;
}

.dashboard-welcome {
    font-weight: 600;
}

.dashboard-hero-actions,
.dashboard-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
}

.dashboard-hero-actions {
    justify-content: flex-end;
}

.dashboard-summary-grid,
.dashboard-action-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.9rem;
}

.dashboard-card {
    padding: 1rem;
    min-width: 0;
}

.dashboard-summary-card {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.dashboard-summary-card strong {
    color: #17373f;
    font-size: 1.55rem;
    line-height: 1.15;
}

.dashboard-summary-card > span {
    color: #5d6673;
}

.dashboard-summary-card.needs-attention {
    border-color: #efc15c;
    background: #fffaf0;
}

.dashboard-summary-card.is-ready {
    border-color: #b7d8cc;
    background: #f7fcfa;
}

.dashboard-card-actions {
    margin-top: auto;
}

.dashboard-card-actions a {
    font-weight: 600;
    text-decoration: none;
}

.dashboard-card-actions a:hover,
.dashboard-card-actions a:focus {
    text-decoration: underline;
}

.dashboard-mini-list {
    display: grid;
    gap: 0.35rem;
    margin: 0;
}

.dashboard-mini-list div {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
}

.dashboard-mini-list dt {
    color: #5d6673;
    font-weight: 500;
}

.dashboard-mini-list dd {
    margin: 0;
    font-weight: 700;
}

.dashboard-section-heading {
    margin-bottom: 0.85rem;
}

.dashboard-section-heading h2 {
    margin: 0;
    color: #17373f;
    font-size: 1.15rem;
}

.dashboard-section-heading p {
    margin: 0.25rem 0 0;
    color: #63717d;
}

.dashboard-action-card {
    display: flex;
    gap: 0.8rem;
    align-items: flex-start;
    min-height: 6.5rem;
    padding: 1rem;
    color: #17373f;
    text-decoration: none;
    border: 1px solid #dfe7ec;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 6px 16px rgba(23, 55, 63, 0.06);
}

.dashboard-action-card:hover,
.dashboard-action-card:focus {
    color: #123039;
    border-color: #9fc2ce;
    background: #f8fbfc;
    text-decoration: none;
}

.dashboard-action-card:focus-visible,
.dashboard-card a:focus-visible,
.dashboard-hero a:focus-visible {
    outline: 3px solid #258cfb;
    outline-offset: 3px;
}

.dashboard-action-card strong,
.dashboard-action-card small {
    display: block;
}

.dashboard-action-card small {
    margin-top: 0.25rem;
    color: #5d6673;
    line-height: 1.45;
}

.dashboard-action-card .bi {
    flex: 0 0 2.2rem;
    width: 2.2rem;
    height: 2.2rem;
    margin: 0;
    border-radius: 8px;
    background-color: #e9f4f7;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 1.05rem;
}

.bi-file-earmark-plus-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='M8 6.5a.5.5 0 0 1 .5.5v1.5H10a.5.5 0 0 1 0 1H8.5V11a.5.5 0 0 1-1 0V9.5H6a.5.5 0 0 1 0-1h1.5V7a.5.5 0 0 1 .5-.5z'/%3E%3Cpath d='M14 4.5V14a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2h5.5L14 4.5zm-3.5 0A1.5 1.5 0 0 1 9 3V1H4a1 1 0 0 0-1 1v12a1 1 0 0 0 1 1h8a1 1 0 0 0 1-1V5h-2.5z'/%3E%3C/svg%3E");
}

.bi-person-plus-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='M6 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6zM4.5 9A4.5 4.5 0 0 0 0 13.5.5.5 0 0 0 .5 14h8.1a5.5 5.5 0 0 1-.6-1H1.1A3.5 3.5 0 0 1 4.5 10h3A3.5 3.5 0 0 1 9 10.34a5.5 5.5 0 0 1 .75-.66A4.5 4.5 0 0 0 7.5 9h-3z'/%3E%3Cpath d='M13.5 10a.5.5 0 0 1 .5.5V12h1.5a.5.5 0 0 1 0 1H14v1.5a.5.5 0 0 1-1 0V13h-1.5a.5.5 0 0 1 0-1H13v-1.5a.5.5 0 0 1 .5-.5z'/%3E%3C/svg%3E");
}

.bi-folder-plus-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='m.5 3 .04-.87A2 2 0 0 1 2.53.5H6l2 2h5.5A2.5 2.5 0 0 1 16 5v6.5a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 0 11.5v-8A.5.5 0 0 1 .5 3zM8 7.5a.5.5 0 0 0-1 0V9H5.5a.5.5 0 0 0 0 1H7v1.5a.5.5 0 0 0 1 0V10h1.5a.5.5 0 0 0 0-1H8V7.5z'/%3E%3C/svg%3E");
}

.bi-order-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='M2 1.5A1.5 1.5 0 0 1 3.5 0h6.8L14 3.7v10.8A1.5 1.5 0 0 1 12.5 16h-9A1.5 1.5 0 0 1 2 14.5v-13zM9.8 1v3.2H13L9.8 1zM5 6.5a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm0 2.5a.5.5 0 0 0 0 1h6a.5.5 0 0 0 0-1H5zm0 2.5a.5.5 0 0 0 0 1h3.5a.5.5 0 0 0 0-1H5z'/%3E%3C/svg%3E");
}

.bi-building-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='M4 2.5A1.5 1.5 0 0 1 5.5 1h5A1.5 1.5 0 0 1 12 2.5V15h1.5a.5.5 0 0 1 0 1h-11a.5.5 0 0 1 0-1H4V2.5zM5.5 2a.5.5 0 0 0-.5.5V15h6V2.5a.5.5 0 0 0-.5-.5h-5z'/%3E%3Cpath d='M6 4h1v1H6V4zm3 0h1v1H9V4zM6 7h1v1H6V7zm3 0h1v1H9V7zm-3 3h1v1H6v-1zm3 0h1v1H9v-1z'/%3E%3C/svg%3E");
}

.bi-ai-dashboard {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2327606d' viewBox='0 0 16 16'%3E%3Cpath d='M8 0a.75.75 0 0 1 .75.75V2h1A2.25 2.25 0 0 1 12 4.25v.5h1.25a.75.75 0 0 1 0 1.5H12v1.5h1.25a.75.75 0 0 1 0 1.5H12v.5A2.25 2.25 0 0 1 9.75 12h-1v1.25a.75.75 0 0 1-1.5 0V12h-1A2.25 2.25 0 0 1 4 9.75v-.5H2.75a.75.75 0 0 1 0-1.5H4v-1.5H2.75a.75.75 0 0 1 0-1.5H4v-.5A2.25 2.25 0 0 1 6.25 2h1V.75A.75.75 0 0 1 8 0Zm-1.75 3.5a.75.75 0 0 0-.75.75v5.5c0 .414.336.75.75.75h3.5a.75.75 0 0 0 .75-.75v-5.5a.75.75 0 0 0-.75-.75h-3.5ZM6.75 6.25a.75.75 0 1 1 1.5 0 .75.75 0 0 1-1.5 0Zm2.5 0a.75.75 0 1 1 1.5 0 .75.75 0 0 1-1.5 0ZM6.75 9h2.5a.5.5 0 0 1 0 1h-2.5a.5.5 0 0 1 0-1Z'/%3E%3C/svg%3E");
}

.ai-suggestion-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(240px, 0.8fr);
    gap: 1rem;
}

.ai-apply-mobile-list {
    display: none;
}

.ai-apply-mobile-item {
    display: grid;
    gap: 0.7rem;
    padding: 0.85rem 0;
    border-top: 1px solid #e2e8ee;
}

.ai-apply-mobile-item:first-child {
    border-top: 0;
}

.ai-apply-mobile-item-heading {
    align-items: flex-start;
}

.ai-apply-mobile-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
}

.ai-apply-mobile-field {
    display: grid;
    gap: 0.3rem;
    margin: 0;
    font-weight: 700;
}

.ai-apply-mobile-field span {
    color: #3f4a55;
    font-size: 0.88rem;
}

.dashboard-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(260px, 0.85fr);
    gap: 1rem;
    align-items: start;
}

.dashboard-recent-table {
    width: 100%;
    overflow-x: auto;
}

.dashboard-recent .business-table {
    min-width: 680px;
}

.dashboard-recent .business-table td,
.dashboard-recent .business-table th {
    vertical-align: middle;
}

.dashboard-recent-cards {
    display: none;
}

.dashboard-content-grid > .dashboard-recent-tabs-card:only-child {
    grid-column: 1 / -1;
}

.dashboard-recent-heading {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: flex-start;
}

.dashboard-recent-tabs {
    display: flex;
    gap: 0.4rem;
    overflow-x: auto;
    padding: 0.2rem 0 0.7rem;
    border-bottom: 1px solid #dfe7ec;
    scrollbar-width: thin;
}

.dashboard-recent-tabs button {
    display: inline-flex;
    flex: 0 0 auto;
    gap: 0.45rem;
    align-items: center;
    min-height: 2.35rem;
    padding: 0.4rem 0.75rem;
    border: 1px solid #cbd8de;
    border-radius: 999px;
    background: #fff;
    color: #31586a;
    font-weight: 700;
}

.dashboard-recent-tabs button:hover,
.dashboard-recent-tabs button:focus-visible {
    border-color: #2f7895;
    background: #eef8fb;
}

.dashboard-recent-tabs button:focus-visible {
    outline: 3px solid #258cfb;
    outline-offset: 2px;
}

.dashboard-recent-tabs button.is-active {
    border-color: #27606d;
    background: #27606d;
    color: #fff;
}

.dashboard-recent-tabs button small {
    display: inline-grid;
    min-width: 1.45rem;
    min-height: 1.45rem;
    place-items: center;
    border-radius: 999px;
    background: #eaf4f7;
    color: #31586a;
    font-size: 0.75rem;
}

.dashboard-recent-tabs button.is-active small {
    background: #fff;
}

.dashboard-recent-panel {
    min-width: 0;
    padding-top: 0.8rem;
}

.dashboard-recent-panel:focus-visible {
    outline: 3px solid #258cfb;
    outline-offset: 3px;
}

.dashboard-recent-table td:first-child {
    min-width: 13rem;
    max-width: 20rem;
}

.dashboard-recent-table td:first-child strong,
.dashboard-recent-table td:first-child span,
.dashboard-recent-table td:first-child small {
    display: block;
}

.dashboard-recent-secondary,
.dashboard-recent-table td:first-child small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-recent-secondary {
    margin-top: 0.15rem;
    color: #344054;
}

.dashboard-recent-table td:first-child small {
    margin-top: 0.1rem;
    color: #667085;
}

.dashboard-detail-link {
    display: inline-flex;
    padding: 0.3rem 0.5rem;
    border-radius: 5px;
    font-weight: 700;
    text-decoration: none;
}

.dashboard-detail-link:hover,
.dashboard-detail-link:focus-visible {
    background: #eaf4f7;
}

.dashboard-recent-empty {
    min-height: 7rem;
    align-content: center;
}

.dashboard-recent-footer {
    display: flex;
    justify-content: flex-end;
    padding-top: 0.8rem;
    border-top: 1px solid #edf1f3;
}

.dashboard-status {
    display: inline-flex;
    align-items: center;
    min-height: 1.7rem;
    padding: 0.15rem 0.55rem;
    border-radius: 999px;
    font-size: 0.86rem;
    font-weight: 700;
    white-space: nowrap;
}

.status-draft {
    color: #4f3d00;
    background: #fff3bf;
}

.status-issued {
    color: #0f4c81;
    background: #dceeff;
}

.status-accepted {
    color: #17603d;
    background: #dff5e9;
}

.status-rejected,
.status-cancelled,
.status-neutral {
    color: #5b6470;
    background: #eef1f4;
}

.dashboard-empty-state {
    display: grid;
    gap: 0.75rem;
    justify-items: start;
}

.dashboard-guide ol {
    display: grid;
    gap: 0.65rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.dashboard-guide li {
    display: grid;
    gap: 0.2rem;
    padding: 0.7rem 0.8rem;
    border-radius: 8px;
    border: 1px solid #e2e8ee;
    background: #f8fafb;
}

.dashboard-guide li span {
    font-weight: 700;
}

.dashboard-guide li small {
    color: #667085;
}

.dashboard-guide li.is-complete {
    border-color: #cce5d7;
    background: #f7fcfa;
}

.dashboard-guide li.is-complete small {
    color: #17603d;
    font-weight: 700;
}

.dashboard-loading,
.dashboard-alert {
    padding: 1rem;
}

@media (max-width: 900px) {
    .toolbar {
        grid-template-columns: 1fr;
    }

    .detail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-summary-grid,
    .dashboard-action-grid,
    .dashboard-content-grid,
    .ai-suggestion-grid,
    .pricing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-content-grid {
        align-items: stretch;
    }
}

@media (max-width: 1100px) {
    .delivery-table-view {
        display: none;
    }

    .delivery-card-list {
        display: grid;
        gap: 0.75rem;
    }

    .ai-apply-table {
        display: none;
    }

    .ai-apply-mobile-list {
        display: grid;
        gap: 0.35rem;
    }
}

.dashboard-ai-insights {
    margin-top: 1rem;
    padding: 1.15rem;
    border-left: 4px solid #2f6f8f;
    background: linear-gradient(100deg, #f5fafc 0%, #fff 70%);
}

.dashboard-ai-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.dashboard-ai-heading .dashboard-eyebrow {
    margin-bottom: 0.2rem;
}

.dashboard-ai-content {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(240px, 1fr);
    gap: 1rem;
    margin-top: 0.85rem;
}

.dashboard-ai-list {
    display: grid;
    gap: 0.65rem;
}

.dashboard-ai-list article {
    display: grid;
    gap: 0.2rem;
    padding: 0.75rem 0.85rem;
    border: 1px solid #dce8ee;
    border-radius: 8px;
    background: #fff;
}

.dashboard-ai-list span,
.dashboard-ai-list small,
.dashboard-ai-metrics small {
    color: #667085;
}

.dashboard-ai-metrics {
    display: grid;
    gap: 0.65rem;
    margin: 0;
}

.dashboard-ai-metrics > div {
    display: grid;
    gap: 0.15rem;
    padding: 0.75rem 0.85rem;
    border-radius: 8px;
    background: #eaf4f7;
}

.dashboard-ai-metrics dd {
    margin: 0;
    color: #174b63;
    font-size: 1.25rem;
    font-weight: 750;
}

.analytics-page {
    display: grid;
    gap: 1rem;
}

.analytics-heading,
.analytics-learning-heading {
    align-items: flex-start;
}

.analytics-disclaimer {
    display: grid;
    gap: 0.2rem;
    padding: 0.85rem 1rem;
    border: 1px solid #bad7e4;
    border-radius: 8px;
    background: #eef8fb;
    color: #174b63;
}

.analytics-section-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    position: sticky;
    top: 0;
    z-index: 2;
    padding: 0.55rem;
    border: 1px solid #e2e8ee;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.96);
}

.analytics-section-nav a {
    padding: 0.4rem 0.7rem;
    border-radius: 6px;
    color: #31586a;
    font-size: 0.9rem;
    font-weight: 650;
    text-decoration: none;
}

.analytics-section-nav a:hover,
.analytics-section-nav a:focus-visible {
    background: #eaf4f7;
}

.analytics-section {
    scroll-margin-top: 5rem;
    padding: 1rem;
    border: 1px solid #e2e8ee;
    border-radius: 10px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(31, 50, 64, 0.04);
}

.analytics-insight-list,
.analytics-model-grid {
    display: grid;
    gap: 0.65rem;
}

.analytics-insight {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.75rem;
    padding: 0.8rem;
    border-left: 4px solid #667085;
    border-radius: 7px;
    background: #f8fafb;
}

.analytics-insight > span {
    align-self: start;
    min-width: 4.5rem;
    padding: 0.2rem 0.45rem;
    border-radius: 999px;
    background: #fff;
    font-size: 0.75rem;
    font-weight: 750;
    text-align: center;
}

.analytics-insight h3,
.analytics-insight p {
    margin: 0 0 0.2rem;
}

.analytics-insight small {
    color: #667085;
}

.analytics-insight.severity-critical { border-left-color: #b42318; }
.analytics-insight.severity-warning { border-left-color: #dc6803; }
.analytics-insight.severity-positive { border-left-color: #027a48; }
.analytics-insight.severity-information { border-left-color: #2e6f91; }

.analytics-metric-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 0.75rem;
}

.analytics-metric-card {
    display: grid;
    gap: 0.2rem;
    min-height: 105px;
    padding: 0.85rem;
    border: 1px solid #dce6eb;
    border-radius: 8px;
    background: #f8fafb;
}

.analytics-metric-card strong {
    color: #174b63;
    font-size: 1.35rem;
}

.analytics-metric-card small,
.analytics-unavailable {
    color: #667085;
}

.analytics-two-column,
.analytics-forecast-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.analytics-chart-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 0.85rem;
}

.analytics-chart,
.analytics-customer-chart {
    min-width: 0;
    margin: 0;
    padding: 0.9rem;
    border: 1px solid #dce6eb;
    border-radius: 8px;
    background: #fbfcfd;
}

.analytics-chart figcaption,
.analytics-customer-chart figcaption {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    align-items: flex-start;
}

.analytics-chart figcaption h3,
.analytics-customer-chart figcaption h3 {
    margin: 0;
    color: #17373f;
    font-size: 1.05rem;
}

.analytics-chart figcaption p,
.analytics-customer-chart figcaption p {
    margin: 0.25rem 0 0;
    color: #667085;
    font-size: 0.85rem;
}

.analytics-chart figcaption > span {
    flex: 0 0 auto;
    padding: 0.2rem 0.45rem;
    border-radius: 999px;
    background: #eaf4f7;
    color: #31586a;
    font-size: 0.75rem;
    font-weight: 750;
}

.analytics-chart-legend {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 0.65rem;
    color: #475467;
    font-size: 0.82rem;
}

.analytics-chart-legend span {
    display: inline-flex;
    gap: 0.35rem;
    align-items: center;
}

.analytics-chart-legend i {
    width: 1.3rem;
    height: 0.22rem;
    border-radius: 999px;
}

.analytics-chart-canvas {
    width: 100%;
    overflow-x: auto;
    margin-top: 0.35rem;
}

.analytics-chart-canvas svg {
    display: block;
    width: 100%;
    min-width: 500px;
    height: auto;
}

.analytics-chart-gridline {
    stroke: #dfe7ec;
    stroke-width: 1;
    vector-effect: non-scaling-stroke;
}

.analytics-chart-axis {
    stroke: #98a2b3;
    stroke-width: 1.25;
    vector-effect: non-scaling-stroke;
}

.analytics-chart-axis-label,
.analytics-chart-month {
    fill: #667085;
    font-size: 10px;
}

.analytics-chart-line {
    fill: none;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
    vector-effect: non-scaling-stroke;
}

.analytics-chart-point {
    cursor: help;
    outline: none;
}

.analytics-chart-point circle {
    fill: #fff;
    stroke-width: 3;
    vector-effect: non-scaling-stroke;
}

.analytics-chart-point:focus circle,
.analytics-chart-point:hover circle {
    stroke-width: 5;
}

.analytics-chart-line.series-sales,
.analytics-chart-point.series-sales circle { stroke: #2f7895; }
.analytics-chart-line.series-quote,
.analytics-chart-point.series-quote circle { stroke: #7c3aed; }
.analytics-chart-line.series-order,
.analytics-chart-point.series-order circle { stroke: #0f766e; }
.analytics-chart-line.series-invoice,
.analytics-chart-point.series-invoice circle { stroke: #c2410c; }
.analytics-chart-line.series-payment,
.analytics-chart-point.series-payment circle { stroke: #2563eb; }

.analytics-chart-legend .series-sales { background: #2f7895; }
.analytics-chart-legend .series-quote { background: #7c3aed; }
.analytics-chart-legend .series-order { background: #0f766e; }
.analytics-chart-legend .series-invoice { background: #c2410c; }
.analytics-chart-legend .series-payment { background: #2563eb; }

.analytics-chart-data {
    margin-top: 0.45rem;
    border-top: 1px solid #e2e8ee;
}

.analytics-chart-data summary {
    padding-top: 0.55rem;
    cursor: pointer;
    color: #31586a;
    font-size: 0.82rem;
    font-weight: 700;
}

.analytics-chart-data .table-wrap {
    max-height: 18rem;
    margin-top: 0.55rem;
}

.analytics-chart-data .business-table {
    min-width: 430px;
}

.analytics-chart-empty {
    display: grid;
    min-height: 12rem;
    margin-top: 0.65rem;
    place-items: center;
    padding: 1rem;
    border: 1px dashed #cbd5dc;
    border-radius: 8px;
    background: #f8fafb;
    color: #667085;
    text-align: center;
}

.analytics-customer-grid {
    align-items: stretch;
}

.analytics-horizontal-bars {
    display: grid;
    gap: 0.7rem;
    margin-top: 0.85rem;
}

.analytics-horizontal-bar {
    display: grid;
    grid-template-columns: minmax(7rem, 1.1fr) minmax(5rem, 1.7fr) 6.5rem 3.5rem;
    gap: 0.55rem;
    align-items: center;
    font-size: 0.82rem;
}

.analytics-horizontal-bar > span {
    overflow: hidden;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.analytics-horizontal-bar > div {
    height: 0.8rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e5eaed;
}

.analytics-horizontal-bar i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #2f7895;
}

.analytics-horizontal-bar strong,
.analytics-horizontal-bar small {
    text-align: right;
}

.analytics-panel,
.analytics-forecast-card,
.analytics-model-card {
    padding: 0.9rem;
    border: 1px solid #dce6eb;
    border-radius: 8px;
    background: #fbfcfd;
}

.analytics-panel h3,
.analytics-forecast-card h3,
.analytics-model-card h3 {
    margin-top: 0;
}

.analytics-bars {
    display: grid;
    gap: 0.45rem;
}

.analytics-bar-row {
    display: grid;
    grid-template-columns: 4.4rem minmax(80px, 1fr) 6.5rem;
    gap: 0.55rem;
    align-items: center;
    font-size: 0.82rem;
}

.analytics-bar-row > div {
    height: 0.65rem;
    overflow: hidden;
    border-radius: 999px;
    background: #e5eaed;
}

.analytics-bar-row i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: #2f7895;
}

.analytics-bar-row strong {
    text-align: right;
}

.analytics-list {
    display: grid;
    gap: 0.4rem;
    padding-left: 1.2rem;
}

.analytics-forecast-kind {
    margin-bottom: 0.35rem;
    color: #31586a;
    font-size: 0.78rem;
    font-weight: 750;
    letter-spacing: 0.04em;
}

.analytics-forecast-value {
    margin: 0.25rem 0;
    color: #174b63;
    font-size: 1.65rem;
    font-weight: 750;
}

.analytics-explanation {
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid #e2e8ee;
}

.analytics-explanation summary {
    cursor: pointer;
    color: #31586a;
    font-weight: 650;
}

.analytics-explanation dl {
    display: grid;
    gap: 0.45rem;
    margin-bottom: 0;
}

.analytics-explanation dl > div {
    display: grid;
    grid-template-columns: 6rem 1fr;
    gap: 0.5rem;
}

.analytics-explanation dd {
    margin: 0;
}

.analytics-model-grid {
    grid-template-columns: repeat(auto-fit, minmax(235px, 1fr));
}

.analytics-model-card dl {
    display: grid;
    gap: 0.35rem;
    margin-bottom: 0;
}

.analytics-model-card dl > div {
    display: flex;
    justify-content: space-between;
    gap: 0.6rem;
}

.analytics-model-card dd {
    margin: 0;
    text-align: right;
}

.analytics-model-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
}

.analytics-unavailable {
    padding: 0.9rem;
    border: 1px dashed #cbd5dc;
    border-radius: 8px;
    background: #f8fafb;
}

@media (max-width: 900px) {
    .dashboard-ai-content,
    .analytics-two-column,
    .analytics-forecast-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 1500px) {
    .analytics-chart-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .content {
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .page-heading {
        flex-direction: column;
        align-items: stretch;
    }

    .page-heading h1 {
        font-size: 1.35rem;
    }

    .form-grid,
    .detail-grid {
        grid-template-columns: 1fr;
    }

    .delivery-list-card-head {
        display: grid;
    }

    .delivery-list-card-meta {
        grid-template-columns: 1fr;
    }

    .business-table {
        min-width: 620px;
    }

    .dashboard-hero {
        flex-direction: column;
        align-items: stretch;
        padding: 1rem;
    }

    .dashboard-hero h1 {
        font-size: 1.45rem;
    }

    .dashboard-hero-actions {
        justify-content: flex-start;
    }

    .dashboard-hero-actions .btn,
    .dashboard-card-actions a,
    .dashboard-action-card,
    .dashboard-recent-card .btn {
        width: 100%;
    }

    .dashboard-summary-grid,
    .dashboard-action-grid,
    .dashboard-content-grid,
    .ai-suggestion-grid,
    .pricing-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-ai-heading,
    .analytics-learning-heading {
        display: grid;
    }

    .dashboard-ai-heading .btn,
    .analytics-learning-heading .btn {
        width: 100%;
    }

    .analytics-section {
        padding: 0.75rem;
    }

    .analytics-insight {
        grid-template-columns: 1fr;
    }

    .analytics-insight > span {
        justify-self: start;
    }

    .analytics-bar-row {
        grid-template-columns: 3.8rem minmax(60px, 1fr) 5.5rem;
        gap: 0.35rem;
        font-size: 0.72rem;
    }

    .analytics-chart figcaption,
    .analytics-customer-chart figcaption {
        display: grid;
    }

    .analytics-horizontal-bar {
        grid-template-columns: minmax(6rem, 1fr) minmax(4rem, 1.2fr) 5.7rem;
    }

    .analytics-horizontal-bar small {
        grid-column: 3;
    }

    .ai-apply-mobile-fields {
        grid-template-columns: 1fr;
    }

    .dashboard-action-card {
        min-height: auto;
    }

    .dashboard-recent-table {
        display: none;
    }

    .dashboard-recent-cards {
        display: grid;
        gap: 0.75rem;
    }

    .dashboard-recent-card {
        display: grid;
        gap: 0.65rem;
        padding: 0.85rem;
        border: 1px solid #e2e8ee;
        border-radius: 8px;
        background: #f8fafb;
    }

    .dashboard-recent-card > div:first-child,
    .dashboard-recent-card dl,
    .dashboard-recent-card dl div {
        display: flex;
        gap: 0.65rem;
        align-items: center;
        justify-content: space-between;
    }

    .dashboard-recent-card h3 {
        margin: 0;
        font-size: 1rem;
    }

    .dashboard-recent-card p,
    .dashboard-recent-card dl {
        margin: 0;
    }

    .dashboard-recent-card dt {
        color: #667085;
        font-weight: 500;
    }

    .dashboard-recent-card dd {
        margin: 0;
        font-weight: 700;
        text-align: right;
    }
}
