*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f6f7f9;color:#1a1a1a}input,button{font:inherit;padding:.6rem .8rem;border-radius:6px;border:1px solid #ccc}button{background:#2b5fff;color:#fff;border:none;cursor:pointer}button:hover{background:#1e4be0}.auth-page{min-height:100vh;display:grid;place-items:center}.auth-card{background:#fff;padding:2rem;border-radius:10px;box-shadow:0 4px 18px #0000000f;display:flex;flex-direction:column;gap:.6rem;width:360px}.auth-card h1{margin:0 0 .5rem}.auth-logo{max-width:220px;align-self:center;margin-bottom:.5rem}.sidebar-logo{width:100%;max-width:180px;background:#fff;padding:.6rem;border-radius:6px;margin-bottom:.6rem}.error{color:#c0392b;font-size:.9rem}.layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}aside{background:#1a2233;color:#fff;padding:1rem;display:flex;flex-direction:column;gap:.5rem}aside nav{display:flex;flex-direction:column;gap:.3rem;margin-top:1rem}aside a{color:#c7d0e0;text-decoration:none;padding:.5rem .6rem;border-radius:6px}aside a:hover{background:#2a3550;color:#fff}.logout{margin-top:auto;background:#c0392b}main{padding:2rem}.table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden}.table th,.table td{padding:.7rem 1rem;text-align:left;border-bottom:1px solid #eee}.card{background:#fff;padding:1rem 1.4rem;border-radius:8px;margin:1rem 0}.badge{padding:.2rem .5rem;border-radius:4px;font-size:.8rem;background:#eee}.status-DRAFT{background:#eee}.status-SUBMITTED{background:#fff3cd}.status-APPROVED{background:#d1f5d3}.status-PAID{background:#cfe9ff}.status-VOIDED,.status-REJECTED{background:#ffd1d1}.status-IN_PROGRESS{background:#e8e0ff}.status-COMPLETED{background:#d1f5e8}.status-SETTLEMENT_SUBMITTED{background:#fff3cd}.status-ACCOUNTING_REVIEWED{background:#cfe9ff}.status-ARCHIVED{background:#ddd;color:#555}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.btn-primary{display:inline-block;padding:.6rem 1rem;background:#2b5fff;color:#fff;text-decoration:none;border-radius:6px;font-weight:600}.btn-primary:hover{background:#1e4be0}button.danger{background:#c0392b}button.danger:hover{background:#962d22}button.secondary{background:#888}.form{display:flex;flex-direction:column;gap:.8rem;background:#fff;padding:1.4rem;border-radius:8px;max-width:800px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.field{display:flex;flex-direction:column;gap:.25rem}.field label{font-size:.85rem;color:#444;font-weight:600}.field small{font-size:.78rem;color:#888;margin-top:.15rem}.form-actions{display:flex;gap:.6rem;justify-content:flex-end;margin-top:.8rem}.warning{background:#fff8db;border-left:3px solid #f0c000;padding:.6rem .8rem;border-radius:4px;margin:.5rem 0}.warning-inline{color:#b07800;font-size:.85rem}.actions-row{display:flex;flex-wrap:wrap;gap:.5rem}.expenses-list{list-style:none;padding:0}.expenses-list li{background:#fff;padding:.7rem 1rem;border-radius:6px;margin-bottom:.4rem;border:1px solid #eee}.expense-form{margin:1rem 0;border:2px solid #2b5fff}.expense-form h3{margin-top:0;color:#2b5fff}.attachments-row{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.5rem}.attachment-chip{background:#eef2ff;color:#2b3a55;border:1px solid #cdd6e8;padding:.3rem .7rem;border-radius:16px;cursor:pointer;font-size:.85rem}.attachment-chip:hover{background:#dbe4ff}.route-info{background:#e8f5ff;border-left:3px solid #2b5fff;padding:.6rem .8rem;border-radius:4px;margin:.4rem 0;font-size:.9rem}
