/* /Dialog/RecipientDialog.razor.rz.scp.css */
.dialog-overlay[b-r25l28vzf4] {
    position: fixed;
    inset: 0;
    z-index: 50;
    background: rgba(28, 29, 33, 0.32);
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: clamp(12px, 8vh, 88px) 12px;
    overflow-y: auto;
}

.dialog[b-r25l28vzf4] {
    background: var(--surface);
    border-radius: 16px;
    width: 100%;
    max-width: 560px;
    padding: clamp(20px, 4vw, 28px);
    display: flex;
    flex-direction: column;
    gap: 18px;
    box-shadow: 0 24px 64px -24px rgba(0, 0, 0, 0.3);
}

.dialog-title[b-r25l28vzf4] {
    margin: 0;
    font-size: 18px;
    font-weight: 600;
}

.dialog-error[b-r25l28vzf4] {
    padding: 12px 14px;
    border-radius: 10px;
    background: #FEF3F2;
    color: #B42318;
    font-size: 13px;
}

.dialog-hint[b-r25l28vzf4] {
    margin: -8px 0 0;
    font-size: 13px;
    color: var(--muted);
}

.input-with-button[b-r25l28vzf4] {
    display: flex;
    gap: 6px;
}

    [b-r25l28vzf4] .input-with-button .input {
        flex: 1;
        min-width: 0;
    }

.btn-search[b-r25l28vzf4] {
    height: 40px;
    padding: 0 12px;
    flex-shrink: 0;
}

    .btn-search:disabled[b-r25l28vzf4] {
        opacity: 0.5;
        cursor: not-allowed;
    }

.form-grid[b-r25l28vzf4] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 14px;
}

.field[b-r25l28vzf4] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 12px;
    color: var(--muted);
}

.field-full[b-r25l28vzf4] {
    grid-column: 1 / -1;
}

/* ::deep, защото <input> се рендира от InputText (дъщерен компонент) */
[b-r25l28vzf4] .input {
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface);
    font: inherit;
    font-size: 14px;
    color: var(--text);
    outline: none;
}

    [b-r25l28vzf4] .input:focus {
        border-color: var(--accent);
        box-shadow: 0 0 0 3px var(--accent-soft);
    }

    [b-r25l28vzf4] .input.invalid {
        border-color: var(--danger, #c0392b);
    }

[b-r25l28vzf4] .validation-message {
    font-size: 12px;
    color: var(--danger, #c0392b);
}

.dialog-actions[b-r25l28vzf4] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 22px;
}

/* Бутони (презаписват Bootstrap .btn) */
.btn[b-r25l28vzf4] {
    height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-dark[b-r25l28vzf4] {
    padding: 0 18px;
    border: 0;
    background: var(--dark);
    color: #fff;
    font-weight: 500;
}

    .btn-dark:hover[b-r25l28vzf4] {
        background: var(--dark-hover);
        color: #fff;
    }

.btn-secondary-plain[b-r25l28vzf4] {
    border: 1px solid var(--border);
    background: var(--surface);
    color: inherit;
}

    .btn-secondary-plain:hover[b-r25l28vzf4] {
        background: var(--hover);
    }

.btn-success-solid[b-r25l28vzf4] {
    border: 0;
    background: #26b050;
    color: #fff;
    font-weight: 500;
}

    .btn-success-solid:hover:not(:disabled)[b-r25l28vzf4] {
        background: #1e9443;
        color: #fff;
    }
/* /Layout/MainLayout.razor.rz.scp.css */
.shell[b-q7ncbvjbw0] {
    min-height: 100vh;
    display: flex;
    align-items: flex-start;
}

.main[b-q7ncbvjbw0] {
    flex: 1 1 320px;
    min-width: 0;
    padding: clamp(20px, 4vw, 48px) clamp(16px, 4vw, 56px) 96px;
}

.main-inner[b-q7ncbvjbw0] {
    max-width: 1040px;
    margin: 0 auto;
}

@media (max-width: 819.98px) {
    .shell[b-q7ncbvjbw0] {
        flex-direction: column;
        align-items: stretch;
    }
}
/* /Layout/NavMenu.razor.rz.scp.css */
/* Общи */
.brand[b-ckagclfy1h] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.brand-mark[b-ckagclfy1h] {
    width: 10px;
    height: 10px;
    border-radius: 3px;
    background: var(--accent);
}

.brand-name[b-ckagclfy1h] {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--text);
}

.btn-new[b-ckagclfy1h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 40px;
    border-radius: 8px;
    background: var(--dark);
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
}

    .btn-new:hover[b-ckagclfy1h] {
        background: var(--dark-hover);
        color: #fff;
        text-decoration: none;
    }

.nav-item[b-ckagclfy1h] {
    display: flex;
    align-items: center;
    height: 38px;
    padding: 0 12px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    color: var(--muted);
    background: transparent;
    text-decoration: none;
}

    .nav-item:hover[b-ckagclfy1h] {
        color: var(--text);
        background: var(--hover);
        text-decoration: none;
    }

    .nav-item.active[b-ckagclfy1h] {
        color: var(--text);
        background: var(--active-bg);
        font-weight: 600;
    }

/* Desktop sidebar */
.sidebar[b-ckagclfy1h] {
    width: 232px;
    flex: 0 0 232px;
    position: sticky;
    top: 0;
    height: 100vh;
    padding: 28px 18px;
    display: flex;
    flex-direction: column;
    gap: 28px;
    border-right: 1px solid var(--border);
    background: var(--sidebar-bg);
}

    .sidebar .brand[b-ckagclfy1h] {
        padding: 0 8px;
    }

.nav-vertical[b-ckagclfy1h] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.supplier[b-ckagclfy1h] {
    margin-top: auto;
    padding: 0 12px;
    font-size: 12px;
    line-height: 1.5;
    color: var(--muted-2);
}

/* Mobile header */
.mobile-header[b-ckagclfy1h] {
    display: none;
    width: 100%;
    position: sticky;
    top: 0;
    z-index: 5;
    background: rgba(247, 247, 245, 0.94);
    backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--border);
    padding: 12px 16px 8px;
    flex-direction: column;
    gap: 8px;
}

