:root{--ink:#16202e;--body:#2a3441;--muted:#4a5462;--line:#d7dce4;--accent:#0f5e63;--bg:#e3e7ee;--panel:#f6f7f9}*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:var(--ink);background:var(--bg);font:14px/1.45 system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}.topbar{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;padding:10px 20px;display:flex}.brand-mini{align-items:center;gap:10px;font-size:16px;display:flex}.brand-mini .tag{color:#c3ccd6;margin-left:4px;font-size:12px;font-weight:400}.mono-sq{background:var(--accent);color:#fff;border-radius:7px;place-items:center;width:28px;height:28px;font:700 15px Georgia,Times New Roman,serif;display:inline-grid}.btn{color:var(--ink);cursor:pointer;background:#fff;border:1px solid #b9c1cc;border-radius:7px;padding:9px 13px;font:600 13px/1 system-ui,sans-serif}.btn:hover{border-color:var(--accent);color:var(--accent)}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{color:#fff;background:#0b4a4e}.app{height:calc(100vh - 49px);display:flex}.panel{background:var(--panel);border-right:1px solid var(--line);flex:none;width:430px;padding:16px 18px 40px;overflow-y:auto}.sec{border:1px solid var(--line);background:#fff;border-radius:10px;margin-bottom:14px;padding:12px 16px 14px}.sec-t{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:2px 0 6px;font-size:11px;font-weight:700}label{color:var(--muted);margin:8px 0 3px;font-size:11.5px;font-weight:600;display:block}input,textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #b9c1cc;border-radius:6px;padding:7px 9px;font:13.5px system-ui,sans-serif}input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:0;border-color:var(--accent)}textarea{resize:vertical}.row2{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.row3{grid-template-columns:1.2fr 1fr 1fr;gap:0 12px;display:grid}.row-end{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.tpl-row{align-items:center;gap:8px;margin-top:12px;display:flex}.tpl-row .btn{padding:7px 10px}#tplStatus{color:var(--accent);font-size:12px;font-weight:600}.items{border-collapse:collapse;width:100%}.items th{letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:left;border-bottom:1px solid var(--line);padding:4px 4px 6px;font-size:10.5px;font-weight:700}.items th.num,.items td.num{text-align:right}.items td{vertical-align:middle;padding:4px}.items td input{padding:6px 7px}.items td:nth-child(2) input{min-width:130px}.items td:nth-child(3) input,.items td:nth-child(4) input,.items td:nth-child(5) input{width:74px}.items .n-idx{color:var(--muted);text-align:right;width:20px;padding-right:6px;font-size:12px}.items .line-amt{white-space:nowrap;font-size:12.5px;font-weight:600}.btn-x{color:#8a4444;cursor:pointer;background:0 0;border:none;border-radius:5px;padding:4px 7px;font-size:18px;line-height:1}.btn-x:hover{background:#f3dede}.disc-row{max-width:130px;margin-top:10px}.preview{flex:1;justify-content:center;align-items:flex-start;padding:26px;display:flex;overflow:auto}.preview-col{flex-direction:column;align-items:center;display:flex}.page-cap{color:var(--muted);letter-spacing:.02em;align-self:flex-start;margin:0 0 10px;padding-left:2px;font-size:11.5px}#invoice-page{width:794px;min-height:1118px;color:var(--body);background:#fff;flex-direction:column;flex:none;padding:50px 56px 30px;display:flex;box-shadow:0 3px 18px #141e2d38}.inv-head{justify-content:space-between;align-items:flex-start;display:flex}.brand{align-items:flex-start;gap:13px;display:flex}.mono-sq.big{border-radius:10px;width:46px;height:46px;font-size:24px}.company{color:var(--ink);font:700 25px/1.15 Georgia,Times New Roman,serif}.senderline{color:var(--muted);font-size:11px}.inv-title{letter-spacing:.22em;color:var(--ink);padding-top:8px;font:700 30px/1 Georgia,Times New Roman,serif}.rule{background:var(--accent);height:3px;margin:16px 0 22px}.inv-meta-row{justify-content:space-between;gap:40px;margin-bottom:24px;display:flex}.mini-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;font-size:10px;font-weight:700}.billto{min-width:250px;font-size:12.5px;line-height:1.5}.cust-name{color:var(--ink);font-size:14.5px;font-weight:700}table.meta{border-collapse:collapse;margin-left:auto;font-size:12px}table.meta td{padding:3.5px 0 3.5px 26px}table.meta td:first-child{color:var(--muted)}table.meta td:last-child{text-align:right;color:var(--ink);white-space:nowrap}table.inv-items{border-collapse:collapse;width:100%;margin-bottom:30px}table.inv-items th{background:var(--ink);color:#fff;letter-spacing:.08em;text-transform:uppercase;text-align:left;padding:7px 9px;font-size:10px;font-weight:700}table.inv-items th.num{text-align:right}table.inv-items th.n-idx{text-align:center;width:30px}table.inv-items td{border-bottom:1px solid #e2e6ec;padding:8.5px 9px;font-size:12.5px}table.inv-items td.n-idx{text-align:center;color:var(--muted)}table.inv-items td.num{text-align:right;font-variant-numeric:tabular-nums}table.inv-items td.strong{color:var(--ink);font-weight:600}table.inv-items .ph{color:var(--muted);font-style:italic}table.inv-items .empty{color:var(--muted);text-align:center;padding:18px}.below{align-items:flex-start;gap:36px;display:flex}.payment{flex:1;font-size:11.5px;line-height:1.55}.pay-bank{color:var(--ink);font-size:12.5px;font-weight:700}.pay-k{min-width:38px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700;display:inline-block}.pay-terms{max-width:330px;margin-top:7px}.pay-due{margin-top:5px}.totals{flex:none;width:300px}.t-row{border-bottom:1px solid #e2e6ec;justify-content:space-between;gap:14px;padding:5.5px 10px;font-size:12.5px;display:flex}.t-row em{color:var(--muted);font-size:11px;font-style:normal}.t-row span:last-child{font-variant-numeric:tabular-nums}.t-row.disc{color:var(--accent);font-weight:600}.t-row.grand{background:var(--ink);color:#fff;border-bottom:none;margin-top:6px;padding:10px;font-size:14px;font-weight:700}.inv-notes{border-left:3px solid var(--accent);color:var(--muted);background:#f2f5f7;max-width:560px;margin-top:34px;padding:11px 14px;font-size:11px;line-height:1.55}.inv-notes .mini-label{margin-bottom:3px}.inv-foot{border-top:1px solid var(--line);color:var(--muted);text-align:center;margin-top:auto;padding-top:12px;font-size:9.5px;line-height:1.5}@media print{@page{size:A4;margin:0}html,body{background:#fff!important;height:auto!important}.topbar,.panel,.page-cap{display:none!important}.app{height:auto!important;display:block!important}.preview{background:#fff!important;height:auto!important;padding:0!important;display:block!important;overflow:visible!important}#invoice-page{width:794px!important;min-height:1118px!important;box-shadow:none!important;margin:0!important}}
