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;
}:root{--ink:#172d40;--muted:#6a7e90;--teal:#087f72;--border:#e2e8ef}body{background:#f5f7fa;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px}a{color:var(--teal)}h1{font-size:2rem;font-weight:720;letter-spacing:-.045em}h2{font-size:1.1rem;font-weight:650}h3{font-size:1rem}.app-shell{display:flex;min-height:100vh}.app-sidebar{width:235px;background:#152c3e;padding:30px 20px;flex-shrink:0}.app-main{flex:1;min-width:0}.app-topbar{height:70px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:24px;padding:0 40px;font-size:.8rem}.app-topbar span{margin-right:auto;font-size:.65rem;letter-spacing:.16em;color:var(--muted)}.app-topbar a{text-decoration:none;color:var(--muted)}.app-content{max-width:1500px;margin:auto;padding:38px 40px 60px}.app-footer{padding:0 40px 20px;color:var(--muted);font-size:.75rem}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}.page-heading p{color:var(--muted);margin-bottom:0}.eyebrow{font-size:.65rem;letter-spacing:.16em;font-weight:750;color:var(--teal)!important;margin-bottom:10px!important}.panel,.stat{background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px;margin-bottom:22px;box-shadow:0 3px 10px #102c4010}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.stat span{font-size:.8rem;color:var(--muted)}.stat strong{display:block;font-size:2rem;font-weight:650;margin-top:12px}.stat strong.currency-stat{font-size:1.1rem}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.business-table{font-size:.86rem;vertical-align:middle}.business-table thead th{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:14px 10px;background:#f8fafc}.business-table td{padding:17px 10px;border-color:#edf1f5}.business-table a{font-weight:650;text-decoration:none}.business-table small{display:block;color:var(--muted);margin-top:3px}.status{display:inline-block;border-radius:20px;padding:4px 10px;font-size:.7rem;background:#edf0f4}.status.finalized{background:#e0f5ee;color:#19725a}.status.draft{background:#fff3d8;color:#947022}.btn{font-size:.86rem;font-weight:600;padding:10px 17px;border-radius:7px}.btn-primary{background:var(--teal);border-color:var(--teal)}.btn-primary:hover{background:#05685e;border-color:#05685e}.btn-outline-primary{color:var(--teal);border-color:var(--teal)}label{display:block;font-size:.8rem;font-weight:550;color:#53687a}.form-control,.form-select{margin-top:6px;border-color:#d8e1ea;font-size:.9rem;border-radius:6px;min-height:40px}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 3px #087f7218}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-grid .wide{grid-column:1/-1}.form-actions{display:flex;gap:12px;align-items:center;margin-top:22px}.filter-row{display:flex;gap:16px;align-items:end;margin-bottom:24px}.filter-row label:first-child{flex:1}.pagination-row{display:flex;justify-content:space-between;gap:20px;padding-top:16px}.empty-state{text-align:center;padding:45px 20px;color:var(--muted)}.empty-state h3{color:var(--ink)}.narrow{max-width:650px}.company-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.invoice-editor{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.totals-card{position:sticky;top:24px;align-self:start}.total-line{display:flex;justify-content:space-between;gap:15px;margin:14px 0}.grand-total{border-top:1px solid var(--border);padding-top:18px;font-size:1.2rem;font-weight:700}.item-card{border:1px solid var(--border);padding:18px;border-radius:8px;margin:15px 0;background:#fcfdfe}.item-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.item-fields .description{grid-column:1/-1}.asset-preview{max-width:150px;max-height:90px;object-fit:contain;display:block;margin:14px 0}.preview-frame{width:100%;height:800px;border:1px solid var(--border);border-radius:8px}.text-muted{color:var(--muted)!important}.validation-message,.validation-errors{color:#b02a37}.template-card{border-top:5px solid var(--teal)}.check-label{display:flex;gap:10px;align-items:center;margin:15px 0}.check-label input{margin:0}.loading{padding:40px;color:var(--muted)}@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.invoice-editor{grid-template-columns:1fr}.totals-card{position:static}}@media(max-width:760px){.app-shell{display:block}.app-sidebar{width:auto;padding:18px}.app-sidebar nav{display:grid;grid-template-columns:repeat(2,1fr);gap:0}.app-sidebar .nav-caption{display:none}.app-topbar{padding:0 20px;gap:16px}.app-content{padding:26px 18px}.page-heading{align-items:flex-start}.form-grid{grid-template-columns:1fr}.item-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-row{flex-wrap:wrap}.stat-grid{gap:10px}.stat{padding:16px}.stat strong{font-size:1.5rem}.panel{padding:18px}.page-heading h1{font-size:1.7rem}}