.mobile-top[b-ckagclfy1h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

    .mobile-top .brand[b-ckagclfy1h] {
        gap: 8px;
    }

    .mobile-top .brand-mark[b-ckagclfy1h] {
        width: 9px;
        height: 9px;
    }

    .mobile-top .brand-name[b-ckagclfy1h] {
        font-size: 16px;
    }

    .mobile-top .btn-new[b-ckagclfy1h] {
        height: 44px;
        padding: 0 14px;
    }

.nav-horizontal[b-ckagclfy1h] {
    display: flex;
    gap: 4px;
    overflow-x: auto;
}

    .nav-horizontal .nav-item[b-ckagclfy1h] {
        flex: 0 0 auto;
        height: 40px;
        padding: 0 14px;
    }

@media (max-width: 819.98px) {
    .sidebar[b-ckagclfy1h] {
        display: none;
    }

    .mobile-header[b-ckagclfy1h] {
        display: flex;
    }
}
/* /Layout/ToastHost.razor.rz.scp.css */
.toast-host[b-c5hbtdm0b7] {
    position: fixed;
    top: 16px;
    right: 16px;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-width: min(380px, calc(100vw - 32px));
}

.toast-item[b-c5hbtdm0b7] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 14px;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-left: 4px solid var(--accent);
    border-radius: 8px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.08);
    font-size: 14px;
    animation: toast-in-b-c5hbtdm0b7 0.18s ease-out;
}

