:root{--bg:#faf7f2;--surface:#fff;--surface-2:#f4f0ea;--ink:#1b1726;--ink-2:#2c2740;--muted:#7a7488;--line:#ece6dd;--purple:#0d9488;--purple-dk:#0f766e;--lav:#ccfbf1;--lav-ink:#0f766e;--mint:#d6f0df;--peach:#ffe0cc;--lavender:#ccfbf1;--sky:#d4e8f8;--rose:#fbd7d7;--butter:#fbedb6;--radius:18px;--radius-sm:12px;--radius-xs:8px;--shadow:0 1px 4px #0000000f,0 4px 16px #0000000a;--shadow-md:0 4px 12px #0000001a,0 1px 4px #0000000f}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:15px}body{-webkit-font-smoothing:antialiased;background:#faf7f2;background:var(--bg);color:#1b1726;color:var(--ink);font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif}a{color:inherit;text-decoration:none}.btn-primary{align-items:center;background:#0d9488;background:var(--purple);border:none;border-radius:8px;border-radius:var(--radius-xs);color:#fff;cursor:pointer;display:inline-flex;font:600 14px/1 Plus Jakarta Sans,sans-serif;gap:6px;padding:9px 18px;transition:opacity .15s}.btn-primary:hover{opacity:.88}.btn-outline{align-items:center;background:#0000;border:1.5px solid #ece6dd;border:1.5px solid var(--line);border-radius:8px;border-radius:var(--radius-xs);color:#1b1726;color:var(--ink);cursor:pointer;display:inline-flex;font:600 14px/1 Plus Jakarta Sans,sans-serif;gap:6px;padding:9px 18px;transition:border-color .15s,background .15s}.btn-outline:hover{background:#f4f0ea;background:var(--surface-2);border-color:#7a7488;border-color:var(--muted)}.btn-ghost{align-items:center;background:#0000;border:none;border-radius:8px;border-radius:var(--radius-xs);color:#2c2740;color:var(--ink-2);cursor:pointer;display:inline-flex;font:500 14px/1 Plus Jakarta Sans,sans-serif;gap:6px;padding:8px 12px;transition:background .15s}.btn-ghost:hover{background:#f4f0ea;background:var(--surface-2)}.btn-danger{align-items:center;background:#ef4444;border:none;border-radius:8px;border-radius:var(--radius-xs);color:#fff;cursor:pointer;display:inline-flex;font:600 14px/1 Plus Jakarta Sans,sans-serif;gap:6px;padding:9px 18px;transition:opacity .15s}.btn-danger:hover{opacity:.88}.btn-sm{font-size:13px;padding:7px 14px}.btn-xs{font-size:12px;padding:5px 10px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{color:#2c2740;color:var(--ink-2);font-size:13px;font-weight:600}.form-input,.form-select,.form-textarea{background:#fff;background:var(--surface);border:1.5px solid #ece6dd;border:1.5px solid var(--line);border-radius:8px;border-radius:var(--radius-xs);color:#1b1726;color:var(--ink);font:400 14px/1.4 Plus Jakarta Sans,sans-serif;outline:none;padding:10px 14px;transition:border-color .15s;width:100%}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#0d9488;border-color:var(--purple)}.form-textarea{min-height:80px;resize:vertical}.card{background:#fff;background:var(--surface);border:1px solid #ece6dd;border:1px solid var(--line);border-radius:12px;border-radius:var(--radius-sm);padding:20px}.badge{align-items:center;border-radius:99px;display:inline-flex;font-size:12px;font-weight:600;padding:3px 8px}.badge-active{background:#d6f0df;background:var(--mint);color:#166534}.badge-pending{background:#fbedb6;background:var(--butter);color:#854d0e}.badge-approved{background:#d4e8f8;background:var(--sky);color:#1e40af}.badge-rejected{background:#fbd7d7;background:var(--rose);color:#991b1b}.badge-draft{background:#f4f0ea;background:var(--surface-2);color:#7a7488;color:var(--muted)}.modal-overlay{align-items:center;background:#00000059;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal{background:#fff;background:var(--surface);border-radius:12px;border-radius:var(--radius-sm);box-shadow:0 4px 12px #0000001a,0 1px 4px #0000000f;box-shadow:var(--shadow-md);max-height:calc(100vh - 64px);max-width:calc(100vw - 32px);overflow-y:auto;padding:28px;width:480px}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.modal-title{color:#1b1726;color:var(--ink);font-size:17px;font-weight:700}.modal-footer{border-top:1px solid #ece6dd;border-top:1px solid var(--line);display:flex;gap:10px;justify-content:flex-end;margin-top:24px;padding-top:20px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-title{color:#1b1726;color:var(--ink);font-size:22px;font-weight:700}.empty-state{align-items:center;color:#7a7488;color:var(--muted);display:flex;flex-direction:column;gap:12px;padding:64px 24px;text-align:center}.empty-state p{font-size:14px}@keyframes spin{to{transform:rotate(1turn)}}.spinner{animation:spin .6s linear infinite;border:2.5px solid #ece6dd;border-top-color:#0d9488;border:2.5px solid var(--line);border-radius:50%;border-top-color:var(--purple);height:20px;width:20px}.receipt-dropzone{align-items:center;border:2px dashed #ece6dd;border:2px dashed var(--line);border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:24px;text-align:center;transition:border-color .15s ease,background .15s ease}.receipt-dropzone:hover{background:#ccfbf1;background:var(--lav);border-color:#0d9488;border-color:var(--purple)}.receipt-preview{background:#fff;background:var(--surface);border:1px solid #ece6dd;border:1px solid var(--line);border-radius:10px;gap:10px;padding:10px 14px}.ocr-status,.receipt-preview{align-items:center;display:flex}.ocr-status{border-radius:8px;font-size:12px;font-weight:500;gap:6px;margin-top:8px;padding:8px 12px}.ocr-status.loading{background:#f4f0ea;background:var(--surface-2);color:#7a7488;color:var(--muted)}.ocr-status.success{background:#d6f0df;background:var(--mint);color:#166534}.top-header{background:var(--surface);border-bottom:1px solid var(--line);height:68px;justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-brand,.top-header{align-items:center;display:flex}.header-brand{font-size:16px;font-weight:700;gap:0;letter-spacing:-.3px;text-decoration:none}.header-brand,.header-brand-cognito{color:var(--ink)}.header-brand-sep{color:var(--line);font-size:20px;font-weight:300;margin:0 4px}.header-brand-fyn{color:var(--purple)}.header-right{align-items:center;display:flex;gap:8px}.header-back-btn{align-items:center;background:#0000;border:1.5px solid var(--line);border-radius:var(--radius-xs);color:var(--muted);cursor:pointer;display:inline-flex;font:500 13px/1 Plus Jakarta Sans,sans-serif;gap:6px;padding:7px 14px;text-decoration:none;transition:border-color .15s,color .15s}.header-back-btn:hover{border-color:var(--muted);color:var(--ink)}.user-chip{align-items:center;border-radius:var(--radius-xs);cursor:pointer;display:flex;gap:8px;padding:6px 10px;transition:background .12s}.user-chip:hover{background:var(--surface-2)}.user-avatar{align-items:center;background:var(--lav);border-radius:50%;color:var(--lav-ink);display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:30px;justify-content:center;width:30px}.user-name{color:var(--ink-2);font-size:13px;font-weight:600}.sidebar{background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:2px;height:calc(100vh - 68px);min-width:236px;overflow-y:auto;padding:20px 12px;position:-webkit-sticky;position:sticky;top:68px;width:236px}.sb-section-label{color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.06em;padding:12px 8px 6px;text-transform:uppercase}.sb-item{align-items:center;border-radius:var(--radius-xs);color:var(--ink-2);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:10px;padding:9px 10px;position:relative;text-decoration:none;transition:background .12s}.sb-item:hover{background:var(--surface-2)}.sb-item.active{background:var(--lav);color:var(--lav-ink);font-weight:600}.sb-item.active:before{background:var(--purple);border-radius:0 2px 2px 0;bottom:6px;content:"";left:0;position:absolute;top:6px;width:3px}.sb-item svg{color:inherit;flex-shrink:0}.sb-spacer{flex:1 1}.fyn-layout{display:flex;flex-direction:column;min-height:100vh}.layout-body{display:grid;grid-template-columns:236px 1fr;min-height:calc(100vh - 68px)}.layout-main{overflow-y:auto;padding:28px 32px}@media (max-width:768px){.layout-body{grid-template-columns:1fr}.sidebar{display:none}.layout-main{padding:20px 16px}}
/*# sourceMappingURL=main.ab9b39b1.css.map*/