body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.manage-tenders{padding:20px}.header-section{align-items:center;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:30px;padding:30px}.header-content h2{color:#333;margin:0 0 5px}.header-content p{color:#666;font-size:14px;margin:0}.refresh-button{background-color:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:12px 20px;transition:background-color .3s}.refresh-button:hover{background-color:#1565c0}.loading-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.loading-spinner{animation:spin 1s linear infinite;font-size:3rem;margin-top:20px}.error-message{margin-bottom:20px}.empty-state{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:60px 20px;text-align:center}.empty-state h3{color:#666;margin-bottom:10px}.empty-state p{color:#999}.tenders-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.summary-bar{align-items:center;border-bottom:2px solid #1976d2;display:flex;justify-content:space-between;margin-bottom:30px;padding-bottom:15px}.tender-count{color:#333;font-weight:700}.firebase-status{color:#2e7d32;font-weight:700}.tender-grid{grid-gap:25px;gap:25px;grid-template-columns:repeat(auto-fill,minmax(450px,1fr))}.firebase-tender-card{background:linear-gradient(135deg,#f8f9ff,#fff);border:2px solid #e3f2fd;border-radius:8px;padding:20px;position:relative;transition:transform .2s,box-shadow .2s}.firebase-tender-card:hover{box-shadow:0 8px 25px #1976d226;transform:translateY(-3px)}.firebase-tender-card:before{align-items:center;background:#ff6f00;border-radius:50%;box-shadow:0 2px 8px #0003;content:"🔥";display:flex;font-size:16px;height:30px;justify-content:center;position:absolute;right:-5px;top:-5px;width:30px}.tender-header h4{margin:0 0 10px}.tender-badges{gap:10px}.tender-id-badge{background:#e3f2fd;color:#1976d2}.status-badge,.tender-id-badge{border-radius:4px;font-size:12px;font-weight:700;padding:4px 8px}.status-badge{text-transform:uppercase}.status-badge.active{background:#e8f5e8;color:#2e7d32}.info-row{border-bottom:1px solid #f0f0f0}.tender-dates{border:1px solid #e3f2fd;border-radius:6px;padding:12px}.date-label{font-weight:700;margin-bottom:3px}.firebase-info{background:#f3e5f5;border-left:4px solid #9c27b0;border-radius:6px;margin:15px 0;padding:12px}.firebase-info .info-row{border-bottom:none;margin-bottom:5px}.firebase-info .label{color:#7b1fa2}.tender-actions{display:flex;gap:10px;margin-top:20px}.delete-button{background-color:#d32f2f;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:10px 16px;transition:background-color .3s}.delete-button:hover:not(:disabled){background-color:#c62828}.delete-button:disabled{background-color:#ccc;cursor:not-allowed}.view-button{background-color:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:10px 16px;transition:background-color .3s}.view-button:hover{background-color:#1565c0}@media (max-width:768px){.header-section{gap:15px}.header-section,.summary-bar{flex-direction:column;text-align:center}.summary-bar{gap:10px}.tender-grid{grid-template-columns:1fr}.tender-dates{flex-direction:column;gap:8px}.date-item{flex-direction:row;justify-content:space-between}.tender-actions{flex-direction:column}}.search-tenders{padding:20px}.search-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin-bottom:30px;padding:30px}.search-section h2{border-bottom:2px solid #1976d2;color:#333;margin-top:0;padding-bottom:10px}.search-form{margin-top:20px}.search-input-group{align-items:center;display:flex;gap:15px}.search-input{border:2px solid #ddd;border-radius:6px;flex:1 1;font-size:16px;padding:15px;transition:border-color .3s}.search-input:focus{border-color:#1976d2;outline:none}.search-button{background-color:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;padding:15px 25px;transition:background-color .3s;white-space:nowrap}.search-button:hover:not(:disabled){background-color:#1565c0}.search-button:disabled{background-color:#ccc;cursor:not-allowed}.loading-message{background-color:#e3f2fd;border-left:4px solid #1976d2;color:#1976d2;font-weight:700;margin-top:20px;padding:15px}.results-section{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:30px}.results-section h3{border-bottom:2px solid #1976d2;color:#333;margin-top:0;padding-bottom:10px}.tender-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));margin-top:20px}.tender-card{background:#fafafa;border:1px solid #ddd;border-radius:8px;padding:20px;transition:transform .2s,box-shadow .2s}.tender-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.tender-header{margin-bottom:15px}.tender-header h4{color:#333;line-height:1.4;margin:0 0 8px}.tender-id{background:#e3f2fd;border-radius:4px;color:#1976d2;font-size:12px;font-weight:700;padding:4px 8px}.tender-info{margin:15px 0}.info-row{border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:8px;padding-bottom:5px}.info-row .label{color:#555;font-weight:700}.info-row .amount{color:#2e7d32;font-weight:700}.tender-dates{background:#fff;border-radius:4px;display:flex;font-size:14px;justify-content:space-between;margin:15px 0;padding:10px}.date-item{align-items:center;display:flex;flex-direction:column}.date-label{color:#666;font-size:12px;margin-bottom:2px}.tender-actions{margin-top:15px;text-align:center}.upload-button{background-color:#ff6f00;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:12px 24px;transition:background-color .3s;width:100%}.upload-button:hover:not(:disabled){background-color:#f57c00}.upload-button:disabled{background-color:#ccc;cursor:not-allowed}.no-results{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;color:#666;padding:40px;text-align:center}@media (max-width:768px){.search-input-group{flex-direction:column}.search-button,.search-input{width:100%}.tender-grid{grid-template-columns:1fr}.tender-dates{flex-direction:column;gap:5px}.date-item{flex-direction:row;justify-content:space-between}}.api-status{background-color:#e8f5e8;border-left:4px solid #2e7d32;border-radius:4px;color:#2e7d32;font-weight:700;margin-bottom:15px;padding:10px}.error-message{border-left:4px solid #d32f2f;padding:15px}.loading-message small{display:block;font-size:14px;margin-top:5px;opacity:.8}.tender-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.downloaded-badge{background:#4caf50;border-radius:4px;color:#fff;font-size:12px;font-weight:700;padding:4px 10px}.tender-card.already-downloaded{background:#e8f5e9;border-color:#4caf50}.upload-button.downloaded{background-color:#4caf50;cursor:default}.upload-button.downloaded:hover{background-color:#4caf50}.processing-overlay{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1001}.processing-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;padding:40px 50px;text-align:center}.processing-spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#1976d2;height:60px;margin:0 auto 20px;width:60px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.processing-modal h3{color:#333;font-size:20px;margin:0 0 10px}.processing-modal p{color:#666;font-size:14px;margin:0 0 5px;max-width:300px}.processing-hint{color:#999!important;font-size:12px!important;margin-top:15px!important}.captcha-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.captcha-modal{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;margin:20px;max-height:90vh;max-width:450px;overflow-y:auto;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.captcha-modal-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;padding:20px 25px}.captcha-modal-header h3{color:#333;font-size:18px;margin:0}.captcha-modal-header .close-button{background:none;border:none;color:#999;cursor:pointer;font-size:24px;line-height:1;padding:0}.captcha-modal-header .close-button:hover{color:#333}.captcha-modal-body{padding:25px;text-align:center}.captcha-modal-body p{color:#666;margin:0 0 10px}.tender-title-modal{color:#333!important;font-size:15px;margin-bottom:20px!important}.captcha-image-container{align-items:center;background:#f5f5f5;border-radius:8px;display:flex;justify-content:center;margin-bottom:20px;padding:15px}.captcha-image{border:2px solid #ddd;border-radius:4px;height:auto;max-width:250px}.captcha-error{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#dc3545;font-size:14px;margin-bottom:12px;padding:8px 12px;text-align:center}.captcha-input{border:2px solid #ddd;border-radius:8px;font-size:18px;letter-spacing:3px;outline:none;padding:15px;text-align:center;transition:border-color .3s;width:100%}.captcha-input:focus{border-color:#1976d2}.captcha-modal-footer{border-top:1px solid #eee;display:flex;gap:10px;padding:20px 25px}.captcha-modal-footer button{border-radius:6px;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:12px 20px;transition:all .3s}.cancel-button{background:#f5f5f5;border:1px solid #ddd;color:#666}.cancel-button:hover:not(:disabled){background:#eee}.submit-captcha-button{background:#1976d2;border:none;color:#fff}.submit-captcha-button:hover:not(:disabled){background:#1565c0}.cancel-button:disabled,.submit-captcha-button:disabled{cursor:not-allowed;opacity:.6}.success-icon{align-items:center;background:#4caf50;border-radius:50%;color:#fff;display:flex;font-size:28px;height:56px;justify-content:center;margin:0 auto 16px;width:56px}.folder-link{background:#f5f5f5;border:1px solid #ddd;border-radius:6px;color:#1976d2;display:inline-block;font-size:14px;margin-top:12px;padding:8px 18px;text-decoration:none}.folder-link:hover{background:#e8e8e8}.App{background-color:#f5f5f5;font-family:Arial,sans-serif;min-height:100vh}.admin-header{background-color:#1976d2;box-shadow:0 2px 4px #0000001a;color:#fff;padding:20px;text-align:center}.admin-header h1{font-size:2rem;margin:0}.admin-header p{margin:10px 0 0;opacity:.9}.admin-main{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin:40px auto;max-width:1200px;padding:0 20px}.quick-actions,.status-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;padding:25px}.quick-actions h2,.status-card h2{border-bottom:2px solid #1976d2;color:#333;margin-top:0;padding-bottom:10px}.status-card p{font-size:1.1rem;margin:10px 0}.action-button{background-color:#1976d2;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:1rem;margin:10px 10px 10px 0;padding:12px 24px;transition:background-color .3s}.action-button:hover{background-color:#1565c0}@media (max-width:768px){.admin-main{gap:20px;grid-template-columns:1fr;margin:20px auto}}.header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px}.header-left h1{font-size:2rem;margin:0}.header-left p{margin:5px 0 0;opacity:.9}.header-right{align-items:center;display:flex;gap:15px}.user-info{color:#fff;font-size:14px}.logout-button{background-color:#fff3;border:1px solid #ffffff4d;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px;transition:background-color .3s}.logout-button:hover{background-color:#ffffff4d}.admin-nav{background-color:#1565c0;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:center;padding:0}.nav-button{background:none;border:none;color:#fff;cursor:pointer;font-size:16px;padding:15px 25px;transition:background-color .3s}.nav-button:hover{background-color:#ffffff1a}.nav-button.active{background-color:#fff3;border-bottom:3px solid #fff}.content-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;grid-column:1/-1;padding:30px}.content-card h2{border-bottom:2px solid #1976d2;color:#333;margin-top:0;padding-bottom:10px}@media (max-width:768px){.header-content{gap:10px;text-align:center}.admin-nav,.header-content{flex-direction:column}.nav-button{text-align:center}}.login-container{align-items:center;background:linear-gradient(135deg,#1976d2,#1565c0);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:400px;padding:40px;width:100%}.login-card h1{color:#333;font-size:1.8rem;margin-bottom:30px;text-align:center}.login-form{display:flex;flex-direction:column}.form-group{margin-bottom:20px}.form-group label{color:#555;display:block;font-weight:700;margin-bottom:5px}.form-group input{border:2px solid #ddd;border-radius:6px;box-sizing:border-box;font-size:16px;padding:12px;transition:border-color .3s;width:100%}.form-group input:focus{border-color:#1976d2;outline:none}.login-button{background-color:#1976d2;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;margin-top:10px;padding:15px;transition:background-color .3s}.login-button:hover{background-color:#1565c0}.error-message{background-color:#ffebee;border:1px solid #ffcdd2;border-radius:4px;color:#d32f2f;margin:15px 0;padding:10px;text-align:center}.login-help{border-top:1px solid #eee;color:#666;font-size:14px;margin-top:30px;padding-top:20px;text-align:center}.login-help p{margin:5px 0}
/*# sourceMappingURL=main.855a50e7.css.map*/