.toast-success[b-c5hbtdm0b7] { border-left-color: #26b050; }
.toast-warning[b-c5hbtdm0b7] { border-left-color: #E0A100; }
.toast-error[b-c5hbtdm0b7] { border-left-color: #D93636; }

.toast-text[b-c5hbtdm0b7] {
    flex: 1;
    line-height: 1.4;
}

.toast-close[b-c5hbtdm0b7] {
    border: 0;
    background: none;
    padding: 0;
    font-size: 18px;
    line-height: 1;
    color: var(--muted);
    cursor: pointer;
}

    .toast-close:hover[b-c5hbtdm0b7] {
        color: var(--text);
    }

@keyframes toast-in-b-c5hbtdm0b7 {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: none; }
}
/* /Pages/Clients.razor.rz.scp.css */
.clients-page[b-d8imn80vko] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.clients-grid[b-d8imn80vko] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 14px;
}

.client-card[b-d8imn80vko] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.client-name[b-d8imn80vko] {
    font-size: 15px;
    font-weight: 600;
    word-break: break-word;
}

.client-ids[b-d8imn80vko],
.client-address[b-d8imn80vko] {
    font-size: 13px;
    color: var(--muted);
}

.client-ids[b-d8imn80vko] {
    font-variant-numeric: tabular-nums;
}

.client-empty[b-d8imn80vko] {
    align-items: center;
    text-align: center;
    font-size: 14px;
    color: var(--muted);
    border-style: dashed;
}

.clients-header[b-d8imn80vko] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

.btn-new[b-d8imn80vko] {
    height: 42px;
    padding: 0 16px;
    border: 0;
    border-radius: 8px;
    background: var(--dark);
    color: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
}

    .btn-new:hover[b-d8imn80vko] {
        background: var(--dark-hover);
    }
/* /Pages/Home.razor.rz.scp.css */
.invoices-page[b-ujh3k8vojs] {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.invoice-table[b-ujh3k8vojs] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    overflow: hidden;
}

.invoice-head[b-ujh3k8vojs] {
    display: flex;
    gap: 16px;
    padding: 12px 20px;
    font-size: 12px;
    color: #8A8D94;
    background: var(--sidebar-bg);
}

.invoice-row[b-ujh3k8vojs] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 16px;
    padding: 16px 20px;
    border-top: 1px solid #EFEFEB;
}

    .invoice-row:hover[b-ujh3k8vojs] {
        background: #FAFAF8;
    }

.col-client[b-ujh3k8vojs] {
    flex: 1 1 150px;
    min-width: 0;
}

.col-date[b-ujh3k8vojs] {
    flex: 0 0 88px;
}

.col-type[b-ujh3k8vojs] {
    flex: 0 0 136px;
}

.col-total[b-ujh3k8vojs] {
    flex: 1 0 110px;
    text-align: right;
}

.invoice-client[b-ujh3k8vojs] {
    font-size: 15px;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.invoice-number[b-ujh3k8vojs] {
    margin-top: 2px;
    font-size: 13px;
    color: var(--muted);
    font-variant-numeric: tabular-nums;
}

.invoice-date[b-ujh3k8vojs] {
    font-size: 14px;
    color: var(--muted);
    font-variant-numeric: tabular-nums;
}

.invoice-total[b-ujh3k8vojs] {
    font-size: 15px;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.pill[b-ujh3k8vojs] {
    display: inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 500;
}

.pill-invoice[b-ujh3k8vojs] {
    background: #EEF2FC;
    color: #2F56C7;
}

.pill-debit[b-ujh3k8vojs] {
    background: #FFF4DB;
    color: #8A5A00;
}

.pill-credit[b-ujh3k8vojs] {
    background: #FDEEE9;
    color: #A2401F;
}

.invoice-empty[b-ujh3k8vojs] {
    padding: 56px 20px;
    text-align: center;
    font-size: 14px;
    color: var(--muted);
}

@media (max-width: 819px) {
    .invoice-head[b-ujh3k8vojs] {
        display: none;
    }
}
/* /Pages/InvoiceNew.razor.rz.scp.css */
.invoice-edit[b-k3ntb0l0yx] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* Карти */
.card[b-k3ntb0l0yx] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: clamp(18px, 3vw, 28px);
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.card-title[b-k3ntb0l0yx] {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

/* Форма */
.form-grid[b-k3ntb0l0yx] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}

.field[b-k3ntb0l0yx] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 12px;
    color: var(--muted);
}

.input[b-k3ntb0l0yx] {
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface);
    font: inherit;
    font-size: 14px;
    color: var(--text);
    outline: none;
}

    .input:focus[b-k3ntb0l0yx] {
        border-color: var(--accent);
        box-shadow: 0 0 0 3px var(--accent-soft);
    }

select.input[b-k3ntb0l0yx] {
    padding: 0 10px;
}

.tabular[b-k3ntb0l0yx] {
    font-variant-numeric: tabular-nums;
}

/* Полета за дебитно/кредитно известие */
.note-fields[b-k3ntb0l0yx] {
    padding-top: 16px;
    border-top: 1px dashed var(--border);
}

/* Получател */
.card-recipient[b-k3ntb0l0yx] {
    gap: 14px;
}

