@media print{.site-header,.site-footer,.back-link,.inv-app__intro,.inv-app__editor,.inv-app__history,.inv-app__preview-pane>h2{display:none!important}body,main{background:#fff!important;margin:0!important;padding:0!important}.inv-app__layout{display:block!important}.inv-preview{box-shadow:none!important;aspect-ratio:auto!important;border-radius:0!important;max-width:none!important;margin:0!important;padding:0!important}.inv-app__preview-pane{position:static!important}}.inv-app__intro{margin-bottom:2rem}.inv-app__intro h1{margin:0 0 .5rem;font-size:1.5rem}.inv-app__intro p{color:var(--text-muted);max-width:60ch;margin:0}.inv-app__layout{grid-template-columns:minmax(320px,560px) minmax(320px,1fr);align-items:start;gap:2.5rem;display:grid}@media (width>=1180px){.inv-app__layout{grid-template-columns:minmax(420px,620px) minmax(420px,1fr);gap:3.5rem}}@media (width<=860px){.inv-app__layout{grid-template-columns:1fr;gap:2.5rem}}.inv-app__editor,.inv-app__preview-pane{min-width:0}.inv-app__preview-pane{position:sticky;top:2rem}@media (width<=860px){.inv-app__preview-pane{position:static}}.inv-app__editor h2,.inv-app__preview-pane h2,.inv-app__history h2{text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted);margin:0 0 1rem;font-size:1rem}.inv-fieldset{border:none;margin:0 0 2rem;padding:0}.inv-logo-field{flex-direction:column;gap:.4rem;margin-bottom:1.5rem;display:flex}.inv-logo-control{align-items:center;gap:1rem;display:flex}.inv-logo-thumb{background:var(--bg);border:1px dashed var(--border);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:96px;height:56px;display:flex;overflow:hidden}.inv-logo-thumb img{object-fit:contain;max-width:100%;max-height:100%}.inv-logo-actions{flex-wrap:wrap;gap:.5rem;display:flex}.inv-grid{grid-template-columns:1fr 1fr;gap:1rem 1.25rem;margin-bottom:1rem;display:grid}@media (width<=480px){.inv-grid{grid-template-columns:1fr}}.inv-field--wide{grid-column:1/-1}.inv-field{flex-direction:column;gap:.4rem;min-width:0;display:flex}.inv-field__label{color:var(--text-muted);font-size:.8rem;font-weight:600}.inv-checkbox-field{align-items:center;gap:.5rem;font-size:.9rem;display:flex}.inv-checkbox-field input{width:auto;min-height:0}.inv-app input[type=text],.inv-app input[type=email],.inv-app input[type=date],.inv-app input[type=number],.inv-app textarea,.inv-app select{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font:inherit;box-sizing:border-box;border-radius:8px;min-height:42px;padding:.65rem .75rem;font-size:.95rem}.inv-app textarea{resize:vertical;min-height:0;line-height:1.5}.inv-app select{appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'><path d='M1 1l5 5 5-5' fill='none' stroke='%239aa0ac' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.25rem}.inv-app input:focus,.inv-app textarea:focus,.inv-app select:focus{border-color:var(--accent);outline:none}.inv-computed-field{border:1px solid var(--border);background:var(--bg-elevated);min-height:42px;color:var(--text-muted);box-sizing:border-box;border-radius:8px;align-items:center;padding:.65rem .75rem;font-size:.95rem;display:flex}.inv-customer-actions{flex-wrap:wrap;gap:.5rem;display:flex}.inv-btn{border:1px solid var(--border);color:var(--text);font:inherit;cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;min-height:42px;padding:.6rem 1rem;font-size:.9rem;transition:border-color .15s,background-color .15s;display:inline-flex}.inv-btn:hover{border-color:var(--accent)}.inv-btn:disabled{opacity:.5;cursor:not-allowed}.inv-btn--primary{background:var(--accent);border-color:var(--accent);color:#0f1117;font-weight:600}.inv-btn--danger{color:var(--danger);border-color:var(--danger)}.inv-btn--small{min-height:38px;padding:.4rem .75rem;font-size:.8rem}.inv-btn--icon{flex-shrink:0;min-width:32px;min-height:32px;padding:.4rem;line-height:1}.inv-line-items{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.inv-line-row{grid-template-columns:minmax(0,2fr) 70px 80px 100px 32px;align-items:center;gap:.5rem;display:grid}.inv-line-row--header span{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.75rem;font-weight:600}@media (width<=560px){.inv-line-row{border-bottom:1px dashed var(--border);grid-template-columns:1fr 1fr;grid-template-areas:"desc desc""qty unit""price remove";gap:.4rem .5rem;padding-bottom:.6rem}.inv-line-row--header{display:none}.inv-line-input--description{grid-area:desc}}.inv-line-input{background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);font:inherit;box-sizing:border-box;border-radius:8px;min-height:38px;padding:.5rem .6rem;font-size:.9rem}.inv-line-input:focus{border-color:var(--accent);outline:none}.inv-app__actions{flex-wrap:wrap;gap:.75rem;margin-top:.5rem;display:flex}@media (width<=480px){.inv-app__actions{flex-direction:column}.inv-app__actions .inv-btn{width:100%}}.inv-app__history{margin-top:3rem}.inv-history{flex-direction:column;gap:.5rem;display:flex}.inv-history-row{border-bottom:1px solid var(--border);grid-template-columns:90px 100px 1fr 110px auto;align-items:center;gap:.75rem;padding:.6rem 0;display:grid}.inv-history-row--header .inv-history-cell{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-size:.75rem;font-weight:600}@media (width<=700px){.inv-history-row{grid-template-columns:1fr 1fr;grid-template-areas:"date number""customer customer""amount actions";gap:.3rem .5rem}.inv-history-row--header{display:none}}.inv-history-cell{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.9rem;overflow:hidden}.inv-history-cell--amount{text-align:right;font-variant-numeric:tabular-nums}.inv-history-cell--actions{white-space:normal;flex-wrap:wrap;gap:.4rem;display:flex}.inv-history-empty{color:var(--text-muted);font-size:.9rem;font-style:italic}.inv-preview{color:#1c1c1c;box-sizing:border-box;aspect-ratio:210/297;background:#fff;border-radius:6px;max-width:780px;margin:0 auto;padding:2.75rem;box-shadow:0 4px 24px #00000059}@media (width<=600px){.inv-preview{padding:1.5rem}}.inv-preview__header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.75rem;display:flex}.inv-preview__logo{object-fit:contain;max-width:140px;max-height:64px}.inv-preview__title{letter-spacing:.03em;color:#111;margin:0;font-size:1.7rem;font-weight:700}.inv-preview__parties{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:1.5rem;display:grid}.inv-preview__party-heading{text-transform:uppercase;letter-spacing:.05em;color:#888;margin:0 0 .4rem;font-size:.75rem}.inv-preview__party-line{color:#333;margin:0 0 .15rem;font-size:.85rem;line-height:1.4}.inv-preview__meta{border-top:1px solid #ddd;border-bottom:1px solid #ddd;margin-bottom:1.5rem;padding:.75rem 0}.inv-preview__meta-row{justify-content:space-between;gap:1rem;padding:.15rem 0;font-size:.85rem;display:flex}.inv-preview__meta-label{color:#666}.inv-preview__meta-value{color:#111;text-align:right;font-weight:600}.inv-preview__table{margin-bottom:1.25rem}.inv-preview__table-row{grid-template-columns:1fr 15% 20% 20%;gap:.5rem;padding:.4rem 0;font-size:.85rem;display:grid}.inv-preview__table-row--header{text-transform:uppercase;letter-spacing:.04em;color:#888;border-bottom:1px solid #ddd;font-size:.7rem}.inv-preview__table-row:not(.inv-preview__table-row--header){color:#333;border-bottom:1px solid #eee}.inv-preview__col-qty,.inv-preview__col-price,.inv-preview__col-sum{text-align:right;font-variant-numeric:tabular-nums}.inv-preview__totals{width:60%;max-width:280px;margin-bottom:1.5rem;margin-left:auto}.inv-preview__totals-row{color:#444;justify-content:space-between;padding:.3rem 0;font-size:.85rem;display:flex}.inv-preview__totals-row--total{color:#111;border-top:1px solid #ccc;margin-top:.2rem;padding-top:.5rem;font-size:1rem;font-weight:700}.inv-preview__footer p{color:#555;margin:0 0 .4rem;font-size:.8rem;line-height:1.5}.inv-preview__fskatt{font-style:italic}.inv-preview__empty{color:#888;font-style:italic}
