@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap";:root{--bg: #eef2f1;--bg-gradient: radial-gradient(circle at 8% -6%, #cfdce2 0%, transparent 42%), radial-gradient(circle at 105% 10%, #f1dcc5 0%, transparent 40%), #eef2f1;--surface: #ffffff;--surface-soft: #f4f8f9;--text: #1c2a33;--muted: #5f727e;--primary: #0f6b78;--primary-hover: #0a5461;--secondary: #e7eef0;--danger: #9e3a31;--line: #ccd8de;--shadow: 0 18px 36px rgba(16, 51, 66, .1)}*{box-sizing:border-box}body{margin:0;font-family:Manrope,Segoe UI,sans-serif;color:var(--text);background:var(--bg-gradient);min-width:320px}h1,h2,h3,h4,p{margin:0}a{text-decoration:none;color:inherit}button,.button-link{border:1px solid transparent;background:var(--primary);color:#fff;border-radius:10px;padding:.55rem .95rem;font-size:.92rem;font-weight:700;cursor:pointer;transition:transform .18s ease,background .18s ease}button:hover,.button-link:hover{background:var(--primary-hover);transform:translateY(-1px)}button.secondary,.secondary-link{color:var(--text);background:var(--secondary);border-color:var(--line)}button.danger{background:var(--danger)}input,textarea,select{width:100%;border:1px solid var(--line);border-radius:8px;padding:.55rem .65rem;font:inherit;color:var(--text);background:#fff}textarea{min-height:88px;resize:vertical}.app-shell{max-width:1520px;margin:0 auto;padding:1rem 1.2rem 1.2rem}.topbar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;background:linear-gradient(145deg,#fff,#f3f8fa);border:1px solid #c8d5dc;border-radius:16px;padding:1.2rem 1.4rem;box-shadow:var(--shadow);animation:rise-in .4s ease}.topbar-brand{display:flex;align-items:center;gap:.9rem}.topbar-logo{width:100px;height:100px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid #d5e1e6;padding:.2rem}.topbar-user{display:flex;align-items:center}.eyebrow{color:#0c5d68;font-size:.84rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem}.topbar h1{font-size:clamp(1.4rem,2vw,2.1rem)}.subtitle{color:var(--muted);max-width:460px;text-align:right}.tabs{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.tabs a{padding:.5rem .8rem;border-radius:10px;background:#ffffffdb;border:1px solid var(--line);color:var(--muted);font-weight:600}.tabs a.active{color:#fff;background:linear-gradient(135deg,#0f6b78,#1e7d6f);border-color:#0f6b78}.content{display:grid;gap:.8rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.05rem;box-shadow:var(--shadow)}.card.inset{background:var(--surface-soft);box-shadow:none}.error{color:var(--danger);font-weight:600}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.full-width{grid-column:1 / -1}.metric{margin-top:.55rem;font-size:2.1rem;font-weight:800}.status-row{margin-top:.85rem;display:flex;flex-wrap:wrap;gap:.55rem}.badge{border-radius:999px;padding:.2rem .7rem;font-size:.79rem;font-weight:700}.badge.draft{background:#ececec}.badge.sent{background:#d5eaf9}.badge.paid{background:#d7f2dc}.badge.cancelled{background:#f7d9d9}.split-layout{display:grid;grid-template-columns:minmax(320px,38%) 1fr;gap:1rem}.entity-layout{grid-template-columns:minmax(320px,34%) minmax(0,1fr);align-items:start}.dashboard-view{display:grid;gap:.8rem}.dashboard-metrics{margin-top:0}.form{display:grid;gap:.7rem;margin-top:.8rem}.form label{display:grid;gap:.35rem;font-weight:600;color:var(--muted);font-size:.9rem}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.actions-inline{display:flex;gap:.4rem;flex-wrap:wrap}.list-filter{margin-top:0}.list-toolbar{margin-top:.7rem;display:grid;grid-template-columns:minmax(0,1fr) 210px;gap:.6rem}.page-toolbar h2{font-size:1.2rem}.dashboard-month-select{width:auto;min-width:190px}.list-scroll{margin-top:.65rem;max-height:430px;overflow-y:auto;border:1px solid var(--line);border-radius:12px}.list-scroll .table{margin-top:0}.list-scroll .table thead th{position:sticky;top:0;z-index:1;background:var(--surface)}.client-table .actions-inline{display:inline-flex;align-items:center;justify-content:flex-start;gap:.45rem;flex-wrap:nowrap;white-space:nowrap}.client-table .actions-inline button{padding:.42rem .62rem;font-size:.8rem}.client-table{table-layout:fixed}.client-table th:nth-child(1),.client-table td:nth-child(1){width:18%}.client-table th:nth-child(2),.client-table td:nth-child(2){width:30%}.client-table th:nth-child(3),.client-table td:nth-child(3){width:18%}.client-table th:nth-child(4),.client-table td:nth-child(4){width:24%}.invoice-table{table-layout:fixed}.invoice-table th:nth-child(1),.invoice-table td:nth-child(1){width:14%}.invoice-table th:nth-child(2),.invoice-table td:nth-child(2){width:19%}.invoice-table th:nth-child(3),.invoice-table td:nth-child(3),.invoice-table th:nth-child(4),.invoice-table td:nth-child(4){width:13%}.invoice-table th:nth-child(5),.invoice-table td:nth-child(5){width:13%}.invoice-table th:nth-child(6),.invoice-table td:nth-child(6){width:12%}.invoice-table th:nth-child(7),.invoice-table td:nth-child(7){width:15%}.invoice-table .actions-inline{display:inline-flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;white-space:nowrap;gap:.45rem}.invoice-table .actions-inline button{padding:.42rem .62rem;font-size:.8rem}.invoice-table .table-group-row td{font-weight:700;color:var(--muted);background:#f6f7fb}.pagination-row{margin-top:.7rem;display:flex;justify-content:flex-end;align-items:center;gap:.55rem}.catalog-table{table-layout:fixed}.catalog-table th:nth-child(1),.catalog-table td:nth-child(1){width:18%}.catalog-table th:nth-child(2),.catalog-table td:nth-child(2){width:30%}.catalog-table th:nth-child(3),.catalog-table td:nth-child(3){width:18%}.catalog-table th:nth-child(4),.catalog-table td:nth-child(4){width:10%}.catalog-table th:nth-child(5),.catalog-table td:nth-child(5){width:24%}.catalog-table .actions-inline{display:inline-flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap;white-space:nowrap;gap:.45rem}.catalog-table .actions-inline button{padding:.42rem .62rem;font-size:.8rem}.table{width:100%;border-collapse:collapse;margin-top:.8rem}.table th,.table td{text-align:left;border-bottom:1px solid var(--line);padding:.72rem .52rem;vertical-align:top}.table th{color:var(--muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}.detail-panel{margin-top:.9rem;border:1px solid var(--line);border-radius:10px;padding:.8rem;background:var(--surface-soft)}.detail-panel ul{margin:.5rem 0 0;padding-left:1.2rem}.toolbar{display:flex;justify-content:space-between;gap:.8rem;align-items:center;flex-wrap:wrap}.filters{margin-top:.85rem;display:grid;grid-template-columns:1fr 220px;gap:.65rem}.filters-extended{grid-template-columns:minmax(0,1fr) 210px 220px}.totals{margin-top:.8rem;display:grid;justify-content:end;gap:.2rem;font-weight:600}.print-sheet{background:#fff;border:1px solid var(--line);border-radius:14px;padding:15mm 14mm 16mm}.print-actions{display:flex;gap:.5rem;margin-bottom:1rem}.print-header{display:block;border-bottom:2px solid #1f2b26;padding:.7rem .65rem 1rem;margin-bottom:0}.print-company-brand{display:flex;align-items:center;gap:1.15rem;margin-bottom:0}.print-document-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:1.15rem;margin-top:1.25rem;margin-bottom:1.3rem}.print-invoice-block{display:grid;gap:.35rem;align-content:start}.print-company-logo{width:100px;height:100px;object-fit:contain}.print-company-name{font-family:Times New Roman,Georgia,serif;font-size:2.5rem;font-weight:700;letter-spacing:.045em;line-height:1.04;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.15)}.print-company-subtitle{margin-top:.25rem;font-size:.88rem;font-weight:700;color:#425851;letter-spacing:.05em}.print-invoice-title{font-size:1.55rem;margin-top:0}.print-invoice-meta{display:grid;gap:.28rem;margin-top:.35rem;padding-top:.35rem;border-top:1px solid #d9e2dd}.print-client-area{align-self:start;justify-self:end;width:100%;max-width:86%;padding:.35rem .75rem .65rem;text-align:left;line-height:1.45}.print-client-area h3{margin-bottom:.3rem;font-size:1rem;text-transform:uppercase;letter-spacing:.06em}.print-header p,.print-footer p{margin-top:.3rem}.print-table{margin-top:1.9rem}.print-table thead th{border-top:1px solid #c7d3cc;border-bottom:1px solid #c7d3cc;background:#f4f8f6}.print-table th:nth-child(1),.print-table td:nth-child(1){width:18%}.print-table th:nth-child(2),.print-table td:nth-child(2){width:34%}.print-table th:nth-child(2),.print-table td:nth-child(2),.print-table th:nth-child(3),.print-table td:nth-child(3),.print-table th:nth-child(4),.print-table td:nth-child(4),.print-table th:nth-child(5),.print-table td:nth-child(5){text-align:center}.print-footer{margin-top:1.55rem;border-top:2px solid #1f2b26;padding-top:1rem;display:grid;gap:.9rem}.print-footer .strong{font-size:1.15rem;font-weight:800}.print-totals-box{margin-left:auto;width:min(340px,100%);padding:.55rem .75rem;border:1px solid #95a9a0;border-radius:8px;background:#f8fbf9;line-height:1.5}.print-total-row{display:grid;grid-template-columns:auto 14px 1fr;align-items:center;column-gap:.2rem}.print-total-colon{text-align:center}.print-amount-words-box{padding:.6rem .75rem;border:1px solid #b8c6bf;border-radius:8px;background:#fcfefd}.print-amount-words-label{font-size:.76rem;letter-spacing:.04em;color:#4b5d55;font-weight:700}.print-amount-words-value{margin-top:.35rem;font-size:.88rem;font-weight:800;line-height:1.4}.print-notes{padding-top:.45rem;border-top:1px dashed #c2cfca}.print-signatures{margin-top:1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem}.print-signature-box{min-height:120px;border:1px solid #8ea39a;border-radius:8px;padding:.55rem .75rem;background:#fff;display:flex;align-items:flex-start}.print-signature-label{margin:0;font-size:.82rem;font-weight:700;color:#2f433b;letter-spacing:.01em}.print-legal-footer{margin-top:1.2rem;border-top:1px solid #8ea39a;padding-top:.65rem;font-size:.78rem;color:#30413a;line-height:1.45}@keyframes rise-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 980px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout,.filters,.list-toolbar,.filters-extended,.form-row{grid-template-columns:1fr}}@media (max-width: 640px){.grid-3{grid-template-columns:1fr}.app-shell{padding:.7rem}.subtitle{text-align:left}}@media print{@page{size:A4;margin:7mm}body{background:#fff;print-color-adjust:exact;-webkit-print-color-adjust:exact}.topbar,.tabs,.no-print{display:none!important}.app-shell,.print-sheet{padding:0;margin:0;border:none;box-shadow:none;max-width:100%}.print-sheet{width:100%;min-height:auto;border-radius:0;padding:0 0 20mm}.print-header{padding-bottom:4mm;break-inside:avoid}.print-document-head{grid-template-columns:minmax(0,1.1fr) minmax(250px,.9fr);margin-top:4mm;margin-bottom:4mm;break-inside:avoid}.print-client-area{max-width:68%;justify-self:end;text-align:left;padding-top:2mm}.print-company-logo{width:38mm;height:38mm}.print-company-name{font-size:28pt}.print-company-subtitle{font-size:10.5pt}.print-invoice-title{font-size:15pt}.print-table{margin-top:4mm}.print-table th,.print-table td{padding:4px 6px}.print-footer{margin-top:4mm;padding-top:4mm;padding-bottom:16mm;break-inside:avoid}.print-totals-box,.print-amount-words-box{break-inside:avoid;background:#fff}.print-table th,.print-table td{border-color:#bbb}.print-signatures,.print-signature-box{break-inside:avoid}.print-signatures{margin-top:28mm}.print-signature-box{min-height:100px}.print-legal-footer{position:fixed;left:6mm;right:6mm;bottom:6mm;background:#fff;padding:6px 0 0;border-top:1px solid #777;font-size:10px;line-height:1.25;break-inside:avoid}}