.recipient-row[b-k3ntb0l0yx] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.recipient-select[b-k3ntb0l0yx] {
    flex: 1 1 280px;
    min-width: 0;
}

    .recipient-select.placeholder[b-k3ntb0l0yx] {
        color: var(--muted-2);
    }

.btn-outline[b-k3ntb0l0yx] {
    height: 40px;
    padding: 0 14px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface);
    font: inherit;
    font-size: 14px;
    color: inherit;
    cursor: pointer;
}

    .btn-outline:hover[b-k3ntb0l0yx] {
        background: var(--hover);
    }

.recipient-info[b-k3ntb0l0yx] {
    font-size: 13px;
    line-height: 1.5;
    color: var(--muted);
}

/* Редове */
.card-lines[b-k3ntb0l0yx] {
    gap: 12px;
}

    .card-lines .card-title[b-k3ntb0l0yx] {
        margin-bottom: 4px;
    }

.lines-head[b-k3ntb0l0yx],
.line-row[b-k3ntb0l0yx] {
    display: flex;
    gap: 10px;
}

.lines-head[b-k3ntb0l0yx] {
    font-size: 12px;
    color: var(--muted-2);
}

.line-row[b-k3ntb0l0yx] {
    flex-wrap: wrap;
    align-items: center;
    padding-bottom: 12px;
    border-bottom: 1px solid #F0F0EC;
}

.col-no[b-k3ntb0l0yx] {
    flex: 0 0 20px;
}

.col-name[b-k3ntb0l0yx] {
    flex: 4 1 240px;
    min-width: 0;
}

.col-qty[b-k3ntb0l0yx] {
    flex: 1 1 80px;
    min-width: 0;
}

.col-unit[b-k3ntb0l0yx] {
    flex: 1 1 96px;
    min-width: 0;
}

select.col-unit[b-k3ntb0l0yx] {
    padding: 0 8px;
}

.col-price[b-k3ntb0l0yx] {
    flex: 1 1 110px;
    min-width: 0;
}

.col-total[b-k3ntb0l0yx] {
    flex: 1 0 110px;
}

.col-remove[b-k3ntb0l0yx] {
    flex: 0 0 36px;
}

.num[b-k3ntb0l0yx] {
    text-align: right;
}

.line-no[b-k3ntb0l0yx] {
    font-size: 13px;
    color: var(--muted-2);
}

.line-total[b-k3ntb0l0yx] {
    font-size: 14px;
    font-weight: 500;
    font-variant-numeric: tabular-nums;
}

.btn-remove[b-k3ntb0l0yx] {
    height: 36px;
    border: 0;
    border-radius: 8px;
    background: none;
    font: inherit;
    font-size: 18px;
    color: var(--muted-2);
    cursor: pointer;
}

    .btn-remove:hover[b-k3ntb0l0yx] {
        background: var(--hover);
        color: #B42318;
    }

.btn-link-accent[b-k3ntb0l0yx] {
    height: 38px;
    padding: 0 12px;
    border: 0;
    border-radius: 8px;
    background: none;
    font: inherit;
    font-size: 14px;
    font-weight: 500;
    color: var(--accent);
    cursor: pointer;
}

    .btn-link-accent:hover[b-k3ntb0l0yx] {
        background: var(--accent-soft);
    }

/* Плащане и суми */
.payment-row[b-k3ntb0l0yx] {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 20px;
}

.card-payment[b-k3ntb0l0yx] {
    flex: 1 1 320px;
    gap: 16px;
}

.form-grid-narrow[b-k3ntb0l0yx] {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.bank-note[b-k3ntb0l0yx] {
    font-size: 13px;
    line-height: 1.5;
    color: var(--muted);
}

.card-totals[b-k3ntb0l0yx] {
    flex: 1 1 280px;
    gap: 12px;
    font-variant-numeric: tabular-nums;
}

.total-row[b-k3ntb0l0yx] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    font-size: 14px;
    color: var(--muted);
}

.total-value[b-k3ntb0l0yx] {
    color: var(--text);
}

.total-grand[b-k3ntb0l0yx] {
    align-items: baseline;
    margin-top: auto;
    padding-top: 14px;
    border-top: 1px solid var(--border);
    font-weight: 500;
    color: var(--text);
}

.total-grand-value[b-k3ntb0l0yx] {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: -0.01em;
}

