@import"https://fonts.googleapis.com/css2?family=Exo+2:wght@400;600;700;800&family=Rajdhani:wght@600;700&family=Orbitron:wght@700;800&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{font-family:"Exo 2",Rajdhani,Orbitron,sans-serif}body{margin:0;padding:0;box-sizing:border-box}@keyframes popupEnter{0%{opacity:0;transform:scale(.1) translate(calc(50vw - 50%),calc(-50vh + 50%))}60%{opacity:1;transform:scale(1.05) translate(0)}to{opacity:1;transform:scale(1) translate(0)}}@keyframes popupExit{0%{opacity:1;transform:scale(1) translate(0)}40%{opacity:1;transform:scale(.95) translate(0)}to{opacity:0;transform:scale(.1) translate(calc(50vw - 50%),calc(-50vh + 50%))}}button:hover:not(:disabled){opacity:.9;transform:translateY(-2px);box-shadow:0 8px 16px #0003}button:disabled{opacity:.5;cursor:not-allowed}.toast-container{position:fixed;top:80px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{display:flex;align-items:center;padding:12px 16px;border-radius:8px;background-color:var(--card-bg, #ffffff);box-shadow:0 8px 24px #00000026;pointer-events:auto;animation:slideIn .3s ease-out forwards;min-width:280px;max-width:400px;border-left:4px solid}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:var(--bills-primary)}.toast-warning{border-left-color:#b45309}.toast-info{border-left-color:#1d4ed8}.toast-error{border-left-color:#b91c1c}.toast-icon{display:flex;align-items:center;justify-content:center;margin-right:12px;width:24px;height:24px}.toast-success .toast-icon svg{color:var(--bills-primary)}.toast-warning .toast-icon svg{color:#b45309}.toast-info .toast-icon svg{color:#1d4ed8}.toast-error .toast-icon svg{color:#b91c1c}.toast-message{flex:1;font-size:14px;font-weight:500;color:var(--text-primary, #333333);margin:0;line-height:1.4;word-break:break-word;white-space:pre-line}.toast-close{background:none;border:none;cursor:pointer;padding:4px;margin-left:8px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #374151);border-radius:4px;transition:background-color .2s,color .2s}.toast-close:hover{background-color:var(--hover-bg, #f3f4f6);color:var(--text-primary, #333333)}.toast-close svg{width:16px;height:16px}.dark-theme .toast{background-color:#1e293b;box-shadow:0 8px 24px #00000080}.dark-theme .toast-message{color:#f1f5f9}.dark-theme .toast-close{color:#cbd5e1}.dark-theme .toast-close:hover{background-color:#334155;color:#f8fafc}@media(max-width:480px){.toast-container{top:72px;right:12px;left:12px}.toast{min-width:0;max-width:none}}.auth-overlay{position:fixed;inset:0;background-color:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity .3s ease-in-out}.auth-popup{background-color:#fff;border-radius:24px;padding:40px;max-width:480px;width:90%;box-shadow:0 20px 60px #0000004d;position:relative;transform-origin:top right}.welcome-content{text-align:center;padding:20px 0}.welcome-title{font-size:28px;font-weight:600;color:#2c3e50;margin:0 0 10px;letter-spacing:1px}.app-title{font-size:32px;font-weight:800;color:#5a7a85;margin:0 0 20px;letter-spacing:2px}.welcome-text{font-size:16px;color:#374151;margin:0 0 40px;font-weight:500}.error-box{margin-bottom:20px;padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:8px}.error-text{color:#c33;font-size:14px;margin:0}.config-warning{padding:20px;background-color:#fff3cd;border:1px solid #ffc107;border-radius:8px}.warning-text{font-size:16px;font-weight:600;color:#856404;margin:0 0 10px}.warning-subtext{font-size:14px;color:#856404;margin:0}.microsoft-button{display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 32px;background-color:#fff;border:2px solid #5a7a85;border-radius:8px;font-size:16px;font-weight:600;color:#2c3e50;cursor:pointer;transition:all .3s;width:100%;letter-spacing:.5px}.microsoft-icon{width:20px;height:20px}@media(max-width:480px){.auth-popup{width:calc(100% - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;padding:24px 16px}.welcome-title,.app-title{font-size:24px;letter-spacing:.4px;overflow-wrap:anywhere}.microsoft-button{min-height:44px;padding:12px 16px}}.profile-dropdown-container{position:absolute;top:55px;right:0;background-color:#f0f7f9;border-radius:12px;box-shadow:0 4px 12px #00000026;padding:16px;width:min(280px,calc(100vw - 24px));max-width:calc(100vw - 24px);min-width:0;z-index:1000;opacity:0;pointer-events:none;transform:translateY(-10px);transition:all .3s cubic-bezier(.25,.8,.25,1);border:1px solid #ddebef}.profile-dropdown-container.show{opacity:1;pointer-events:auto;transform:translateY(0)}.dark-theme .profile-dropdown-container{background-color:#263845;box-shadow:0 8px 24px #00000080;border:1px solid #374b5c}.profile-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.profile-avatar{width:48px;height:48px;border-radius:50%;background-color:#4caf50;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700}.profile-info{flex:1;overflow:hidden}.profile-name{margin:0;font-size:16px;font-weight:600;color:#2c3e50;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease}.dark-theme .profile-name{color:#e2e8f0}.profile-email{margin:4px 0 0;font-size:13px;color:#374151;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .3s ease}.dark-theme .profile-email{color:#cbd5e1}.profile-divider{height:1px;background-color:#e0e0e0;margin:12px 0;transition:background-color .3s ease}.dark-theme .profile-divider{background-color:#2a3f4c}.menu-button{display:flex;align-items:center;gap:12px;width:100%;padding:10px;background-color:transparent;color:#2c3e50;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;text-align:left}.menu-button:hover{background-color:#f1f5f9}.dark-theme .menu-button{color:#cbd5e1}.dark-theme .menu-button:hover{background-color:#2a3f4c;color:#e2e8f0}.menu-icon{width:18px;height:18px}.logout-button{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background-color:#f44336;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.logout-icon{width:18px;height:18px}.main-content{display:flex;flex-direction:column;gap:20px;padding:20px 3%;width:100%;box-sizing:border-box;flex:1;min-width:0;min-height:calc(100vh - 70px);max-width:1400px;margin:0 auto}.top-section,.preview-section,.extracted-section,.bottom-section{background-color:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 12px #0000000d}.top-section{text-align:center;border:4px solid transparent;transition:all .3s ease}.top-section.has-documents{border:4px solid var(--bills-primary);padding:20px}.upload-controls-row{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:20px}.file-input{display:none}.upload-button{padding:12px 24px;background-color:var(--bills-primary);color:#fff;border:none;border-radius:24px;cursor:pointer;font-size:14px;font-weight:700;letter-spacing:1px;white-space:nowrap}.upload-button:hover{background-color:var(--bills-primary-dark)}.employee-email-input{padding:12px 20px;border:2px solid #5a7a85;border-radius:24px;background-color:#fff;color:#2c3e50;font-size:14px;font-weight:600;outline:none;min-width:260px;transition:all .3s}.employee-email-input:focus{border-color:var(--bills-primary);box-shadow:0 0 0 3px #023e8a26}.doc-type-select{padding:12px 45px 12px 20px;border:2px solid #5a7a85;border-radius:24px;background-color:#fff;color:#2c3e50;font-size:14px;font-weight:700;cursor:pointer;outline:none;min-width:280px;text-align:center;text-align-last:center;transition:all .3s;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232c3e50' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;background-size:16px}.doc-type-select::-ms-expand{display:none}.doc-type-select:hover{border-color:#48636e;box-shadow:0 4px 8px #0000000d}.document-status{margin-top:20px;text-align:center}.status-text{margin:10px 0;color:#374151;font-size:13px;font-weight:600}.status-bar{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:10px}.status-dot{width:10px;height:10px;border-radius:50%;cursor:pointer;transition:all .3s;box-shadow:0 2px 4px #0003}.status-dot:hover{transform:scale(1.3)}.file-name{margin-top:15px;color:#374151;font-size:14px;font-weight:600;overflow-wrap:anywhere}.document-type-text{font-size:14px;font-weight:800;letter-spacing:1px;color:#4f46e5;margin-top:8px}.middle-section{--ocr-review-panel-height: min(550px, calc(100vh - 220px) );--ocr-review-panel-height-document: min(650px, calc(100vh - 200px) );display:flex;align-items:stretch;gap:20px;width:100%;min-width:0;min-height:0}.preview-section{flex:1 1 0;display:flex;flex-direction:column;min-width:0;min-height:0;height:var(--ocr-review-panel-height);max-height:var(--ocr-review-panel-height)}.preview-section.has-document{height:var(--ocr-review-panel-height-document);max-height:var(--ocr-review-panel-height-document)}.extracted-section{flex:1 1 0;display:flex;flex-direction:column;min-width:0;min-height:0;height:var(--ocr-review-panel-height);max-height:var(--ocr-review-panel-height)}.extracted-section.has-document{height:var(--ocr-review-panel-height-document);max-height:var(--ocr-review-panel-height-document)}.preview-header,.extracted-section>.section-title{flex-shrink:0}.preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-title{margin:0;font-size:18px;color:#2c3e50;font-weight:800;letter-spacing:2px}.navigation-controls{display:flex;align-items:center;gap:8px}.nav-button{width:36px;height:36px;border:2px solid #5a7a85;background-color:#fff;color:#5a7a85;font-size:20px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center}.nav-button-left{border-radius:12px 0 0 12px}.nav-button-right{border-radius:0 12px 12px 0}.page-indicator{font-size:14px;font-weight:700;color:#2c3e50;min-width:50px;text-align:center;letter-spacing:.5px}.preview-container{flex:1 1 auto;display:flex;justify-content:center;align-items:stretch;overflow:hidden;border:1px dashed #999;border-radius:16px;background-color:#fafafa;position:relative;min-height:0;min-width:0}.preview-section.has-document .preview-container{min-height:0}.review-pdf-shell{display:flex;flex-direction:column;background:#525659;overflow:hidden}.review-pdf-toolbar{flex:0 0 48px;height:48px;display:flex;align-items:center;gap:2px;min-width:0;overflow-x:auto;padding:0 8px;background:#323639;color:#f1f1f1;font-family:Segoe UI,Roboto,Arial,sans-serif;font-size:13px;font-weight:400;line-height:18px;white-space:nowrap}.review-pdf-toolbar-spacer{flex:1 1 auto}.review-pdf-page-label{min-width:3.2em;margin:0 2px;padding:0;border:0;background:transparent;color:#f1f1f1;font:inherit;text-align:center}.review-pdf-icon{width:18px;height:18px;display:block}.preview-container .review-pdf-toolbar button,.preview-container .review-pdf-sidebar button,.preview-container .review-pdf-menu button{appearance:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:0;min-height:0;margin:0;padding:0;border:0;border-radius:4px;outline:0;background:transparent;box-shadow:none!important;color:#f1f1f1;font:inherit;line-height:18px;cursor:pointer;transform:none!important;transition:background-color .12s ease,opacity .12s ease!important}.preview-container .review-pdf-toolbar button:hover:not(:disabled),.preview-container .review-pdf-toolbar button:active:not(:disabled),.preview-container .review-pdf-sidebar button:hover:not(:disabled),.preview-container .review-pdf-menu button:hover:not(:disabled){background:#ffffff1f;box-shadow:none!important;opacity:1;transform:none!important}.preview-container .review-pdf-toolbar button:disabled{background:transparent;box-shadow:none!important;opacity:.38;cursor:default;transform:none!important}.review-pdf-more{position:relative}.review-pdf-menu{position:absolute;top:36px;right:0;z-index:3;min-width:132px;margin:0;padding:4px;background:#323639;border:1px solid rgba(255,255,255,.14);border-radius:4px}.preview-container .review-pdf-menu button{width:100%;justify-content:flex-start;padding:0 10px;font-size:12px}.review-pdf-body{flex:1 1 auto;min-height:0;display:flex;background:#525659}.review-pdf-sidebar{flex:0 0 72px;overflow:auto;display:flex;flex-direction:column;gap:4px;padding:8px;background:#323639;border-right:1px solid rgba(255,255,255,.08)}.preview-container .review-pdf-sidebar button{width:100%;height:28px;font-size:12px}.preview-container .review-pdf-sidebar button[aria-current=page]{background:#ffffff29}.review-pdf-canvas-wrap{flex:1 1 auto;min-width:0;overflow:auto;display:flex;justify-content:center;align-items:flex-start;padding:12px}.pdf-preview{width:100%;height:100%;border:none;border-radius:16px;min-height:0}.image-preview{max-width:100%;max-height:100%;object-fit:contain;border-radius:16px}.empty-preview{flex:1 1 auto;display:flex;justify-content:center;align-items:center;border:2px dashed #bbb;border-radius:16px;color:#374151;font-size:16px;font-weight:700;min-height:0;background-color:transparent}.empty-text-label{font-weight:700;letter-spacing:1px}.data-textarea{flex:1 1 auto;padding:15px;font-size:14px;font-family:Courier New,Courier,monospace;border:none;border-radius:16px;resize:none;background-color:#fafafa;min-height:0;line-height:1.5;white-space:pre-wrap!important;overflow-wrap:anywhere;overflow-x:hidden!important;overflow-y:auto!important;width:100%;box-sizing:border-box}.extracted-section.has-document .data-textarea{min-height:0}.ocr-edit-panel{flex:1 1 auto;display:flex;flex-direction:column;gap:16px;min-height:0;min-width:0;overflow:hidden}.extracted-section.has-document .ocr-edit-panel{min-height:0}.ocr-edit-form{display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding-right:4px}.ocr-edit-field{display:flex;flex-direction:column;gap:6px}.ocr-edit-label{flex-shrink:0;font-size:12px;font-weight:700;letter-spacing:.4px;color:#475569;text-transform:uppercase}.ocr-edit-input{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #cbd5e1;border-radius:10px;background:#f8fafc;color:#0f172a;font-size:14px;font-weight:500}.ocr-readonly-value{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#f1f5f9;color:#334155;font-size:14px;font-weight:500;white-space:pre-wrap;word-break:break-word}.ocr-edit-textarea{resize:vertical;min-height:320px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:hidden}.ocr-text-editor,.ocr-document{flex:1 1 auto;width:100%;min-width:0;min-height:0;box-sizing:border-box;padding:12px 8px 16px;font-size:14.5px;font-weight:400;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;line-height:1.45;letter-spacing:normal;border:none;border-radius:0;background:#fff;color:#0f172a;overflow-x:hidden;overflow-y:auto}.ocr-text-editor{resize:none;white-space:pre}.extracted-section.has-document .ocr-text-editor,.extracted-section.has-document .ocr-document{min-height:0}.ocr-doc-section{margin:0 0 10px}.ocr-doc-rule{margin:2px 0;text-align:center;font-weight:400;font-size:inherit;line-height:1.2;letter-spacing:0;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none;pointer-events:none}.ocr-doc-heading{margin:2px 0 8px;padding:0;border:none;text-align:center;text-transform:uppercase;letter-spacing:.08em;font-size:inherit;font-weight:400;color:inherit}.ocr-doc-section:first-child .ocr-doc-heading{margin-top:2px}.ocr-doc-item{margin:0 0 12px}.ocr-doc-item-title{margin:6px 0 4px;padding:0;text-align:left;text-transform:none;letter-spacing:normal;font-size:inherit;font-weight:400;color:inherit}.ocr-doc-item .ocr-doc-row{padding-left:1.25rem}.ocr-doc-row{position:relative;display:grid;grid-template-columns:12.75rem 1ch minmax(0,1fr);column-gap:4px;align-items:start;margin:0 0 2px}.ocr-doc-row:has(.ocr-doc-value:focus-visible):before{content:"";position:absolute;left:0;top:.35em;width:3px;height:.85em;background:currentColor}.ocr-doc-label{text-align:left;padding-top:0;color:inherit;font-weight:400;word-break:break-word}.ocr-doc-colon{text-align:left;padding-top:0;color:inherit;font-weight:400}.ocr-document input.ocr-doc-value,.ocr-document textarea.ocr-doc-value,.ocr-document input.ocr-doc-value:hover,.ocr-document textarea.ocr-doc-value:hover,.ocr-document input.ocr-doc-value:focus,.ocr-document textarea.ocr-doc-value:focus,.ocr-document input.ocr-doc-value:focus-visible,.ocr-document textarea.ocr-doc-value:focus-visible,.ocr-document input.ocr-doc-value:active,.ocr-document textarea.ocr-doc-value:active,.extracted-section .ocr-document input:focus,.extracted-section .ocr-document textarea:focus,.extracted-section .ocr-document input:focus-visible,.extracted-section .ocr-document textarea:focus-visible{width:100%;min-width:0;box-sizing:border-box;margin:0;padding:0;border:none!important;outline:none!important;box-shadow:none!important;border-radius:0!important;background:transparent!important;color:inherit;font:inherit;font-weight:400;line-height:inherit;resize:none;overflow:hidden;overflow-wrap:anywhere;word-break:break-word;white-space:pre-wrap;caret-color:currentColor;appearance:none;-webkit-appearance:none;-moz-appearance:none}.ocr-document textarea.ocr-doc-value,.ocr-document textarea.ocr-doc-value.is-multiline{min-height:1.45em;height:auto;field-sizing:content}.ocr-doc-value[readonly]{cursor:default}.ocr-edit-field-error,.ocr-document-confirmed-note,.ocr-edit-actions{flex-shrink:0}.ocr-edit-actions{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:0;padding-top:12px}.ocr-edit-action-buttons{display:flex;flex-wrap:wrap;gap:10px;width:100%}.ocr-save-button{padding:10px 18px;border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.4px;cursor:pointer}.ocr-save-button-secondary{border:1px solid var(--bills-primary);background:transparent;color:var(--bills-primary)}.ocr-save-button-secondary:hover:not(:disabled){background:var(--bills-tint)}.ocr-confirm-button,.ocr-generate-button{padding:10px 18px;border:none;border-radius:999px;background:var(--bills-primary);color:#fff;font-size:13px;font-weight:700;letter-spacing:.4px;cursor:pointer}.ocr-save-button:disabled,.ocr-confirm-button:disabled,.ocr-generate-button:disabled{opacity:.6;cursor:not-allowed}.ocr-generate-button:hover:not(:disabled){background:var(--bills-primary-dark)}.ocr-generate-blocked-message{margin:8px 0 0;color:#92400e;font-size:13px}.invoice-voucher-preview-backdrop{overflow:hidden}.invoice-voucher-preview-modal{max-width:960px;width:min(960px,100%);max-height:calc(100vh - 24px);display:flex;flex-direction:column}.invoice-voucher-preview-header{flex-shrink:0}.invoice-voucher-preview-body{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 24px 12px}.invoice-voucher-preview-form{flex-shrink:0;display:flex;flex-direction:column;border-top:1px solid #e2e8f0;background:#fff}.invoice-voucher-preview-footer{position:sticky;bottom:0;margin-top:auto;background:#fff;z-index:1}.invoice-voucher-preview-frame-wrap{border:1px solid #dbeafe;border-radius:12px;overflow:hidden;background:#f8fafc;min-height:200px;display:flex;flex-direction:column}.invoice-voucher-preview-status{margin:0;padding:24px;color:#475569;font-size:14px;text-align:center}.invoice-voucher-preview-status-error{color:#b91c1c}.invoice-voucher-preview-actions{padding:10px 16px;border-top:1px solid #e2e8f0;background:#fff}.invoice-voucher-preview-open-link{color:var(--bills-primary);font-size:13px;font-weight:600;text-decoration:none}.invoice-voucher-preview-open-link:hover{text-decoration:underline}.invoice-voucher-preview-frame{width:100%;min-height:220px;height:clamp(220px,42vh,460px);border:0;background:#fff;flex:1 1 auto}.invoice-voucher-notification-field{margin:12px 24px 8px;display:flex;flex-direction:column;gap:8px}.invoice-voucher-notification-field input{padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px}.invoice-voucher-notification-hint{margin:0;color:#64748b;font-size:12px}.invoice-voucher-preview-error{margin:0 24px 12px;color:#b91c1c;font-size:13px}.invoice-voucher-preview-switcher{display:flex;flex-wrap:wrap;gap:8px;margin:0 24px 12px;flex-shrink:0}.invoice-voucher-preview-switch{padding:6px 12px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;cursor:pointer}.invoice-voucher-preview-switch.is-active{background:var(--bills-primary);border-color:var(--bills-primary);color:#fff}.dark-theme .invoice-voucher-preview-form,.dark-theme .invoice-voucher-preview-footer,.dark-theme .invoice-voucher-preview-actions{background:#1e2f38;border-color:#475569;color:#f8fafc}.dark-theme .invoice-voucher-notification-field label{color:#f8fafc}.dark-theme .invoice-voucher-notification-hint{color:#cbd5e1}.dark-theme .invoice-voucher-notification-field input{background:#0f172a;color:#f8fafc;border-color:#475569}.dark-theme .invoice-voucher-preview-frame-wrap{background:#0f172a;border-color:#475569}.dark-theme .invoice-voucher-preview-switch{background:#1e2f38;color:#f8fafc;border-color:#475569}.dark-theme .invoice-voucher-preview-open-link{color:#93c5fd}.ocr-document-confirmed-note{margin:8px 0 0;color:#166534;font-size:13px;font-weight:600}.ocr-workflow-progress{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:16px auto 12px;max-width:920px;padding:12px 16px;border:1px solid #dbeafe;border-radius:12px;background:#f8fafc}.ocr-progress-step{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#64748b}.ocr-progress-step.is-active{color:var(--bills-primary)}.ocr-progress-step.is-complete{color:#166534}.ocr-progress-step.is-pending{color:#94a3b8}.ocr-progress-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#dcfce7;color:#166534;font-size:12px}.ocr-progress-dot{width:10px;height:10px;border-radius:50%;background:currentColor}.ocr-progress-connector{flex:1 1 24px;min-width:16px;height:2px;background:#cbd5e1}.ocr-review-complete-banner{max-width:920px;margin:0 auto 16px;padding:12px 16px;border-radius:10px;border:1px solid #bbf7d0;background:#ecfdf5;color:#14532d}.ocr-review-status-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.ocr-review-status-badge.is-pending{background:#fef3c7;color:#92400e}.ocr-review-status-badge.is-confirmed{background:#dcfce7;color:#166534}.ocr-save-message{margin:0;font-size:13px;font-weight:600}.ocr-save-message.is-success{color:#047857}.ocr-save-message.is-warning{color:#b45309}.ocr-save-message.is-neutral{color:#475569}.ocr-save-message.is-error{color:#b91c1c}.ocr-edit-field-error{color:#b91c1c;font-size:12px;margin-top:4px}.ocr-discard-modal-backdrop{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1200;padding:16px}.ocr-discard-modal{width:min(420px,100%);background:#fff;border-radius:14px;padding:20px 22px;box-shadow:0 20px 40px #0f172a2e}.ocr-discard-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.ocr-discard-cancel-btn,.ocr-discard-confirm-btn{border:none;border-radius:8px;padding:10px 14px;cursor:pointer}.ocr-discard-cancel-btn{background:#e2e8f0;color:#0f172a}.ocr-discard-confirm-btn{background:#b45309;color:#fff}.dark-theme .ocr-edit-label{color:#94a3b8}.dark-theme .ocr-edit-input,.dark-theme .ocr-edit-textarea{background:#0f171e;border-color:#2a3f4c;color:#e2e8f0}.dark-theme .ocr-text-editor,.dark-theme .ocr-document{background:#0f171e;border:none;color:#e2e8f0}.dark-theme .ocr-doc-heading,.dark-theme .ocr-doc-item-title,.dark-theme .ocr-doc-label,.dark-theme .ocr-doc-colon,.dark-theme .ocr-doc-rule{border:none;color:#e2e8f0}.dark-theme .ocr-document input.ocr-doc-value:focus,.dark-theme .ocr-document textarea.ocr-doc-value:focus,.dark-theme .ocr-document input.ocr-doc-value:focus-visible,.dark-theme .ocr-document textarea.ocr-doc-value:focus-visible{outline:none!important;box-shadow:none!important;background:transparent!important;border:none!important;caret-color:#e2e8f0}.dark-theme .ocr-save-message.is-success{color:#6ee7b7}.dark-theme .ocr-save-message.is-error{color:#fca5a5}.dark-theme .ocr-save-button-secondary{border-color:var(--bills-on-dark);color:var(--bills-on-dark)}.dark-theme .ocr-save-button-secondary:hover:not(:disabled){background:#023e8a33}.dark-theme .ocr-workflow-progress{background:#0f171e;border-color:#2a3f4c}.dark-theme .ocr-review-complete-banner{background:#16653433;border-color:#166534;color:#bbf7d0}.dark-theme .ocr-document-confirmed-note{color:#86efac}.loading-container,.draft-restore-loading{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:15px}.loading-text{font-weight:700;letter-spacing:1px;font-size:14px}.spinner{width:36px;height:36px;border:4px solid #f3f3f3;border-top:4px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.error-box-small{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:16px;color:#c33}.error-text-small{font-weight:700;letter-spacing:.5px;margin:0;font-size:13px}.bottom-section{display:flex;flex-direction:column;align-items:center;gap:15px}.approval-actions-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;width:100%;max-width:720px}.approval-email-input{flex:1 1 260px;width:auto;max-width:420px;min-width:220px}.approval-actions-row .button-container{flex:0 0 auto;margin:0}.submission-result-wrap{width:100%;max-width:920px;margin:0 auto 16px}.submission-result-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;width:100%;max-width:100%;padding:12px 14px;border-radius:10px;border:1px solid transparent;box-shadow:none}.submission-result-content{flex:1;min-width:0}.submission-result-title{display:block;margin:0 0 4px;font-size:15px;font-weight:700;line-height:1.3}.submission-result-icon{display:none}.submission-result-reference{margin:0 0 4px;font-size:13px;font-weight:600;line-height:1.4;overflow-wrap:anywhere;word-break:break-word}.submission-result-notify,.submission-result-message{margin:0;font-size:12px;font-weight:500;line-height:1.45;overflow-wrap:anywhere;word-break:break-word}.submission-result-retry-btn{margin-top:8px;padding:6px 12px;border-radius:8px;border:1px solid currentColor;background:transparent;color:inherit;font-size:13px;font-weight:700;cursor:pointer}.submission-result-retry-btn:hover:not(:disabled){opacity:.9}.submission-result-retry-btn:disabled{opacity:.65;cursor:not-allowed}.submission-result-meta{margin:0 0 8px;font-size:13px}.submission-result-link{display:inline-block;margin-top:6px;font-size:13px;font-weight:700;text-decoration:none}.submission-result-link:hover{text-decoration:underline}.submission-result-dismiss{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:6px;background:transparent;color:inherit;cursor:pointer;line-height:0}.submission-result-dismiss svg{display:block}.submission-result-dismiss:hover{background:#0f172a14}.submission-result-success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.submission-result-success .submission-result-link{color:#047857}.submission-result-warning{background:#fffbeb;border-color:#fde68a;color:#b45309}.submission-result-warning .submission-result-link{color:#b45309}.submission-result-info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.submission-result-info .submission-result-link{color:#1d4ed8}.submission-result-error{background:#fef2f2;border-color:#fecaca;color:#991b1b}.submission-result-error .submission-result-link{color:#b91c1c}.button-container{display:flex;justify-content:center;gap:20px;width:100%;flex-wrap:wrap}.action-button{padding:14px 28px;background-color:#5a7a85;color:#fff;border:none;border-radius:28px;font-size:15px;font-weight:800;letter-spacing:1.5px;cursor:pointer;min-width:200px}.action-button:hover:not(:disabled){background-color:#48636e}.action-button:disabled{opacity:.8;background-color:#a4b8c4;cursor:not-allowed}.notification-wrapper{max-height:0;opacity:0;overflow:hidden;transition:all .4s cubic-bezier(.25,.8,.25,1);width:100%;display:flex;justify-content:center}.notification-wrapper.show{max-height:100px;opacity:1;margin-bottom:15px}.uploading-box{padding:12px;background-color:#e3f2fd;border:1px solid #90caf9;border-radius:16px;color:#1976d2;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:600px}.uploading-text{font-weight:700;letter-spacing:1px;margin:0;font-size:13px}.small-spinner{width:18px;height:18px;border:3px solid #bbdefb;border-top:3px solid #1976d2;border-radius:50%;animation:spin 1s linear infinite}.success-box{padding:12px;background-color:#e8f5e9;border:1px solid #a5d6a7;border-radius:16px;color:#2e7d32;text-align:center;width:100%;max-width:600px}.success-text{font-weight:700;letter-spacing:.5px;margin:0;font-size:13px}.upload-error-box{padding:12px;background-color:#fee;border:1px solid #fcc;border-radius:16px;color:#c33;text-align:center;width:100%;max-width:600px}.dark-theme .top-section,.dark-theme .preview-section,.dark-theme .extracted-section,.dark-theme .bottom-section{background-color:#1e2f38;box-shadow:0 4px 12px #0003}.dark-theme .section-title{color:#e2e8f0}.dark-theme .status-text,.dark-theme .file-name{color:#cbd5e1}.dark-theme .preview-container,.dark-theme .data-textarea{background-color:#0f171e;border-color:#2a3f4c;color:#e2e8f0}.dark-theme .doc-type-select{background-color:#0f171e;border-color:#374b5c;color:#e2e8f0;background-image:url("data:image/svg+xml;charset=UTF-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e2e8f0' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E")}.dark-theme .submission-result-success{background:#12352b;border-color:#166534;color:#bbf7d0}.dark-theme .submission-result-warning{background:#3b2f12;border-color:#b45309;color:#fde68a}.dark-theme .submission-result-info{background:#172554;border-color:#1d4ed8;color:#bfdbfe}.dark-theme .submission-result-error{background:#3f1d1d;border-color:#b91c1c;color:#fecaca}.dark-theme .submission-result-dismiss{background:transparent;color:inherit}.dark-theme .submission-result-dismiss:hover{background:#ffffff1f}.dark-theme .submission-result-success .submission-result-link{color:#6ee7b7}.dark-theme .submission-result-warning .submission-result-link{color:#fcd34d}.dark-theme .submission-result-info .submission-result-link{color:#93c5fd}.dark-theme .submission-result-error .submission-result-link{color:#fca5a5}.dark-theme .employee-email-input{background-color:#0f171e;border-color:#374b5c;color:#e2e8f0}.dark-theme .doc-type-select:hover{border-color:#5a7a85}.dark-theme .nav-button{background-color:#1e2f38;border-color:#374b5c;color:#cbd5e1}.dark-theme .page-indicator{color:#cbd5e1}.dark-theme .empty-preview{color:#5a7a85;border-color:#374b5c}@media(max-width:768px){.upload-controls-row{flex-direction:column;width:100%;margin-bottom:5px}.doc-type-select,.employee-email-input{width:100%;min-width:unset}.upload-button{width:100%;text-align:center;box-sizing:border-box}.middle-section{flex-direction:column;--ocr-review-panel-height: min(420px, 70vh);--ocr-review-panel-height-document: min(520px, 72vh)}.preview-section,.extracted-section{width:auto;height:var(--ocr-review-panel-height);max-height:var(--ocr-review-panel-height)}.preview-section.has-document,.extracted-section.has-document{height:var(--ocr-review-panel-height-document);max-height:var(--ocr-review-panel-height-document)}.preview-container,.pdf-preview,.empty-preview,.data-textarea,.extracted-section.has-document .ocr-document{min-height:0}.ocr-edit-action-buttons{flex-wrap:wrap}.ocr-doc-row{grid-template-columns:8.75rem 1ch minmax(0,1fr)}.button-container{flex-direction:column;width:100%;gap:15px}.action-button{width:100%}}.dashboard-tabs{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:4px;min-width:0}.dashboard-tab{border:1px solid #cbd5e1;background:#fff;color:#334155;padding:12px 20px;border-radius:999px;font-weight:700;cursor:pointer}.dashboard-tab.active{background:linear-gradient(135deg,var(--bills-primary-dark),var(--bills-primary));color:#fff;border-color:transparent;box-shadow:0 8px 20px #023e8a2e}.dark-theme .dashboard-tab{background:#1e2f38;color:#e2e8f0;border-color:#374b5c}.dark-theme .dashboard-tab.active{background:linear-gradient(135deg,var(--bills-primary-dark),var(--bills-primary));color:#fff}.approval-dashboard{display:flex;flex-direction:column;gap:20px}.approval-dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 12px #023e8a14}.approval-title{margin:0 0 8px;color:var(--bills-primary);font-size:28px}.approval-subtitle{margin:0;color:#374151}.approval-refresh-btn,.approval-action-btn,.approval-modal-close{border:none;cursor:pointer;font-weight:700}.approval-refresh-btn{background:var(--bills-primary);color:#fff;padding:10px 18px;border-radius:12px}.approval-note{background:#fff7ed;border:1px solid #fdba74;color:#9a3412;padding:12px 16px;border-radius:12px}.approval-stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.approval-stat-card{background:#fff;border-radius:18px;padding:20px;box-shadow:0 4px 12px #0f172a0f;border-top:4px solid #cbd5e1}.approval-stat-card.pending{border-top-color:#f59e0b}.approval-stat-card.approved{border-top-color:#16a34a}.approval-stat-card.rejected{border-top-color:#dc2626}.approval-stat-card.total{border-top-color:var(--bills-primary)}.approval-stat-label{display:block;color:#374151;font-size:14px;margin-bottom:8px}.approval-stat-value{font-size:32px;font-weight:800;color:#0f172a}.approval-table-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 4px 12px #0f172a0f}.approval-loading,.approval-empty-row{text-align:center;color:#374151;padding:24px}.approval-table-wrapper{max-width:100%;min-width:0;overflow-x:auto}.approval-table{width:100%;border-collapse:collapse;min-width:980px}.approval-table th,.approval-table td{padding:14px 12px;text-align:left;border-bottom:1px solid #e2e8f0;vertical-align:top}.approval-table th{background:#f8fafc;color:#334155;font-size:13px;text-transform:uppercase;letter-spacing:.4px}.mono-cell{font-family:Consolas,monospace;font-size:12px;max-width:180px;word-break:break-all}.status-badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap}.status-badge.pending_approval,.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.approved{background:#dcfce7;color:#166534}.status-badge.duplicate_rejected{background:#1d4ed8;color:#fff}.status-badge.duplicate_pending{background:#dbeafe;color:#1d4ed8}.employee-rejection-reason-content{display:flex;flex-direction:column;gap:4px}.rejection-reason-value{color:#7f1d1d;font-weight:700;line-height:1.4;word-break:break-word}.dark-theme .rejection-reason-value{color:#fca5a5}.employee-tracking-dashboard{display:flex;flex-direction:column;gap:20px}.employee-tracking-header{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 12px #023e8a14}.employee-tracking-title{margin:0 0 8px;color:var(--bills-primary);font-size:28px}.employee-tracking-subtitle{margin:0;color:#374151}.employee-refresh-btn{border:none;cursor:pointer;font-weight:700;background:var(--bills-primary);color:#fff;padding:10px 18px;border-radius:12px}.employee-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.employee-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.employee-summary-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:16px 18px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 2px 8px #0f172a0a;cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .15s ease;text-align:left}.employee-summary-card:hover{border-color:var(--bills-on-dark);box-shadow:0 4px 12px #023e8a1a}.employee-summary-card.active{border-color:var(--bills-primary);box-shadow:0 4px 14px #023e8a24}.employee-summary-label{font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.3px}.employee-summary-value{font-size:28px;font-weight:800;color:var(--bills-primary);line-height:1.1}.employee-status-tabs{display:flex;flex-wrap:wrap;gap:10px}.employee-status-tab{display:inline-flex;align-items:center;gap:8px;border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:10px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:background-color .2s ease,border-color .2s ease,color .2s ease}.employee-status-tab:hover{border-color:var(--bills-primary);color:var(--bills-primary)}.employee-status-tab.active{background:var(--bills-primary);border-color:var(--bills-primary);color:#fff}.employee-status-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 8px;border-radius:999px;background:#0f172a14;font-size:12px;font-weight:700}.employee-status-tab.active .employee-status-tab-count{background:#fff3;color:#fff}.employee-tracking-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 4px 12px #0f172a0f}.employee-tracking-loading,.employee-tracking-empty{text-align:center;color:#374151;padding:24px}.employee-tracking-table-wrapper{overflow:auto;max-width:100%;min-width:0;max-height:68vh;border:1px solid #e2e8f0;border-radius:14px}.employee-tracking-table{width:100%;border-collapse:separate;border-spacing:0;min-width:980px;color:#1e293b}.employee-tracking-table th,.employee-tracking-table td{padding:12px 14px;text-align:left;border-bottom:1px solid #e2e8f0;vertical-align:middle;line-height:1.45}.employee-tracking-table tbody tr{transition:background-color .15s ease}.employee-tracking-table tbody tr:hover{background:#f8fafc}.employee-tracking-table tbody tr.row-alt{background:#fcfdfe}.employee-tracking-table tbody tr.row-alt:hover{background:#f8fafc}.employee-tracking-table th{position:sticky;top:0;z-index:2;background:#f8fafc;color:#64748b;font-size:11px;text-transform:uppercase;letter-spacing:.45px;font-weight:700;box-shadow:inset 0 -1px #e2e8f0;white-space:nowrap}.employee-tracking-table .col-amount{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600;color:#1e293b}.employee-tracking-table .col-status{text-align:center;white-space:nowrap}.employee-tracking-table .col-date{white-space:nowrap;color:#334155}.employee-tracking-table .col-reference{min-width:118px;max-width:148px}.employee-tracking-table .reference-number-value{font-weight:700;color:var(--bills-primary)}.employee-tracking-table .col-doc-type{width:88px;white-space:nowrap}.employee-tracking-table .col-doc-number{min-width:118px;max-width:148px}.employee-tracking-table .col-vendor-desc{min-width:140px;max-width:220px}.employee-tracking-table .col-action{white-space:nowrap}.employee-tracking-table .col-approved-by{min-width:100px;max-width:160px}.employee-tracking-table .col-rejection{min-width:160px;max-width:240px}.employee-tracking-table .col-escalated{min-width:120px;max-width:180px}.cell-ellipsis{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:#1e293b}.doc-type-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700;line-height:1.2;letter-spacing:.3px;border:1px solid transparent;white-space:nowrap}.doc-type-badge-pcv{background:var(--bills-tint-strong);color:var(--bills-primary);border-color:var(--bills-on-dark)}.doc-type-badge-invoice{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.doc-number-value{display:inline-block;max-width:132px;font-size:14px;font-weight:600;color:var(--bills-primary-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.doc-number-same{color:#94a3b8;font-weight:500}.employee-tracking-table .col-vendor{max-width:180px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:break-word}.employee-email-truncate{display:inline-block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}.auto-approved-badge{display:inline-block;padding:5px 10px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:12px;font-weight:700;white-space:nowrap}.approval-actions{display:flex;flex-wrap:wrap;gap:8px}.approval-action-btn{padding:8px 12px;border-radius:10px;font-size:12px}.approval-action-btn.view{background:#e0f2fe;color:#075985}.approval-action-btn.approve{background:#dcfce7;color:#166534}.approval-action-btn.reject{background:#fee2e2;color:#991b1b}.approval-action-btn:disabled{opacity:.5;cursor:not-allowed}.approval-modal-overlay{position:fixed;inset:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px}.approval-modal{width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:20px;box-shadow:0 20px 40px #0f172a2e}.approval-modal label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}.approval-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.approval-modal-header h3{margin:0;color:var(--bills-primary)}.approval-modal-close{background:#f1f5f9;width:36px;height:36px;border-radius:50%;font-size:24px;line-height:1}.approval-modal-body{padding:24px}.attachment-preview-modal{width:min(920px,100%)}.attachment-preview-body{min-height:320px;display:flex;align-items:center;justify-content:center;background:#f8fafc}.attachment-preview-frame{width:100%;height:min(70vh,640px);border:0;border-radius:12px;background:#fff}.attachment-preview-image{max-width:100%;max-height:min(70vh,640px);object-fit:contain;border-radius:12px;box-shadow:0 8px 24px #0f172a1f}.voucher-preview-modal{width:min(85vw,960px);max-height:88vh;display:flex;flex-direction:column;overflow:hidden}.voucher-preview-modal-header{padding:14px 20px;flex-shrink:0}.voucher-preview-modal-header h3{font-size:17px;font-weight:700}.voucher-preview-modal-body{width:100%;flex:1 1 auto;min-height:0;padding:16px 20px 20px;overflow-y:auto;overflow-x:hidden;background:#f8fafc}.voucher-preview-stack{width:100%;max-width:100%;display:flex;flex-direction:column;align-items:stretch;gap:16px;overflow-x:hidden}.voucher-image-section{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:10px;flex-shrink:0}.voucher-image-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;flex-shrink:0}.voucher-image-section-header .attachment-section-title{margin:0;font-size:14px;font-weight:700;color:#334155}.voucher-open-full-size{font-size:13px;font-weight:600;color:#0b3d91;text-decoration:none;white-space:nowrap;padding:4px 0}.voucher-open-full-size:hover{text-decoration:underline}.voucher-preview-image-container{display:flex;align-items:center;justify-content:center;width:100%;max-height:min(62vh,calc(88vh - 200px));overflow:auto;padding:12px;border-radius:12px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 4px 16px #0f172a0f}.voucher-preview-image{display:block;width:auto;height:auto;max-width:100%;max-height:min(58vh,calc(88vh - 240px));object-fit:contain;border-radius:4px}.supporting-bills-section{width:100%;margin-top:4px;padding-top:16px;border-top:1px solid #e2e8f0;flex-shrink:0}.supporting-bills-section .attachment-section-title{margin:0 0 12px;font-size:14px;font-weight:700;color:#334155}.supporting-bills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;width:100%}.supporting-bill-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.supporting-bill-invoice{color:#0b3d91;font-size:14px;word-break:break-word}.supporting-bill-vendor,.supporting-bill-amount{margin:0;font-size:13px;color:#475569}.supporting-bill-amount{font-weight:700;color:#0f172a}.supporting-bill-view{margin-top:8px}@media(max-width:640px){.voucher-preview-modal{width:min(92vw,960px);max-height:90vh}.voucher-preview-modal-header{padding:12px 16px}.voucher-preview-modal-header h3{font-size:15px}.voucher-preview-modal-body{padding:12px 14px 16px}.voucher-preview-image-container{max-height:min(52vh,calc(90vh - 180px));padding:8px}.voucher-preview-image{max-height:min(48vh,calc(90vh - 220px))}.supporting-bills-grid{grid-template-columns:1fr}}.attachment-missing-message{margin:0;color:#374151;font-size:15px;text-align:center}.voucher-preview-frame{min-height:420px}.voucher-preview-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:24px;color:#475569}.voucher-preview-error{margin:0;padding:12px 16px;border-radius:8px;background:#fef2f2;color:#b91c1c}.voucher-preview-type{margin:4px 0 0;font-size:.85rem}.voucher-preview-status-success{color:#047857}.voucher-preview-status-error{color:#b45309}.voucher-preview-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}.voucher-preview-tab{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:999px;padding:6px 14px;cursor:pointer;font-weight:600}.voucher-preview-tab.active{background:var(--bills-primary);border-color:var(--bills-primary);color:#fff}.voucher-preview-meta{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:12px;font-size:.92rem}.voucher-preview-nav{display:flex;align-items:center;gap:12px;margin-bottom:12px}.voucher-preview-nav-btn{border:1px solid #cbd5e1;background:#fff;border-radius:8px;padding:6px 12px;cursor:pointer}.voucher-preview-nav-btn:disabled{opacity:.5;cursor:not-allowed}.voucher-preview-open-btn{border:none;background:var(--bills-tint);color:var(--bills-primary);border-radius:8px;padding:6px 12px;font-weight:700;cursor:pointer}.document-view-btn.secondary{background:#f8fafc;color:#0f172a}.voucher-viewer-frame{width:100%;min-height:70vh;border:0;background:#525659}.voucher-modal-pdf-viewport{padding:0}.dark-theme .voucher-preview-tab,.dark-theme .voucher-preview-nav-btn,.dark-theme .document-view-btn.secondary{background:#1e293b;border-color:#334155;color:#e2e8f0}.dark-theme .voucher-preview-open-btn{background:var(--bills-primary);color:#fff}.attachment-preview-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px;border-top:1px solid #e2e8f0}.attachment-download-btn{text-decoration:none;display:inline-flex;align-items:center}.attachment-close-btn{border:1px solid #cbd5e1;background:#fff;color:#334155;border-radius:999px;padding:10px 18px;font-weight:700;cursor:pointer}.document-view-btn,.guidance-view-btn{border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;line-height:1.2;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.document-view-btn{border:1px solid var(--bills-outline);background:#fff;color:var(--bills-primary)}.document-view-btn:hover,.document-view-btn:focus-visible{background:var(--bills-tint);border-color:var(--bills-primary);outline:2px solid rgba(2,62,138,.25);outline-offset:1px}.guidance-view-btn{border:1px solid #fca5a5;background:#fff;color:#b91c1c}.guidance-view-btn:hover,.guidance-view-btn:focus-visible{background:#fef2f2;border-color:#f87171;outline:2px solid rgba(185,28,28,.2);outline-offset:1px}.employee-document-cell,.employee-guidance-cell{white-space:nowrap}.guidance-preview-modal{width:min(720px,100%)}.guidance-preview-body{display:flex;flex-direction:column;gap:18px}.guidance-detail-block span{display:block;color:#374151;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.guidance-detail-block strong,.guidance-detail-block p{margin:0;color:#0f172a;line-height:1.6}.guidance-fix-list{margin:0;padding-left:20px;color:#0f172a;line-height:1.7}.guidance-fix-list li+li{margin-top:6px}.dark-theme .attachment-preview-body,.dark-theme .voucher-preview-modal-body{background:#0f172a}.dark-theme .voucher-image-section-header .attachment-section-title,.dark-theme .supporting-bills-section .attachment-section-title{color:#e2e8f0}.dark-theme .voucher-preview-image-container{background:#1e293b;border-color:#334155;box-shadow:0 4px 16px #0003}.dark-theme .voucher-open-full-size{color:var(--bills-on-dark)}.dark-theme .supporting-bills-section{border-top-color:#334155}.dark-theme .supporting-bill-card{background:#1e293b;border-color:#334155}.dark-theme .supporting-bill-invoice{color:var(--bills-on-dark)}.dark-theme .supporting-bill-vendor{color:#94a3b8}.dark-theme .supporting-bill-amount{color:#f8fafc}.dark-theme .attachment-missing-message{color:#cbd5e1}.dark-theme .attachment-close-btn{background:#1e2f38;color:#e2e8f0;border-color:#475569}.dark-theme .document-view-btn{background:#0f172a;border-color:var(--bills-outline);color:var(--bills-on-dark)}.dark-theme .guidance-view-btn{background:#0f172a;border-color:#fca5a5;color:#fca5a5}.dark-theme .guidance-detail-block span{color:#cbd5e1}.dark-theme .guidance-detail-block strong,.dark-theme .guidance-detail-block p,.dark-theme .guidance-fix-list{color:#e2e8f0}.approval-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.approval-detail-grid span{display:block;color:#374151;font-size:13px;margin-bottom:4px}.approval-detail-grid strong{color:#0f172a;word-break:break-word}.approval-json-block{margin-top:24px}.approval-json-block h4{margin:0 0 12px;color:#334155}.approval-json-block pre{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;overflow:auto;font-size:12px}.dark-theme .approval-dashboard-header,.dark-theme .approval-stat-card,.dark-theme .approval-table-card,.dark-theme .approval-modal,.dark-theme .employee-tracking-header,.dark-theme .employee-tracking-card{background:#1e2f38;color:#e2e8f0}.dark-theme .approval-title,.dark-theme .approval-modal-header h3,.dark-theme .employee-tracking-title{color:var(--bills-on-dark)}.dark-theme .approval-subtitle,.dark-theme .approval-stat-label,.dark-theme .approval-detail-grid span,.dark-theme .employee-tracking-subtitle{color:#cbd5e1}.dark-theme .employee-summary-card{background:#1e2f38;border-color:#334155}.dark-theme .employee-summary-card:hover,.dark-theme .employee-summary-card.active{border-color:var(--bills-on-dark)}.dark-theme .employee-summary-label{color:#cbd5e1}.dark-theme .employee-summary-value{color:var(--bills-on-dark)}.dark-theme .employee-status-tab{background:#1e2f38;border-color:#475569;color:#e2e8f0}.dark-theme .employee-status-tab:hover{border-color:var(--bills-on-dark);color:var(--bills-on-dark)}.dark-theme .employee-status-tab.active{background:var(--bills-primary);border-color:var(--bills-primary);color:#fff}.dark-theme .employee-tracking-table-wrapper{border-color:#334155}.dark-theme .employee-tracking-table{color:#e5e7eb}.dark-theme .employee-tracking-table th{background:#16242d;color:#f8fafc;box-shadow:inset 0 -1px #334155}.dark-theme .employee-tracking-table th,.dark-theme .employee-tracking-table td{border-bottom-color:#334155}.dark-theme .employee-tracking-table td{color:#e5e7eb}.dark-theme .employee-tracking-table tbody tr:hover{background:#2b3947}.dark-theme .employee-tracking-table tbody tr.row-alt{background:#1a2830}.dark-theme .employee-tracking-table tbody tr.row-alt:hover{background:#2b3947}.dark-theme .employee-tracking-table .col-reference,.dark-theme .employee-tracking-table .reference-number-value{color:var(--bills-on-dark)}.dark-theme .employee-tracking-table .col-vendor-desc,.dark-theme .employee-tracking-table .col-vendor-desc .cell-ellipsis{color:#f3f4f6}.dark-theme .employee-tracking-table .col-amount{color:#f8fafc;font-weight:600}.dark-theme .employee-tracking-table .col-date,.dark-theme .employee-tracking-table .employee-approved-at,.dark-theme .employee-tracking-table .employee-rejected-at{color:#cbd5e1}.dark-theme .employee-tracking-table .doc-number-value{color:#94a3b8}.dark-theme .employee-tracking-table .doc-number-value.doc-number-same{color:#64748b}.dark-theme .employee-tracking-table .cell-ellipsis{color:#e5e7eb}.dark-theme .employee-tracking-empty,.dark-theme .employee-tracking-loading{color:#cbd5e1}.dark-theme .auto-approved-badge{background:#1e3a5f;color:#93c5fd}.dark-theme .status-badge.duplicate_pending{background:#1e3a5f;color:#bfdbfe}.dark-theme .approval-stat-value,.dark-theme .approval-detail-grid strong{color:#f8fafc}.dark-theme .approval-table td{border-bottom-color:#334155}.dark-theme .approval-table th{background:#16242d;color:#cbd5e1}.dark-theme .approval-json-block pre{background:#16242d;border-color:#334155;color:#e2e8f0}@media(max-width:992px){.approval-stats-grid,.employee-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:768px){.approval-dashboard-header,.employee-tracking-header{flex-direction:column;align-items:flex-start}.approval-stats-grid,.approval-detail-grid{grid-template-columns:1fr}.employee-summary-grid{grid-template-columns:1fr 1fr}.employee-status-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.employee-status-tab{flex:0 0 auto}.employee-tracking-table-wrapper{max-height:none}}.ocr-results-section,.voucher-plan-section{background-color:#fff;padding:24px;border-radius:20px;box-shadow:0 4px 12px #0000000d}.voucher-plan-section .ocr-results-title{margin:0 0 8px;font-size:16px;font-weight:800;letter-spacing:1px;color:var(--bills-primary);text-transform:uppercase}.voucher-request-summary{margin-top:16px;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;text-align:left;padding:14px 16px;border:1px solid var(--bills-on-dark);border-radius:14px;background:var(--bills-tint)}.voucher-request-summary-content h3{margin:0 0 6px;font-size:14px;font-weight:800;letter-spacing:.4px;color:var(--bills-primary);text-transform:uppercase}.voucher-request-summary-content p{margin:0 0 4px;color:#334155;font-size:13px;line-height:1.45}.voucher-request-summary-content p:last-child{margin-bottom:0}.voucher-request-edit-btn{border:1px solid var(--bills-primary);background:#fff;color:var(--bills-primary);border-radius:999px;padding:6px 14px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.voucher-modal-backdrop{position:fixed;inset:0;z-index:2200;display:flex;align-items:center;justify-content:center;padding:16px;background:#0f172a73}.voucher-modal{width:min(720px,100%);max-height:min(92vh,860px);display:flex;flex-direction:column;background:#fff;border-radius:18px;box-shadow:0 20px 48px #0f172a40;overflow:hidden}.voucher-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid #e2e8f0}.voucher-modal-header-text{flex:1 1 auto}.voucher-modal-subtitle{margin:4px 0 0;font-size:13px;color:#64748b}.voucher-modal-progress{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:12px 18px;border-bottom:1px solid #e2e8f0;background:#f8fafc}.voucher-modal-progress-step{font-size:12px;font-weight:700;color:#94a3b8;padding:4px 10px;border-radius:999px;background:#e2e8f0}.voucher-modal-progress-step.is-active{color:var(--bills-primary);background:var(--bills-tint-border)}.voucher-modal-progress-step.is-complete{color:#0369a1;background:#e0f2fe}.voucher-modal-section-heading-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.voucher-verified-badge{font-size:11px;font-weight:700;color:#166534;background:#dcfce7;border-radius:999px;padding:4px 10px}.voucher-employee-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 16px;margin:0}.voucher-employee-summary dt{font-size:11px;font-weight:700;text-transform:uppercase;color:#64748b;margin:0 0 2px}.voucher-employee-summary dd{margin:0;font-size:14px;font-weight:600;color:#0f172a}.voucher-request-loading{margin:0 0 12px;color:#64748b;font-size:13px}.voucher-request-options-error{margin-bottom:12px}.voucher-modal-title{margin:0;font-size:18px;font-weight:800;color:var(--bills-primary)}.voucher-modal-close{width:36px;height:36px;border:none;border-radius:50%;background:#f1f5f9;color:#334155;font-size:24px;line-height:1;cursor:pointer}.voucher-modal-body{padding:16px 18px;overflow-y:auto;flex:1 1 auto}.voucher-modal-section+.voucher-modal-section{margin-top:18px;padding-top:18px;border-top:1px solid #e2e8f0}.voucher-modal-section-title{margin:0 0 12px;font-size:14px;font-weight:800;color:var(--bills-primary);letter-spacing:.02em;text-transform:uppercase}.voucher-modal-field-label{font-size:13px;font-weight:700;color:#334155}.voucher-modal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.voucher-modal-field{display:flex;flex-direction:column;gap:6px;text-align:left}.voucher-modal-field-full{grid-column:1 / -1}.voucher-modal-field label{font-size:13px;font-weight:700;color:#334155}.voucher-modal-field input,.voucher-modal-field textarea,.voucher-modal-field select{width:100%;box-sizing:border-box;padding:11px 12px;border:2px solid #5a7a85;border-radius:12px;background:#fff;color:#2c3e50;font-size:14px;font-family:inherit;outline:none}.voucher-modal-field input:focus,.voucher-modal-field textarea:focus,.voucher-modal-field select:focus{border-color:var(--bills-primary);box-shadow:0 0 0 3px #023e8a26}.voucher-modal-field input[readonly]{background:#f8fafc;color:#475569}.voucher-modal-field textarea{resize:vertical;min-height:78px}.voucher-modal-field-error{margin:0;color:#b91c1c;font-size:12px;font-weight:600}.voucher-modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 18px 16px;border-top:1px solid #e2e8f0}.voucher-modal-cancel,.voucher-modal-continue{border-radius:999px;padding:10px 18px;font-size:14px;font-weight:700;cursor:pointer}.voucher-modal-cancel{border:1px solid #cbd5e1;background:#fff;color:#334155}.voucher-modal-continue{border:none;background:var(--bills-primary);color:#fff}.voucher-modal-cancel:disabled,.voucher-modal-continue:disabled,.voucher-modal-close:disabled{opacity:.65;cursor:not-allowed}.voucher-type-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.voucher-type-card{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:2px solid #cbd5e1;border-radius:14px;background:#fff;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.voucher-type-card:hover{border-color:var(--bills-primary)}.voucher-type-card.is-selected{border-color:var(--bills-primary);background:var(--bills-tint);box-shadow:0 0 0 3px #023e8a1f}.voucher-type-card input[type=radio]{position:absolute;opacity:0;pointer-events:none}.voucher-type-card:focus-within{border-color:var(--bills-primary);box-shadow:0 0 0 3px #023e8a26}.voucher-type-card-title{font-size:14px;font-weight:800;color:#0f172a}.voucher-type-card-description{font-size:12px;line-height:1.4;color:#64748b}.voucher-type-info-message{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a;font-size:12px;line-height:1.5}.voucher-upload-dropzone{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 16px;border:2px dashed #94a3b8;border-radius:14px;background:#f8fafc;text-align:center}.voucher-upload-dropzone.is-drag-over{border-color:var(--bills-primary);background:var(--bills-tint)}.voucher-upload-dropzone.has-error{border-color:#ef4444}.voucher-upload-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.voucher-upload-dropzone-title{margin:0;font-size:14px;font-weight:700;color:#334155}.voucher-upload-dropzone-hint{margin:0;font-size:12px;color:#64748b}.voucher-upload-browse-btn{margin-top:4px;border:1px solid var(--bills-primary);border-radius:999px;padding:8px 16px;background:#fff;color:var(--bills-primary);font-size:13px;font-weight:700;cursor:pointer}.voucher-upload-browse-btn:focus-visible{outline:3px solid rgba(2,62,138,.25);outline-offset:2px}.voucher-upload-empty-state{margin:4px 0 0;font-size:12px;color:#94a3b8}.voucher-upload-error{margin-top:8px}.voucher-upload-file-list{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.voucher-upload-file-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.voucher-upload-file-meta{display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}.voucher-upload-file-name{font-size:13px;font-weight:700;color:#0f172a;word-break:break-word}.voucher-upload-file-size{font-size:12px;color:#64748b}.voucher-upload-remove-btn{border:1px solid #fecaca;border-radius:999px;padding:6px 12px;background:#fff1f2;color:#b91c1c;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.voucher-upload-remove-btn:focus-visible{outline:3px solid rgba(185,28,28,.2);outline-offset:2px}.voucher-plan-error,.voucher-plan-stale-notice,.voucher-invalid-bills,.voucher-blocked-bills{margin-top:14px;padding:12px 14px;border-radius:12px;text-align:left}.voucher-plan-stale-notice{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.voucher-plan-error,.voucher-invalid-bills,.voucher-blocked-bills{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.voucher-plan-workflow{margin-top:20px}.voucher-invalid-bills p,.voucher-blocked-bills p{margin:0 0 6px;font-size:13px;line-height:1.4}.voucher-invalid-bills p:last-child,.voucher-blocked-bills p:last-child{margin-bottom:0}.voucher-blocked-bills h4,.voucher-invalid-bills h4{margin:0 0 8px;font-size:14px}.pre-approval-cell{display:flex;flex-direction:column;gap:6px;min-width:220px}.pre-approval-na{color:#64748b;font-size:12px;font-weight:600}.pre-approval-required-badge,.pre-approval-attached-badge{display:inline-flex;align-items:center;width:fit-content;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase}.pre-approval-required-badge{background:#fff7ed;color:#c2410c;border:1px solid #fdba74;letter-spacing:.4px}.pre-approval-attached-badge{background:#ecfdf5;color:#047857;border:1px solid #6ee7b7}.pre-approval-hint{margin:0;font-size:12px;line-height:1.4;color:#7c2d12}.pre-approval-file-name{margin:0;font-size:12px;color:#334155;font-weight:600;word-break:break-word}.pre-approval-upload-label{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:8px 14px;border-radius:8px;background:var(--bills-primary);color:#fff;font-size:12px;font-weight:700;cursor:pointer;border:1px solid var(--bills-primary)}.pre-approval-upload-label:hover{background:#0d6b64}.pre-approval-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px}.pre-approval-remove-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 14px;border-radius:8px;border:1px solid #b91c1c;background:#fff;color:#b91c1c;font-size:12px;font-weight:700;cursor:pointer}.pre-approval-remove-btn:hover:not(:disabled){background:#fef2f2}.pre-approval-remove-btn:disabled{opacity:.5;cursor:not-allowed}.ocr-results-row-blocked{background:#fff7ed}.ocr-results-row-duplicate{background:#fffbeb}.ocr-results-row-duplicate:hover:not(.ocr-results-row-active){background:#fef3c7}.duplicate-status-cell{max-width:220px;min-width:0;word-wrap:break-word;overflow-wrap:anywhere}.duplicate-status-badge,.valid-status-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.duplicate-status-badge{background:#fee2e2;color:#991b1b}.valid-status-badge,.verified-status-badge{background:#dcfce7;color:#166534}.uncertain-status-badge{background:#fef3c7;color:#92400e}.duplicate-reason-text{margin:6px 0 0;font-size:12px;line-height:1.4;color:#b45309;word-wrap:break-word;overflow-wrap:anywhere}.duplicate-bills-warning{margin-top:14px;padding:12px 14px;border-radius:12px;background:#fffbeb;border:1px solid #f59e0b;color:#92400e;text-align:left}.duplicate-remove-btn{border:none;border-radius:8px;padding:8px 12px;background:#b91c1c;color:#fff;font-size:12px;font-weight:700;cursor:pointer}.duplicate-remove-btn:hover{background:#991b1b}.pcv-number-badge{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border-radius:12px;background:var(--bills-tint);border:2px solid var(--bills-primary);max-width:100%}.pcv-number-badge-compact{padding:8px 10px}.pcv-number-badge-label{font-size:10px;font-weight:800;letter-spacing:1.4px;color:var(--bills-primary)}.pcv-number-badge-value{font-size:16px;font-weight:800;color:var(--bills-selected-dark);letter-spacing:.3px;word-break:break-word}.attachment-section-title{margin:16px 0 10px;color:var(--bills-primary);font-size:15px}.supporting-bills-list{display:flex;flex-direction:column;gap:10px}.supporting-bill-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.supporting-bill-item p{margin:4px 0 0;font-size:13px;color:#475569}.voucher-card-exception{border-color:#fdba74}.voucher-card-exception .voucher-card-header{background:#fff7ed;border-bottom-color:#fed7aa}.voucher-card-exception .voucher-card-header h4{color:#c2410c}.voucher-plan-actions{margin-top:16px;display:flex;justify-content:flex-end}.voucher-plan-button{padding:12px 22px;background-color:var(--bills-primary);color:#fff;border:none;border-radius:24px;font-size:14px;font-weight:800;letter-spacing:.8px;cursor:pointer}.voucher-plan-button:disabled{opacity:.6;cursor:not-allowed}.voucher-card{margin-top:16px;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden}.voucher-card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;background:var(--bills-tint);border-bottom:1px solid var(--bills-tint-border)}.voucher-card-header h4{margin:0;color:var(--bills-primary);font-size:15px}.voucher-id-line{margin:0 0 12px;padding:0 16px;font-size:.85rem;color:#374151}.voucher-submit-row{margin-top:20px;display:flex;justify-content:flex-end}.voucher-submit-button:disabled{opacity:.65;cursor:not-allowed}.voucher-submission-result{margin-top:20px;padding:16px;border-radius:12px;background:#ecfdf5;border:1px solid #a7f3d0}.voucher-submission-item{margin-top:12px;padding-top:12px;border-top:1px solid #a7f3d0}.voucher-submission-item p{margin:4px 0;color:#374151}.dark-theme .voucher-submission-result{background:#0f2f2c;border-color:var(--bills-primary)}.dark-theme .voucher-submission-item{border-top-color:var(--bills-primary)}.dark-theme .voucher-submission-item p{color:#cbd5e1}.voucher-card-header span{color:#334155;font-size:14px;font-weight:700}.voucher-invalid-bills h4{margin:0 0 8px;font-size:14px}.dark-theme .voucher-plan-section{background:#1e2f38}.dark-theme .voucher-modal{background:#1e2f38;color:#f8fafc}.dark-theme .voucher-modal .voucher-modal-header,.dark-theme .voucher-modal .voucher-modal-footer,.dark-theme .voucher-modal .voucher-modal-progress,.dark-theme .voucher-modal .voucher-modal-section+.voucher-modal-section{border-color:#475569}.dark-theme .voucher-modal .voucher-modal-title,.dark-theme .voucher-modal .voucher-modal-section-title{color:var(--bills-on-dark)}.dark-theme .voucher-modal .voucher-modal-subtitle{color:#cbd5e1}.dark-theme .voucher-modal .voucher-modal-progress{background:#1e2f38}.dark-theme .voucher-modal .voucher-modal-progress-step{color:#94a3b8;background:#0f172a}.dark-theme .voucher-modal .voucher-modal-progress-step.is-active{color:var(--bills-on-dark);background:var(--bills-selected-dark)}.dark-theme .voucher-modal .voucher-modal-progress-step.is-complete{color:#cbd5e1;background:#1e3a5f}.dark-theme .voucher-modal .voucher-modal-field-label,.dark-theme .voucher-modal .voucher-modal-field label,.dark-theme .voucher-modal .voucher-employee-summary dt{color:#f3f4f6}.dark-theme .voucher-modal .voucher-employee-summary dd{color:#f8fafc}.dark-theme .voucher-modal .voucher-modal-field input,.dark-theme .voucher-modal .voucher-modal-field textarea,.dark-theme .voucher-modal .voucher-modal-field select{background:#0f172a;border-color:#475569;color:#f8fafc}.dark-theme .voucher-modal .voucher-modal-field input::placeholder,.dark-theme .voucher-modal .voucher-modal-field textarea::placeholder{color:#94a3b8;opacity:1}.dark-theme .voucher-modal .voucher-modal-field input:focus,.dark-theme .voucher-modal .voucher-modal-field textarea:focus,.dark-theme .voucher-modal .voucher-modal-field select:focus{border-color:var(--bills-outline);box-shadow:0 0 0 3px #8eb6e833}.dark-theme .voucher-modal .voucher-modal-field input[readonly]{background:#0f172a;color:#94a3b8}.dark-theme .voucher-modal .voucher-modal-field input[aria-invalid=true],.dark-theme .voucher-modal .voucher-modal-field textarea[aria-invalid=true],.dark-theme .voucher-modal .voucher-modal-field select[aria-invalid=true]{border-color:#f87171}.dark-theme .voucher-modal .voucher-modal-field-error{color:#fca5a5}.dark-theme .voucher-modal .voucher-modal-close{background:#0f172a;color:#e2e8f0}.dark-theme .voucher-modal .voucher-modal-close:hover:not(:disabled){background:#1e293b}.dark-theme .voucher-modal .voucher-modal-cancel{background:#1e2f38;border-color:#475569;color:#f8fafc}.dark-theme .voucher-modal .voucher-modal-cancel:hover:not(:disabled){background:#243843;border-color:#64748b}.dark-theme .voucher-modal .voucher-modal-continue{color:#fff}.dark-theme .voucher-modal .voucher-type-card{background:#0f172a;border-color:#475569}.dark-theme .voucher-modal .voucher-type-card:hover{border-color:var(--bills-outline)}.dark-theme .voucher-modal .voucher-type-card.is-selected{background:var(--bills-selected-dark);border-color:var(--bills-outline);box-shadow:0 0 0 3px #8eb6e833}.dark-theme .voucher-modal .voucher-type-card:focus-within{border-color:var(--bills-outline);box-shadow:0 0 0 3px #8eb6e840}.dark-theme .voucher-modal .voucher-type-card-title{color:#f3f4f6}.dark-theme .voucher-modal .voucher-type-card-description{color:#cbd5e1}.dark-theme .voucher-modal .voucher-type-info-message{background:#1e3a8a;border-color:#3b82f6;color:#dbeafe}.dark-theme .voucher-modal .voucher-verified-badge{color:#86efac;background:#14532d}.dark-theme .voucher-modal .voucher-upload-dropzone{background:#0f172a;border-color:#475569}.dark-theme .voucher-modal .voucher-upload-dropzone.is-drag-over{border-color:var(--bills-outline);background:var(--bills-selected-dark)}.dark-theme .voucher-modal .voucher-upload-dropzone.has-error{border-color:#f87171}.dark-theme .voucher-modal .voucher-upload-dropzone-title{color:#f3f4f6}.dark-theme .voucher-modal .voucher-upload-dropzone-hint,.dark-theme .voucher-modal .voucher-upload-empty-state{color:#cbd5e1}.dark-theme .voucher-modal .voucher-upload-edit-mode-note{background:#f8fafc;border-color:#e2e8f0;color:#111827;opacity:1}.dark-theme .voucher-modal .voucher-upload-browse-btn{background:#0f172a;border-color:var(--bills-outline);color:var(--bills-on-dark)}.dark-theme .voucher-modal .voucher-upload-browse-btn:hover:not(:disabled){background:var(--bills-selected-dark)}.dark-theme .voucher-modal .voucher-upload-browse-btn:focus-visible{outline-color:#8eb6e859}.dark-theme .voucher-modal .voucher-upload-file-item{background:#0f172a;border-color:#475569}.dark-theme .voucher-modal .voucher-upload-file-name{color:#f8fafc}.dark-theme .voucher-modal .voucher-upload-file-size{color:#cbd5e1}.dark-theme .voucher-request-summary{background:#16242d;border-color:var(--bills-primary)}.dark-theme .voucher-request-summary-content h3,.dark-theme .voucher-card-header h4{color:var(--bills-on-dark)}.dark-theme .voucher-request-summary-content p,.dark-theme .voucher-card-header span,.dark-theme .voucher-id-line{color:#cbd5e1}.dark-theme .voucher-request-edit-btn{background:#1e2f38;color:var(--bills-on-dark);border-color:var(--bills-on-dark)}.dark-theme .bill-description-input{background:#1e293b;color:#e2e8f0;border-color:#475569}.dark-theme .bill-description-input[aria-invalid=true]{border-color:#f87171;background:#3f1d1d}.dark-theme .voucher-card{border-color:#334155}.dark-theme .voucher-card-header{background:#16242d;border-bottom-color:#334155}@media(max-width:768px){.voucher-modal-grid,.voucher-type-cards{grid-template-columns:1fr}.voucher-request-summary{flex-direction:column}.voucher-modal-footer{flex-direction:column-reverse}.voucher-modal-cancel,.voucher-modal-continue{width:100%;min-height:44px}.voucher-plan-actions{justify-content:stretch}.voucher-plan-button{width:100%}.voucher-card-header{flex-direction:column;align-items:flex-start}}.ocr-results-title{margin:0 0 16px;font-size:16px;font-weight:800;letter-spacing:1px;color:#2c3e50;text-transform:uppercase}.ocr-results-header-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.ocr-results-header-row .ocr-results-title{margin:0}.voucher-upload-edit-mode-note{margin:0;padding:12px 14px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;color:#111827;font-size:13px;font-weight:500;line-height:1.5;opacity:1}.voucher-reupload-bill-btn{margin-top:12px;align-self:flex-start}.dashboard-table-wrapper{overflow-x:auto;max-width:100%;min-width:0;border:1px solid #e2e8f0;border-radius:12px}.dashboard-data-table{width:100%;border-collapse:collapse;font-size:13px}.dashboard-data-table th,.dashboard-data-table td{padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}.dashboard-data-table th{background:#f8fafc;color:#475569;font-weight:700}.dashboard-data-table tbody tr:last-child td{border-bottom:none}.ocr-results-row-clickable{cursor:pointer;transition:background-color .15s ease}.ocr-results-row-clickable:hover:not(.ocr-results-row-active){background:var(--bills-tint)}.ocr-results-row-clickable:focus{outline:none}.ocr-results-row-clickable:focus-visible{outline:2px solid var(--bills-primary);outline-offset:-2px}.ocr-results-row-active{background:var(--bills-tint)}.ocr-results-summary{display:flex;flex-wrap:wrap;gap:20px;margin-top:14px;padding:12px 14px;border-radius:12px;background:#f8fafc;color:#334155;font-size:14px}.bill-description-input{width:100%;min-width:160px;box-sizing:border-box;padding:6px 8px;border:1px solid #cbd5e1;border-radius:8px;font-size:13px;font-family:inherit;background:#fff;color:#1e293b}.bill-description-input:focus{outline:none;border-color:var(--bills-primary);box-shadow:0 0 0 2px #023e8a1f}.bill-description-input[aria-invalid=true]{border-color:#dc2626;background:#fff7f7}.batch-failures-section{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:12px 16px}.batch-failure-item{margin:0 0 6px;font-size:13px;color:#991b1b;line-height:1.4}.batch-failure-item:last-child{margin-bottom:0}.dark-theme .ocr-results-section{background:#111827}.dark-theme .ocr-results-title{color:#e2e8f0}.dark-theme .dashboard-table-wrapper,.dark-theme .dashboard-data-table th,.dark-theme .dashboard-data-table td{border-color:#334155}.dark-theme .dashboard-data-table th{background:#16242d;color:#cbd5e1}.dark-theme .dashboard-data-table td{color:#e2e8f0}.dark-theme .ocr-results-row-active{background:var(--bills-selected-dark)}.dark-theme .ocr-results-row-clickable:hover:not(.ocr-results-row-active){background:var(--bills-hover-row-dark)}.dark-theme .ocr-results-row-clickable:focus-visible{outline-color:var(--bills-outline)}.dark-theme .ocr-results-summary{background:#16242d;color:#e2e8f0}.dark-theme .batch-failures-section{background:#450a0a;border-color:#991b1b}.dark-theme .batch-failure-item{color:#fecaca}@media(max-width:768px){.ocr-results-summary{flex-direction:column;gap:8px}}@media(max-width:768px){.main-content{padding:12px}.top-section,.preview-section,.extracted-section,.bottom-section,.ocr-results-section,.voucher-plan-section,.approval-dashboard-header,.employee-tracking-header,.approval-table-card,.employee-tracking-card{padding:16px}.dashboard-tabs{flex-direction:column}.dashboard-tab,.upload-button,.doc-type-select,.employee-email-input,.approval-refresh-btn,.voucher-plan-button,.ocr-save-button,.ocr-generate-button,.ocr-confirm-button{min-height:44px}.dashboard-tab{width:100%;text-align:center}.section-title{font-size:16px;letter-spacing:.4px;overflow-wrap:anywhere}.preview-header,.ocr-results-header-row,.submission-result-banner{flex-wrap:wrap;align-items:flex-start}.middle-section{--ocr-review-panel-height: none;--ocr-review-panel-height-document: none}.preview-section,.extracted-section,.preview-section.has-document,.extracted-section.has-document{width:100%;height:auto;max-height:none;min-height:280px}.preview-container,.empty-preview,.data-textarea,.extracted-section .ocr-document,.extracted-section.has-document .ocr-document{flex:1 1 auto;min-height:280px;max-height:70vh}.image-preview,.pdf-preview,.attachment-preview-image,.voucher-preview-image{max-width:100%}.ocr-doc-row,.ocr-doc-item .ocr-doc-row{grid-template-columns:minmax(0,1fr);row-gap:2px;padding-left:0}.ocr-doc-colon{display:none}.ocr-doc-label{font-weight:700}.ocr-doc-rule{max-width:100%}.ocr-edit-action-buttons>button,.button-container>.action-button,.voucher-modal-footer>button{flex:1 1 100%}.doc-type-select,.employee-email-input,.bill-description-input,.data-textarea,.voucher-modal input,.voucher-modal textarea,.voucher-modal select,.approval-email-input{font-size:16px}.approval-email-input{min-width:0;max-width:none;flex-basis:100%}.employee-summary-grid{grid-template-columns:1fr}.voucher-viewer-frame{min-height:50vh}.invoice-voucher-preview-body,.invoice-voucher-preview-error,.invoice-voucher-preview-switcher{margin-left:12px;margin-right:12px}.approval-modal{max-height:calc(100dvh - 24px)}.approval-modal-header{gap:8px;align-items:flex-start}.approval-modal-header h3,.approval-modal p,.approval-modal li,.batch-failure-item,.voucher-request-summary-content p{overflow-wrap:anywhere}.approval-modal input:not([type=checkbox]):not([type=radio]),.approval-modal textarea,.approval-modal select{width:100%;max-width:100%;box-sizing:border-box;font-size:16px}.approval-modal>button{display:block;width:100%;min-height:44px;margin-top:8px}.status-text{max-width:100%!important}}@media(max-width:480px){.nav-button{width:44px;height:44px}.review-pdf-sidebar{flex-basis:56px}}.approval-result-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(180deg,#f4f7fb,#eef6ff)}.dark-theme .approval-result-page{background:linear-gradient(180deg,#121e25,#0f172a)}.approval-result-card{width:100%;max-width:520px;background:#fff;border-radius:20px;box-shadow:0 16px 40px #0f172a1f;padding:32px 28px;text-align:center}.dark-theme .approval-result-card{background:#1e2f38;box-shadow:0 16px 40px #00000059}.approval-result-brand h1{margin:0;font-size:28px;color:var(--bills-primary)}.approval-result-brand p{margin:8px 0 24px;color:#374151;font-size:15px}.dark-theme .approval-result-brand h1{color:var(--bills-on-dark)}.dark-theme .approval-result-brand p{color:#cbd5e1}.approval-result-icon{width:72px;height:72px;margin:0 auto 20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700}.approval-result-icon.success{background:#dcfce7;color:#065f46}.approval-result-icon.danger{background:#fee2e2;color:#b91c1c}.approval-result-icon.warning{background:#fffbeb;color:#b45309}.approval-result-title{margin:0 0 16px;font-size:24px;color:#0f172a}.approval-result-description{margin:0 0 12px;color:#334155;font-size:16px;line-height:1.6}.approval-result-footnote{margin:0 0 24px;color:#374151;font-size:14px;line-height:1.5}.dark-theme .approval-result-description,.dark-theme .approval-result-footnote{color:#cbd5e1}.dark-theme .approval-result-title{color:#f8fafc}.approval-result-details{text-align:left;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;margin-bottom:24px}.dark-theme .approval-result-details{border-color:#334155}.approval-result-row{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:14px 16px;border-bottom:1px solid #e2e8f0}.approval-result-row:last-child{border-bottom:none}.dark-theme .approval-result-row{border-bottom-color:#334155}.approval-result-row span{color:#374151;font-size:13px;font-weight:700;text-transform:uppercase}.approval-result-row strong{color:#0f172a;font-size:14px;word-break:break-word}.dark-theme .approval-result-row span{color:#cbd5e1}.dark-theme .approval-result-row strong{color:#e2e8f0}.approval-result-close-message{margin:0 0 16px;color:#475569;font-size:15px;font-weight:600}.dark-theme .approval-result-close-message{color:#cbd5e1}.approval-result-close-btn{width:100%;border:none;border-radius:12px;padding:14px 18px;background:#334155;color:#fff;font-size:15px;font-weight:700;cursor:pointer}.approval-result-close-btn:hover{background:#1e293b}.dark-theme .approval-result-close-btn{background:#475569}.dark-theme .approval-result-close-btn:hover{background:#334155}@media(max-width:640px){.approval-result-page{padding:12px;align-items:flex-start}.approval-result-card{padding:20px 16px}.approval-result-brand h1{font-size:22px;overflow-wrap:anywhere}.approval-result-row{grid-template-columns:1fr;gap:6px}}.track-invoice-page{min-height:100vh;padding:28px 16px 40px;background:#e7eef6;overflow-x:hidden}.dark-theme .track-invoice-page{background:#121e25}.track-invoice-shell{width:min(960px,100%);margin:0 auto;min-width:0}.track-invoice-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.track-invoice-brand{min-width:0;text-align:left}.track-invoice-brand h1{margin:0;font-size:22px;font-weight:700;color:#064a96;line-height:1.2}.track-invoice-brand p{margin:4px 0 0;color:#526277;font-size:14px}.dark-theme .track-invoice-brand h1{color:#93c5fd}.dark-theme .track-invoice-brand p{color:#cbd5e1}.track-refresh-btn{flex-shrink:0;margin:0;padding:10px 16px;border:0;border-radius:8px;background:#064a96;color:#fff;font-size:14px;font-weight:700;line-height:1.2;white-space:nowrap;cursor:pointer}.track-refresh-btn:hover{background:#043b78}.track-status-card,.track-panel{background:#fff;border:1px solid #d7e0ea;border-radius:12px;box-shadow:0 1px 2px #0f172a0a}.dark-theme .track-status-card,.dark-theme .track-panel{background:#1e2f38;border-color:#374b5c}.track-status-card{padding:20px}.track-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.track-summary__identity,.track-summary__status{min-width:0}.track-summary__status{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.track-summary__kicker{display:block;margin-bottom:4px;color:#64748b;font-size:12px;font-weight:600}.track-summary__number{display:block;color:#0f172a;font-size:22px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}.dark-theme .track-summary__number{color:#e2e8f0}.track-status-pill{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;line-height:1.3;overflow-wrap:anywhere}.track-status-pill svg{width:14px;height:14px;flex-shrink:0}.track-status-pill--pending{background:#fff6e5;color:#9a6700}.track-status-pill--approved{background:#e8f7ee;color:#157347}.track-status-pill--rejected{background:#fdecec;color:#b42318}.track-status-pill--duplicate{background:#e8f1fb;color:#064a96}.track-status-pill--unknown{background:#f1f5f9;color:#475569}.track-status-note{margin:6px 0 0;max-width:320px;color:#64748b;font-size:12px;font-weight:500;line-height:1.45}.dark-theme .track-status-note{color:#cbd5e1}.track-timeline{--track-progress: 50%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:relative;margin:22px 0 0;padding:0;list-style:none}.track-timeline:before{content:"";position:absolute;top:10px;left:16.5%;right:16.5%;height:2px;background:linear-gradient(90deg,#064a96 var(--track-progress),#d5deea var(--track-progress))}.track-timeline__step{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;position:relative;z-index:1;text-align:center}.track-timeline__marker{width:22px;height:22px;border:2px solid #c5d0dc;border-radius:50%;background:#fff}.track-timeline__step--complete .track-timeline__marker,.track-timeline__step--current .track-timeline__marker{border-color:#064a96}.track-timeline__step--complete .track-timeline__marker{background:#064a96;box-shadow:inset 0 0 0 4px #fff}.track-timeline__step--current .track-timeline__marker{background:#fff;box-shadow:0 0 0 4px #064a9624}.track-timeline__step--failed .track-timeline__marker{border-color:#b42318;background:#b42318;box-shadow:inset 0 0 0 4px #fff}.track-timeline__label{color:#334155;font-size:13px;font-weight:600;line-height:1.3;overflow-wrap:anywhere;padding:0 4px}.track-timeline__step--upcoming .track-timeline__label{color:#94a3b8;font-weight:500}.track-timeline__step--current .track-timeline__label,.track-timeline__step--complete .track-timeline__label{color:#064a96}.track-timeline__step--failed .track-timeline__label{color:#b42318}.dark-theme .track-timeline__marker{background:#1e2f38}.dark-theme .track-timeline__label{color:#e2e8f0}.track-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px}.track-panel{min-width:0;padding:4px 0 0}.track-panel h2{margin:0;padding:14px 16px 12px;color:#0f172a;font-size:15px;font-weight:700;border-bottom:1px solid #e6edf5}.dark-theme .track-panel h2{color:#e2e8f0;border-bottom-color:#374b5c}.track-panel__row,.track-invoice-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;padding:12px 16px;border-bottom:1px solid #e6edf5}.track-panel__row:last-child,.track-invoice-row:last-child{border-bottom:none}.track-panel__row span,.track-invoice-row span{flex:0 1 auto;color:#64748b;font-size:13px;font-weight:600}.track-panel__row strong,.track-invoice-row strong{flex:1 1 auto;min-width:0;color:#0f172a;font-size:14px;font-weight:650;text-align:right;overflow-wrap:anywhere}.dark-theme .track-panel__row,.dark-theme .track-invoice-row{border-bottom-color:#374b5c}.dark-theme .track-panel__row span,.dark-theme .track-invoice-row span{color:#cbd5e1}.dark-theme .track-panel__row strong,.dark-theme .track-invoice-row strong{color:#e2e8f0}.track-invoice-extra{margin-top:16px;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.dark-theme .track-invoice-extra{border-color:#374b5c;background:#1e2f38}.track-invoice-message{margin-top:16px;padding:14px 16px;border-radius:12px;font-size:14px;line-height:1.5}.track-invoice-message.pending{background:#fffbeb;color:#b45309}.track-escalation-message{border:1px solid #fde68a}.track-invoice-extra.track-approval-details{background:#ecfdf3;border:1px solid #86efac;border-left:4px solid #15803d}.track-approval-heading{margin:0;padding:14px 16px 10px;font-size:15px;font-weight:700;color:#15803d;border-bottom:1px solid #86efac}.track-invoice-extra.track-approval-details .track-invoice-row{border-bottom-color:#86efac}.track-invoice-extra.track-approval-details .track-invoice-row span{color:#15803d}.dark-theme .track-invoice-extra.track-approval-details{background:#16653438;border-color:#166534;border-left-color:#86efac}.dark-theme .track-approval-heading,.dark-theme .track-invoice-extra.track-approval-details .track-invoice-row span{color:#86efac}.track-invoice-extra.track-rejection-details{background:#fff7f7;border:1px solid #f5b5b5;border-left:4px solid #b42318}.track-rejection-heading{margin:0;padding:14px 16px 10px;font-size:15px;font-weight:700;color:#b42318;border-bottom:1px solid #f5b5b5}.track-invoice-extra.track-rejection-details .track-invoice-row{border-bottom-color:#f5b5b5}.track-invoice-extra.track-rejection-details .track-invoice-row span,.track-rejection-reason-row span{color:#b42318}.rejection-reason-value{color:#1f2937;font-weight:700}.dark-theme .track-invoice-extra.track-rejection-details{background:#7f1d1d2e;border-color:#7f1d1d;border-left-color:#fca5a5}.dark-theme .track-rejection-heading,.dark-theme .track-invoice-extra.track-rejection-details .track-invoice-row span,.dark-theme .track-rejection-reason-row span{color:#fca5a5}.dark-theme .rejection-reason-value{color:#f9fafb}.track-invoice-extra.track-duplicate-details{background:#eff6ff;border:1px solid #93c5fd;border-left:4px solid #064a96}.track-duplicate-heading{margin:0;padding:14px 16px 10px;font-size:15px;font-weight:700;color:#064a96;border-bottom:1px solid #93c5fd}.track-invoice-extra.track-duplicate-details .track-invoice-row{border-bottom-color:#93c5fd}.track-invoice-extra.track-duplicate-details .track-invoice-row span,.track-duplicate-details .track-rejection-reason-row span{color:#064a96}.duplicate-reason-value{color:#1f2937;font-weight:700}.dark-theme .track-invoice-extra.track-duplicate-details{background:#1d4ed838;border-color:#1d4ed8;border-left-color:#93c5fd}.dark-theme .track-duplicate-heading,.dark-theme .track-invoice-extra.track-duplicate-details .track-invoice-row span,.dark-theme .track-duplicate-details .track-rejection-reason-row span{color:#93c5fd}.dark-theme .duplicate-reason-value{color:#f9fafb}.track-invoice-loading,.track-invoice-error{padding:24px 16px;border:1px solid #d7e0ea;border-radius:12px;background:#fff;text-align:center;color:#374151}.track-invoice-error h2{margin:0 0 12px;color:#0f172a}.dark-theme .track-invoice-loading,.dark-theme .track-invoice-error{background:#1e2f38;border-color:#374b5c;color:#cbd5e1}.dark-theme .track-invoice-error h2{color:#e2e8f0}@media(max-width:720px){.track-invoice-page{padding:20px 12px 32px}.track-invoice-header,.track-summary{flex-direction:column;align-items:stretch}.track-summary__status{align-items:flex-start;text-align:left}.track-status-note{max-width:none}.track-refresh-btn{align-self:flex-start}.track-panels{grid-template-columns:minmax(0,1fr)}.track-summary__number{font-size:20px}.track-timeline__label{font-size:12px}.track-refresh-btn{min-height:44px}.track-invoice-brand h1,.track-summary__number{overflow-wrap:anywhere}}.approver-page{min-height:100vh;margin:0;padding:24px;font-family:Arial,sans-serif;background:#f4f7fb;color:#1f2937}.approver-card{max-width:620px;margin:0 auto;background:#fff;border-radius:16px;padding:32px;box-shadow:0 8px 24px #0f172a14}.approver-card.wide{max-width:960px}.approver-card h1{margin-top:0;color:var(--bills-primary)}.approver-card h1.reject-title{color:#ef4444}.approver-card h2{color:var(--bills-primary);font-size:18px;margin-top:28px}.approver-card label{display:block;font-weight:700;margin-bottom:8px}.approver-card textarea,.approver-card input,.approver-card select{width:100%;box-sizing:border-box;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px}.approver-card textarea:focus,.approver-card input:focus,.approver-card select:focus{border-color:var(--bills-primary);box-shadow:0 0 0 3px #023e8a26;outline:none}.approver-card textarea{min-height:120px;resize:vertical}.approver-meta,.approver-employee{margin:16px 0 24px;padding:16px;background:#f8fafc;border-radius:12px}.approver-meta p,.approver-employee p{margin:8px 0}.approver-field{margin-bottom:16px}.approver-field-hidden{display:none}.approver-error{margin-bottom:16px;padding:12px 16px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#b91c1c}.approver-actions{margin-top:28px}.btn-approve,.btn-reject,.btn-package{border:0;border-radius:10px;padding:14px 20px;font-size:16px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-block}.btn-approve{background:var(--bills-primary);color:#fff}.btn-approve.invoice{background:#22c55e}.btn-approve.invoice:hover{background:#16a34a}.btn-reject{background:#ef4444;color:#fff}.btn-reject:disabled{background:#fecaca;color:#fff;cursor:not-allowed;opacity:.85}.btn-package{background:#1e293b;color:#fff;margin-top:12px}.btn-secondary{background:#475569;margin-left:8px}.approver-table{width:100%;border-collapse:collapse;margin-top:12px}.approver-table th,.approver-table td{text-align:left;padding:10px 8px;border-bottom:1px solid #e2e8f0;font-size:14px;vertical-align:top}.approver-table th{background:#f1f5f9}.approver-card a{color:var(--bills-primary);font-weight:600}.approver-card a.btn-approve,.approver-card a.btn-approve:link,.approver-card a.btn-approve:visited,.approver-card a.btn-approve:hover,.approver-card a.btn-approve:focus,.approver-card a.btn-approve:focus-visible,.approver-card a.btn-approve:active,.approver-card a.btn-approve *,.approver-card button.btn-approve,.approver-card button.btn-approve:hover,.approver-card button.btn-approve:focus,.approver-card button.btn-approve:focus-visible,.approver-card button.btn-approve:active,.approver-card button.btn-approve *{color:#fff}.approver-card a.btn-reject,.approver-card a.btn-reject:link,.approver-card a.btn-reject:visited,.approver-card a.btn-reject:hover,.approver-card a.btn-reject:focus,.approver-card a.btn-reject:focus-visible,.approver-card a.btn-reject:active,.approver-card a.btn-reject *,.approver-card button.btn-reject,.approver-card button.btn-reject:hover,.approver-card button.btn-reject:focus,.approver-card button.btn-reject:focus-visible,.approver-card button.btn-reject:active,.approver-card button.btn-reject *{color:#fff}.approver-card a.btn-package,.approver-card a.btn-package:link,.approver-card a.btn-package:visited,.approver-card a.btn-package:hover,.approver-card a.btn-package:focus,.approver-card a.btn-package:focus-visible,.approver-card a.btn-package:active,.approver-card a.btn-package *,.approver-card button.btn-package,.approver-card button.btn-package:hover,.approver-card button.btn-package:focus,.approver-card button.btn-package:focus-visible,.approver-card button.btn-package:active,.approver-card button.btn-package *{color:#fff}.approver-card a.btn-approve:focus-visible,.approver-card button.btn-approve:focus-visible{outline:3px solid var(--bills-on-dark);outline-offset:2px}.approver-card a.btn-reject:focus-visible,.approver-card button.btn-reject:focus-visible{outline:3px solid #fecaca;outline-offset:2px}.approver-card a.btn-package:focus-visible,.approver-card button.btn-package:focus-visible{outline:3px solid #94a3b8;outline-offset:2px}.approver-card a.btn-approve:disabled,.approver-card a.btn-approve[aria-disabled=true],.approver-card button.btn-approve:disabled{color:#fff;background:var(--bills-primary);opacity:.55;cursor:not-allowed}.approver-card a.btn-reject:disabled,.approver-card a.btn-reject[aria-disabled=true],.approver-card button.btn-reject:disabled{color:#fff;background:#fecaca;opacity:.85;cursor:not-allowed}.approver-card a.btn-package:disabled,.approver-card a.btn-package[aria-disabled=true],.approver-card button.btn-package:disabled{color:#fff;background:#1e293b;opacity:.55;cursor:not-allowed}.back-link{display:inline-block;margin-top:16px;color:var(--bills-primary)}.status-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.approved{background:#d1fae5;color:#065f46}.status-badge.rejected{background:#fee2e2;color:#991b1b}.status-note{margin-top:24px;padding:12px;border-radius:8px}.status-pending{background:#fffbeb}.status-approved{background:#ecfdf5;padding:16px;border-radius:12px}.status-rejected{background:#fef2f2;padding:16px;border-radius:12px}.status-result-error{background:#fef2f2;padding:16px;border-radius:12px;color:#b91c1c}.close-hint{margin:16px 0 0;color:#4b5563}.close-window-btn{margin-top:16px;padding:10px 16px;border:none;border-radius:8px;background:var(--bills-primary);color:#fff;font-size:15px;font-weight:700;cursor:pointer}.close-window-btn:focus{outline:3px solid var(--bills-on-dark);outline-offset:2px}.approver-table-scroll{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.approver-meta p,.approver-employee p{overflow-wrap:anywhere}@media(max-width:768px){.approver-page{padding:12px}.approver-card,.approver-card.wide{padding:16px}.approver-card h1{font-size:24px;overflow-wrap:anywhere}.approver-card input,.approver-card textarea,.approver-card select{font-size:16px}.approver-card>button{display:block;width:100%;box-sizing:border-box;min-height:44px;margin-top:8px}.approver-card iframe{max-width:100%;box-sizing:border-box}.btn-approve,.btn-reject,.btn-package,.btn-secondary,.close-window-btn{display:block;width:100%;box-sizing:border-box;min-height:44px;margin-left:0;margin-top:8px;text-align:center}.approver-table{width:max-content;min-width:100%;table-layout:auto}.approver-table th,.approver-table td{white-space:nowrap}}:root{font-family:Inter,Segoe UI,sans-serif;--bills-primary: #023E8A;--bills-primary-dark: #012f68;--bills-accent: #023E8A;--bills-on-dark: #8EB6E8;--bills-outline: #023E8A;--bills-tint: #eef4fb;--bills-tint-strong: #e8f1fb;--bills-tint-border: #d6e4f5;--bills-selected-dark: #123056;--bills-hover-row-dark: #16345c;--bills-on-primary: #f8fafc;--bills-bg: #f4f7fb;--bills-card: #ffffff;--bills-text: #1f2937}.dark-theme{--bills-outline: #8EB6E8}body{margin:0;padding:0;box-sizing:border-box;overflow-x:hidden}*,*:before,*:after{box-sizing:inherit}.app-container{min-height:100vh;background-color:var(--bills-bg);display:flex;flex-direction:column;transition:background-color .3s ease}.app-container.dark-theme{background-color:#121e25}.app-header{background:linear-gradient(135deg,var(--bills-tint) 0%,#f8fafc 100%);color:var(--bills-text);padding:12px 20px;box-shadow:0 2px 8px #023e8a14;position:sticky;top:0;z-index:1000;width:100%;box-sizing:border-box;transition:all .3s ease}.dark-theme .app-header{background:linear-gradient(135deg,var(--bills-tint) 0%,#f8fafc 100%);color:var(--bills-text);box-shadow:0 2px 8px #023e8a14;border-bottom:none}.header-content{width:100%;display:flex;align-items:center;gap:20px;justify-content:space-between;position:relative}.logo-container{display:flex;align-items:center;gap:15px}.logo-image{height:45px;width:auto;cursor:pointer}.app-main-title{position:absolute;left:50%;transform:translate(-50%);margin:0;font-size:22px;font-weight:800;letter-spacing:.5px;white-space:nowrap;transition:color .3s ease;color:var(--bills-primary-dark)}.dark-theme .app-main-title{color:var(--bills-primary-dark);opacity:1}@media(max-width:1024px){.header-content{gap:12px}.app-main-title{position:static;left:auto;transform:none;flex:1 1 auto;min-width:0;font-size:16px;line-height:1.25;text-align:center;white-space:normal}.welcome-text-anim{display:none}}@media(max-width:768px){.app-header{padding:10px 12px}.app-main-title{display:none}.logo-image{height:36px}.profile-container{gap:8px}.theme-toggle,.profile-icon{min-width:44px;min-height:44px}button:hover:not(:disabled),.upload-button:hover,button:active:not(:disabled),.upload-button:active{transform:none!important}}.welcome-text-anim{display:inline-block;overflow:hidden;white-space:nowrap;vertical-align:bottom;transition:max-width 1s cubic-bezier(.25,1,.5,1),opacity .8s ease,margin-right 1s ease}.welcome-text-anim.show{max-width:300px;opacity:1;margin-right:12px}.welcome-text-anim.hide{max-width:0;opacity:0;margin-right:0}.profile-container{display:flex;align-items:center;gap:15px;margin-left:auto;position:relative}.profile-overlay{position:fixed;inset:0;background-color:#1e2f3866;z-index:999;opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.25,.8,.25,1)}.profile-overlay.show{opacity:1;pointer-events:auto}.dark-theme .profile-overlay{background-color:#0009}.theme-toggle{background:none;border:none;padding:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#5a7a85;transition:all .3s ease;border-radius:50%;outline:none}.theme-toggle:focus{outline:none}.theme-toggle svg{width:24px;height:24px}.theme-toggle:hover{background-color:#5a7a851a;transform:scale(1.1);box-shadow:none}.dark-theme .theme-toggle{color:#5a7a85;opacity:1}.dark-theme .theme-toggle:hover{background-color:#5a7a851a}.profile-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s;color:#fff}.profile-icon:hover{opacity:.9;transform:scale(1.05)}.profile-initial{font-size:18px;font-weight:700}.profile-svg{width:24px;height:24px}.app-footer{background-color:#e8f0f2;color:#2c3e50;padding:20px;text-align:center;margin-top:auto;width:100%;box-sizing:border-box;transition:all .3s ease}.dark-theme .app-footer{background-color:#1e2f38;color:#e2e8f0;border-top:1px solid #2a3f4c}.powered-by{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:10px}.powered-by-text{font-size:13px;font-weight:600;color:#5a6c7d}.footer-logo{height:22px;width:auto}.footer-text{margin:0;font-size:14px;font-weight:600;transition:color .3s ease}.dark-theme .footer-text{color:#cbd5e1}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes popupEnter{0%{opacity:0;transform:scale(.1)}60%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes popupExit{0%{opacity:1;transform:scale(1)}40%{opacity:1;transform:scale(.95)}to{opacity:0;transform:scale(.1)}}button,.upload-button{transition:all .3s cubic-bezier(.25,.8,.25,1)!important}button:hover:not(:disabled),.upload-button:hover{opacity:.95;transform:translateY(-3px) scale(1.02);box-shadow:0 10px 20px #00000026}button:active:not(:disabled),.upload-button:active{transform:translateY(2px) scale(.95)!important;box-shadow:0 2px 5px #0003!important;opacity:.8}button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}
