body{margin:0}:root{--bot-blue:#228be6;--bot-dark-blue:#1864ab;--bg-light:#f8f9fa;--header-border:#e5e7eb;--header-bg:#fff}body{background-color:var(--bg-light);flex-direction:column;align-items:stretch;min-height:100vh;margin:0;font-family:Segoe UI,sans-serif;display:flex}.app-header{background-color:var(--header-bg);border-bottom:1px solid var(--header-border);box-sizing:border-box;z-index:100;flex-direction:row;align-items:center;gap:16px;width:100%;padding:12px 24px;display:flex;position:sticky;top:0}.logo{flex-shrink:0;width:auto;height:48px;display:block}.page-wrapper{width:90%;max-width:620px;margin:20px auto 40px}.page-title{color:#333;text-align:center;margin-bottom:16px;font-size:22px;font-weight:700}.doc-list{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 10px 30px #0000000d}.doc-row{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.doc-row:last-child{border-bottom:none}.doc-name{color:#333;font-size:16px;font-weight:500}.row-right{align-items:center;gap:12px;display:flex}.file-badge{color:var(--bot-blue);white-space:nowrap;background:#e7f5ff;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:600}.btn-upload{background-color:var(--bot-blue);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-size:14px;font-weight:600;transition:background .2s}.btn-upload:hover{background-color:var(--bot-dark-blue)}.btn-send-all{color:#fff;cursor:pointer;background-color:#2fb344;border:none;border-radius:12px;width:100%;margin-top:20px;padding:15px 35px;font-size:18px;font-weight:600}.btn-send-all:hover{background-color:#258a37}.btn-send-all:disabled{cursor:not-allowed;background-color:#aaa}.modal-overlay{z-index:1000;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:#fff;border-radius:16px;width:90%;max-width:520px;padding:30px;box-shadow:0 20px 50px #00000026}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-header span{color:#333;font-size:18px;font-weight:700}.modal-close{cursor:pointer;color:#888;background:0 0;border:none;font-size:20px;line-height:1}.modal-close:hover{color:#333}.modal-drop-zone{text-align:center;border:3px dashed #ccc;border-radius:12px;margin-bottom:16px;padding:30px 20px;transition:all .3s}.modal-drop-zone.dragover{border-color:var(--bot-blue);background-color:#e7f5ff;border-style:solid}.modal-drop-zone p{color:#888;margin:0 0 14px}.modal-drop-zone .btn-primary{margin-bottom:4px}.btn-primary{background-color:var(--bot-blue);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:10px 28px;font-size:16px;font-weight:600}.btn-primary:hover{background-color:var(--bot-dark-blue)}.delete-btn{color:#ff4d4d;cursor:pointer;background:0 0;border:none;margin-left:10px;padding:0 8px;font-size:16px}.delete-btn:hover{color:#c00}.file-row{text-align:left;cursor:grab;background:#fff;border:1px solid #eee;border-radius:8px;align-items:center;gap:8px;margin-bottom:5px;padding:10px;font-size:14px;display:flex}.file-row:active{cursor:grabbing}.file-row__seq{color:#888;text-align:right;min-width:20px;font-size:12px;font-weight:600}.file-row__handle{color:#ccc;cursor:grab;-webkit-user-select:none;user-select:none;font-size:16px}.file-row__name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.file-row__size{color:#aaa;white-space:nowrap;font-size:12px}#preview-container{border-top:1px solid #eee;margin-top:16px;padding-top:12px}.home-nav-link{color:var(--bot-blue);font-size:16px;font-weight:500;text-decoration:none}.home-nav-link:hover{color:var(--bot-dark-blue);text-decoration:underline}.btn-done{background-color:var(--bot-blue);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;margin-top:16px;padding:12px;font-size:16px;font-weight:600}.btn-done:hover{background-color:var(--bot-dark-blue)}.section-label{color:#555;margin:20px 0 8px;font-size:15px;font-weight:600}.error-banner{color:#c92a2a;background:#fff5f5;border:1px solid #ffc9c9;border-radius:10px;margin-bottom:16px;padding:12px 16px;font-size:14px}.processing-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;display:flex}.processing-state p{color:#333;margin:0;font-size:18px;font-weight:600}.processing-hint{color:#888!important;font-size:14px!important;font-weight:400!important}.spinner{border:5px solid #e9ecef;border-top-color:var(--bot-blue);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.page-wrapper--wide{width:95%;max-width:1400px}.review-hint{color:#888;text-align:center;margin:-8px 0 12px;font-size:14px}.review-actions{justify-content:center;align-items:center;gap:12px;margin-top:20px;display:flex}.review-processing-cost{color:#aaa;text-align:center;margin:14px 0 0;font-size:13px}.btn-back{color:#555;cursor:pointer;background:0 0;border:2px solid #ccc;border-radius:10px;padding:12px 28px;font-size:15px;font-weight:600;transition:border-color .2s,color .2s}.btn-back:hover{color:#333;border-color:#888}.btn-confirm{width:auto;margin-top:0;padding:12px 36px;font-size:16px}.review-toolbar{align-items:center;gap:8px;margin-bottom:12px;display:flex}.review-toolbar-divider{background:#c5d8f5;width:1px;height:20px}.btn-toolbar{color:#1a4fa0;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #a0bfe8;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,color .15s}.btn-toolbar:hover:not(:disabled){color:#0d3280;background:#e8f0fb;border-color:#1a4fa0}.btn-toolbar:disabled{opacity:.35;cursor:not-allowed}.btn-toolbar--reset{color:#c0392b;border-color:#e8b4b0}.btn-toolbar--reset:hover:not(:disabled){color:#a93226;background:#fdecea;border-color:#c0392b}.btn-new-claim{color:#27ae60;cursor:pointer;background:0 0;border:2px solid #2ecc71;border-radius:10px;padding:12px 28px;font-size:15px;font-weight:600;transition:background .2s,color .2s}.btn-new-claim:hover{color:#fff;background:#2ecc71}.header-process-title{color:#555;margin-left:4px;font-size:15px;font-weight:600}.page-subtitle{color:#333;text-align:center;margin:0 0 24px;font-size:20px;font-weight:700}.step-bar{justify-content:center;align-items:center;gap:0;margin:24px 0 32px;display:flex}.step-bar__item{align-items:center;gap:0;display:flex}.step-bar__circle{color:#aaa;background:#e9ecef;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;transition:background .2s,color .2s;display:flex}.step-bar__circle.active{background:var(--bot-blue);color:#fff}.step-bar__circle.done{color:#fff;background:#2fb344}.step-bar__label{color:#aaa;white-space:nowrap;margin:0 8px;font-size:12px;font-weight:600}.step-bar__label.active{color:var(--bot-blue)}.step-bar__line{background:#e9ecef;flex-shrink:0;width:48px;height:2px}.step-bar__line.done{background:#2fb344}.pdf-paper{box-sizing:border-box;color:#111;background:#fff;border-radius:2px;width:794px;max-width:100%;margin:0 auto 24px;padding:57px;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:11px;box-shadow:0 4px 24px #00000021,0 1px 4px #00000014}@media (width<=860px){.pdf-paper{width:100%;padding:7.2%}}@media (width<=480px){.pdf-field-label{width:100px;font-size:8pt}.pdf-field-colon{width:10px}}.pdf-ref-row{justify-content:flex-end;margin-bottom:76px;display:flex}.pdf-ref-box{border:.5px solid #aaa;flex-direction:row;flex-shrink:0;min-width:200px;display:flex}.pdf-ref-label{color:#333;white-space:nowrap;background:#efefef;border-right:.5px solid #aaa;align-items:center;padding:4px 8px;font-size:9pt;font-weight:700;display:flex}.pdf-ref-box .pdf-field-input{text-align:left;border-bottom:none;flex:1;padding:4px 6px;font-size:9pt}.pdf-letterhead-area{align-items:flex-start;min-height:40px;max-height:134px;margin-bottom:6px;display:flex;position:relative}.pdf-letterhead-img{object-fit:contain;width:auto;max-width:100%;max-height:134px}.pdf-letterhead-placeholder{color:#bbb;padding:10px 0;font-size:12px;font-style:italic}.pdf-letterhead-btn{color:#fff;cursor:pointer;opacity:0;background:#228be6e0;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;transition:opacity .2s;position:absolute;top:0;right:0}.pdf-letterhead-area:hover .pdf-letterhead-btn{opacity:1}.pdf-letterhead-area--empty{justify-content:center;align-items:center}.pdf-letterhead-area--empty .pdf-letterhead-btn{opacity:1;position:static}.pdf-title{text-align:center;letter-spacing:.5px;margin:0 0 32px;font-size:14pt;font-weight:700}.pdf-section-bar{color:#000;background:#c8c8c8;margin-bottom:8px;padding:7px 8px;font-size:9pt;font-weight:700}.pdf-section-a{margin-bottom:15px}.pdf-field-row{align-items:center;min-height:24px;margin-bottom:4px;display:flex}.pdf-field-label{flex-shrink:0;width:130px;font-size:9pt}.pdf-field-colon{flex-shrink:0;width:14px;font-size:9pt}.pdf-field-input{color:#111;background:0 0;border:none;border-bottom:1px solid #111;border-radius:0;outline:none;flex:1;min-width:0;padding:1px 2px 1px 4px;font-family:inherit;font-size:9pt}.pdf-field-input:focus{border-bottom-color:var(--bot-blue);background:#f0f7ff}.pdf-field-input[type=date]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.react-datepicker-wrapper{flex:1;min-width:0}.react-datepicker-wrapper .pdf-field-input{width:100%}.react-datepicker__header select{padding:2px 4px;font-size:13px}.react-datepicker-popper{z-index:9999}.gdp-wrapper{flex:1;min-width:0;position:relative}.gdp-input-row{background:0 0;border-bottom:1px solid #dadce0;border-radius:4px 4px 0 0;align-items:center;gap:6px;padding:4px 6px;transition:border-color .2s;display:flex}.gdp-input-row:hover{background:#f8f9fa;border-bottom-color:#aaa}.gdp-input-row--open{background:#f0f5ff;border-bottom:2px solid #1a73e8}.gdp-text-input{color:#202124;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:13px}.gdp-text-input::placeholder{color:#9aa0a6}.gdp-cal-icon{color:#5f6368}.gdp-input-row--open .gdp-cal-icon{color:#1a73e8}.gdp-popup{z-index:9999;-webkit-user-select:none;user-select:none;background:#fff;border-radius:8px;min-width:260px;padding:12px;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 2px 10px #0003,0 0 0 1px #0000000f}.gdp-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.gdp-nav-btn{cursor:pointer;color:#5f6368;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s;display:flex}.gdp-nav-btn:hover{color:#202124;background:#f1f3f4}.gdp-month-year{color:#202124;align-items:center;gap:4px;font-size:14px;font-weight:600;display:flex}.gdp-month-label{color:#202124}.gdp-monthandyear-label{color:#202124;font-size:14px;font-weight:600}.gdp-clickable{cursor:pointer;border-radius:4px;padding:2px 6px;transition:background .15s}.gdp-month-label.gdp-clickable:hover,.gdp-monthandyear-label.gdp-clickable:hover{background:#f1f3f4}.gdp-year-label{color:#202124}.gdp-year-label.gdp-clickable:hover{background:#f1f3f4}.gdp-range-label{color:#202124;font-size:14px;font-weight:600}.gdp-grid{grid-template-columns:repeat(7,1fr);gap:2px;min-width:280px;display:grid}.gdp-day-name{text-align:center;color:#5f6368;padding:4px 0;font-size:11px;font-weight:500}.gdp-day{cursor:pointer;color:#202124;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;margin:auto;font-size:13px;transition:background .15s;display:flex}.gdp-day:hover{background:#f1f3f4}.gdp-day--today{color:var(--bot-blue);border:2px solid var(--bot-blue);font-weight:700}.gdp-day--today:hover{background:#e7f5ff}.gdp-day--selected{border:none;font-weight:600;background:var(--bot-blue)!important;color:#fff!important}.gdp-day--selected:hover{background:var(--bot-dark-blue)!important}.gdp-month-grid,.gdp-year-grid{grid-template-columns:repeat(4,1fr);gap:4px;padding:4px 0;display:grid}.gdp-month-cell,.gdp-year-cell{cursor:pointer;color:#202124;text-align:center;background:0 0;border:none;border-radius:6px;padding:10px 4px;font-size:13px;transition:background .15s}.gdp-month-cell:hover,.gdp-year-cell:hover{background:#f1f3f4}.gdp-cell--selected{font-weight:600;background:var(--bot-blue)!important;color:#fff!important;border:none!important}.gdp-cell--selected:hover{background:var(--bot-dark-blue)!important}.gdp-cell--current{border:2px solid var(--bot-blue);color:var(--bot-blue);border-radius:6px;font-weight:600}.gdp-cell--faded{color:#aaa}.pdf-field-row .gdp-wrapper,.pdf-sig-field-row .gdp-wrapper{border-bottom:none;flex:1;min-width:0}.pdf-field-row .gdp-input-row,.pdf-sig-field-row .gdp-input-row{background:0 0;border-bottom:none;border-radius:0;width:auto;padding:1px 2px 1px 4px;display:inline-flex}.pdf-field-row .gdp-input-row:hover,.pdf-sig-field-row .gdp-input-row:hover{background:0 0}.pdf-field-row .gdp-input-row--open,.pdf-sig-field-row .gdp-input-row--open{background:0 0;border-bottom:none}.pdf-field-row .gdp-text-input,.pdf-sig-field-row .gdp-text-input{color:#111;flex:none;width:90px;font-size:9pt}.pdf-field-row .gdp-cal-icon,.pdf-sig-field-row .gdp-cal-icon{width:14px;height:14px}.idz-container{margin-bottom:16px}.inline-drop-zone{cursor:pointer;text-align:center;border:3px dashed #ccc;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:260px;padding:32px 24px;transition:border-color .2s,background .2s;display:flex}.inline-drop-zone:hover,.inline-drop-zone.dragover{border-color:var(--bot-blue);background:#e7f5ff}.idz-icon{color:#bbb;transition:color .2s}.inline-drop-zone:hover .idz-icon,.inline-drop-zone.dragover .idz-icon{color:var(--bot-blue)}.idz-primary-text{color:#444;margin:0;font-size:16px;font-weight:600}.idz-secondary-text{color:#777;margin:0;font-size:13px}.idz-file-badge{color:var(--bot-blue);background:#e7f5ff;border-radius:20px;margin:4px 0 0;padding:2px 10px;font-size:13px;font-weight:600}.idz-error{color:#c0392b;text-align:center;margin:8px 0 0;font-size:13px}.upload-instructions{color:#555;text-align:center;max-width:480px;margin:0 auto 20px;font-size:14px;line-height:1.5}.pdf-section-b-table{border-collapse:collapse;width:100%;margin-top:0;margin-bottom:52px;font-size:9pt}.pdf-section-b-table thead th{color:#000;background:#fff;border-bottom:2px solid #333;padding:5px 8px;font-weight:700}.pdf-table-header-span{text-align:left}.pdf-table-header-currency{text-align:center;width:113px}.pdf-table-header-amount{text-align:right;width:227px}.pdf-section-b-table tbody td{border-bottom:1px solid #eee;padding:5px 8px}.pdf-table-currency{text-align:center;width:113px}.pdf-table-amount{text-align:right;width:227px}.pdf-table-footer-row td{background:#fff;border-top:2px solid #333;padding:6px 8px;font-weight:700}.pdf-table-subtotal-row td{border-top:2px solid #dee2e6;border-bottom:1px solid #eee;padding:5px 8px;font-weight:600}.pdf-table-rate-row td{color:#999;border-bottom:1px solid #eee;padding:2px 8px 7px;font-size:8.5pt;font-style:italic}.pdf-rate-input{border:1px solid #ccc;border-radius:3px;width:80px;margin:0 4px;padding:1px 4px;font-size:8.5pt;font-style:normal}.pdf-signature-block{margin-top:16px;display:flex}.pdf-sig-col{flex-direction:column;flex:1;gap:4px;font-size:9pt;display:flex}.pdf-sig-line{border-bottom:1px solid #111;width:268px;height:53px;margin-bottom:2px}.pdf-sig-field-row{align-items:baseline;gap:4px;min-height:19px;display:flex}.pdf-sig-field-label{white-space:nowrap;flex-shrink:0;font-size:9pt}.pdf-sig-field-value{font-size:9pt}.pdf-sig-input{padding:0 2px;font-size:9pt;border-bottom:none!important}.expense-edit-prompt{background:#fff9db;border:1px solid #ffe066;border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:12px;padding:12px 16px;display:flex}.expense-edit-prompt__msg{color:#664d03;flex:auto;font-size:14px}.expense-edit-prompt__actions{flex-shrink:0;gap:8px;display:flex}.expense-edit-btn{cursor:pointer;border:none;border-radius:8px;padding:7px 16px;font-size:13px;font-weight:600}.expense-edit-btn--secondary{color:#555;background:#fff;border:1px solid #ced4da}.expense-edit-btn--secondary:hover{background:#f1f3f5}.expense-edit-btn--primary{background:var(--bot-blue);color:#fff}.expense-edit-btn--primary:hover{background:var(--bot-dark-blue)}.upload-accept-hint{color:#aaa;text-align:center;margin:6px 0 0;font-size:12px}.modal-drop-zone .modal-accept-hint{color:#aaa;margin:12px 0 0;font-size:12px}.modal-file-error{color:#c0392b;background:#fdf2f2;border-radius:6px;margin:8px 16px 0;padding:8px 12px;font-size:.85rem}.editable-table-wrap{border-radius:12px;overflow-x:auto;box-shadow:0 10px 30px #0000000d}.editable-table{border-collapse:collapse;background:#fff;width:100%;font-size:14px}.editable-table th{color:#555;text-transform:uppercase;letter-spacing:.4px;text-align:left;white-space:nowrap;background:#f1f3f5;border-bottom:2px solid #dee2e6;padding:10px 12px;font-size:12px;font-weight:700}.editable-table td{border-bottom:1px solid #f0f0f0;padding:0}.editable-table tr:last-child td{border-bottom:none}.editable-table tr:nth-child(2n),.editable-table tr:nth-child(2n) td input{background:#f8f9fa}.editable-table td input{box-sizing:border-box;color:#333;background:#fff;border:none;outline:none;width:100%;padding:10px 12px;font-size:14px}.editable-table td input:focus{box-shadow:inset 0 0 0 2px var(--bot-blue);background:#e7f5ff}.col-drag{text-align:center;width:28px}.row-drag-handle{color:#ccc;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;padding:4px;font-size:16px;display:inline-block}.editable-table tr:hover .row-drag-handle{color:#aaa}.col-no{text-align:center;color:#aaa;width:40px;font-size:12px;font-weight:700}.col-no--cell{color:#bbb;-webkit-user-select:none;user-select:none;font-size:13px;font-weight:500}.col-action{text-align:center;width:36px}.btn-delete-row{color:#aaa;cursor:pointer;background:0 0;border:none;padding:8px 6px;font-size:18px;line-height:1}.btn-delete-row:hover{color:#e03131}.btn-add-row{color:#888;cursor:pointer;background:#fff;border:2px dashed #dee2e6;border-top:none;border-radius:0 0 12px 12px;width:100%;padding:10px;font-size:14px;font-weight:600;transition:background .2s,color .2s;display:block}.btn-add-row:hover{color:#333;background:#f1f3f5}