/* Подписи */
.card-signatures[b-k3ntb0l0yx] {
    gap: 16px;
}

.form-grid-wide[b-k3ntb0l0yx] {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

/* Валидация и грешки */
.form-error[b-k3ntb0l0yx] {
    padding: 14px 18px;
    border-radius: 10px;
    background: #FEF3F2;
    color: #B42318;
    font-size: 14px;
}

/* ::deep, защото съобщението се рендира от ValidationMessage (дъщерен компонент) */
.invoice-edit[b-k3ntb0l0yx]  .validation-message {
    font-size: 12px;
    color: #B42318;
}

/* Бутони (презаписват Bootstrap .btn) */
.form-actions[b-k3ntb0l0yx] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

.btn[b-k3ntb0l0yx] {
    height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-dark[b-k3ntb0l0yx] {
    padding: 0 18px;
    border: 0;
    background: var(--dark);
    color: #fff;
    font-weight: 500;
}

    .btn-dark:hover[b-k3ntb0l0yx] {
        background: var(--dark-hover);
        color: #fff;
    }

    .btn-dark:disabled[b-k3ntb0l0yx] {
        opacity: 0.6;
        cursor: default;
    }

.btn-secondary-plain[b-k3ntb0l0yx] {
    border: 1px solid var(--border);
    background: var(--surface);
    color: inherit;
}

    .btn-secondary-plain:hover[b-k3ntb0l0yx] {
        background: var(--hover);
    }

/* На тесен екран заглавният ред се скрива — полетата се пренареждат */
@media (max-width: 720px) {
    .lines-head[b-k3ntb0l0yx] {
        display: none;
    }
}
/* /Pages/SetInvoice.razor.rz.scp.css */
.set-invoice[b-i5odvgz9ii] { display: flex; flex-direction: column; gap: 20px; max-width: 560px; }
    .set-invoice .si-card[b-i5odvgz9ii] {
        background: var(--surface); border: 1px solid var(--border); border-radius: 14px;
        padding: clamp(18px, 3vw, 28px); display: flex; flex-direction: column; gap: 18px;
    }
    .set-invoice .si-card-title[b-i5odvgz9ii] { margin: 0; font-size: 15px; font-weight: 600; }
    .set-invoice .si-label[b-i5odvgz9ii] { font-size: 12px; color: var(--muted); }
    .set-invoice .si-current[b-i5odvgz9ii] { font-size: 22px; font-weight: 600; font-variant-numeric: tabular-nums; color: var(--text); }
    .set-invoice .si-field[b-i5odvgz9ii] { display: flex; flex-direction: column; gap: 6px; font-size: 12px; color: var(--muted); }
    .set-invoice .si-input[b-i5odvgz9ii] {
        height: 40px; padding: 0 12px; border: 1px solid var(--border); border-radius: 8px;
        background: var(--surface); font: inherit; font-size: 14px; color: var(--text);
        outline: none; font-variant-numeric: tabular-nums;
    }
    .set-invoice .si-input:focus[b-i5odvgz9ii] { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
    .set-invoice .si-input.invalid[b-i5odvgz9ii] { border-color: var(--danger, #c0392b); }
    .set-invoice .si-error[b-i5odvgz9ii] { font-size: 12px; color: var(--danger, #c0392b); }
    .set-invoice .si-hint[b-i5odvgz9ii] { margin: 0; font-size: 13px; line-height: 1.5; color: var(--muted); }
    .set-invoice .si-actions[b-i5odvgz9ii] { display: flex; justify-content: flex-end; }
    .set-invoice .si-btn[b-i5odvgz9ii] {
        height: 42px; padding: 0 18px; border: 0; border-radius: 8px; font: inherit; font-size: 14px;
        font-weight: 500; background: var(--dark); color: #fff; cursor: pointer;
    }
    .set-invoice .si-btn:hover[b-i5odvgz9ii] { background: var(--dark-hover); }
    .set-invoice .si-btn:disabled[b-i5odvgz9ii] { opacity: .6; cursor: default; }
/* /Pages/Settings.razor.rz.scp.css */
.settings[b-usoqe8u209] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.settings-header[b-usoqe8u209] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
}

    .settings-header .page-subtitle[b-usoqe8u209] {
        text-wrap: pretty;
    }

/* Карти */
.card[b-usoqe8u209] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: clamp(18px, 3vw, 28px);
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.card-title[b-usoqe8u209] {
    margin: 0;
    font-size: 15px;
    font-weight: 600;
}

.card-banks[b-usoqe8u209] {
    gap: 4px;
}

    .card-banks .card-title[b-usoqe8u209] {
        margin-bottom: 10px;
    }

.card-banks-edit[b-usoqe8u209] {
    gap: 14px;
}

    .card-banks-edit .card-title[b-usoqe8u209] {
        margin-bottom: 4px;
    }

/* Празно състояние */
.card-empty[b-usoqe8u209] {
    border: 1px dashed #D6D6D1;
    padding: clamp(28px, 6vw, 56px) clamp(18px, 4vw, 40px);
    align-items: center;
    text-align: center;
    gap: 10px;
}

.empty-step[b-usoqe8u209] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--accent-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: 600;
    color: var(--accent);
}

.empty-title[b-usoqe8u209] {
    margin: 6px 0 0;
    font-size: 18px;
    font-weight: 600;
}

.empty-text[b-usoqe8u209] {
    margin: 0;
    max-width: 420px;
    font-size: 14px;
    line-height: 1.5;
    color: var(--muted);
    text-wrap: pretty;
}

.card-empty .btn[b-usoqe8u209] {
    margin-top: 10px;
}

/* Преглед */
.info-grid[b-usoqe8u209] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px 28px;
}

.info-item[b-usoqe8u209] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.info-label[b-usoqe8u209] {
    font-size: 12px;
    color: var(--muted);
}

.info-value[b-usoqe8u209] {
    font-size: 15px;
    word-break: break-word;
    color: var(--text);
}

    .info-value.muted[b-usoqe8u209] {
        color: var(--muted);
    }

.bank-row[b-usoqe8u209] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 16px;
    padding: 12px 0;
    border-top: 1px solid #F0F0EC;
}

.bank-name[b-usoqe8u209] {
    flex: 1 1 160px;
    font-size: 14px;
    font-weight: 500;
}

.bank-iban[b-usoqe8u209] {
    flex: 2 1 240px;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}

.bank-bic[b-usoqe8u209] {
    flex: 0 0 100px;
    font-size: 13px;
    color: var(--muted);
}

.pill-default[b-usoqe8u209] {
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--accent-soft);
    color: var(--accent);
    font-size: 12px;
    font-weight: 500;
}

.bank-empty[b-usoqe8u209] {
    padding: 12px 0;
    border-top: 1px solid #F0F0EC;
    font-size: 14px;
    color: var(--muted);
}

/* Редакция */
.form-grid[b-usoqe8u209] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
}

.field[b-usoqe8u209] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    font-size: 12px;
    color: var(--muted);
}

