:root{--color-text:#fbf8da;--color-accent:#d5ab16;--color-accent-hover:#c39a14;--color-card-bg:rgba(65,83,97,.09);--color-border:rgba(73,94,109,.2);--color-danger:#ef4444;--color-success:#22c55e;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px}.propexp-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:propexpFadeIn .2s ease-out}@keyframes propexpFadeIn{0%{opacity:0}to{opacity:1}}.propexp-modal{background:rgba(42,53,65,.98);border:1px solid rgba(213,171,22,.3);border-radius:16px;width:100%;max-width:550px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.5);animation:propexpSlideIn .3s ease-out;overflow:hidden}@keyframes propexpSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.propexp-header{display:flex;align-items:center;justify-content:space-between;padding:24px;border-bottom:1px solid hsla(55,80%,92%,.1)}.propexp-header h2{font-size:24px;font-weight:700;color:#fbf8da;margin:0}.propexp-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid hsla(55,80%,92%,.2);border-radius:50%;color:hsla(55,80%,92%,.6);cursor:pointer;transition:all .2s ease;font-size:20px}.propexp-close:hover{background:hsla(55,80%,92%,.1);border-color:hsla(55,80%,92%,.4);color:#fbf8da;transform:rotate(90deg)}.propexp-error{padding:12px 16px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);color:#ef4444;margin:0 24px 16px;border-radius:8px;font-size:14px}.propexp-form{display:flex;flex-direction:column;flex:1 1;overflow:hidden}.propexp-body{flex:1 1;overflow-y:auto;padding:24px;gap:20px}.propexp-body,.propexp-field{display:flex;flex-direction:column}.propexp-field{gap:8px}.propexp-label{font-size:14px;font-weight:500;color:hsla(55,80%,92%,.8);display:flex;align-items:center;gap:8px}.propexp-label svg{font-size:16px;flex-shrink:0}.propexp-label.propexp-required:after{content:"*";color:#ef4444;margin-left:2px}.propexp-input,.propexp-textarea{padding:10px 12px;background:rgba(65,83,97,.15);border:1px solid hsla(55,80%,92%,.2);border-radius:8px;color:#fbf8da;font-size:14px;transition:all .2s ease;font-family:inherit}.propexp-input::placeholder,.propexp-textarea::placeholder{color:hsla(55,80%,92%,.4)}.propexp-input:hover,.propexp-textarea:hover{border-color:hsla(55,80%,92%,.3);background:rgba(65,83,97,.2)}.propexp-input:focus,.propexp-textarea:focus{outline:none;border-color:#d5ab16;background:rgba(65,83,97,.25)}.propexp-input[type=select],select.propexp-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fbf8da' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px;cursor:pointer}.propexp-input option{background:#2a3540;color:#fbf8da;padding:8px}.propexp-textarea{resize:vertical;min-height:80px}.propexp-amount-wrapper{position:relative;display:flex;align-items:center}.propexp-dollar{position:absolute;left:12px;color:hsla(55,80%,92%,.6);font-weight:600;pointer-events:none;z-index:1}.propexp-amount{padding-left:32px!important}.propexp-input[type=number]::-webkit-inner-spin-button,.propexp-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.propexp-input[type=number]{-moz-appearance:textfield}.propexp-footer{padding:16px 24px;border-top:1px solid hsla(55,80%,92%,.1);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.propexp-actions{display:flex;gap:12px;margin-left:auto}.propexp-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;white-space:nowrap}.propexp-btn:disabled{opacity:.6;cursor:not-allowed}.propexp-btn-primary{background:#d5ab16;color:#212a31}.propexp-btn-primary:hover:not(:disabled){background:#c29a14;transform:translateY(-2px);box-shadow:0 4px 12px rgba(213,171,22,.3)}.propexp-btn-secondary{background:hsla(55,80%,92%,.1);color:#fbf8da;border:1px solid hsla(55,80%,92%,.2)}.propexp-btn-secondary:hover:not(:disabled){background:hsla(55,80%,92%,.15);border-color:hsla(55,80%,92%,.3)}.propexp-btn-danger{background:rgba(239,68,68,.15);color:#ef4444;border:1px solid rgba(239,68,68,.3)}.propexp-btn-danger:hover:not(:disabled){background:rgba(239,68,68,.25);border-color:#ef4444}.propexp-body::-webkit-scrollbar{width:8px}.propexp-body::-webkit-scrollbar-track{background:transparent}.propexp-body::-webkit-scrollbar-thumb{background:rgba(213,171,22,.3);border-radius:4px}.propexp-body::-webkit-scrollbar-thumb:hover{background:rgba(213,171,22,.5)}.propexp-upload-area{border:2px dashed hsla(55,80%,92%,.3);border-radius:8px;padding:20px;text-align:center;background:rgba(65,83,97,.1);transition:all .2s ease}.propexp-upload-area:hover{border-color:hsla(55,80%,92%,.5);background:rgba(65,83,97,.15)}.propexp-upload-prompt{display:flex;flex-direction:column;align-items:center;gap:12px;color:hsla(55,80%,92%,.7)}.propexp-upload-icon{font-size:32px;color:hsla(55,80%,92%,.4)}.propexp-upload-note{font-size:12px;color:hsla(55,80%,92%,.4);margin:0}.propexp-upload-btn{background:#d5ab16;color:#212a31;border:none;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.propexp-upload-btn:hover{background:#c29a14}.propexp-uploaded-files{display:flex;flex-direction:column;gap:12px;text-align:left}.propexp-file-item{display:flex;align-items:center;gap:12px;padding:12px;background:rgba(65,83,97,.15);border:1px solid hsla(55,80%,92%,.1);border-radius:8px}.propexp-file-icon{font-size:20px;color:#d5ab16;flex-shrink:0}.propexp-file-info{flex:1 1;display:flex;flex-direction:column;gap:4px}.propexp-file-name{font-size:14px;font-weight:500;color:#fbf8da}.propexp-file-status{font-size:12px;color:hsla(55,80%,92%,.6)}.propexp-file-actions{display:flex;gap:6px}.propexp-file-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:14px}.propexp-file-btn.view{background:rgba(59,130,246,.15);color:#3b82f6}.propexp-file-btn.view:hover{background:rgba(59,130,246,.25)}.propexp-file-btn.download{background:rgba(34,197,94,.15);color:#22c55e}.propexp-file-btn.download:hover{background:rgba(34,197,94,.25)}.propexp-file-btn.remove{background:rgba(239,68,68,.15);color:#ef4444}.propexp-file-btn.remove:hover{background:rgba(239,68,68,.25)}.propexp-add-file-btn{display:flex;align-items:center;gap:8px;padding:8px 12px;background:rgba(213,171,22,.1);border:1px solid rgba(213,171,22,.3);border-radius:6px;color:#d5ab16;font-size:14px;cursor:pointer;transition:all .2s ease}.propexp-add-file-btn:hover{background:rgba(213,171,22,.15);border-color:rgba(213,171,22,.4)}.invoice-indicator{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background-color:rgba(34,197,94,.1);color:#22c55e;border-radius:4px;font-size:12px;margin-left:4px}.expense-actions{display:flex;align-items:center;gap:8px}.action-btn.download{background-color:rgba(59,130,246,.1);color:#3b82f6;border:1px solid rgba(59,130,246,.2)}.action-btn.download:hover{background-color:rgba(59,130,246,.2);color:#2563eb}@media (max-width:600px){.propexp-modal{width:95%;max-height:95vh;border-radius:12px}.propexp-header{padding:16px 20px}.propexp-body{padding:20px;gap:16px}.propexp-footer{flex-direction:column;align-items:stretch;padding:12px 20px}.propexp-actions{width:100%;margin-left:0}.propexp-actions .propexp-btn{flex:1 1;justify-content:center}.propexp-header h2{font-size:20px}.propexp-file-item{flex-direction:column;align-items:stretch;gap:8px}.propexp-file-actions{justify-content:flex-end}.propexp-upload-area{padding:16px}}@media (max-width:400px){.propexp-modal{max-width:100%;border-radius:0}.propexp-footer,.propexp-header,.propexp_body{padding:12px 16px}.propexp-body{gap:12px}.propexp-input,.propexp-textarea{font-size:16px}}