:root{--ink-900:#0f172a;--ink-700:#334155;--ink-500:#64748b;--ink-400:#94a3b8;--surface:#fff;--surface-muted:#f4f6fb;--border:#e6e9f2;--brand:#12335e;--brand-dark:#0a1f3d;--brand-light:#e8edf7;--accent:#2563eb;--accent-light:#eaf1ff;--money:#0f9d6e;--money-light:#e6f7f0;--danger:#dc3545;--danger-light:#fdecea;--radius-lg:16px;--radius-md:12px;--radius-sm:8px;--shadow-sm:0 1px 2px #0f172a0f, 0 1px 3px #0f172a0a;--shadow-md:0 4px 12px #0f172a14, 0 2px 4px #0f172a0d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--surface-muted);color:var(--ink-900);margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}a{color:inherit}.page-wrap{max-width:1200px;margin:0 auto;padding:0 1.25rem 3rem}.app-navbar{background:linear-gradient(120deg, var(--brand-dark), var(--brand) 65%);margin-bottom:1.75rem;padding:.85rem 0;box-shadow:0 2px 10px #0a1f3d40}.app-navbar .navbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;max-width:1200px;margin:0 auto;padding:0 1.25rem;display:flex}.brand{color:#fff;align-items:center;gap:.55rem;font-size:1.15rem;font-weight:700;text-decoration:none;display:flex}.brand-mark{background:#ffffff24;border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;font-size:1.05rem;display:inline-flex}.nav-links{align-items:center;gap:.4rem;display:flex}.nav-link{color:#ffffffc7;border-radius:var(--radius-sm);align-items:center;gap:.4rem;padding:.4rem .75rem;font-size:.92rem;font-weight:500;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.nav-link:hover{color:#fff;background-color:#ffffff1f}.btn-navbar-cta{color:var(--brand-dark);border-radius:var(--radius-sm);background-color:#fff;align-items:center;gap:.4rem;padding:.4rem .9rem;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-navbar-cta:hover{background-color:var(--accent-light)}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.75rem;display:flex}.page-header h1{margin:0 0 .15rem;font-size:1.6rem;font-weight:700}.page-subtitle{color:var(--ink-500);font-size:.94rem}.page-actions{flex-wrap:wrap;gap:.5rem;display:flex}.breadcrumb{color:var(--ink-500);align-items:center;gap:.4rem;margin-bottom:.5rem;font-size:.82rem;display:flex}.breadcrumb a{color:var(--accent);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1rem}.card-header{border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-500);justify-content:space-between;align-items:center;gap:.5rem;padding:.9rem 1.25rem;font-size:.75rem;font-weight:700;display:flex}.card-body{padding:1.25rem}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.85rem;margin-bottom:1.5rem;display:grid}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:.85rem;padding:1rem 1.25rem;display:flex}.stat-icon{background:var(--accent-light);width:42px;height:42px;color:var(--accent);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.1rem;display:flex}.stat-value{font-size:1.35rem;font-weight:700;line-height:1.1}.stat-label{color:var(--ink-500);text-transform:uppercase;letter-spacing:.04em;font-size:.8rem;font-weight:600}table{border-collapse:collapse;width:100%}thead th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-500);background:var(--surface-muted);text-align:left;border-bottom:1px solid var(--border);padding:.85rem 1rem;font-size:.72rem;font-weight:700}tbody td{border-bottom:1px solid var(--border);vertical-align:middle;padding:.85rem 1rem}tbody tr:hover{background-color:var(--accent-light)}.text-end{text-align:right}.text-center{text-align:center}.text-nowrap{white-space:nowrap}.invoice-number-link{color:var(--brand);font-weight:700;text-decoration:none}.invoice-number-link:hover{color:var(--accent);text-decoration:underline}.money{font-variant-numeric:tabular-nums;font-weight:600}.money-total{font-variant-numeric:tabular-nums;color:var(--money);font-size:1.05rem;font-weight:800}.badge-soft{background:var(--brand-light);color:var(--brand);letter-spacing:.03em;text-transform:uppercase;border-radius:999px;padding:.38em .65em;font-size:.72rem;font-weight:600;display:inline-block}.badge-soft-money{background:var(--money-light);color:var(--money);border-radius:999px;padding:.4em .75em;font-size:.78rem;font-weight:700;display:inline-block}.btn{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:.4rem;padding:.5rem .9rem;font-family:inherit;font-size:.9rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background-color:var(--brand);border-color:var(--brand);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--brand-dark)}.btn-success{background-color:var(--money);border-color:var(--money);color:#fff}.btn-success:hover:not(:disabled){filter:brightness(.92)}.btn-danger{background-color:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){filter:brightness(.92)}.btn-outline-secondary{color:var(--ink-700);border-color:var(--border);background:#fff}.btn-outline-secondary:hover:not(:disabled){background-color:var(--surface-muted);border-color:var(--ink-400)}.btn-outline-primary{color:var(--accent);border-color:var(--accent);background:#fff}.btn-outline-primary:hover:not(:disabled){background-color:var(--accent-light)}.btn-outline-danger{color:var(--danger);border-color:var(--danger);background:#fff}.btn-outline-danger:hover:not(:disabled){background-color:var(--danger-light)}.btn-sm{padding:.3rem .6rem;font-size:.8rem}.form-label{color:var(--ink-700);margin-bottom:.3rem;font-size:.83rem;font-weight:600;display:block}.form-control,select.form-control{border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;color:var(--ink-900);background:#fff;padding:.5rem .75rem;font-family:inherit;font-size:.92rem}.form-control:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 .2rem #2563eb26}textarea.form-control{resize:vertical}.field-error{color:var(--danger);margin-top:.25rem;font-size:.8rem}.autocomplete-wrap{position:relative}.autocomplete-list{z-index:20;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:220px;margin:0;padding:.25rem 0;list-style:none;position:absolute;top:calc(100% + 2px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #0f172a1f}.autocomplete-list li{cursor:pointer;white-space:nowrap;text-overflow:ellipsis;padding:.45rem .75rem;font-size:.88rem;overflow:hidden}.autocomplete-list li:hover,.autocomplete-list li.active{background:var(--accent-light);color:var(--accent)}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;display:grid}.alert{border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:left;align-items:flex-start;gap:.6rem;margin-bottom:1rem;padding:.85rem 1.1rem;font-size:.9rem;display:flex}.alert-danger{background:var(--danger-light);color:#7a1220}.alert-success{background:var(--money-light);color:#0a5c40}.alert ul{margin:.3rem 0 0;padding-left:1.1rem}.empty-state{text-align:center;color:var(--ink-500);padding:3rem 1.5rem}.empty-icon{color:var(--ink-400);margin-bottom:.75rem;font-size:2.25rem}.loading-state{text-align:center;color:var(--ink-500);padding:3rem 1.5rem}.thumb-frame{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-muted);justify-content:center;align-items:center;width:56px;height:48px;display:flex;overflow:hidden}.thumb-frame img{object-fit:cover;max-width:100%;max-height:100%}.pagination{justify-content:center;gap:.5rem;margin-top:1.25rem;display:flex}.pagination button{border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;color:var(--ink-700);background:#fff;padding:.4rem .9rem;font-family:inherit;font-size:.85rem}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination .page-info{color:var(--ink-500);align-items:center;padding:0 .5rem;font-size:.85rem;display:flex}.search-box{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fff;align-items:center;gap:.5rem;max-width:320px;padding:.45rem .75rem;display:flex}.search-box input{border:none;outline:none;flex:1;font-family:inherit;font-size:.9rem}