.field-full[b-usoqe8u209] {
    grid-column: 1 / -1;
}

/* ::deep, защото <input> се рендира от InputText (дъщерен компонент) */
[b-usoqe8u209] .input {
    height: 40px;
    padding: 0 12px;
    border: 1px solid var(--border);
    border-radius: 8px;
    background: var(--surface);
    font: inherit;
    font-size: 14px;
    color: var(--text);
    outline: none;
}

    [b-usoqe8u209] .input:focus {
        border-color: var(--accent);
        box-shadow: 0 0 0 3px var(--accent-soft);
    }

    [b-usoqe8u209] .input.invalid {
        border-color: var(--danger, #c0392b);
    }

[b-usoqe8u209] .validation-message {
    font-size: 12px;
    color: var(--danger, #c0392b);
}

[b-usoqe8u209] .tabular {
    font-variant-numeric: tabular-nums;
}

.settings-form[b-usoqe8u209] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

/* flex-start: грешките под полетата растат надолу, без да разместват реда */
.bank-edit-row[b-usoqe8u209] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 10px;
    padding-bottom: 14px;
    border-bottom: 1px solid #F0F0EC;
}

.field-bank[b-usoqe8u209] {
    flex: 2 1 180px;
    min-width: 0;
}

.field-iban[b-usoqe8u209] {
    flex: 3 1 240px;
    min-width: 0;
}

.field-bic[b-usoqe8u209] {
    flex: 1 1 110px;
    min-width: 0;
}

/* Отместване с височината на етикета + gap, за да са на нивото на input-ите */
.radio-default[b-usoqe8u209],
.btn-remove[b-usoqe8u209] {
    margin-top: 24px;
}

.radio-default[b-usoqe8u209] {
    height: 40px;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    cursor: pointer;
}

    .radio-default input[b-usoqe8u209] {
        width: 16px;
        height: 16px;
        margin: 0;
        accent-color: var(--accent);
    }

.btn-remove[b-usoqe8u209] {
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 8px;
    background: none;
    font: inherit;
    font-size: 18px;
    color: var(--muted-2);
    cursor: pointer;
}

    .btn-remove:hover[b-usoqe8u209] {
        background: var(--hover);
        color: #B42318;
    }

.form-actions[b-usoqe8u209] {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
}

/* Бутони (презаписват Bootstrap .btn) */
.btn[b-usoqe8u209] {
    height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-dark[b-usoqe8u209] {
    padding: 0 18px;
    border: 0;
    background: var(--dark);
    color: #fff;
    font-weight: 500;
}

    .btn-dark:hover[b-usoqe8u209] {
        background: var(--dark-hover);
        color: #fff;
    }

.btn-lg[b-usoqe8u209] {
    height: 44px;
    padding: 0 20px;
}

.btn-secondary-plain[b-usoqe8u209] {
    border: 1px solid var(--border);
    background: var(--surface);
    color: inherit;
}

    .btn-secondary-plain:hover[b-usoqe8u209] {
        background: var(--hover);
    }

.btn-link-accent[b-usoqe8u209] {
    height: 38px;
    padding: 0 12px;
    border: 0;
    background: none;
    font-weight: 500;
    color: var(--accent);
}

    .btn-link-accent:hover[b-usoqe8u209] {
        background: var(--accent-soft);
        color: var(--accent);
    }

.btn-sm[b-usoqe8u209] {
    height: 32px;
    padding: 0 10px;
    font-size: 13px;
}
/* /Pages/View.razor.rz.scp.css */
.view-page[b-bahwbhj0no] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.view-actions[b-bahwbhj0no] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
}

.view-status[b-bahwbhj0no] {
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
}

.btn-back[b-bahwbhj0no] {
    padding: 0;
    border: 0;
    background: none;
    font: inherit;
    font-size: 14px;
    color: var(--muted);
    cursor: pointer;
}

    .btn-back:hover[b-bahwbhj0no] {
        color: var(--text);
    }

.btn[b-bahwbhj0no] {
    height: 42px;
    padding: 0 16px;
    border-radius: 8px;
    font: inherit;
    font-size: 14px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-dark[b-bahwbhj0no] {
    padding: 0 18px;
    border: 0;
    background: var(--dark);
    color: #fff;
    font-weight: 500;
}

    .btn-dark:hover[b-bahwbhj0no] {
        background: var(--dark-hover);
        color: #fff;
    }

.invoice-doc[b-bahwbhj0no] {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: 14px;
    padding: clamp(20px, 4vw, 48px);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03), 0 16px 48px -24px rgba(0, 0, 0, 0.14);
    max-width: 880px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 36px;
    font-size: 13px;
    line-height: 1.5;
}

.muted[b-bahwbhj0no] {
    color: var(--muted);
}

/* Header */
.doc-head[b-bahwbhj0no] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.doc-title[b-bahwbhj0no] {
    font-size: clamp(22px, 3vw, 28px);
    font-weight: 600;
    letter-spacing: 0.04em;
}

.doc-number[b-bahwbhj0no] {
    margin-top: 6px;
    font-size: 14px;
    font-variant-numeric: tabular-nums;
}

.copy-badge[b-bahwbhj0no] {
    padding: 6px 12px;
    border: 1px solid var(--dark);
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Parties */
.parties[b-bahwbhj0no] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 28px;
}

.party[b-bahwbhj0no] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.party-label[b-bahwbhj0no] {
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
}

.party-name[b-bahwbhj0no] {
    font-size: 15px;
    font-weight: 600;
}

.kv-row[b-bahwbhj0no] {
    display: flex;
    gap: 8px;
}

.kv-key[b-bahwbhj0no] {
    flex: 0 0 84px;
    color: var(--muted);
}

/* Lines */
.lines-scroll[b-bahwbhj0no] {
    overflow-x: auto;
}

.lines[b-bahwbhj0no] {
    min-width: 470px;
    font-variant-numeric: tabular-nums;
}

.line[b-bahwbhj0no] {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr) 52px 56px 92px 100px;
    gap: 10px;
    padding: 12px 0;
    border-bottom: 1px solid #EFEFEB;
}

