.invoice-print-root{display:none}@media print{@page{size:A4;margin:1.5cm 1.5cm -1cm}:root{background:#fff;color:#000;font-family:Georgia,serif}body{background:#fff}body>#root>*{visibility:hidden}.invoice-print-root,.invoice-print-root *{visibility:visible}.invoice-print-root{background:#fff;color:#000;display:block;font-family:Georgia,serif;font-size:10.5pt;inset:0;line-height:1.35;padding:0;position:absolute}.invoice-print-root h1,.invoice-print-root h2,.invoice-print-root p{margin:0}.invoice-print-header{align-items:flex-start;border-bottom:2px solid #000000;display:flex;justify-content:space-between;gap:16mm;padding-bottom:6mm}.invoice-print-eyebrow{font-size:12pt;font-weight:700;text-transform:uppercase}.invoice-print-header h1{font-size:22pt;margin-top:2mm}.invoice-print-ksef{font-size:9pt;max-width:85mm;overflow-wrap:anywhere;text-align:right}.invoice-print-parties{display:grid;gap:8mm;grid-template-columns:1fr 1fr;margin-top:8mm}.invoice-print-parties>div,.invoice-print-payment{border:1px solid #000000;padding:4mm}.invoice-print-root h2{font-size:12pt;margin-bottom:3mm}.invoice-print-parties p,.invoice-print-payment p{margin-top:1.5mm}.invoice-print-details{border:1px solid #000000;display:grid;gap:0;grid-template-columns:repeat(5,1fr);margin-top:8mm}.invoice-print-details p{border-right:1px solid #000000;padding:3mm}.invoice-print-details p:last-child{border-right:0}.invoice-print-details span{display:block;font-size:8pt;font-weight:700;margin-bottom:1mm}.invoice-print-table{border-collapse:collapse;margin-top:8mm;width:100%}.invoice-print-table th,.invoice-print-table td{border:1px solid #000000;padding:2.5mm;text-align:left;vertical-align:top}.invoice-print-table th{font-weight:700}.invoice-print-table td:nth-child(1),.invoice-print-table td:nth-child(3),.invoice-print-table td:nth-child(4),.invoice-print-table td:nth-child(6),.invoice-print-table td:nth-child(7){white-space:nowrap}.invoice-print-summary{align-items:start;display:grid;gap:8mm;grid-template-columns:1fr 1fr}.invoice-print-payment{margin-top:8mm}.invoice-print-total{border:2px solid #000000;font-size:14pt;margin-top:8mm;padding:4mm;text-align:right}.invoice-print-footer{border-top:1px solid #000000;color:#444;font-size:9pt;margin-top:2cm;padding-top:.5cm;text-align:center}}:root{color:#172033;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{border:1px solid #c9d3e3;border-radius:8px;background:#fff;color:#172033;cursor:pointer;padding:.7rem .95rem}button:hover{border-color:#315ea8}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:#10192b;color:#fff;display:flex;flex-direction:column;gap:2rem;padding:2rem}.sidebar h1{font-size:1.45rem;margin:.2rem 0 0}.sidebar nav{display:grid;gap:.6rem}.sidebar button{background:transparent;border-color:#2c3b57;color:#dce7f7;text-align:left}.sidebar button.active,.sidebar button:hover{background:#234981;border-color:#5b82bd;color:#fff}.logout-button{margin-top:auto}main{padding:2.5rem}.auth-shell{align-items:center;display:flex;min-height:100vh;justify-content:center;padding:1.5rem}.auth-panel{background:#fff;border:1px solid #dce3ef;border-radius:8px;display:grid;gap:1.1rem;max-width:420px;padding:2rem;width:100%}.auth-panel h1{font-size:1.8rem;margin:0}h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.1;margin:0}h3{margin:0}.eyebrow{color:#5d6c85;font-size:.78rem;font-weight:700;letter-spacing:.08em;margin:0 0 .45rem;text-transform:uppercase}.sidebar .eyebrow{color:#94aacb}.lead{color:#526176;font-size:1.08rem;max-width:720px}.stack{display:grid;gap:1.5rem}.stats-grid,.totals,.details-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat,.detail,.readonly-field{background:#fff;border:1px solid #dce3ef;border-radius:8px;padding:1rem}.stat span,.detail span,.readonly-field span{color:#65748a;display:block;font-size:.85rem;margin-bottom:.35rem}.stat strong,.detail strong,.readonly-field strong{display:block;font-size:1.2rem}.form-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}label{display:grid;gap:.4rem}label span{color:#38485f;font-size:.88rem;font-weight:700}input,select{border:1px solid #cbd5e3;border-radius:8px;min-height:44px;padding:.65rem .8rem;width:100%}.primary{background:#235ba8;border-color:#235ba8;color:#fff;font-weight:700}.message{color:#17613d;font-weight:700}.actions-row{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.hint{color:#5d6c85}.error,.warning,.empty-state,.error-list,.code-preview{border-radius:8px;padding:1rem}.error,.error-list{background:#fff1f1;color:#9f1e1e}.warning{background:#fff8dd;color:#725400}.warning p{margin:.45rem 0 0}.empty-state{background:#fff;border:1px dashed #b9c5d6;color:#5d6c85}.table-wrap{overflow-x:auto}table{background:#fff;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}th,td{border-bottom:1px solid #e1e7f0;padding:.85rem;text-align:left;vertical-align:top}th{background:#edf2f8;color:#394960;font-size:.83rem}.badge{background:#e8f0fb;border-radius:999px;color:#224f8d;display:inline-block;font-size:.82rem;font-weight:700;padding:.25rem .55rem}.code-preview{background:#10192b;color:#e8eef8;font-size:.86rem;line-height:1.55;margin:0;max-height:420px;overflow:auto;white-space:pre-wrap}.items-list{display:grid;gap:1rem}.items-header{align-items:center;display:flex;justify-content:space-between;gap:1rem}.invoice-item{align-items:end;background:#fff;border:1px solid #dce3ef;border-radius:8px;display:grid;gap:.8rem;grid-template-columns:minmax(220px,2fr) 110px 120px 140px 120px minmax(160px,1fr) auto;padding:1rem}.item-summary{display:grid;gap:.2rem}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{padding:1rem}.sidebar nav{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}main{padding:1rem}.invoice-item{grid-template-columns:1fr}}
