:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light dark;--bg-primary: #ffffff;--bg-secondary: #f5f7fa;--bg-tertiary: #f8f9fa;--bg-hover: #f0f4ff;--bg-card: #ffffff;--text-primary: #333333;--text-secondary: #666666;--text-muted: #888888;--text-inverse: #ffffff;--border-primary: #e9ecef;--border-secondary: #dee2e6;--accent-primary: #667eea;--accent-primary-hover: #5a6fd6;--accent-secondary: #764ba2;--status-success-bg: #d4edda;--status-success-text: #155724;--status-warning-bg: #fff3cd;--status-warning-text: #856404;--status-error-bg: #f8d7da;--status-error-text: #721c24;--status-info-bg: #d5e8f5;--status-info-text: #3a7cc2;--btn-primary-bg: #667eea;--btn-primary-text: #ffffff;--btn-success-bg: #28a745;--btn-success-text: #ffffff;--btn-danger-bg: #dc3545;--btn-danger-text: #ffffff;--btn-warning-bg: #ffc107;--btn-warning-text: #333333;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 2px 8px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--shadow-overlay: 0 8px 32px rgba(0, 0, 0, .3);--overlay-bg: rgba(0, 0, 0, .5);--code-bg: #1e1e1e;--code-header-bg: #2d2d2d;--code-text: #d4d4d4;--code-keyword: #9cdcfe;--code-string: #ce9178;--code-border: #3d3d3d;--badge-ref-bg: #e8eeff;--badge-ref-text: #4a5dc7;--badge-ksef-bg: #e8f5e9;--badge-ksef-text: #2e7d32;color:var(--text-primary);background-color:var(--bg-secondary)}@media(prefers-color-scheme:dark){:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-tertiary: #1f2940;--bg-hover: #2a3a5c;--bg-card: #1a1a2e;--text-primary: #e8e8e8;--text-secondary: #b0b0b0;--text-muted: #808080;--text-inverse: #1a1a2e;--border-primary: #2d3a4f;--border-secondary: #3d4a5f;--accent-primary: #7c93f5;--accent-primary-hover: #8fa3ff;--accent-secondary: #9165c7;--status-success-bg: #1e3a2f;--status-success-text: #6dd898;--status-warning-bg: #3a3520;--status-warning-text: #f0d060;--status-error-bg: #3a1e20;--status-error-text: #f08080;--status-info-bg: #1e2f3a;--status-info-text: #6db8e8;--btn-primary-bg: #7c93f5;--btn-primary-text: #1a1a2e;--btn-success-bg: #2ecc71;--btn-success-text: #1a1a2e;--btn-danger-bg: #e74c3c;--btn-danger-text: #ffffff;--btn-warning-bg: #f39c12;--btn-warning-text: #1a1a2e;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .4);--shadow-overlay: 0 8px 32px rgba(0, 0, 0, .6);--overlay-bg: rgba(0, 0, 0, .7);--code-bg: #0d1117;--code-header-bg: #161b22;--code-text: #e6edf3;--code-keyword: #79c0ff;--code-string: #a5d6ff;--code-border: #30363d;--badge-ref-bg: #2a3a5c;--badge-ref-text: #a8b9f5;--badge-ksef-bg: #1e3a2f;--badge-ksef-text: #6dd898}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}a{font-weight:500;color:var(--accent-primary);text-decoration:inherit}a:hover{color:var(--accent-primary-hover)}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:var(--bg-tertiary);color:var(--text-primary);cursor:pointer;transition:border-color .25s,background-color .25s}button:hover{border-color:var(--accent-primary)}button:focus,button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media(prefers-color-scheme:dark){::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:5px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%)}.login-box{background:var(--bg-primary);padding:2.5rem;border-radius:10px;box-shadow:var(--shadow-overlay);width:100%;max-width:400px}.login-box h1{text-align:center;color:var(--text-primary);margin-bottom:.5rem;font-size:1.8rem}.login-box h2{text-align:center;color:var(--text-secondary);margin-bottom:1.5rem;font-size:1.3rem;font-weight:400}.form-group{margin-bottom:1.5rem}.form-group input{width:100%;padding:.75rem;border:1px solid var(--border-primary);border-radius:5px;font-size:1rem;transition:border-color .3s;background:var(--bg-primary);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--accent-primary)}button[type=submit]{width:100%;padding:.875rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border:none;border-radius:5px;font-size:1rem;font-weight:600;cursor:pointer;transition:opacity .3s}button[type=submit]:hover:not(:disabled){opacity:.9}button[type=submit]:disabled{opacity:.6;cursor:not-allowed}.error-message{background:var(--status-error-bg);color:var(--status-error-text);padding:.75rem;border-radius:5px;margin-bottom:1rem;text-align:center}.credentials-info{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-primary);font-size:.875rem;color:var(--text-secondary)}.credentials-info p{margin-bottom:.5rem;font-weight:500}.credentials-info ul{list-style:none;padding:0;margin:0}.credentials-info li{padding:.25rem 0}.layout-container{min-height:100vh;background:var(--bg-secondary)}.layout-header{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:var(--text-inverse);padding:1rem 0;box-shadow:var(--shadow-md);position:sticky;top:0;z-index:100}.layout-header .header-content{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.layout-header h1{margin:0;font-size:1.5rem;white-space:nowrap;color:#fff}.hamburger-btn{display:none;flex-direction:column;justify-content:space-around;width:30px;height:24px;background:transparent;border:none;cursor:pointer;padding:0}.hamburger-btn span{display:block;width:100%;height:3px;background:#fff;border-radius:2px;transition:all .3s}.desktop-nav{display:flex;gap:.5rem}.nav-link{padding:.5rem 1rem;background:transparent;color:#fff;border:1px solid transparent;border-radius:5px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.nav-link:hover{background:#ffffff26}.nav-link.active{background:#ffffff40;border-color:#ffffff4d}.user-menu-container{position:relative}.user-menu-trigger{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:5px;cursor:pointer;font-size:.95rem;transition:background .2s}.user-menu-trigger:hover{background:#fff3}.user-menu-trigger .user-name{font-weight:600}.user-menu-trigger .user-role{opacity:.85;font-size:.85rem}.user-menu-trigger .dropdown-arrow{margin-left:.25rem;font-size:.75rem}.user-dropdown{position:absolute;top:calc(100% + 5px);right:0;min-width:150px;background:var(--bg-primary);border:1px solid var(--border-primary);border-radius:5px;box-shadow:var(--shadow-lg);z-index:200;overflow:hidden}.user-dropdown button{width:100%;padding:.75rem 1rem;background:transparent;border:none;border-radius:0;text-align:left;cursor:pointer;color:var(--text-primary);font-size:.95rem;transition:background .2s}.user-dropdown button:hover{background:var(--bg-hover)}.layout-main{max-width:1400px;margin:0 auto;padding:2rem}.mobile-overlay{display:none;position:fixed;inset:0;background:var(--overlay-bg);z-index:998}.mobile-sidebar{display:none;position:fixed;top:0;left:-280px;width:280px;height:100vh;background:var(--bg-primary);z-index:999;transition:left .3s ease;flex-direction:column}.mobile-sidebar.open{left:0}.mobile-sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff}.mobile-sidebar-header h2{margin:0;font-size:1.25rem}.close-btn{background:transparent;border:none;color:#fff;font-size:1.75rem;cursor:pointer;padding:0;line-height:1}.mobile-user-info{padding:1rem 1.25rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary)}.mobile-username{font-weight:600;color:var(--text-primary)}.mobile-role{margin-left:.5rem;color:var(--text-secondary);font-size:.9rem}.mobile-nav{flex:1;padding:1rem 0}.mobile-nav-item{display:block;width:100%;padding:.875rem 1.25rem;background:transparent;border:none;border-radius:0;text-align:left;cursor:pointer;color:var(--text-primary);font-size:1rem;transition:background .2s}.mobile-nav-item:hover{background:var(--bg-hover)}.mobile-nav-item.active{background:var(--bg-hover);color:var(--accent-primary);font-weight:600}.mobile-sidebar-footer{padding:1rem 1.25rem;border-top:1px solid var(--border-primary)}.mobile-logout-btn{width:100%;padding:.75rem;background:var(--btn-danger-bg);color:var(--btn-danger-text);border:none;border-radius:5px;cursor:pointer;font-size:1rem;font-weight:500;transition:opacity .2s}.mobile-logout-btn:hover{opacity:.9}@media(max-width:768px){.hamburger-btn{display:flex}.desktop-nav,.user-menu-container{display:none}.mobile-overlay{display:block}.mobile-sidebar{display:flex}.layout-header h1{font-size:1.25rem}.layout-header .header-content{padding:0 1rem}.layout-main{padding:1rem}}@media(max-width:480px){.layout-header h1{font-size:1rem}}.modal-overlay{position:fixed;inset:0;background:var(--overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.invoice-detail-modal{width:calc(100vw - 4rem);max-width:1400px;height:calc(100vh - 4rem);max-height:none;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-overlay);display:flex;flex-direction:column;overflow:hidden}@media(min-width:1600px){.invoice-detail-modal{width:calc(100vw - 8rem);max-width:1600px}}@media(min-width:1920px){.invoice-detail-modal{width:calc(100vw - 12rem);max-width:1800px}}.invoice-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);flex-shrink:0}.invoice-detail-modal .modal-header h3{margin:0;display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-size:1.25rem}.invoice-number-badge{padding:.375rem .75rem;background:var(--accent-primary);color:#fff;border-radius:6px;font-size:.9rem;font-weight:600;font-family:Consolas,Monaco,Courier New,monospace;letter-spacing:.025em}.invoice-detail-modal .close-btn{background:transparent;border:none;font-size:1.75rem;cursor:pointer;color:var(--text-muted);padding:.25rem;line-height:1;border-radius:4px;transition:color .2s,background .2s}.invoice-detail-modal .close-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-navigation{display:flex;border-bottom:2px solid var(--border-primary);padding:0 1.5rem;background:var(--bg-tertiary);flex-shrink:0}.tab-btn{padding:1rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;font-weight:500;font-size:.95rem;color:var(--text-secondary);transition:all .2s;border-radius:0}.tab-btn:hover{color:var(--accent-primary);background:var(--bg-hover)}.tab-btn.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary);background:var(--bg-primary)}.invoice-detail-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem;min-height:0}.invoice-detail-modal .modal-footer{padding:1rem 1.5rem;background:var(--bg-tertiary);border-top:1px solid var(--border-primary);display:flex;justify-content:flex-end;gap:1rem;flex-shrink:0}.invoice-detail-modal .cancel-btn{padding:.75rem 1.5rem;background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:6px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s}.invoice-detail-modal .cancel-btn:hover{background:var(--bg-hover);border-color:var(--border-secondary)}.history-entry{border:1px solid var(--border-primary);border-radius:8px;padding:1.25rem;background:var(--bg-card);transition:box-shadow .2s}.history-entry:hover{box-shadow:var(--shadow-sm)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.history-time{font-size:.875rem;color:var(--text-muted)}.history-details{color:var(--text-primary)}.history-details p{margin:0 0 .5rem}.history-user{font-size:.875rem;color:var(--text-muted);font-style:italic}.action-badge{display:inline-block;padding:.375rem .875rem;border-radius:6px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.action-badge.created{background:var(--status-info-bg);color:var(--status-info-text)}.action-badge.registered{background:var(--status-success-bg);color:var(--status-success-text)}.action-badge.failed{background:var(--status-error-bg);color:var(--status-error-text)}.json-container{background:var(--code-bg);border-radius:8px;overflow:hidden;border:1px solid var(--code-border)}.json-container h4{margin:0;padding:.875rem 1.25rem;background:var(--code-header-bg);color:var(--code-text);font-size:.9rem;font-weight:600;border-bottom:1px solid var(--code-border)}.json-content{margin:0;padding:1.25rem;color:var(--code-keyword);font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.6;overflow-x:auto;white-space:pre}.ksef-content{display:flex;flex-direction:column;gap:1.5rem}.ksef-status{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;padding:1.25rem;background:var(--bg-tertiary);border-radius:8px;border:1px solid var(--border-primary)}.ksef-ref,.ksef-inv{font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;font-weight:500;padding:.5rem .875rem;border-radius:6px;display:inline-flex;align-items:center;gap:.5rem}.ksef-ref{background:var(--badge-ref-bg);color:var(--badge-ref-text)}.ksef-inv{background:var(--badge-ksef-bg);color:var(--badge-ksef-text)}.ksef-ref:before{content:"Ref:";font-weight:600;opacity:.8}.ksef-inv:before{content:"KSeF#:";font-weight:600;opacity:.8}.ksef-meta{font-size:.9rem;color:var(--text-secondary);display:flex;gap:1.5rem;flex-wrap:wrap}.ksef-error{background:var(--status-error-bg);color:var(--status-error-text);padding:1rem 1.25rem;border-radius:8px;font-size:.9rem;border:1px solid transparent}.invoice-detail-modal .status-badge{display:inline-block;padding:.5rem 1rem;border-radius:6px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.invoice-detail-modal .status-badge.registered{background:var(--status-warning-bg);color:var(--status-warning-text)}.invoice-detail-modal .status-badge.confirmed{background:var(--status-success-bg);color:var(--status-success-text)}.invoice-detail-modal .status-badge.failed{background:var(--status-error-bg);color:var(--status-error-text)}.ksef-final-number{background:var(--status-success-bg);color:var(--status-success-text);padding:1rem 1.25rem;border-radius:8px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.95rem;font-weight:500;border:1px solid transparent}.ksef-final-number strong{font-weight:700;margin-right:.5rem}.ksef-metadata{background:var(--bg-card);border:1px solid var(--border-primary);border-radius:8px;overflow:hidden}.ksef-metadata h4{margin:0;padding:.875rem 1.25rem;background:var(--bg-tertiary);color:var(--text-primary);font-size:.95rem;font-weight:600;border-bottom:1px solid var(--border-primary)}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0}.metadata-item{display:flex;justify-content:space-between;padding:.75rem 1.25rem;border-bottom:1px solid var(--border-light)}.metadata-item:last-child{border-bottom:none}.metadata-item.full-width{grid-column:1 / -1;flex-direction:column;gap:.375rem}.metadata-label{color:var(--text-muted);font-size:.875rem;font-weight:500}.metadata-value{color:var(--text-primary);font-size:.875rem;font-weight:500;text-align:right}.metadata-item.full-width .metadata-value{text-align:left;font-family:Consolas,Monaco,Courier New,monospace;font-size:.8rem;word-break:break-all}.metadata-value.hash{font-family:Consolas,Monaco,Courier New,monospace;font-size:.8rem}.action-badge.confirmed{background:var(--status-success-bg);color:var(--status-success-text)}.invoice-detail-modal .loading{text-align:center;padding:4rem 2rem;color:var(--text-secondary);font-size:1rem}.invoice-detail-modal .error-message{background:var(--status-error-bg);color:var(--status-error-text);padding:1.25rem;border-radius:8px;text-align:center}.invoice-detail-modal .no-data{text-align:center;padding:3rem 2rem;color:var(--text-muted);font-style:italic;font-size:1rem}@media(max-width:1024px){.invoice-detail-modal{width:calc(100vw - 2rem);height:calc(100vh - 2rem);max-width:none;max-height:none}}@media(max-width:768px){.modal-overlay{padding:0}.invoice-detail-modal{width:100%;height:100%;border-radius:0}.invoice-detail-modal .modal-header{padding:1rem}.invoice-detail-modal .modal-header h3{font-size:1.1rem;flex-wrap:wrap}.tab-navigation{overflow-x:auto;padding:0 1rem}.tab-btn{padding:.875rem 1rem;font-size:.875rem;white-space:nowrap}.invoice-detail-modal .modal-body{padding:1rem}.history-header{flex-direction:column;align-items:flex-start;gap:.5rem}.ksef-status{flex-direction:column;align-items:flex-start}.ksef-meta{flex-direction:column;gap:.5rem}.json-content{font-size:.75rem;padding:1rem}.invoice-detail-modal .modal-footer{padding:1rem}}@media(max-width:480px){.invoice-number-badge{font-size:.8rem;padding:.25rem .5rem}.ksef-ref,.ksef-inv{font-size:.8rem;padding:.375rem .625rem}}.dashboard-content{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-md);padding:2rem}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.invoices-table-container{overflow-x:auto}.invoices-table{width:100%;border-collapse:collapse}.invoices-table th{background:var(--bg-tertiary);padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-primary);white-space:nowrap}.invoices-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.invoices-table th.sortable:hover{background:var(--bg-hover)}.invoices-table td{padding:1rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary);vertical-align:middle}.invoices-table td:first-child{font-weight:600;color:var(--accent-primary)}.invoices-table tbody tr:hover{background:var(--bg-tertiary)}.invoices-table tbody tr.clickable-row{cursor:pointer}.invoices-table tbody tr.clickable-row:hover{background:var(--bg-hover)}.buyer-info{line-height:1.5}.buyer-name{font-weight:500}.buyer-nip{font-size:.875rem;color:var(--text-secondary)}.amount{font-weight:600;text-align:right}.reference{font-family:Courier New,monospace;font-size:.875rem}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:4px;font-size:.875rem;font-weight:600;text-transform:uppercase}.status-badge.registered{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.not-registered{background:var(--status-warning-bg);color:var(--status-warning-text)}.status-badge.failed{background:var(--status-error-bg);color:var(--status-error-text)}.status-badge.confirmed{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.pending{background:#fff3cd;color:#856404}.status-badge.timed-out{background:#6c757d;color:#fff}.register-btn{padding:.5rem 1rem;background:var(--btn-success-bg);color:var(--btn-success-text);border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .3s}.register-btn:hover:not(:disabled){opacity:.9}.register-btn:disabled{opacity:.6;cursor:not-allowed}.register-btn.retry{background:var(--btn-warning-bg);color:var(--btn-warning-text)}.check-status-btn{padding:.5rem 1rem;background:#17a2b8;color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .3s}.check-status-btn:hover:not(:disabled){opacity:.9}.check-status-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.dashboard-content{padding:1rem}.action-buttons{flex-direction:column}.invoices-table th,.invoices-table td{padding:.625rem;font-size:.875rem}}.received-document-detail-modal{max-width:900px;width:95%;max-height:90vh;display:flex;flex-direction:column}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-lg);overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary)}.modal-header h3{margin:0;color:var(--text-primary);display:flex;align-items:center;gap:.75rem}.invoice-number-badge{font-family:Courier New,monospace;font-size:.875rem;background:var(--accent-primary);color:#fff;padding:.25rem .75rem;border-radius:4px}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary);padding:.25rem;line-height:1}.close-btn:hover{color:var(--text-primary)}.tab-navigation{display:flex;border-bottom:1px solid var(--border-primary);background:var(--bg-secondary)}.tab-btn{padding:1rem 1.5rem;border:none;background:none;cursor:pointer;font-weight:500;color:var(--text-secondary);border-bottom:3px solid transparent;transition:all .2s}.tab-btn:hover{color:var(--text-primary);background:var(--bg-tertiary)}.tab-btn.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.modal-body{padding:1.5rem;overflow-y:auto;max-height:calc(90vh - 200px)}.modal-body.tab-content{padding:1.5rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-primary);display:flex;justify-content:flex-end;gap:.75rem}.cancel-btn{padding:.625rem 1.25rem;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:5px;cursor:pointer;font-weight:500}.cancel-btn:hover{background:var(--bg-tertiary)}.loading,.no-data{text-align:center;padding:2rem;color:var(--text-secondary)}.error-message{text-align:center;padding:2rem;color:var(--status-error-text)}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem}.detail-section{background:var(--bg-tertiary);padding:1rem 1.25rem;border-radius:8px}.detail-section h4{margin:0 0 1rem;color:var(--accent-primary);font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-primary)}.detail-row:last-child{border-bottom:none}.detail-row .label{color:var(--text-secondary);font-size:.875rem}.detail-row .value{font-weight:500;color:var(--text-primary);text-align:right}.detail-row .value.ksef-number{font-family:Courier New,monospace;font-size:.8rem}.detail-row .value.amount{font-family:Courier New,monospace}.detail-row .value.total{font-size:1.1rem;color:var(--accent-primary)}.no-data-small{font-size:.875rem;color:var(--text-secondary);font-style:italic}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-update-section{grid-column:1 / -1}.status-update-controls{display:flex;gap:.75rem;align-items:center}.status-update-controls select{padding:.5rem .75rem;border:1px solid var(--border-primary);border-radius:4px;background:var(--bg-card);color:var(--text-primary);font-size:.875rem;min-width:150px}.update-btn{padding:.5rem 1rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:4px;cursor:pointer;font-weight:500}.update-btn:hover:not(:disabled){opacity:.9}.update-btn:disabled{opacity:.5;cursor:not-allowed}.items-table-container{overflow-x:auto}.items-table{width:100%;border-collapse:collapse;font-size:.875rem}.items-table th{background:var(--bg-tertiary);padding:.75rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-primary);white-space:nowrap}.items-table td{padding:.75rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary)}.items-table tbody tr:hover{background:var(--bg-tertiary)}.items-table .item-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.items-table .quantity,.items-table .vat-rate{text-align:center}.items-table .amount{text-align:right;font-family:Courier New,monospace;white-space:nowrap}.items-table .code{font-family:Courier New,monospace;font-size:.8rem;color:var(--text-secondary)}.xml-container{background:var(--bg-tertiary);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;max-height:450px}.xml-toolbar{display:flex;justify-content:flex-end;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary)}.download-xml-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;font-size:.875rem;transition:opacity .2s}.download-xml-btn:hover:not(:disabled){opacity:.9}.download-xml-btn:disabled{opacity:.5;cursor:not-allowed}.xml-content{margin:0;padding:1rem;font-family:Courier New,monospace;font-size:.8rem;color:var(--text-primary);white-space:pre-wrap;word-break:break-all;overflow:auto;flex:1}.history-list{display:flex;flex-direction:column;gap:1rem}.history-entry{background:var(--bg-tertiary);border-radius:8px;padding:1rem;border-left:3px solid var(--accent-primary)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.action-badge{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;background:var(--bg-secondary);color:var(--text-primary)}.action-badge.received{background:var(--status-success-bg);color:var(--status-success-text)}.action-badge.status-changed{background:#e3f2fd;color:#1565c0}.action-badge.exported{background:#f3e5f5;color:#7b1fa2}.history-time{font-size:.8rem;color:var(--text-secondary)}.history-details{font-size:.875rem}.history-details p{margin:.5rem 0 0;color:var(--text-primary)}.history-user{font-size:.8rem;color:var(--text-secondary);font-style:italic}@media(max-width:768px){.received-document-detail-modal{width:100%;height:100%;max-height:100vh;border-radius:0}.modal-body{max-height:calc(100vh - 200px)}.details-grid{grid-template-columns:1fr}.tab-btn{padding:.75rem 1rem;font-size:.875rem}.status-update-controls{flex-direction:column;align-items:stretch}}.received-documents-content{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-md);padding:2rem}.content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.content-header h2{margin:0;color:var(--text-primary)}.header-actions{display:flex;gap:.75rem}.pull-btn{padding:.625rem 1.25rem;background:var(--btn-success-bg);color:var(--btn-success-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .3s}.pull-btn:hover:not(:disabled){opacity:.9}.pull-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn{padding:.625rem 1.25rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .3s}.refresh-btn:hover:not(:disabled){opacity:.9}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.reset-btn{padding:.625rem 1.25rem;background:var(--btn-warning-bg, #f59e0b);color:var(--btn-warning-text, #fff);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .3s}.reset-btn:hover:not(:disabled){opacity:.9}.reset-btn:disabled{opacity:.6;cursor:not-allowed}.full-reset-btn{padding:.625rem 1.25rem;background:var(--btn-danger-bg, #dc2626);color:var(--btn-danger-text, #fff);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .3s}.full-reset-btn:hover:not(:disabled){opacity:.9}.full-reset-btn:disabled{opacity:.6;cursor:not-allowed}.pull-result{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:5px;margin-bottom:1.5rem}.pull-result.success{background:var(--status-success-bg);color:var(--status-success-text)}.pull-result.error{background:var(--status-error-bg);color:var(--status-error-text)}.dismiss-btn{background:none;border:none;font-size:1.25rem;cursor:pointer;color:inherit;padding:0 .5rem}.filters-section{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:var(--bg-tertiary);border-radius:8px;margin-bottom:1.5rem}.filter-group{display:flex;flex-direction:column;gap:.375rem}.filter-group label{font-size:.875rem;font-weight:500;color:var(--text-secondary)}.filter-group input,.filter-group select{padding:.5rem .75rem;border:1px solid var(--border-primary);border-radius:4px;background:var(--bg-card);color:var(--text-primary);font-size:.875rem;min-width:150px}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--accent-primary)}.filter-actions{display:flex;align-items:flex-end;gap:.5rem}.search-btn,.clear-btn{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .3s}.search-btn{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.clear-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary)}.search-btn:hover,.clear-btn:hover{opacity:.9}.results-info{font-size:.875rem;color:var(--text-secondary);margin-bottom:1rem}.documents-table-container{overflow-x:auto}.documents-table{width:100%;border-collapse:collapse}.documents-table th{background:var(--bg-tertiary);padding:1rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-primary);white-space:nowrap}.documents-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.documents-table th.sortable:hover{background:var(--bg-hover)}.documents-table td{padding:1rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary);vertical-align:middle}.documents-table tbody tr:hover{background:var(--bg-tertiary)}.documents-table tbody tr.clickable-row{cursor:pointer}.documents-table tbody tr.clickable-row:hover{background:var(--bg-hover)}.date-time{font-size:.875rem;white-space:nowrap}.invoice-number{font-family:Courier New,monospace;font-weight:600;color:var(--accent-primary)}.ksef-number{font-family:Courier New,monospace;font-size:.8rem;color:var(--text-secondary)}.seller-info{line-height:1.5}.seller-name{font-weight:500}.seller-nip{font-size:.875rem;color:var(--text-secondary)}.amount{font-weight:600;text-align:right;white-space:nowrap}.status-badge{display:inline-block;padding:.375rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.status-badge.status-new{background:var(--status-warning-bg);color:var(--status-warning-text)}.status-badge.status-processed{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.status-exported{background:#e3f2fd;color:#1565c0}.status-badge.status-error{background:var(--status-error-bg);color:var(--status-error-text)}.details-btn{padding:.5rem 1rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .3s}.details-btn:hover{opacity:.9}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-primary)}.page-btn{padding:.5rem 1rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:opacity .3s}.page-btn:hover:not(:disabled){opacity:.9}.page-btn:disabled{opacity:.5;cursor:not-allowed}.page-info{font-size:.875rem;color:var(--text-secondary)}@media(max-width:768px){.received-documents-content{padding:1rem}.content-header{flex-direction:column;gap:1rem;align-items:flex-start}.header-actions{width:100%}.header-actions button{flex:1}.filters-section{flex-direction:column}.filter-group,.filter-group input,.filter-group select{width:100%}.filter-actions{width:100%;justify-content:flex-end}.action-buttons{flex-direction:column}.documents-table th,.documents-table td{padding:.625rem;font-size:.875rem}}.user-management-content{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-md);padding:2rem}.user-management-content .content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.user-management-content .content-header h2{margin:0;color:var(--text-primary)}.create-btn{padding:.625rem 1.25rem;background:var(--btn-success-bg);color:var(--btn-success-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .2s}.create-btn:hover{opacity:.9}.loading,.no-data{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1.125rem}.users-table-container{overflow-x:auto}.users-table{width:100%;border-collapse:collapse}.users-table th{background:var(--bg-tertiary);padding:.875rem;text-align:left;font-weight:600;color:var(--text-primary);border-bottom:2px solid var(--border-primary);white-space:nowrap}.users-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.users-table th.sortable:hover{background:var(--bg-hover)}.users-table td{padding:.875rem;border-bottom:1px solid var(--border-primary);color:var(--text-primary);vertical-align:middle}.users-table tr:hover{background:var(--bg-tertiary)}.username{font-weight:600;color:var(--accent-primary)}.date{font-size:.875rem;color:var(--text-secondary)}.role-badge{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.8rem;font-weight:600;text-transform:uppercase}.role-badge.super-admin{background:var(--badge-ref-bg);color:var(--accent-secondary)}.role-badge.admin{background:var(--status-info-bg);color:var(--status-info-text)}.role-badge.user{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:4px;font-size:.8rem;font-weight:600}.status-badge.active{background:var(--status-success-bg);color:var(--status-success-text)}.status-badge.inactive{background:var(--status-error-bg);color:var(--status-error-text)}.action-buttons{display:flex;gap:.5rem}.edit-btn,.delete-btn{padding:.375rem .75rem;border:none;border-radius:4px;cursor:pointer;font-size:.875rem;font-weight:500;transition:opacity .2s}.edit-btn{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.edit-btn:hover{opacity:.9}.delete-btn{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.delete-btn:hover{opacity:.9}.modal-overlay{position:fixed;inset:0;background:var(--overlay-bg);display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:var(--bg-primary);border-radius:10px;width:90%;max-width:500px;max-height:85vh;height:auto;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-overlay)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-primary);flex-shrink:0;background:var(--bg-tertiary)}.modal-header h3{margin:0;color:var(--text-primary)}.modal-header .close-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-muted);padding:0;line-height:1}.modal-header .close-btn:hover{color:var(--text-primary)}.modal-body{padding:1.5rem;overflow-y:auto;flex:1 1 auto;min-height:0;max-height:calc(85vh - 180px)}.form-error{background:var(--status-error-bg);color:var(--status-error-text);padding:.75rem;border-radius:5px;margin-bottom:1rem;font-size:.9rem}.form-group input,.form-group select{width:100%;padding:.625rem .875rem;border:1px solid var(--border-primary);border-radius:5px;font-size:1rem;transition:border-color .2s;background:var(--bg-primary);color:var(--text-primary)}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;accent-color:var(--accent-primary)}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-primary);flex-shrink:0;background:var(--bg-tertiary)}.cancel-btn,.save-btn{padding:.625rem 1.25rem;border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .2s}.cancel-btn{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-primary)}.cancel-btn:hover{background:var(--bg-hover)}.save-btn{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.confirm-modal .modal-body p{margin:0 0 .5rem;color:var(--text-primary)}.confirm-modal .warning{color:var(--status-error-text);font-size:.9rem}.delete-confirm-btn{padding:.625rem 1.25rem;background:var(--btn-danger-bg);color:var(--btn-danger-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .2s}.delete-confirm-btn:hover{opacity:.9}@media(max-width:768px){.user-management-content{padding:1rem}.user-management-content .content-header{flex-direction:column;gap:1rem;align-items:stretch}.create-btn{text-align:center}.users-table th,.users-table td{padding:.625rem;font-size:.875rem}.action-buttons{flex-direction:column}}.settings-content{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-md);padding:2rem}.settings-content .content-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.settings-content .content-header h2{margin:0;color:var(--text-primary)}.settings-section{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid var(--border-primary)}.settings-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.settings-section h3{margin:0 0 .5rem;color:var(--text-primary);font-size:1.25rem}.section-description{margin:0 0 1.5rem;color:var(--text-secondary);font-size:.9rem;line-height:1.5}.form-row{display:flex;gap:1.5rem;margin-bottom:1rem}.form-row .form-group{flex:1}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--text-primary);font-weight:500}.form-group input[type=text],.form-group input[type=url],.form-group input[type=number],.form-group select{width:100%;padding:.625rem .875rem;border:1px solid var(--border-primary);border-radius:5px;font-size:1rem;transition:border-color .2s;background:var(--bg-primary);color:var(--text-primary);box-sizing:border-box}.form-group input:focus,.form-group select:focus{border-color:var(--accent-primary);outline:none}.form-group input:disabled{background:var(--bg-tertiary);color:var(--text-muted);cursor:not-allowed}.field-hint{display:block;margin-top:.375rem;font-size:.8rem;color:var(--text-muted)}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:400}.checkbox-group input[type=checkbox]{width:auto;accent-color:var(--accent-primary);transform:scale(1.2)}.form-actions{display:flex;align-items:center;gap:1rem;margin-top:1.5rem}.save-btn{padding:.625rem 1.25rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:5px;cursor:pointer;font-weight:500;transition:opacity .2s}.last-updated{font-size:.8rem;color:var(--text-muted)}.environment-selector{display:flex;gap:1rem;margin-top:1rem}.env-btn{flex:1;padding:1rem;background:var(--bg-primary);border:2px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s;text-align:center}.env-btn:hover{border-color:var(--accent-primary);background:var(--bg-tertiary)}.env-btn.active{border-color:var(--accent-primary);background:var(--accent-primary);color:#fff}.env-btn.active .env-description{color:#ffffffe6}.env-btn:disabled{opacity:.6;cursor:not-allowed}.env-name{display:block;font-weight:600;font-size:1.1rem;margin-bottom:.25rem}.env-description{display:block;font-size:.8rem;color:var(--text-secondary)}@media(max-width:768px){.settings-content{padding:1rem}.form-row{flex-direction:column;gap:0}.environment-selector{flex-direction:column}.form-actions{flex-direction:column;align-items:stretch}.last-updated{text-align:center}}.options-content{background:var(--bg-card);border-radius:10px;box-shadow:var(--shadow-md);padding:2rem}.options-content .content-header{margin-bottom:2rem}.options-content .content-header h2{margin:0;color:var(--text-primary)}.error-banner{background:var(--status-error-bg);color:var(--status-error-text);padding:1rem;border-radius:5px;margin-bottom:1.5rem;text-align:center}.success-banner{background:var(--status-success-bg);color:var(--status-success-text);padding:1rem;border-radius:5px;margin-bottom:1.5rem;text-align:center}.loading{text-align:center;padding:3rem;color:var(--text-secondary);font-size:1.125rem}.options-sections{display:flex;flex-direction:column;gap:2rem}.options-section{border:1px solid var(--border-primary);border-radius:8px;padding:1.5rem;background:var(--bg-primary)}.options-section h3{margin:0 0 .75rem;color:var(--text-primary);font-size:1.25rem}.section-description{margin:0 0 1.5rem;color:var(--text-secondary);line-height:1.5}.environment-options{display:flex;flex-direction:column;gap:1rem}.environment-option{display:flex;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;border:2px solid var(--border-primary);border-radius:8px;cursor:pointer;transition:all .2s;background:var(--bg-primary)}.environment-option:hover,.environment-option.selected{border-color:var(--accent-primary);background:var(--bg-hover)}.environment-option.production{border-color:var(--btn-warning-bg)}.environment-option.production.selected{border-color:var(--btn-danger-bg);background:var(--status-error-bg)}.environment-option input[type=radio]{margin-top:.25rem;accent-color:var(--accent-primary)}.option-content{flex:1}.option-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.option-name{font-weight:600;color:var(--text-primary)}.env-badge{display:inline-block;padding:.125rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.env-badge.test{background:var(--status-success-bg);color:var(--status-success-text)}.env-badge.demo{background:var(--status-info-bg);color:var(--status-info-text)}.env-badge.prd{background:var(--status-error-bg);color:var(--status-error-text)}.option-url{font-family:Courier New,monospace;font-size:.875rem;color:var(--accent-primary);margin-bottom:.5rem}.option-description{font-size:.9rem;color:var(--text-secondary);line-height:1.4}.production-warning{margin-top:1rem;padding:1rem;background:var(--status-warning-bg);border:1px solid var(--btn-warning-bg);border-radius:5px;color:var(--status-warning-text);font-size:.9rem;line-height:1.5}.production-warning strong{font-weight:700}.save-section{display:flex;align-items:center;gap:1rem;padding-top:1rem;border-top:1px solid var(--border-primary)}.save-btn{padding:.75rem 2rem;background:var(--btn-primary-bg);color:var(--btn-primary-text);border:none;border-radius:5px;cursor:pointer;font-weight:600;font-size:1rem;transition:opacity .2s}.save-btn:hover:not(:disabled){opacity:.9}.save-btn:disabled{opacity:.6;cursor:not-allowed}.unsaved-indicator{color:var(--status-error-text);font-size:.9rem;font-style:italic}@media(max-width:768px){.options-content,.options-section{padding:1rem}.environment-option{padding:.875rem}.option-header{flex-direction:column;align-items:flex-start;gap:.5rem}.save-section{flex-direction:column;align-items:stretch}.save-btn{width:100%}.unsaved-indicator{text-align:center}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-secondary);color:var(--text-primary)}#root{width:100%;min-height:100vh}
