.invoice-viewer-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.8);display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.invoice-viewer-modal{background:var(--color-background,#212a31);border-radius:12px;width:90vw;max-width:1200px;height:90vh;max-height:800px;display:flex;flex-direction:column;border:1px solid hsla(55,80%,92%,.1);box-shadow:0 20px 40px rgba(0,0,0,.3)}.invoice-viewer-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid hsla(55,80%,92%,.1);background:rgba(65,83,97,.09)}.invoice-viewer-title h2{margin:0;color:var(--color-text,#fbf8da);font-size:18px;font-weight:600}.invoice-expense-details{margin:4px 0 0;color:hsla(55,80%,92%,.7);font-size:14px}.invoice-viewer-actions{display:flex;align-items:center;gap:8px}.invoice-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;transition:all .2s;color:var(--color-text,#fbf8da)}.invoice-action-btn.download{background:rgba(34,197,94,.1);border:1px solid rgba(34,197,94,.3)}.invoice-action-btn.download:hover{background:rgba(34,197,94,.2)}.invoice-action-btn.external{background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3)}.invoice-action-btn.external:hover{background:rgba(59,130,246,.2)}.invoice-action-btn.close{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3)}.invoice-action-btn.close:hover{background:rgba(239,68,68,.2)}.invoice-viewer-content{flex:1 1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.invoice-viewer-iframe{width:100%;height:100%;border:none;background:#fff}.invoice-viewer-image-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto;padding:20px}.invoice-viewer-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.2)}.invoice-viewer-error,.invoice-viewer-loading,.invoice-viewer-unsupported{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;color:var(--color-text,#fbf8da)}.invoice-viewer-loading svg{font-size:32px;color:var(--color-accent,#d5ab16);margin-bottom:16px}.invoice-viewer-error svg,.invoice-viewer-unsupported svg{font-size:48px;color:var(--color-warning,#d58916);margin-bottom:16px}.invoice-viewer-error h3,.invoice-viewer-unsupported h3{margin:0 0 8px;font-size:18px;font-weight:600}.invoice-viewer-error p,.invoice-viewer-unsupported p{margin:0 0 8px;color:hsla(55,80%,92%,.8)}.invoice-viewer-error-note{font-size:14px;color:hsla(55,80%,92%,.6)!important}.invoice-download-btn{display:flex;align-items:center;gap:8px;background:var(--color-accent,#d5ab16);color:var(--color-background,#212a31);border:none;padding:12px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:16px}.invoice-download-btn:hover{background:#c39a14;transform:translateY(-2px)}.file-info{background:rgba(65,83,97,.15);border:1px solid hsla(55,80%,92%,.1);border-radius:8px;padding:16px;margin:16px 0;text-align:left}.file-info p{margin:4px 0;color:hsla(55,80%,92%,.8);font-size:14px}.file-info strong{color:var(--color-text,#fbf8da)}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.invoice-viewer-modal{width:95vw;height:95vh}.invoice-viewer-header{padding:16px 20px}.invoice-viewer-title h2{font-size:16px}.invoice-expense-details{font-size:13px}}