*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg: #f0f2f5;--color-panel: #ffffff;--color-border: #e0e3e8;--color-text: #1a1a2e;--color-text-light: #6b7280;--color-primary: #2563eb;--color-primary-hover: #1d4ed8;--color-danger: #ef4444;--color-danger-hover: #dc2626;--font-sans: "Segoe UI", system-ui, -apple-system, sans-serif;--radius: 8px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--transition: .15s ease}html{font-size:16px;-webkit-font-smoothing:antialiased}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.5;min-height:100vh}.app-layout{display:flex;height:100vh;overflow:hidden}.form-panel{width:460px;min-width:400px;background:var(--color-panel);border-right:1px solid var(--color-border);overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:8px}.form-panel-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.app-title{font-size:1.5rem;font-weight:700;color:var(--color-primary);margin-bottom:0;letter-spacing:-.02em}.header-actions{display:flex;align-items:center;gap:8px}.btn-reset{width:30px;height:30px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text-light);border-radius:4px;cursor:pointer;transition:all var(--transition)}.btn-reset:hover{border-color:var(--color-danger);color:var(--color-danger);background:#ef44440f}.lang-switcher{display:flex;gap:4px}.btn-lang{padding:4px 10px;font-size:.78rem;font-family:var(--font-sans);font-weight:600;border:1px solid var(--color-border);background:var(--color-panel);color:var(--color-text-light);border-radius:4px;cursor:pointer;transition:all var(--transition)}.btn-lang:hover{border-color:var(--color-primary);color:var(--color-primary)}.btn-lang.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}fieldset{border:1px solid var(--color-border);border-radius:var(--radius);padding:16px;margin-bottom:12px}legend{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);padding:0 8px}.form-row{display:flex;gap:12px}.form-row>.form-group{flex:1}.form-group{margin-bottom:12px}.form-group:last-child{margin-bottom:0}label{display:block;font-size:.8rem;font-weight:500;color:var(--color-text-light);margin-bottom:4px}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],textarea,select{width:100%;padding:8px 12px;font-size:.9rem;font-family:var(--font-sans);border:1px solid var(--color-border);border-radius:6px;background:#fafbfc;color:var(--color-text);transition:border-color var(--transition),box-shadow var(--transition)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1f}textarea{resize:vertical;min-height:60px}.form-check{display:flex;align-items:center;gap:8px;margin-bottom:12px}.form-check input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-primary)}.form-check label{margin-bottom:0;font-size:.85rem;cursor:pointer}.dynamic-list{display:flex;flex-direction:column;gap:10px;margin-bottom:10px}.dynamic-item{position:relative;background:#f8f9fb;border:1px solid var(--color-border);border-radius:6px;padding:14px 14px 8px}.dynamic-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.dynamic-item-title{font-size:.78rem;font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.03em}.btn-remove{width:24px;height:24px;border:none;background:transparent;color:var(--color-danger);font-size:1.2rem;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background var(--transition)}.btn-remove:hover{background:#ef44441a}.btn{padding:6px 14px;font-size:.85rem;font-family:var(--font-sans);font-weight:500;border:none;border-radius:6px;cursor:pointer;transition:all var(--transition)}.btn-sm{padding:4px 10px;font-size:.78rem}.btn-primary{color:#fff;background:var(--color-primary)}.btn-primary:hover{background:var(--color-primary-hover)}.btn-danger{color:#fff;background:var(--color-danger)}.btn-danger:hover{background:var(--color-danger-hover)}.btn-add{display:inline-block;padding:6px 14px;font-size:.85rem;font-family:var(--font-sans);font-weight:500;color:var(--color-primary);background:#2563eb14;border:1px dashed var(--color-primary);border-radius:6px;cursor:pointer;transition:background var(--transition)}.btn-add:hover{background:#2563eb26}.preview-panel{flex:1;display:flex;flex-direction:column;background:var(--color-bg);overflow:hidden}.preview-toolbar{display:flex;align-items:center;justify-content:flex-end;padding:12px 24px;background:var(--color-panel);border-bottom:1px solid var(--color-border);gap:12px}.preview-scroll{flex:1;overflow-y:auto;padding:24px;display:flex;justify-content:center}.preview-pages-container{position:relative}.invoice-preview{width:210mm;min-height:297mm;background:#fff;box-shadow:var(--shadow-md);border-radius:2px;padding:0;position:relative}.page-break-indicator{position:absolute;left:0;right:0;height:0;z-index:50;pointer-events:none}.page-break-indicator:after{content:"";position:absolute;left:0;right:0;top:-8px;height:16px;background:linear-gradient(to bottom,transparent,rgba(0,0,0,.06) 40%,rgba(0,0,0,.06) 60%,transparent)}.preview-empty{display:flex;align-items:center;justify-content:center;height:200px;color:var(--color-text-light);font-size:.95rem;font-style:italic}@media(max-width:900px){.app-layout{flex-direction:column;height:auto}.form-panel{width:100%;min-width:unset;border-right:none;border-bottom:1px solid var(--color-border);max-height:50vh}.preview-scroll{padding:16px}.invoice-preview{width:100%;min-height:auto}}.form-panel::-webkit-scrollbar,.preview-scroll::-webkit-scrollbar{width:6px}.form-panel::-webkit-scrollbar-track,.preview-scroll::-webkit-scrollbar-track{background:transparent}.form-panel::-webkit-scrollbar-thumb,.preview-scroll::-webkit-scrollbar-thumb{background:#c5c9d1;border-radius:3px}.form-panel::-webkit-scrollbar-thumb:hover,.preview-scroll::-webkit-scrollbar-thumb:hover{background:#a0a5af}.invoice-template{font-family:Segoe UI,system-ui,-apple-system,sans-serif;font-size:12px;color:#1a1a2e;line-height:1.4;position:relative;min-height:297mm;display:flex;flex-direction:column}.inv-section{display:flex;position:relative;border-bottom:1px solid #e0e0e0}.inv-section:last-child{border-bottom:none}.inv-sidebar-label{width:32px;min-width:32px;background:#2858b5;color:#fff;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;text-orientation:mixed;transform:rotate(180deg);font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:10px 0;-webkit-user-select:none;user-select:none}.inv-section-content{flex:1;padding:20px 24px}.inv-header-section .inv-section-content{padding:24px 24px 16px}.inv-header-row{display:flex;justify-content:space-between;gap:0}.inv-supplier{flex:1;padding-right:20px;border-right:1px solid #d0d0d0}.inv-supplier-title{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#666;margin-bottom:4px}.inv-supplier-name{font-size:1rem;font-weight:700;margin-bottom:2px}.inv-supplier-detail{font-size:.82rem;color:#444;line-height:1.5}.inv-invoice-meta{text-align:right;flex-shrink:0;padding-left:20px;display:flex;align-items:center}.inv-invoice-title{display:inline-block;font-size:1.3rem;font-weight:700;border:2px solid #1a1a2e;padding:4px 16px;margin-bottom:16px;color:#333}.inv-customer-block{flex:1;padding-left:20px;padding-right:20px}.inv-customer-title{font-size:.72rem;font-weight:700;text-transform:uppercase;color:#666;margin-bottom:4px}.inv-customer-name{font-size:.95rem;font-weight:700;margin-bottom:2px}.inv-customer-detail{font-size:.82rem;color:#444;line-height:1.5}.inv-contact{margin-top:20px}.inv-contact-title{font-size:.82rem;font-weight:700;margin-bottom:4px}.inv-contact-detail{font-size:.82rem;color:#444}.inv-dates{display:flex;gap:32px;margin-top:16px;padding-top:12px;border-top:1px solid #e0e3e8}.inv-date-label{font-size:.78rem;color:#666}.inv-date-value{font-size:.88rem;font-weight:700;margin-left:4px}.inv-payment-section{background:#2858b5;color:#fff}.inv-payment-section .inv-sidebar-label{background:#1e4a9a}.inv-payment-section .inv-section-content{display:flex;align-items:center;gap:32px;padding:14px 24px;flex-wrap:wrap}.inv-payment-group{display:flex;flex-direction:column;gap:2px}.inv-payment-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;opacity:.8}.inv-payment-value{font-size:.88rem;font-weight:700}.inv-payment-sub{font-size:.75rem;opacity:.8}.inv-payment-method{margin-left:auto;text-align:right}.inv-items-section{flex:1}.inv-items-section .inv-section-content{padding:16px 24px 20px}.inv-items-note{font-size:.85rem;color:#444;margin-bottom:12px}.inv-items-table{width:100%;border-collapse:collapse;font-size:.82rem}.inv-items-table thead th{text-align:left;font-weight:600;font-size:.75rem;color:#666;padding:6px 8px;border-bottom:2px solid #333}.inv-items-table thead th.text-right{text-align:right}.inv-items-table thead th.text-center{text-align:center}.inv-items-table tbody td{padding:8px;border-bottom:1px solid #e8e8e8;vertical-align:top}.inv-items-table tbody td.text-right{text-align:right}.inv-items-table tbody td.text-center{text-align:center}.inv-items-table .col-description{width:50%}.inv-items-table .col-quantity,.inv-items-table .col-unit{width:8%}.inv-items-table .col-unit-price,.inv-items-table .col-total{width:17%}.inv-items-table .col-total-bg{background:#f5f5f5}.inv-items-table .empty-row td{border-bottom:1px solid #e8e8e8;height:28px}.inv-summary-section{display:flex}.inv-summary-section .inv-section-content{flex:1;display:flex;flex-direction:column;justify-content:flex-end;padding:24px}.inv-total-box{display:flex;align-items:center;justify-content:center;gap:0;margin-top:auto}.inv-total-label{background:#333;color:#fff;font-size:1rem;font-weight:600;padding:10px 20px;white-space:nowrap}.inv-total-value{background:#f0f0f0;font-size:1.2rem;font-weight:700;padding:10px 24px;white-space:nowrap;color:#1a1a2e}@media print{body{background:#fff!important;margin:0;padding:0}.form-panel,.preview-toolbar{display:none!important}.app-layout{display:block!important;height:auto!important}.preview-panel{display:block!important;overflow:visible!important}.preview-scroll{padding:0!important;overflow:visible!important;display:block!important}.invoice-preview{width:100%!important;min-height:auto!important;box-shadow:none!important;border-radius:0!important;margin:0!important;background:#fff!important}.preview-empty,.page-break-indicator{display:none!important}@page{margin:0;size:A4}.inv-sidebar-label,.inv-payment-section,.inv-total-label,.inv-total-value,.inv-items-table .col-total-bg{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important}}