.line-head[b-bahwbhj0no] {
    padding: 0 0 10px;
    border-bottom: 1px solid var(--dark);
    font-size: 11px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--muted);
}

.line-no[b-bahwbhj0no] {
    color: var(--muted);
}

.num[b-bahwbhj0no] {
    text-align: right;
}

/* Totals */
.totals[b-bahwbhj0no] {
    width: min(100%, 320px);
    margin-left: auto;
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-variant-numeric: tabular-nums;
}

.total-row[b-bahwbhj0no] {
    display: flex;
    justify-content: space-between;
    gap: 12px;
}

.total-grand[b-bahwbhj0no] {
    align-items: baseline;
    padding-top: 10px;
    margin-top: 4px;
    border-top: 1px solid var(--dark);
    font-weight: 600;
}

.total-amount[b-bahwbhj0no] {
    font-size: 18px;
}

.words[b-bahwbhj0no] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 12px;
    padding: 12px 16px;
    background: #F7F7F5;
    border-radius: 8px;
}

.words-value[b-bahwbhj0no] {
    font-weight: 500;
}

/* Meta and signatures */
.meta[b-bahwbhj0no] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 12px 28px;
    padding-top: 20px;
    border-top: 1px solid #EFEFEB;
}

.meta-item[b-bahwbhj0no] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.meta-key[b-bahwbhj0no] {
    font-size: 11px;
    color: var(--muted);
}

