#app{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;display:flex;flex-direction:column}main{flex:1}.navbar-brand{font-size:1.5rem}.btn-primary:hover{background-color:#0056b3;border-color:#0056b3}.card{box-shadow:0 .125rem .25rem rgba(0,0,0,.075);border:1px solid rgba(0,0,0,.125)}.badge{font-size:.75em}.btn-primary{background-color:#007bff;border-color:#007bff}.btn-primary:hover{background-color:#0062cc;border-color:#0062cc}.navbar-brand{font-weight:700}.card{border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.table th{background-color:#f8f9fa;border-top:none;font-weight:600}.table td{vertical-align:middle}.badge{font-size:.8em;padding:.5em .75em}.badge.badge-status.pending{background-color:#ffc107;color:#fff}.badge.badge-status.approved{background-color:#28a745;color:#fff}.badge.badge-status.rejected{background-color:#dc3545;color:#fff}.badge.badge-status.processing{background-color:#17a2b8;color:#fff}.badge.badge-status.completed{background-color:#28a745;color:#fff}.form-control{border-radius:5px}.form-control:focus{border-color:#007bff;box-shadow:0 0 0 .2rem rgba(0,123,255,.25)}.btn{font-weight:500}.alert,.btn{border-radius:5px}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:hsla(0,0%,100%,.8);display:flex;justify-content:center;align-items:center;z-index:9999}.spinner-border{width:3rem;height:3rem}.file-upload-area{border:2px dashed #ccc;border-radius:10px;padding:2rem;text-align:center;transition:all .3s ease}.file-upload-area:hover{border-color:#007bff;background-color:rgba(0,123,255,.05)}.file-upload-area.drag-over{border-color:#007bff;background-color:rgba(0,123,255,.1)}.file-list .file-item{display:flex;align-items:center;padding:.5rem;margin-bottom:.5rem;background-color:#f8f9fa;border-radius:5px}.file-list .file-item .file-icon{width:2rem;height:2rem;margin-right:.5rem}.file-list .file-item .file-info{flex:1}.file-list .file-item .file-info .file-name{font-weight:500;margin-bottom:.2rem}.file-list .file-item .file-info .file-size{font-size:.8rem;color:#6c757d}.file-list .file-item .file-actions{margin-left:auto}@media(max-width:768px){.container{padding:0 1rem}.card{margin-bottom:1rem}.btn,.table-responsive{font-size:.9rem}.btn{padding:.5rem 1rem}}