.login-screen{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-secondary)}.login-card{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:2.5rem;width:360px;text-align:center;box-shadow:0 2px 12px #00000014}.login-logo{height:48px;margin-bottom:1rem}.login-card h2{margin:0 0 1.5rem;font-size:1.2rem;color:var(--text)}.login-card form{display:flex;flex-direction:column;gap:.8rem}.login-card input{padding:.6rem .8rem;border:1px solid var(--border);border-radius:4px;font-size:.9rem;font-family:inherit;background:var(--bg);color:var(--text)}.login-card input:focus{outline:none;border-color:var(--accent)}.login-error{color:#e53e3e;font-size:.82rem}.logout-btn{padding:.2rem .5rem;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--text-secondary);font-size:.72rem;cursor:pointer}.logout-btn:hover{border-color:#e53e3e;color:#e53e3e}.list-view{max-width:1400px;margin:0 auto;padding:1.5rem}.list-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.app-logo{height:36px;width:auto}.list-header h1{font-size:1.5rem;margin:0}.list-actions{display:flex;align-items:center;gap:.5rem}.stats-bar{display:flex;gap:1.5rem;padding:1rem 1.5rem;background:var(--bg-secondary);border-radius:8px;margin-bottom:1rem;flex-wrap:wrap}.stat{display:flex;flex-direction:column;align-items:center;gap:.15rem}.stat-value{font-size:1.25rem;font-weight:700}.stat-label{font-size:.7rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em}.filter-bar{display:flex;gap:.35rem;margin-bottom:1rem;flex-wrap:wrap}.filter-btn{padding:.35rem .75rem;border-radius:16px;border:1px solid var(--border);background:var(--bg);color:var(--text-secondary);font-size:.8rem;cursor:pointer;transition:all .15s}.filter-btn:hover{border-color:var(--accent);color:var(--accent)}.filter-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.invoice-table{border:1px solid var(--border);border-radius:8px;overflow:hidden}.invoice-table-header{display:grid;grid-template-columns:30px 2fr 1.5fr 1fr .8fr .8fr .5fr 1fr .8fr;gap:.5rem;padding:.6rem 1rem;background:var(--bg-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.invoice-row{display:grid;grid-template-columns:30px 2fr 1.5fr 1fr .8fr .8fr .5fr 1fr .8fr;gap:.5rem;padding:.7rem 1rem;border-top:1px solid var(--border);cursor:pointer;font-size:.85rem;align-items:center;transition:background .1s}.invoice-row:hover{background:var(--bg-secondary)}.invoice-row .filename{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invoice-row .vendor-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary)}.invoice-row .amount{font-weight:500;font-variant-numeric:tabular-nums}.invoice-row .confidence{font-variant-numeric:tabular-nums;color:var(--text-secondary)}.invoice-row .date{font-size:.78rem;color:var(--text-secondary)}.row-checkbox{display:flex;align-items:center;justify-content:center}.xml-link a{color:var(--accent);text-decoration:none;font-size:.78rem;font-weight:600}.xml-link a:hover{text-decoration:underline}.xml-link a.xml-generate{color:var(--text-secondary)}.bulk-actions{display:flex;align-items:center;gap:.6rem;padding:.5rem 1rem;background:var(--accent);color:#fff;font-size:.82rem;font-weight:600}.bulk-actions button{padding:.25rem .7rem;border:1px solid rgba(255,255,255,.4);border-radius:4px;background:transparent;color:#fff;font-size:.78rem;cursor:pointer}.bulk-actions button:hover{background:#ffffff26}.row-actions{display:flex;gap:.3rem;align-items:center}.btn-extract-sm{font-size:.72rem;padding:.2rem .5rem;background:var(--accent);color:#fff;border:none;border-radius:4px;cursor:pointer;font-weight:500}.btn-extract-sm:hover{opacity:.85}.empty-state{padding:3rem;text-align:center;color:var(--text-secondary)}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.72rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.02em}button{border-radius:6px;border:1px solid var(--border);padding:.4rem .9rem;font-size:.85rem;font-weight:500;font-family:inherit;background:var(--btn-bg);color:var(--btn-text);cursor:pointer;transition:all .15s}button:hover{border-color:var(--accent)}button:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary:hover{opacity:.9}.btn-export{background:var(--success);color:#fff;border-color:var(--success)}.btn-export:hover{opacity:.9}.btn-small{font-size:.78rem;padding:.25rem .6rem}.upload-btn{display:inline-block;padding:.4rem .9rem;border-radius:6px;background:var(--accent);color:#fff;font-size:.85rem;font-weight:500;cursor:pointer;transition:opacity .15s}.upload-btn:hover{opacity:.9}.delete-sm{border:none;background:none;color:var(--danger);font-size:.85rem;padding:.2rem .4rem;cursor:pointer;font-weight:700}.delete-sm:hover{background:var(--danger);color:#fff;border-radius:4px}.back-btn{font-weight:600}.user-badge{font-size:.8rem;color:var(--text-secondary);padding:.3rem .6rem;background:var(--bg-secondary);border-radius:12px}.model-select{font-size:.8rem;padding:.35rem .6rem;border-radius:6px;border:1px solid var(--accent);background:var(--bg);color:var(--accent);font-family:inherit;font-weight:500;cursor:pointer}.lang-select{font-size:.8rem;padding:.35rem .6rem;border-radius:6px;border:1px solid var(--border);background:var(--btn-bg);color:var(--btn-text);font-family:inherit;cursor:pointer}.error-bar{padding:.6rem 1rem;background:#fdecea;color:#611a15;border-radius:6px;font-size:.85rem;margin-bottom:.75rem}.ares-bar{padding:.5rem 1rem;border-radius:6px;font-size:.82rem;margin-bottom:.5rem}.ares-ok{background:#e6f9ee;color:#1a6b32}.ares-fail{background:#fdecea;color:#611a15}.detail-view{height:100vh;display:flex;flex-direction:column;overflow:hidden}.detail-toolbar{display:flex;align-items:center;gap:.6rem;padding:.6rem 1rem;border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-wrap:wrap}.detail-filename{font-weight:600;font-size:.9rem}.detail-actions{margin-left:auto;display:flex;gap:.4rem}.detail-split{flex:1;display:flex;overflow:hidden}.detail-pdf{flex:1;min-width:0;background:var(--bg-tertiary);display:flex}.pdf-frame{width:100%;height:100%;border:none}.pdf-loading{display:flex;align-items:center;justify-content:center;width:100%;color:var(--text-secondary)}.detail-form{width:850px;min-width:650px;overflow-y:auto;border-left:1px solid var(--border);background:var(--bg)}.no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:1rem;color:var(--text-secondary)}.form-section{padding:.75rem 1rem;border-bottom:1px solid var(--border)}.form-section h3{margin:0 0 .5rem;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.field-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.field-row label{width:130px;min-width:130px;font-size:.78rem;color:var(--text-secondary);text-align:right}.field-row input,.field-row select{flex:1;padding:.3rem .5rem;border:1px solid var(--border);border-radius:4px;font-size:.82rem;font-family:inherit;background:var(--bg);color:var(--text)}.field-row input:focus,.field-row select:focus{outline:none;border-color:var(--accent)}.invoice-switcher{background:var(--bg-secondary)}.switcher-tabs{display:flex;gap:.4rem}.switcher-tab{padding:.35rem .8rem;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text);font-size:.8rem;cursor:pointer}.switcher-tab:hover{border-color:var(--accent)}.switcher-tab.active{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.field-row.field-error input,.field-row.field-error select{border-color:#e53e3e;background:#fff5f5}.error-toggle{width:24px;height:24px;min-width:24px;border:1px solid var(--border);border-radius:4px;background:var(--bg);color:var(--text-secondary);font-size:.75rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.error-toggle:hover{border-color:#e53e3e;color:#e53e3e}.error-toggle.active{background:#e53e3e;border-color:#e53e3e;color:#fff}.row-error input{border-color:#e53e3e;background:#fff5f5}.tax-table{margin-bottom:.5rem}.tax-table-header{display:grid;grid-template-columns:1fr 1.5fr 1.5fr 24px 30px;gap:.3rem;font-size:.72rem;color:var(--text-secondary);text-transform:uppercase;margin-bottom:.25rem;padding:0 .1rem;align-items:center}.tax-row{display:grid;grid-template-columns:1fr 1.5fr 1.5fr 24px 30px;gap:.3rem;margin-bottom:.25rem;align-items:center}.tax-row input{padding:.25rem .4rem;border:1px solid var(--border);border-radius:4px;font-size:.82rem;font-family:inherit;background:var(--bg);color:var(--text)}.tax-row input:focus{outline:none;border-color:var(--accent)}.line-items-table{margin-bottom:.5rem;overflow-x:auto}.line-items-header{display:grid;grid-template-columns:35px 4fr 1fr .8fr 1.4fr 1.4fr 1fr 24px 30px;gap:.25rem;font-size:.68rem;color:var(--text-secondary);text-transform:uppercase;margin-bottom:.25rem;padding:0 .1rem;min-width:700px}.line-item-row{display:grid;grid-template-columns:35px 4fr 1fr .8fr 1.4fr 1.4fr 1fr 24px 30px;gap:.25rem;margin-bottom:.2rem;min-width:700px}.line-item-row input{padding:.2rem .35rem;border:1px solid var(--border);border-radius:4px;font-size:.78rem;font-family:inherit;background:var(--bg);color:var(--text);min-width:0}.line-item-row input:focus{outline:none;border-color:var(--accent)}.no-items-text{font-size:.8rem;color:var(--text-secondary);margin:.25rem 0}.meta-section p{margin:.2rem 0;font-size:.75rem;color:var(--text-secondary)}.comparison-panel{overflow-y:auto}.comparison-header{display:flex;align-items:center;justify-content:space-between;padding:0 0 12px;border-bottom:1px solid var(--border);margin-bottom:16px}.comparison-header h3{margin:0;font-size:1.1rem}.comparison-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:24px}.comparison-card{border:1px solid var(--border);border-radius:8px;padding:14px;background:var(--bg-secondary)}.comparison-card.card-error{border-color:var(--danger);opacity:.7}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.card-model{font-weight:600;font-size:1rem}.card-confidence{font-size:1.3rem;font-weight:700;color:var(--accent)}.card-error-text{color:var(--danger);font-size:.85rem;word-break:break-word}.card-meta{display:flex;flex-direction:column;gap:2px;font-size:.8rem;color:var(--text-secondary);margin-bottom:10px}.btn-use{width:100%;background:var(--accent);color:#fff;border:none;padding:6px 0;border-radius:4px;cursor:pointer;font-weight:500}.btn-use:hover{opacity:.9}.btn-compare{background:transparent;border:1px solid var(--accent);color:var(--accent);padding:4px 12px;border-radius:4px;cursor:pointer;font-size:.85rem;white-space:nowrap}.btn-compare:hover,.btn-compare.active{background:var(--accent);color:#fff}.comparison-table-wrapper h4{margin:20px 0 8px;font-size:.95rem;color:var(--text-secondary)}.comparison-table{display:table;width:100%;border-collapse:collapse;font-size:.85rem;margin-bottom:8px}.comp-row{display:table-row}.comp-row:hover{background:var(--bg-secondary)}.comp-header-row{font-weight:600;background:var(--bg-secondary)}.comp-field,.comp-value{display:table-cell;padding:5px 10px;border-bottom:1px solid var(--border);vertical-align:top}.comp-field{font-weight:500;white-space:nowrap;min-width:130px;color:var(--text-secondary)}.comp-diff{background:#ffc10714}.comp-diff .comp-value{color:var(--warning);font-weight:600}.comp-diff .comp-field{color:var(--warning)}@media (max-width: 900px){.detail-split{flex-direction:column}.detail-pdf{height:40vh}.detail-form{width:100%;min-width:0;border-left:none;border-top:1px solid var(--border)}.invoice-table-header,.invoice-row{grid-template-columns:2fr 1fr .8fr .5fr}.invoice-table-header span:nth-child(2),.invoice-row span:nth-child(2),.invoice-table-header span:nth-child(5),.invoice-row span:nth-child(5),.invoice-table-header span:nth-child(6),.invoice-row span:nth-child(6){display:none}}:root{--bg: #ffffff;--bg-secondary: #f5f5f5;--bg-tertiary: #eaeaea;--text: #213547;--text-secondary: #666;--border: #ddd;--card-bg: #f9f9f9;--btn-bg: #f0f0f0;--btn-text: #213547;--btn-hover-border: #4f6df5;--danger: #dc3545;--accent: #4f6df5;--accent-light: #e8ecff;--success: #28a745;--warning: #ffc107;--status-uploaded: #6c757d;--status-extracting: #ffc107;--status-extracted: #17a2b8;--status-reviewed: #4f6df5;--status-exported: #28a745}:root{font-family:Inter,system-ui,-apple-system,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color:var(--text);background-color:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}