.meta-value[b-bahwbhj0no] {
    word-break: break-word;
}

.signatures[b-bahwbhj0no] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 28px;
    padding-top: 12px;
}

.signature[b-bahwbhj0no] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.signature-name[b-bahwbhj0no] {
    min-height: 20px;
}

.signature-line[b-bahwbhj0no] {
    border-bottom: 1px solid var(--dark);
    height: 28px;
}

/* Print: compact layout so 10 lines fit on one A4 page */
@media print {
    .view-page[b-bahwbhj0no] {
        gap: 0;
    }

    .invoice-doc[b-bahwbhj0no] {
        gap: 14px;
        font-size: 11px;
        line-height: 1.35;
    }

    .doc-title[b-bahwbhj0no] {
        font-size: 20px;
    }

    .doc-number[b-bahwbhj0no] {
        margin-top: 2px;
        font-size: 12px;
    }

    .copy-badge[b-bahwbhj0no] {
        padding: 3px 8px;
        font-size: 10px;
    }

    .parties[b-bahwbhj0no] {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    .party[b-bahwbhj0no] {
        gap: 2px;
    }

    .party-name[b-bahwbhj0no] {
        font-size: 13px;
    }

    .lines-scroll[b-bahwbhj0no] {
        overflow: visible;
    }

    .lines[b-bahwbhj0no] {
        min-width: 0;
    }

    .line[b-bahwbhj0no] {
        gap: 8px;
        padding: 5px 0;
        break-inside: avoid;
    }

    .line-head[b-bahwbhj0no] {
        padding: 0 0 5px;
        font-size: 9.5px;
    }

    .totals[b-bahwbhj0no] {
        gap: 4px;
    }

    .total-grand[b-bahwbhj0no] {
        padding-top: 6px;
        margin-top: 2px;
    }

    .total-amount[b-bahwbhj0no] {
        font-size: 15px;
    }

    .words[b-bahwbhj0no] {
        padding: 6px 10px;
    }

    .meta[b-bahwbhj0no] {
        gap: 6px 20px;
        padding-top: 10px;
    }

    .meta-key[b-bahwbhj0no] {
        font-size: 9.5px;
    }

    .signatures[b-bahwbhj0no] {
        gap: 20px;
        padding-top: 4px;
    }

    .signature[b-bahwbhj0no] {
        gap: 2px;
    }

    .signature-line[b-bahwbhj0no] {
        height: 22px;
    }

    .doc-head[b-bahwbhj0no], .parties[b-bahwbhj0no], .totals[b-bahwbhj0no], .words[b-bahwbhj0no], .meta[b-bahwbhj0no], .signatures[b-bahwbhj0no] {
        break-inside: avoid;
    }
}
