.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;width:100%;height:100%;background-color:var(--content-bg, #f8fafc);color:var(--text-primary, #1e293b)}#root{width:100%;min-height:100vh}h1,h2,h3,h4,h5,h6{color:var(--text-primary, #1e293b);margin:0;line-height:1.2}h1{font-size:2.5em}h2{font-size:2em}h3{font-size:1.5em}p{color:var(--text-secondary, #64748b);line-height:1.6}a{font-weight:500;color:var(--primary-color, #667eea);text-decoration:none;transition:color .2s}a:hover{color:var(--primary-dark, #5568d3);text-decoration:underline}a.button,a.btn,a.action-button,a.back-button,a.edit-button,a.delete-button,a.submit-button,a.cancel-button,a.create-button,a.retry-button,a[class*=button],a[class*=btn]{text-decoration:none}a.button:hover,a.btn:hover,a.action-button:hover,a.back-button:hover,a.edit-button:hover,a.delete-button:hover,a.submit-button:hover,a.cancel-button:hover,a.create-button:hover,a.retry-button:hover,a[class*=button]:hover,a[class*=btn]:hover{text-decoration:none!important}button,.btn{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none}button:hover,button:focus,button:active,button:hover *,button:focus *,button:active *,.btn:hover,.btn:focus,.btn:active,.btn:hover *,.btn:focus *,.btn:active *,a.button:hover,a.button:hover *,a.btn:hover,a.btn:hover *,a[role=button]:hover,a[role=button]:hover *,[role=button]:hover,[role=button]:hover *,[role=button]:focus,[role=button]:focus *,[role=button]:active,[role=button]:active *,.action-button:hover,.action-button:hover *,.action-button:focus,.action-button:focus *,.back-button:hover,.back-button:hover *,.back-button:focus,.back-button:focus *,.edit-button:hover,.edit-button:hover *,.edit-button:focus,.edit-button:focus *,.delete-button:hover,.delete-button:hover *,.delete-button:focus,.delete-button:focus *,.submit-button:hover,.submit-button:hover *,.submit-button:focus,.submit-button:focus *,.cancel-button:hover,.cancel-button:hover *,.cancel-button:focus,.cancel-button:focus *,.create-button:hover,.create-button:hover *,.create-button:focus,.create-button:focus *,.retry-button:hover,.retry-button:hover *,.retry-button:focus,.retry-button:focus *{text-decoration:none!important}button:disabled,.btn:disabled{opacity:.5;cursor:not-allowed}button.primary,.btn-primary{background-color:var(--button-primary-bg, #667eea);color:#fff;border-color:var(--button-primary-bg, #667eea)}button.primary:hover:not(:disabled),.btn-primary:hover:not(:disabled){background-color:var(--button-primary-hover, #5568d3);border-color:var(--button-primary-hover, #5568d3);transform:translateY(-1px);box-shadow:0 4px 8px var(--primary-pale, rgba(102, 126, 234, .3));text-decoration:none}button.secondary,.btn-secondary{background-color:var(--button-secondary-bg, #e2e8f0);color:var(--text-primary, #1e293b);border-color:var(--button-secondary-bg, #e2e8f0)}button.secondary:hover:not(:disabled),.btn-secondary:hover:not(:disabled){background-color:var(--button-secondary-hover, #cbd5e1);border-color:var(--button-secondary-hover, #cbd5e1);text-decoration:none}button.danger,.btn-danger{background-color:var(--status-danger, #ef4444);color:#fff;border-color:var(--status-danger, #ef4444)}button.danger:hover:not(:disabled),.btn-danger:hover:not(:disabled){background-color:#dc2626;border-color:#dc2626;text-decoration:none}button.success,.btn-success{background-color:var(--status-success, #10b981);color:#fff;border-color:var(--status-success, #10b981)}button.success:hover:not(:disabled),.btn-success:hover:not(:disabled){background-color:#059669;border-color:#059669;text-decoration:none}button:focus,button:focus-visible{outline:3px solid var(--primary-pale, rgba(102, 126, 234, .3));outline-offset:2px}input,textarea,select{font-family:inherit;font-size:1em;padding:.5em .75em;border:1px solid var(--border-color, #e2e8f0);border-radius:6px;background-color:var(--card-bg, white);color:var(--text-primary, #1e293b);transition:all .2s}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary-color, #667eea);box-shadow:0 0 0 3px var(--primary-pale, rgba(102, 126, 234, .1))}input:disabled,textarea:disabled,select:disabled{background-color:var(--border-color, #e2e8f0);cursor:not-allowed;opacity:.6}.text-left{text-align:left}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.modal-overlay,.bid-form-modal-overlay{position:fixed;inset:0;z-index:9999!important;isolation:isolate}body.modal-open{overflow:hidden}.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#8a100d,#cf202f);padding:20px}.login-box{background:#fff;padding:40px;border-radius:10px;box-shadow:0 10px 40px #0000001a;width:100%;max-width:400px}.login-logo{display:block;margin:0 auto 16px;width:160px;height:auto}.login-title{margin:0 0 10px;font-size:24px;color:#333;text-align:center;font-weight:700}.subtitle{margin:0 0 30px;padding-bottom:12px;font-size:14px;color:#666;text-align:center}.error-message{background:#fee;color:#c33;padding:10px;border-radius:5px;margin-bottom:20px;font-size:14px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#333;font-size:14px}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:14px;box-sizing:border-box;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#e4e4e7}.form-group input:disabled{background:#f5f5f5;cursor:not-allowed}.login-box .btn-primary{width:100%;padding:12px;background:#8a100d;color:#fff;border:none;border-radius:5px;font-size:16px;font-weight:600;cursor:pointer;transition:background .3s}.login-box .btn-primary:hover:not(:disabled){background:#cf202f}.login-box .btn-primary:disabled{background:#999;cursor:not-allowed}.vendor-registration-link{margin-top:25px;padding-top:20px;border-top:1px solid #eee;text-align:center}.vendor-registration-link p{margin:0 0 10px;font-size:14px;color:#666}.apply-link{display:inline-block;color:#cf202f;text-decoration:none;font-size:15px;font-weight:500;transition:color .3s}.apply-link:hover{color:#8a100d;text-decoration:underline}.quick-login{margin-top:30px;padding-top:20px;border-top:1px solid #eee}.quick-login-title{font-size:12px;color:#666;margin:0 0 10px;text-align:center}.login-box .btn-secondary{width:100%;padding:10px;background:#fff;color:#8a100d;border:1px solid #e4e4e7;border-radius:5px;font-size:14px;cursor:pointer;transition:all .3s;margin-bottom:10px}.login-box .btn-secondary:hover:not(:disabled){background:#8a100d;color:#fff}.login-box .btn-secondary:disabled{opacity:.5;cursor:not-allowed}.success-message{background:#d4edda;color:#155724;padding:10px;border-radius:5px;margin-bottom:20px;font-size:14px;border:1px solid #c3e6cb}.phone-display{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid #ddd;border-radius:5px;background:#f9f9f9;font-size:14px;color:#333}.btn-link{background:none;border:none;color:#8a100d;cursor:pointer;font-size:14px;text-decoration:underline;padding:0}.btn-link:hover:not(:disabled){color:#cf202f;text-decoration:none}.btn-link:disabled{color:#999;cursor:not-allowed}.code-input{text-align:center;letter-spacing:.5em;font-size:20px!important;font-weight:700;font-family:monospace}.country-code-input{display:flex;align-items:center;border:1px solid #ddd;border-radius:5px;padding-left:10px;background:#fff;width:60px;transition:border-color .3s}.country-code-input:focus-within{border-color:#e4e4e7}.country-code-field{width:35px;border:none!important;padding:12px 4px!important;text-align:left;font-size:14px}.country-code-field:focus{outline:none;border:none!important}.already-have-code{margin-top:15px;text-align:center}.skip-to-verify-link{background:none;border:none;color:#8a100d;font-size:14px;cursor:pointer;text-decoration:underline;padding:5px;transition:color .2s}.skip-to-verify-link:hover:not(:disabled){color:#cf202f}.skip-to-verify-link:disabled{opacity:.5;cursor:not-allowed}.site-lockout-overlay{position:fixed;inset:0;background:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.site-lockout-modal{background:#fff;padding:40px;border-radius:12px;box-shadow:0 10px 40px #0000004d;width:90%;max-width:360px;text-align:center}.site-lockout-modal h2{margin:0 0 24px;font-size:20px;color:#333}.lockout-error{background:#fee;color:#c33;padding:10px;border-radius:5px;margin-bottom:16px;font-size:14px}.lockout-input{width:100%;padding:12px;border:1px solid #ddd;border-radius:5px;font-size:16px;box-sizing:border-box;margin-bottom:16px;text-align:center}.lockout-input:focus{outline:none;border-color:#8a100d}.lockout-input:disabled{background:#f5f5f5;cursor:not-allowed}.lockout-submit{width:100%;padding:12px;background:#8a100d;color:#fff;border:none;border-radius:5px;font-size:16px;font-weight:600;cursor:pointer;transition:background .3s}.lockout-submit:hover:not(:disabled){background:#cf202f}.lockout-submit:disabled{background:#999;cursor:not-allowed}.lockout-attempts{margin-top:16px;font-size:13px;color:#888}.vendor-registration-page{min-height:100vh;background:linear-gradient(135deg,#8a100d,#cf202f);display:flex;align-items:center;justify-content:center;padding:40px 20px}.registration-container{max-width:800px;width:100%;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;overflow:hidden}.registration-logo-area{padding:24px 40px 0;text-align:center}.registration-logo{width:140px;height:auto}.registration-header{background:#fff;color:#333;padding:24px 40px 40px;text-align:center}.registration-header h1{margin:0 0 10px;font-size:32px;font-weight:700}.registration-subtitle{color:#666;margin:0;font-size:16px;line-height:1.5}.error-banner{background:#fee;border:1px solid #fcc;color:#c33;padding:15px 20px;margin:20px 40px 0;border-radius:8px;display:flex;align-items:center;gap:10px}.error-icon{font-size:20px}.warning-banner{background:#fff3cd;border:2px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.warning-content{display:flex;align-items:flex-start;gap:12px}.warning-icon{font-size:24px;flex-shrink:0;margin-top:2px}.warning-text{font-size:15px;line-height:1.6;color:#856404}.warning-text strong{font-weight:700;font-size:16px;display:block;margin-bottom:4px}.registration-form{padding:40px}.form-section{margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid #f0f0f0}.form-section h2{margin:0 0 8px;font-size:24px;color:#333}.section-description{margin:0 0 24px;color:#666;font-size:14px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#333;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:15px;transition:all .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #8a100d1a}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f5f5f5;cursor:not-allowed}.field-hint{margin:6px 0 0;font-size:13px;color:#999}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.primary-contact-checkbox{margin-bottom:24px;padding:16px;background:#f8f9ff;border:2px solid #e4e4e7;border-radius:8px}.primary-contact-checkbox .checkbox-label{display:flex;align-items:center;gap:12px;cursor:pointer;margin:0}.primary-contact-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;flex-shrink:0}.primary-contact-checkbox span{font-size:14px;font-weight:600;color:#333;-webkit-user-select:none;user-select:none}.info-section{background:#f8f9ff;padding:24px;border-radius:8px;margin-bottom:30px}.info-section h3{margin:0 0 16px;font-size:18px;color:#8a100d}.info-section ol{margin:0;padding-left:24px}.info-section li{margin-bottom:8px;color:#555;font-size:14px;line-height:1.6}.info-section li:last-child{margin-bottom:0}.form-actions{display:flex;gap:16px;justify-content:flex-end;padding-top:20px;border-top:2px solid #f0f0f0}.cancel-button,.submit-button{padding:14px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#f5f5f5;color:#666}.cancel-button:hover:not(:disabled){background:#e5e5e5}.submit-button{background:linear-gradient(135deg,#8a100d,#cf202f);color:#fff}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #8a100d66}.submit-button:disabled,.cancel-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.phone-input-container{display:flex;gap:10px;align-items:stretch}.country-code-input{display:flex;align-items:center;border:1px solid #ddd;border-radius:8px;padding-left:10px;background:#fff;width:60px;transition:border-color .2s}.country-code-input:focus-within{border-color:#e4e4e7;box-shadow:0 0 0 3px #8a100d1a}.plus-prefix{color:#666;font-size:14px;font-weight:500;margin-right:2px}.country-code-field{width:35px;border:none!important;padding:12px 4px!important;text-align:left;font-size:14px;box-shadow:none!important}.country-code-field:focus{outline:none;border:none!important;box-shadow:none!important}.input-hint{display:block;margin-top:5px;font-size:12px;color:#888}.wizard-steps{display:flex;align-items:center;justify-content:center;padding:30px 40px;background:#f8f9ff;border-bottom:1px solid #e4e4e7}.wizard-steps .step{display:flex;align-items:center;gap:10px;opacity:.5;transition:opacity .3s}.wizard-steps .step.active{opacity:1}.wizard-steps .step.completed .step-number{background:#10b981}.wizard-steps .step-number{width:32px;height:32px;border-radius:50%;background:#8a100d;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px}.wizard-steps .step-label{font-weight:500;color:#333;font-size:14px}.wizard-steps .step-connector{width:60px;height:2px;background:#ddd;margin:0 20px}.existing-user-error-banner{background:#fef3c7;border:2px solid #f59e0b;border-radius:8px;padding:24px;margin:20px 40px}.existing-user-error-content{text-align:center}.existing-user-error-content strong{display:block;font-size:18px;color:#92400e;margin-bottom:12px}.existing-user-error-content p{margin:0 0 16px;color:#78350f;font-size:14px;line-height:1.5}.login-link-button{background:linear-gradient(135deg,#8a100d,#cf202f);color:#fff;border:none;padding:12px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.login-link-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #8a100d66}.existing-user-banner{background:#d1fae5;border:1px solid #10b981;border-radius:8px;padding:20px;margin-bottom:24px}.existing-user-content{color:#065f46}.existing-user-content strong{display:block;font-size:16px;margin-bottom:8px}.existing-user-content p{margin:0 0 8px;font-size:14px;line-height:1.5}.existing-user-content .masked-phone{font-weight:600;color:#047857;margin-bottom:0}.verification-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.verification-modal{background:#fff;padding:32px;border-radius:16px;max-width:420px;width:100%;box-shadow:0 20px 60px #0000004d}.verification-modal h3{margin:0 0 16px;font-size:22px;color:#333}.verification-modal>p{margin:0 0 20px;color:#666;font-size:14px;line-height:1.6}.verification-info{background:#f8f9ff;padding:16px;border-radius:8px;margin-bottom:20px;font-size:14px;color:#555}.verification-info strong{color:#8a100d}.verification-error{background:#fee;border:1px solid #fcc;color:#c33;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.verification-code-input{width:100%;padding:16px;font-size:24px;text-align:center;letter-spacing:8px;border:2px solid #ddd;border-radius:8px;font-weight:600}.verification-code-input:focus{outline:none;border-color:#8a100d;box-shadow:0 0 0 3px #8a100d1a}.verification-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.verification-actions .cancel-button,.verification-actions .submit-button{padding:12px 24px;font-size:14px}@media(max-width:768px){.vendor-registration-page{padding:20px 10px}.registration-header{padding:30px 20px}.registration-header h1{font-size:24px}.registration-form{padding:30px 20px}.form-row{grid-template-columns:1fr;gap:16px}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}.wizard-steps{padding:20px}.wizard-steps .step-label{display:none}.wizard-steps .step-connector{width:40px;margin:0 10px}.verification-modal{padding:24px}.verification-actions{flex-direction:column}.verification-actions .cancel-button,.verification-actions .submit-button{width:100%}}.forgot-password-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.forgot-password-card{background:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;width:100%;max-width:400px}.forgot-password-card h1{margin:0 0 .5rem;color:#333}.forgot-password-card p{color:#666;margin-bottom:1.5rem}.forgot-password-form{display:flex;flex-direction:column;gap:1rem}.forgot-password-footer{margin-top:1.5rem;text-align:center}.forgot-password-footer a{color:#667eea;text-decoration:none}.forgot-password-footer a:hover{text-decoration:underline}.card{background:var(--card-bg, white);border-radius:8px;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .1));overflow:hidden;border:1px solid var(--border-color, #e2e8f0)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.card-header-content{flex:1}.card-title{margin:0 0 .25rem;font-size:1.125rem;font-weight:600;color:var(--text-primary, #1e293b)}.card-subtitle{margin:0;font-size:.875rem;color:var(--text-secondary, #64748b)}.card-actions{display:flex;gap:.5rem;align-items:center}.card-body{padding:1.5rem;overflow:hidden}.card.compact .card-header,.card.compact .card-body{padding:1rem}.tabs-container{width:100%;margin-top:1rem}.tabs-desktop{display:flex;gap:0;border-bottom:2px solid #e5e7eb;border-radius:0;margin-bottom:1.5rem}.tabs-mobile{display:none;position:relative;margin-bottom:1.5rem}.tab-button{padding:.75rem 1.5rem;background:transparent;border:none;border-bottom:3px solid transparent;border-radius:0;cursor:pointer;font-size:.95rem;font-weight:500;color:var(--text-secondary, #6b7280);transition:all .2s ease;position:relative;top:2px;display:flex;align-items:center;gap:.5rem;outline:none}.tab-button:focus{outline:none}.tab-icon{font-size:1.1rem;display:inline-flex;align-items:center}.tab-button:hover{background-color:#f3f4f6}.tab-button.active{color:#1a1a1a;border-bottom-color:#1a1a1a;border-radius:0;background-color:transparent}.tabs-content{padding:0}.tabs-dropdown-button{width:100%;padding:.875rem 1rem;background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;cursor:pointer;font-size:1rem;font-weight:500;color:#374151;display:flex;align-items:center;justify-content:space-between;transition:all .2s ease;outline:none}.tabs-dropdown-button:focus{outline:none}.tabs-dropdown-button:hover{border-color:var(--primary-color, #2563eb);background-color:var(--primary-pale, #f9fafb)}.dropdown-label{display:flex;align-items:center;gap:.5rem}.dropdown-arrow{font-size:.75rem;color:var(--text-secondary, #6b7280);transition:transform .2s ease}.dropdown-arrow.open{transform:rotate(180deg)}.tabs-dropdown-overlay{position:fixed;inset:0;z-index:998}.tabs-dropdown-menu{position:absolute;top:calc(100% + .5rem);left:0;right:0;background:#fff;border:2px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 25px #0000001a;z-index:999;overflow:hidden}.dropdown-item{width:100%;padding:.875rem 1rem;background:#fff;border:none;border-bottom:1px solid #f3f4f6;cursor:pointer;font-size:.95rem;font-weight:500;color:#374151;display:flex;align-items:center;gap:.5rem;transition:all .2s ease;text-align:left;outline:none}.dropdown-item:focus{outline:none}.dropdown-item:hover{background-color:var(--primary-pale, #f9fafb);color:var(--primary-color, #2563eb)}.dropdown-item.active{background-color:var(--primary-pale, #eff6ff);color:var(--primary-color, #2563eb)}.check-mark{margin-left:auto;color:var(--primary-color, #2563eb);font-weight:700;opacity:0;visibility:hidden}.check-mark.visible{opacity:1;visibility:visible}@media(max-width:768px){.tabs-desktop{display:none}.tabs-mobile{display:block}.tab-button{font-size:.875rem;padding:.625rem 1rem}}@media(max-width:480px){.tabs-dropdown-button,.dropdown-item{padding:.75rem .875rem;font-size:.9rem}}.profile-page{padding:0;max-width:1280px;margin:0 auto;width:100%;box-sizing:border-box}.profile-card{background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:20px}.profile-header{padding-bottom:0}.profile-tabs-container{display:flex;align-items:center;justify-content:space-between;max-width:1304px;width:100%;gap:1rem}.profile-tabs-container .tabs-container{flex:1;margin-top:0}.edit-button{display:flex;align-items:center;gap:8px;height:40px;padding:8px 16px;background-color:#18181b;color:#fafafa;border:none;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:20px;cursor:pointer;transition:all .2s}.edit-button:hover{background-color:#27272a}.edit-button svg{color:#fafafa}.profile-content{padding:12px 0}.section-label{font-family:Inter,sans-serif;font-size:12px;font-weight:500;line-height:16px;color:#3f3f46;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}.profile-form{display:flex;flex-direction:column;gap:20px}.profile-row{display:flex;gap:20px;align-items:center}.profile-row.four-columns{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}.profile-avatar-large{width:140px;height:140px;border-radius:6px;overflow:hidden;flex-shrink:0;background-color:#d9d9d9;position:relative}.profile-avatar-large img{width:100%;height:100%;object-fit:cover}.avatar-placeholder-large{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:3rem;font-weight:700}.profile-avatar-upload-overlay{position:absolute;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;border-radius:6px;opacity:0;transition:opacity .2s;z-index:1}.profile-avatar-large:hover .profile-avatar-upload-overlay{opacity:1}.profile-fields-row{display:flex;gap:20px;flex:1;align-items:center}.profile-fields-column{display:flex;flex-direction:column;gap:20px;flex:1;justify-content:center}.form-field{display:flex;flex-direction:column;gap:8px;flex:1}.form-field label{font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:1;color:#18181b;margin:0}.form-input,.form-input-readonly{width:100%;height:40px;padding:8px 12px;background-color:#fff;border:1px solid #e4e4e7;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#18181b;box-sizing:border-box}.form-input:focus{outline:none;border-color:#e4e4e7}.form-input-readonly{display:flex;align-items:center;background-color:#fff;border:1px solid #e4e4e7;color:#18181b}.profile-footer{border-top:1px solid #e4e4e7;padding:16px 24px;display:flex;justify-content:flex-end}.footer-actions{display:flex;gap:12px;align-items:center}.cancel-button,.save-button{height:40px;padding:8px 16px;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;line-height:20px;cursor:pointer;transition:all .2s;border:none}.cancel-button{background-color:#fff;color:#18181b;border:1px solid #e4e4e7}.cancel-button:hover{background-color:#f9fafb}.save-button{background-color:#18181b;color:#fafafa}.save-button:hover{background-color:#27272a}.security-section{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.security-item{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.security-info{flex:1}.security-info h4{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.security-info p{font-size:.875rem;color:#6b7280;margin:0}.security-status{flex-shrink:0}.mfa-badge{padding:.5rem 1rem;border-radius:9999px;font-size:.875rem;font-weight:600}.mfa-badge.enabled{background:#dcfce7;color:#166534}.mfa-badge.disabled{background:#fee2e2;color:#991b1b}.login-time{font-size:.875rem;color:#6b7280;font-weight:500}.password-hint{font-size:1.5rem;letter-spacing:.25rem;color:#9ca3af}.activity-section{padding:1rem 0}.account-details-section{margin-top:2rem}.account-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:1rem}.form-input-readonly.code{font-family:Courier New,Monaco,monospace;font-size:.875rem;color:#059669;background:#f0fdf4;border-color:#bbf7d0}.status-badge{padding:.375rem .875rem;border-radius:9999px;font-size:.875rem;font-weight:500;display:inline-block}.status-badge.active{background-color:#dcfce7;color:#166534}.status-badge.inactive{background-color:#fee2e2;color:#991b1b}.danger-zone{margin-top:2rem;padding-top:2rem;border-top:2px solid #fee2e2}.danger-zone h4{font-size:1rem;font-weight:600;color:#991b1b;margin:0 0 1rem}.logout-button{display:inline-flex;align-items:center;gap:.5rem;background:#dc2626;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:.5rem;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.logout-button:hover{background:#b91c1c;transform:translateY(-2px);box-shadow:0 4px 12px #dc26264d}.logout-button:active{transform:translateY(0)}.info-note{padding:1rem;background-color:#fef3c7;border:1px solid #e4e4e7;border-radius:.375rem;margin-top:1rem}.info-note p{margin:0;font-size:.875rem;color:#854d0e;font-style:italic}.loading-state,.error-state{padding:3rem;text-align:center}.error-state h3{font-size:1.5rem;font-weight:600;color:#991b1b;margin:0 0 .5rem}.error-state p{color:#666;font-size:1rem;margin:0 0 1.5rem}.retry-button{display:inline-block;padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:.5rem;font-weight:500;font-size:.9375rem;cursor:pointer;transition:background-color .2s}@media(max-width:768px){.profile-page{padding:1rem}.profile-tabs-container{flex-direction:column;align-items:flex-start;gap:1rem}.profile-tabs{width:100%;overflow-x:auto}.edit-button{width:100%;justify-content:center}.profile-row{flex-direction:column;align-items:flex-start}.profile-row.four-columns{grid-template-columns:1fr}.profile-avatar-large{width:100px;height:100px}.profile-fields-row{flex-direction:column;width:100%}.profile-fields-column{width:100%}.footer-actions{width:100%;flex-direction:column}.cancel-button,.save-button{width:100%}}.password-strength{margin-top:8px}.strength-bar{height:4px;background:#e5e7eb;border-radius:2px;overflow:hidden;margin-bottom:4px}.strength-fill{height:100%;transition:width .3s ease,background-color .3s ease}.strength-fill.strength-weak{background-color:#ef4444}.strength-fill.strength-fair{background-color:#f59e0b}.strength-fill.strength-good{background-color:#3b82f6}.strength-fill.strength-strong{background-color:#22c55e}.strength-text{font-size:12px;font-weight:500}.strength-text.strength-weak{color:#ef4444}.strength-text.strength-fair{color:#f59e0b}.strength-text.strength-good{color:#3b82f6}.strength-text.strength-strong{color:#22c55e}.password-edit-section{padding:24px;border:1px solid #e5e7eb;border-radius:8px;background:#fafafa;margin-bottom:20px}.password-edit-section h3{margin-top:0;margin-bottom:20px;font-size:18px;font-weight:600;color:#18181b}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#3f3f46}.form-group input[type=password]{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit}.form-group input[type=password]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group .hint{display:block;margin-top:4px;font-size:12px;color:#71717a}.form-group .error{display:block;margin-top:4px;font-size:12px;color:#ef4444}.security-item{display:flex;justify-content:space-between;align-items:center;padding:20px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;margin-bottom:16px}.security-info h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#18181b}.security-info p{margin:0;font-size:14px;color:#71717a}.security-status{display:flex;align-items:center;gap:16px}.password-hint{font-size:20px;letter-spacing:2px;color:#a1a1aa}.status-badge{display:inline-flex;align-items:center;padding:.375rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:capitalize;letter-spacing:.5px;background:#f1f5f9;color:#475569;line-height:1;margin:0}.status-badge.size-small{padding:.25rem .5rem;font-size:.625rem}.status-badge.size-large{padding:.5rem 1rem;font-size:.875rem}.status-open{background:#06b6d4;color:#fff}.status-awarded{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border:2px solid #f59e0b;font-weight:700;box-shadow:0 2px 8px #f59e0b4d}.status-rejected{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.status-review{background:#e0e7ff;color:#3730a3}.search-page{padding:2rem;max-width:1200px;margin:0 auto}.search-card{margin-bottom:1.5rem}.search-input-container{position:relative;display:flex;align-items:center;gap:1rem}.search-icon{font-size:1.5rem;color:#9ca3af}.search-input{flex:1;padding:1rem;font-size:1.125rem;border:2px solid #e5e7eb;border-radius:.5rem;outline:none;transition:all .2s}.search-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.loading-spinner{font-size:1.5rem;animation:spin 1s linear infinite}.search-hint{margin-top:1rem;padding:.75rem;background-color:#fef3c7;border:1px solid #fde047;border-radius:.375rem;font-size:.875rem;color:#854d0e}.search-meta{margin-top:1rem;padding-top:1rem;border-top:1px solid #e5e7eb}.results-count{font-size:.875rem;font-weight:500;color:#6b7280}.search-filters{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:#fff;border:2px solid #e5e7eb;border-radius:9999px;font-size:.9375rem;font-weight:500;color:#6b7280;cursor:pointer;transition:all .2s}.filter-btn:hover{border-color:#2563eb;color:#2563eb;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb1a}.filter-btn.active{background-color:#2563eb;border-color:#2563eb;color:#fff}.filter-icon{font-size:1rem}.filter-count{background-color:#0000001a;padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.filter-btn.active .filter-count{background-color:#ffffff4d}.search-results{display:flex;flex-direction:column;gap:2rem}.results-section{background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.5rem}.section-title{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 1.25rem;display:flex;align-items:center;gap:.75rem}.section-icon{font-size:1.5rem}.results-list{display:flex;flex-direction:column;gap:1rem}.result-card{display:block;padding:1.25rem;background:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;text-decoration:none;color:inherit;transition:all .2s;cursor:pointer}.result-card:hover{background:#fff;border-color:#2563eb;transform:translate(4px);box-shadow:0 2px 8px #2563eb1a}.result-card.non-clickable{cursor:default}.result-card.non-clickable:hover{transform:none;border-color:#e5e7eb;box-shadow:none}.result-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.result-header h3{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0;line-height:1.5}.result-description{font-size:.875rem;color:#6b7280;margin:0 0 .75rem;line-height:1.5}.result-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem;color:#6b7280}.search-tips{padding:1.5rem}.search-tips h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem}.search-tips ul{margin:0;padding-left:1.5rem;list-style:disc}.search-tips li{font-size:.9375rem;color:#6b7280;line-height:1.75;margin-bottom:.5rem}.search-tips li:last-child{margin-bottom:0}@media(max-width:768px){.search-page{padding:1rem}.page-header h1{font-size:1.5rem}.search-input{font-size:1rem;padding:.875rem}.search-filters{gap:.5rem}.filter-btn{padding:.625rem 1rem;font-size:.875rem}.filter-icon{font-size:.875rem}.result-header,.result-meta{flex-direction:column;gap:.5rem}.section-title{font-size:1.125rem}.section-icon{font-size:1.25rem}}.view-toggle{display:flex;gap:4px;background:var(--bg-tertiary, #f1f5f9);padding:4px;border-radius:8px}.view-toggle-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-secondary, #64748b);transition:all .2s ease}.view-toggle-btn:hover{background:var(--bg-secondary, #e2e8f0);color:var(--text-primary, #1e293b)}.view-toggle-btn.active{background:var(--bg-primary, #ffffff);color:var(--primary, #3b82f6);box-shadow:0 1px 3px #0000001a}.view-toggle-btn svg{width:18px;height:18px}.notifications-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.notifications-table{width:100%;border-collapse:collapse;font-size:14px}.notifications-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.notifications-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.notifications-table td{padding:14px 16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.notifications-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.notifications-table tbody tr.unread{background:var(--primary-light, #eff6ff)}.notifications-table tbody tr.unread:hover{background:#e0effe}.notifications-table .status-cell{width:40px;text-align:center}.notifications-table .unread-indicator{color:var(--primary, #3b82f6);font-size:10px}.notifications-table .read-indicator{color:var(--text-tertiary, #94a3b8);font-size:10px}.notifications-table .title-cell{max-width:250px}.notifications-table .notification-link{color:var(--text-primary, #1e293b);font-weight:500;text-decoration:none}.notifications-table .notification-link:hover{color:var(--primary, #3b82f6)}.notifications-table .notification-title{font-weight:500;color:var(--text-primary, #1e293b)}.notifications-table .message-cell{color:var(--text-secondary, #64748b);max-width:300px}.notifications-table .type-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase}.notifications-table .type-badge.type-rfp{background:#dbeafe;color:#1e40af}.notifications-table .type-badge.type-bid{background:#dcfce7;color:#166534}.notifications-table .type-badge.type-system{background:#f1f5f9;color:#475569}.notifications-table .date-cell{white-space:nowrap;color:var(--text-secondary, #64748b);font-size:13px}.notifications-table .actions-cell{white-space:nowrap}.notifications-table .mark-read-btn{background:none;border:1px solid var(--border-color, #e2e8f0);color:var(--text-secondary, #64748b);padding:4px 10px;border-radius:6px;cursor:pointer;font-size:12px;margin-right:8px;transition:all .2s ease}.notifications-table .mark-read-btn:hover{background:var(--bg-tertiary, #f1f5f9);color:var(--text-primary, #1e293b)}.notifications-table .view-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;font-size:13px;padding:4px 8px}.notifications-table .view-link:hover{text-decoration:underline}@media(max-width:768px){.notifications-table-container{border-radius:0;border-left:none;border-right:none}}.notifications-page{padding:0;max-width:1280px;margin:0 auto}.notifications-header-wrapper{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.mark-all-btn{padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;flex-shrink:0;align-self:flex-start}.mark-all-btn:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.mark-all-btn:active{transform:translateY(0)}.notifications-search{margin-bottom:1.5rem}.search-bar{position:relative;display:flex;align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;padding:.75rem 1rem;transition:all .2s}.search-bar:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.search-icon{font-size:1.125rem;color:#9ca3af;margin-right:.75rem}.search-input{flex:1;border:none;outline:none;font-size:.9375rem;color:#1a1a1a;background:transparent}.search-input::placeholder{color:#9ca3af}.clear-search{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#f3f4f6;border:none;border-radius:50%;color:#6b7280;font-size:.875rem;cursor:pointer;transition:all .2s;margin-left:.5rem}.clear-search:hover{background:#e5e7eb;color:#1a1a1a}.notifications-content{margin-top:1.5rem}.notifications-list{display:flex;flex-direction:column;gap:.75rem}.notification-link{text-decoration:none;color:inherit;display:block}.notification-item{display:flex;gap:1rem;padding:1.25rem;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s;cursor:pointer}.notification-item:hover{border-color:#2563eb;box-shadow:0 2px 8px #2563eb1a;transform:translateY(-2px)}.notification-item.unread{background-color:#eff6ff;border-color:#93c5fd}.notification-item.unread:hover{background-color:#dbeafe}.notification-icon{font-size:1.5rem;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border-radius:50%}.notification-item.unread .notification-icon{background-color:#dbeafe}.notification-content{flex:1;min-width:0}.notification-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.notification-header h4{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0;line-height:1.5}.unread-dot{width:8px;height:8px;background-color:#3b82f6;border-radius:50%;flex-shrink:0}.notification-message{font-size:.875rem;color:#6b7280;margin:0 0 .75rem;line-height:1.5}.notification-meta{display:flex;align-items:center;gap:1rem;font-size:.75rem;color:#9ca3af}.notification-time{display:flex;align-items:center;gap:.25rem}.notification-type{padding:.25rem .75rem;background-color:#f3f4f6;border-radius:9999px;font-weight:500;color:#6b7280;text-transform:capitalize}.notification-actions{display:flex;align-items:center;gap:.5rem}.mark-read-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#2563eb;color:#fff;border:none;border-radius:50%;font-size:1rem;cursor:pointer;transition:all .2s;flex-shrink:0}.mark-read-btn:hover{background-color:#1d4ed8;transform:scale(1.1)}.mark-read-btn:active{transform:scale(.95)}.read-more-btn{padding:.375rem .75rem;background-color:#f3f4f6;color:#374151;border:1px solid #e5e7eb;border-radius:.375rem;font-size:.8125rem;font-weight:500;cursor:pointer;transition:all .2s;flex-shrink:0}.read-more-btn:hover{background-color:#e5e7eb;border-color:#d1d5db}.empty-state{padding:3rem;text-align:center}.empty-state h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.empty-state p{font-size:1rem;color:#666;margin:0}.loading-state{padding:3rem;text-align:center;color:#666;font-size:1rem}@media(max-width:768px){.notifications-page{padding:0}.notifications-header-wrapper{flex-direction:column;align-items:stretch}.mark-all-btn{width:100%;margin-top:0}.search-bar{padding:.625rem .875rem}.search-icon{font-size:1rem;margin-right:.5rem}.search-input{font-size:.875rem}.notification-item{padding:1rem}.notification-icon{width:36px;height:36px;font-size:1.25rem}.notification-header h4{font-size:.9375rem}.notification-message{font-size:.8125rem}.notification-meta{flex-direction:column;align-items:flex-start;gap:.25rem}}.help-page-active .main-content,.help-page-active .main-content-wrapper{overflow:hidden!important;height:100vh!important;padding:0!important}.help-container{padding:0;width:100%;max-width:1280px;margin:0 auto;height:100vh;display:flex;flex-direction:column;overflow:hidden;position:relative}.help-container .page-content-header{flex-shrink:0;position:relative;z-index:1}.help-layout{display:flex;gap:2rem;align-items:flex-start;flex:1;min-height:0;overflow:hidden;position:relative}.help-nav{width:240px;flex-shrink:0;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;height:100%;overflow-y:auto;overscroll-behavior:contain}.help-nav::-webkit-scrollbar{width:6px}.help-nav::-webkit-scrollbar-track{background:transparent}.help-nav::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.help-nav::-webkit-scrollbar-thumb:hover{background:#9ca3af}.help-nav-title{margin:0 0 1rem;font-size:.875rem;font-weight:600;color:#667eea;text-transform:uppercase;letter-spacing:.5px}.help-nav-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.help-nav-list li{margin:0}.help-nav-list a{display:block;padding:.625rem .75rem;color:#4b5563;text-decoration:none;font-size:.875rem;border-radius:6px;transition:all .2s;line-height:1.4}.help-nav-list a:hover{background-color:#f3f4f6;color:#667eea}.help-nav-list a.active{background-color:#f0f4ff;color:#667eea;font-weight:500}.help-content{flex:1;display:flex;flex-direction:column;gap:35px;min-width:0;overflow-y:auto;overflow-x:hidden;height:100%;padding-right:.5rem;padding-bottom:8rem;overscroll-behavior:contain}.help-content>.help-section:last-child{margin-bottom:0}.help-content::-webkit-scrollbar{width:8px}.help-content::-webkit-scrollbar-track{background:transparent}.help-content::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}.help-content::-webkit-scrollbar-thumb:hover{background:#9ca3af}.help-section{background:#fff;padding:35px;border-radius:12px}.help-section h2{margin:0 0 20px;color:#667eea;font-size:24px;padding-bottom:15px}.help-section p{color:#555;line-height:1.8;margin:15px 0}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:25px}.feature-card{background:#f8f9fa;padding:25px;border-radius:10px;text-align:center;transition:all .3s ease}.feature-card:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.feature-icon{font-size:40px;display:block;margin-bottom:15px}.feature-card h3{margin:0 0 10px;color:#333;font-size:18px}.feature-card p{margin:0;color:#666;font-size:14px;line-height:1.6}.guide-list{margin:20px 0 0;padding-left:25px;color:#555}.guide-list li{margin-bottom:20px;line-height:1.8}.guide-list strong{color:#333;display:block;margin-bottom:5px}.workflow-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;margin-top:25px}.workflow-card{background:#f8f9fa;padding:25px;border-radius:10px}.workflow-card h3{margin:0 0 20px;color:#667eea;font-size:18px;text-align:center}.workflow-steps{display:flex;flex-direction:column;gap:10px}.step{background:#fff;padding:12px 16px;border-radius:6px;color:#555;font-size:14px;border-left:3px solid #e4e4e7}.roles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:25px}.role-card{background:#f8f9fa;padding:25px;border-radius:10px}.role-card h3{margin:0 0 12px;color:#667eea;font-size:18px}.role-card p{margin:0;color:#666;line-height:1.6;font-size:14px}.compliance-list{margin:20px 0 0;padding-left:25px;color:#555}.compliance-list li{margin-bottom:12px;line-height:1.6}.compliance-list strong{color:#333}.support-info p{background:#f8f9fa;padding:15px 20px;border-radius:8px;margin:15px 0;border-left:3px solid #e4e4e7}.support-info strong{color:#667eea;display:block;margin-bottom:8px}.best-practices{margin:20px 0 0;padding-left:25px;color:#555}.best-practices li{margin-bottom:12px;line-height:1.6}@media(max-width:1024px){.help-nav{display:none}.help-layout{gap:0}}@media(max-width:768px){.help-container{padding:0;height:calc(100vh - 100px)}.help-section{padding:25px 20px}.features-grid,.roles-grid,.workflow-cards{grid-template-columns:1fr}}.dashboard{padding:0;width:100%;max-width:1280px;margin:0 auto;box-sizing:border-box}.dashboard-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.dashboard-header h1{margin:0 0 8px;font-family:Inter,sans-serif;font-size:30px;font-weight:700;line-height:36px;color:#18181b}.dashboard-subtitle{font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:24px;color:#71717a;margin:0}.dashboard-subtitle strong{color:var(--primary-color, #667eea);text-transform:capitalize}.dashboard-content{width:100%}.quick-stats{display:flex;flex-direction:row;gap:24px;margin-bottom:30px;flex-wrap:wrap;align-items:stretch}.stat-card{background:#fff;padding:16px;border-radius:8px;box-shadow:none;border:none;display:flex;flex-direction:column;gap:16px;flex:1 1 0;min-width:0;min-height:0;align-items:flex-start}.stat-card .stat-card-header{order:1}.stat-card .stat-value,.stat-card .compliance-badge{order:2;margin-top:0}.stat-card-link{text-decoration:none;color:inherit;cursor:pointer;transition:all .2s ease}.stat-card-link *{text-decoration:none}.stat-card-link:hover{transform:none;box-shadow:none;text-decoration:none}.stat-card-link:hover *{text-decoration:none}.stat-card-header{display:flex;align-items:flex-start;justify-content:flex-start;width:100%;align-self:stretch;gap:8px;box-sizing:border-box}.stat-card-header .stat-icon{margin-left:auto;align-self:flex-start;margin-top:0}.stat-label{color:#87929b;font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:normal;margin:0;padding:0;text-align:left;align-self:flex-start;flex-shrink:0}.stat-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon svg{display:block;flex-shrink:0}.stat-icon-green{background:#15a445}.stat-icon-blue{background:#39a9f4}.stat-icon-yellow{background:#c7ae0d}.stat-icon-purple{background:#b300b9}.stat-icon-teal{background:#4effdf}.stat-value{font-family:Inter,sans-serif;font-size:28px;font-weight:600;color:#575b65;margin:0;padding:0;line-height:normal;white-space:nowrap;align-self:flex-start;text-align:left;width:100%;box-sizing:border-box}.stat-card-compliance{min-width:0}.compliance-badge{font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:normal;padding:6px 12px;border-radius:24px;text-align:left;white-space:nowrap;align-self:flex-start;width:auto;box-sizing:border-box;display:inline-block}.compliance-badge.compliance-approved{background:#d5fff7;color:#077460}.compliance-badge.compliance-expiring{background:#fff9e6;color:#856404}.compliance-badge.compliance-non-compliant{background:#ffe5e5;color:#991b1b}.dashboard-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 10px #0000001a;margin-bottom:44px}.dashboard-section.bids-section{padding:0;box-shadow:none;background:transparent}.dashboard-section.bids-section .section-header{margin-bottom:12px;padding-bottom:8px;border-bottom:none}.dashboard-section.bids-section .section-header h2{font-size:20px;font-weight:500;color:#000}.dashboard-section.rfps-section{border:1px solid #dbdfe2;border-radius:12px;padding:16px;box-shadow:none;background:#fff;display:block;width:100%;box-sizing:border-box}.dashboard-section.rfps-section .rfps-header{display:flex;align-items:center;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #dbdfe2;margin-bottom:0}.dashboard-section.rfps-section .rfps-title{font-family:Inter,sans-serif;font-size:18px;font-weight:700;line-height:32px;color:#18181b;margin:0}.dashboard-section.rfps-section .rfps-list{display:flex!important;flex-direction:column!important;width:100%!important;margin:0!important;padding:0!important;grid-template-columns:none!important;gap:0!important}.dashboard-section.rfps-section .rfps-item{display:flex!important;flex-direction:row!important;align-items:center!important;gap:20px!important;width:100%!important;min-width:0!important;padding:16px 0!important;margin:0!important;text-decoration:none!important;color:inherit!important;transition:background-color .2s ease!important;border:none!important;border-bottom:1px solid #e1e4e7!important;border-radius:0!important;outline:none!important;box-sizing:border-box!important;grid-template-columns:none!important;background:transparent!important;box-shadow:none!important}.dashboard-section.rfps-section .rfps-item:last-child{border-bottom:none!important}.dashboard-section.rfps-section .rfps-item:hover{background-color:#f8f9fa!important}.dashboard-section.rfps-section .rfps-item:focus,.dashboard-section.rfps-section .rfps-item:active,.dashboard-section.rfps-section .rfps-item:visited{text-decoration:none!important;color:inherit!important;outline:none!important}.dashboard-section.rfps-section .rfps-status-badge{background:#d4fffe!important;color:#20a8de!important;padding:6px 12px!important;border-radius:32px!important;font-family:Inter,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:normal!important;white-space:nowrap!important;text-transform:capitalize!important;flex-shrink:0!important}.dashboard-section.rfps-section .rfps-status-badge.rfps-status-open,.dashboard-section.rfps-section .rfps-status-badge.rfps-status-published{background:#d4fffe!important;color:#20a8de!important}.dashboard-section.rfps-section .rfps-status-badge.rfps-status-draft{background:#fff3cd!important;color:#856404!important}.dashboard-section.rfps-section .rfps-status-badge.rfps-status-closed{background:#f8d7da!important;color:#721c24!important}.dashboard-section.rfps-section .rfps-item-title{flex:1!important;min-width:0!important;font-family:Inter,sans-serif!important;font-size:18px!important;font-weight:400!important;line-height:normal!important;color:#2e2f35!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.dashboard-section.rfps-section .rfps-item-meta{display:flex!important;gap:24px!important;align-items:center!important;flex-shrink:0!important;margin-left:auto!important}.dashboard-section.rfps-section .rfps-meta-item{display:flex!important;gap:6px!important;align-items:center!important;flex-shrink:0!important}.dashboard-section.rfps-section .rfps-location-item{margin-bottom:4px!important;flex-shrink:1!important;min-width:0!important}.dashboard-section.rfps-section .rfps-location-text{font-size:13px!important;color:#52525b!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:340px!important}.dashboard-section.rfps-section .rfps-location-address{color:#87929b!important}.dashboard-section.rfps-section .rfps-meta-text{font-family:Inter,sans-serif!important;font-size:14px!important;font-weight:400!important;line-height:normal!important;color:#2e2f35!important;white-space:nowrap!important}.rfps-meta-group{display:flex;gap:8px;align-items:flex-end;justify-content:flex-end}.rfps-meta-label-group{display:flex;gap:6px;align-items:center}.rfps-meta-label{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:normal;color:#87929b;white-space:nowrap}.rfps-meta-value{font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:normal;color:#2e2f35;white-space:nowrap}.section-header h2{margin:0;color:#333;font-size:22px}.section-link{color:#667eea;text-decoration:none;font-weight:600;font-size:14px;transition:color .2s}.section-link:hover{color:#5568d3}.items-list{display:flex;flex-direction:column;gap:12px}.item-card{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f8f9fa;border-radius:8px;text-decoration:none;transition:all .2s ease}.item-card:hover{background:#e9ecef;transform:translate(4px)}.item-title{font-size:16px;font-weight:600;color:#333}.item-meta{display:flex;align-items:center;gap:12px}.item-date{font-size:14px;color:#666}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge.open,.status-badge.published{background:#d4edda;color:#155724}.status-badge.draft{background:#fff3cd;color:#856404}.status-badge.under_review{background:#cfe2ff;color:#084298}.status-badge.awarded,.status-badge.won{background:#d1e7dd;color:#0f5132}.status-badge.rejected{background:#f8d7da;color:#842029}.loading-section{padding:40px;text-align:center;color:#666}.empty-section{padding:40px;text-align:center}.empty-section p{color:#666;margin-bottom:20px}.action-button{display:inline-block;background:#667eea;color:#fff;padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s}.action-button:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.quick-actions h2{margin-bottom:20px}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.action-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;background:#f8f9fa;border-radius:10px;text-decoration:none;transition:all .2s ease}.action-card:hover{background:#e9ecef;transform:translateY(-4px);box-shadow:0 4px 12px #0000001a;text-decoration:none}.action-icon{font-size:32px;margin-bottom:10px}.action-label{font-size:14px;font-weight:600;text-align:center}.action-card.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.action-card.primary .action-label{color:#fff}.action-card.primary:hover{transform:translateY(-4px);box-shadow:0 6px 20px #667eea66}.dashboard-section.alert-section{border-left:4px solid #ffc107;background:linear-gradient(to right,#fff9e6,#fff 50%)}.alert-section .section-header h2{color:#856404}.activity-timeline{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;gap:16px;padding:16px;background:#f8f9fa;border-radius:8px;transition:all .2s ease;border-left:3px solid transparent}.activity-item:hover{background:#e9ecef;border-left-color:#667eea;transform:translate(4px)}.activity-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;flex-shrink:0}.activity-icon.award{background:linear-gradient(135deg,gold,#ffed4e)}.activity-icon.bid{background:linear-gradient(135deg,#4caf50,#8bc34a)}.activity-icon.publish{background:linear-gradient(135deg,#667eea,#764ba2)}.activity-content{flex:1;min-width:0}.activity-title{font-size:15px;font-weight:600;color:#333;margin-bottom:6px}.activity-title a{color:#667eea;text-decoration:none;font-weight:700}.activity-title a:hover{text-decoration:underline}.activity-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:13px;color:#666}.activity-meta .vendor-name{font-weight:600;color:#495057}.activity-meta .activity-amount{color:#28a745;font-weight:700}.activity-meta .activity-time{color:#999;font-style:italic}.urgency-badge{padding:6px 14px;border-radius:16px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.urgency-badge.critical{background:#dc3545;color:#fff;animation:pulse 2s infinite}.urgency-badge.warning{background:#ffc107;color:#856404}.item-card.urgent{border-left:4px solid #e4e4e7;background:linear-gradient(to right,#fff5f5,#f8f9fa 50%)}.item-card.urgent:hover{background:linear-gradient(to right,#ffe5e5,#e9ecef 50%)}.item-content{flex:1}.item-subtitle{font-size:13px;color:#666;margin-top:4px}@media(max-width:1024px){.dashboard{padding:0}}@media(max-width:768px){.dashboard{padding:0}.dashboard-header h1{font-size:24px}.quick-stats{flex-direction:column;gap:16px}.stat-card{flex:1 1 100%}.actions-grid{grid-template-columns:repeat(2,1fr)}.dashboard-section{padding:20px}}@media(max-width:480px){.dashboard{padding:0}.dashboard-header h1{font-size:20px}.dashboard-section{padding:15px}.stat-card{padding:20px}.actions-grid{grid-template-columns:1fr}}.not-applied-banner{background:linear-gradient(135deg,#f0f4ff,#e0e7ff);border:2px solid #e4e4e7;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 12px #667eea26}.banner-content{display:flex;align-items:flex-start;gap:20px}.banner-icon{font-size:48px;flex-shrink:0}.banner-text{flex:1}.banner-text h3{margin:0 0 10px;color:#667eea;font-size:24px}.banner-text>p{margin:8px 0;color:#444;font-size:15px}.required-steps{margin:15px 0;padding:15px;background:#fff;border-left:4px solid #e4e4e7;border-radius:4px}.required-steps p{margin:0 0 10px;color:#333;font-size:14px}.required-steps ol{margin:8px 0 0;padding-left:20px}.required-steps li{margin:6px 0;color:#555;font-size:14px;line-height:1.6}.required-steps a{color:#667eea;text-decoration:none;font-weight:600}.required-steps a:hover{text-decoration:underline}.banner-actions{display:flex;flex-direction:column;gap:10px;flex-shrink:0}.compliance-link-button{background:#fff;color:#667eea;border:2px solid #e4e4e7;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;text-decoration:none;text-align:center;cursor:pointer;transition:all .2s}.compliance-link-button:hover{background:#667eea;color:#fff;transform:translateY(-2px)}.apply-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.apply-button:hover:not(:disabled){background:#5568d3;transform:translateY(-2px)}.apply-button:disabled{opacity:.6;cursor:not-allowed}.denial-banner{background:linear-gradient(135deg,#fff5f5,#ffe5e5);border:2px solid #dc3545;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 12px #dc354526}.denial-content{display:flex;align-items:flex-start;gap:20px}.denial-icon{font-size:48px;flex-shrink:0}.denial-text{flex:1}.denial-text h3{margin:0 0 10px;color:#c82333;font-size:24px}.denial-reason{margin:10px 0;padding:15px;background:#fff;border-left:4px solid #e4e4e7;border-radius:4px;font-size:15px;line-height:1.6}.denial-instructions{margin:10px 0 0;color:#666;font-size:14px}.reapply-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;flex-shrink:0}.reapply-button:hover:not(:disabled){background:#5568d3;transform:translateY(-2px)}.reapply-button:disabled{opacity:.6;cursor:not-allowed}.pending-banner{background:linear-gradient(135deg,#fff9f0,#ffedd5);border:2px solid #e4e4e7;border-radius:12px;padding:25px;margin-bottom:30px;box-shadow:0 4px 12px #ffc10726}.pending-content{display:flex;align-items:flex-start;gap:20px}.pending-icon{font-size:48px;flex-shrink:0}.pending-text{flex:1}.pending-text h3{margin:0 0 10px;color:#856404;font-size:24px}.pending-text p{margin:0;color:#666;font-size:15px;line-height:1.6}.modal-content{background:#fff;padding:30px;border-radius:12px;max-width:600px;width:90%;box-shadow:0 10px 40px #0000004d}.modal-content h3{margin:0 0 20px;color:#333;font-size:22px}.apply-modal-body,.reapply-modal-body{margin-bottom:25px}.apply-modal-body p,.reapply-modal-body p{margin:0 0 10px;color:#333;font-size:15px}.apply-modal-body ul{margin:15px 0;padding-left:25px}.apply-modal-body li{margin:8px 0;color:#555;line-height:1.6}.apply-modal-body .note{margin-top:20px;padding:12px;background:#f8f9ff;border-left:4px solid #e4e4e7;border-radius:4px;font-size:14px;color:#666}.rejection-reason-display{padding:15px;background:#fff5f5;border-left:4px solid #e4e4e7;border-radius:4px;margin-bottom:20px;font-size:14px;line-height:1.6;color:#555;white-space:pre-wrap}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px;background:#f8f9fa;border-radius:8px;transition:background .2s}.checkbox-label:hover{background:#e9ecef}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer}.checkbox-label span{font-size:15px;color:#333;font-weight:500}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.cancel-button,.confirm-apply-button,.confirm-reapply-button{padding:10px 24px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#6c757d;color:#fff}.confirm-apply-button,.confirm-reapply-button{background:#667eea;color:#fff}.confirm-apply-button:hover:not(:disabled),.confirm-reapply-button:hover:not(:disabled){background:#5568d3}.confirm-apply-button:disabled,.confirm-reapply-button:disabled{opacity:.6;cursor:not-allowed}.bids-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;box-sizing:border-box;max-width:100%}.bid-card-top-right-group{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0;margin-left:10px}.bid-card-price-badge--awarded{background:#fff8e1!important}.bid-card-price-badge--awarded .bid-card-price{color:#b45309!important}.bid-card-price-badge--outbid{background:#f3f4f6!important}.bid-card-price-badge--outbid .bid-card-price{color:#6b7280!important}.bid-card-price-badge--withdrawn{background:#fef2f2!important}.bid-card-price-badge--withdrawn .bid-card-price{color:#b91c1c!important}.bid-card-price-badge--draft{background:#eff6ff!important}.bid-card-price-badge--draft .bid-card-price{color:#2563eb!important}.bid-status-chip{display:inline-flex;align-items:center;font-size:11px;font-weight:600;font-family:Inter,sans-serif;padding:3px 10px;border-radius:32px;white-space:nowrap}.bid-card{background:#fff;border:1.5px solid #e1e4e7;border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:8px;text-decoration:none!important;color:inherit;transition:box-shadow .2s ease,transform .2s ease;box-sizing:border-box;outline:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent!important;position:relative;overflow:visible}.bid-card *{outline:none!important}.bid-card:hover{box-shadow:0 2px 8px #0000001a!important;transform:translateY(-2px);outline:none!important}.bid-card:focus,.bid-card:active,.bid-card:focus-visible,.bid-card:focus-within,.bid-card:visited,.bid-card:link{outline:none!important;text-decoration:none!important;-webkit-tap-highlight-color:transparent!important}.bid-card--submitted{border-color:#93c5fd}.bid-card--awarded{border-color:#16a34a}.bid-card--outbid{border-color:#94a3b8}.bid-card--withdrawn{border-color:#f87171}.bid-card--draft{border-color:#d1d5db}.bid-card-border-tag{position:absolute;top:0;right:14px;transform:translateY(-50%);padding:2px 10px;border-radius:10px;font-size:11px;font-weight:600;letter-spacing:.2px;white-space:nowrap;pointer-events:none}.bid-card-border-tag--submitted{background:#eff6ff;color:#2563eb;border:1.5px solid #93c5fd}.bid-card-border-tag--awarded{background:#dcfce7;color:#16a34a;border:1.5px solid #16a34a}.bid-card-border-tag--outbid{background:#f1f5f9;color:#64748b;border:1.5px solid #94a3b8}.bid-card-border-tag--withdrawn{background:#fef2f2;color:#dc2626;border:1.5px solid #f87171}.bid-card-border-tag--draft{background:#f9fafb;color:#6b7280;border:1.5px solid #d1d5db}.bid-card-top{display:flex;align-items:center;justify-content:space-between;padding:8px;width:100%;box-sizing:border-box}.bid-card-title{font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:normal;color:#2e2f35;margin:0;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bid-card-price-badge{background:#d4ffdd;border-radius:32px;padding:6px 12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:10px}.bid-card-price{font-family:Inter,sans-serif;font-size:20px;font-weight:600;line-height:normal;color:#009b34;margin:0;white-space:nowrap}.bid-card-middle{padding:8px;width:100%;box-sizing:border-box}.bid-card-info{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:normal;color:#87929b;margin:0;width:100%;word-break:break-word}.bid-card-bottom{border-top:1px solid rgba(106,120,135,.2);display:flex;align-items:flex-end;justify-content:space-between;padding:12px 8px 8px;width:100%;box-sizing:border-box}.bid-card-meta{display:flex;flex-direction:column;gap:2px;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:normal;color:#87929b;flex:1;min-width:0}.bid-card-meta-text{margin:0;white-space:nowrap;font-size:13px;color:#6b7280}.bid-card-meta-closing{font-size:12px;color:#9ca3af}.bid-card-meta-separator{margin:0;color:#87929b}.bid-card-details-link{display:flex;align-items:center;gap:4px;flex-shrink:0;cursor:pointer}.bid-card-details-text{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:normal;color:#0397f9;text-decoration:underline;text-underline-position:from-font;margin:0;white-space:nowrap}@media(min-width:769px){.bids-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:768px){.bids-grid{grid-template-columns:1fr!important}.bid-card-title{font-size:16px}.bid-card-price{font-size:18px}.bid-card-meta{flex-wrap:wrap;gap:4px}.dashboard-section.rfps-section .rfps-item{flex-wrap:wrap!important;gap:12px!important;padding:16px 0!important}.dashboard-section.rfps-section .rfps-item-title{flex-basis:100%!important;order:2!important}.dashboard-section.rfps-section .rfps-item-meta{flex-basis:100%!important;order:3!important;gap:16px!important;margin-left:0!important}.rfps-meta-group{flex-direction:column;align-items:flex-start;gap:4px}}@media(max-width:480px){.dashboard-section.rfps-section .rfps-item{gap:8px!important;padding:12px 0!important}.dashboard-section.rfps-section .rfps-item-title{font-size:16px!important}.dashboard-section.rfps-section .rfps-meta-text{font-size:13px!important}.dashboard-section.rfps-section .rfps-item-meta{gap:12px!important}}.rfps-container{width:100%;max-width:100%;padding:2rem;box-sizing:border-box}.rfps-header{margin-bottom:30px}.rfps-header h1{margin:0 0 10px;color:#333;font-size:28px}.rfps-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:20px}.rfp-card{background:#fff;padding:25px;border-radius:10px;box-shadow:0 2px 10px #0000001a;transition:transform .3s,box-shadow .3s}.rfp-card:hover{transform:translateY(-5px);box-shadow:0 5px 20px #00000026}.rfp-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;gap:15px}.rfp-card h3{margin:0;color:#333;font-size:18px;flex:1}.status-badge.published,.status-badge.open{background:#d4edda;color:#155724}.status-badge.draft{background:#f8f9fa;color:#666}.status-badge.closed{background:#f8d7da;color:#721c24}.status-badge.awarded{background:#d1ecf1;color:#0c5460}.rfp-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #f0f0f0}.rfp-field{display:flex;flex-direction:column}.rfp-field label{font-size:11px;font-weight:600;color:#999;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.rfp-field span{font-size:14px;color:#333;font-weight:500}.rfp-field span.urgent{color:#d63031;font-weight:700}.rfp-description{font-size:14px;color:#666;line-height:1.5;margin-bottom:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.rfp-actions{display:flex;gap:10px}.btn-view,.btn-bid{flex:1;padding:10px;border:none;border-radius:5px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s}.btn-view,a.btn-view,.rfp-actions .btn-view,.rfp-actions a.btn-view{background-color:#fff;color:#667eea;border:2px solid #e4e4e7;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.btn-view:hover,a.btn-view:hover,.rfp-actions .btn-view:hover,.rfp-actions a.btn-view:hover{background-color:#667eea;color:#fff;text-decoration:none}.btn-bid{background:#667eea;color:#fff}.btn-bid:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 2px 10px #667eea4d}.empty-state{background:#fff;padding:60px 20px;border-radius:10px;text-align:center;color:#999;font-size:16px}@media(max-width:1024px){.rfps-container{padding:1.5rem}}@media(max-width:768px){.rfps-container{padding:1rem}.rfps-header h1{font-size:24px}.rfps-list,.rfp-details{grid-template-columns:1fr}}@media(max-width:480px){.rfps-container{padding:.75rem}.rfps-header h1{font-size:20px}.rfps-list{gap:15px}.rfp-card{padding:20px}}.bids-container{max-width:1200px;margin:0 auto;padding:24px}.bids-header{margin-bottom:32px}.bids-header h1{margin:0 0 8px;font-size:32px;color:#111827}.subtitle{margin:0;color:#6b7280;font-size:16px}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:12px;border:2px dashed #e5e7eb}.empty-state p{margin:8px 0;color:#6b7280;font-size:16px}.bids-list{display:grid;gap:20px}.bid-card{background:#fff;border-radius:12px;padding:24px;transition:all .2s;border:1px solid #676767}.bid-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px);border-color:#e4e4e7}.bid-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f3f4f6}.bid-title-section{display:flex;align-items:center;gap:12px}.bid-header h3{margin:0;font-size:20px;color:#111827;font-family:Courier New,monospace}.winning-badge{padding:4px 10px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border-radius:6px;font-size:12px;font-weight:700;box-shadow:0 2px 4px #fbbf244d}.status-draft,.status-unknown{background:#f3f4f6;color:#374151}.status-under_review{background:#fed7aa;color:#9a3412}.status-accepted{background:#d1fae5;color:#065f46}.status-withdrawn{background:#f3f4f6;color:#6b7280}.bid-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:16px}.bid-field{display:flex;flex-direction:column;gap:4px}.bid-field label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.bid-field span{font-size:16px;color:#111827;font-weight:500}.rfp-link{color:#3b82f6;font-family:Courier New,monospace}.amount{color:#059669;font-size:20px!important;font-weight:700!important}.bid-stats{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:12px;padding:12px;background:#f9fafb;border-radius:8px}.stat-badge{padding:6px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.stat-badge-m{margin:6px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb}.stat-badge span{font-size:13px;font-weight:600}.timeline-status.on-time{background:#10b981;color:#fff!important;padding:4px 10px;border-radius:6px}.timeline-status.late{background:#eab308;color:#fff!important;padding:4px 10px;border-radius:6px}.rank{color:#7c3aed;font-weight:700!important}.winning{color:#ea580c;font-weight:700!important}.bid-notes{margin:16px 0;padding:12px;background:#f9fafb;border-radius:6px;border-left:4px solid #e4e4e7}.bid-notes p{margin:0;color:#374151;font-size:14px;line-height:1.5}.bid-actions{display:flex;gap:12px;margin-top:16px}.btn-view,.btn-edit{padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none;text-decoration:none;text-align:center;display:inline-flex;align-items:center;justify-content:center}.btn-view{background:#3b82f6;color:#fff;flex:1}.btn-view:hover{background:#2563eb;transform:translate(2px)}.btn-edit{background:#fff;color:#3b82f6;border:2px solid #3b82f6}.btn-edit:hover{background:#eff6ff}.loading,.error{text-align:center;padding:40px;font-size:18px;color:#6b7280}@media(max-width:768px){.bids-container{padding:16px}.bid-header{flex-direction:column;align-items:flex-start;gap:12px}.bid-details{grid-template-columns:1fr}.bid-actions{flex-direction:column}.btn-view,.btn-edit{width:100%}}.placeholder-page{padding:0;max-width:1280px;margin:0 auto}.placeholder-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e4e4e7;gap:1rem}.placeholder-title-section{flex:1}.placeholder-title-section h1{margin:0 0 8px;font-family:Inter,sans-serif;font-size:30px;font-weight:700;line-height:36px;color:#18181b;display:flex;align-items:center;gap:.75rem}.placeholder-icon{font-size:2.5rem}.placeholder-subtitle{margin:0;font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:24px;color:#71717a}.btn-back{padding:.5rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.875rem;color:#475569;transition:all .2s}.btn-back:hover{background:#f8fafc;border-color:#e4e4e7}.placeholder-actions{display:flex;gap:.75rem}.placeholder-tabs{display:flex;gap:.5rem;border-bottom:1px solid #e2e8f0;margin-bottom:2rem}.tab-button{padding:.75rem 1.5rem;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.875rem;color:#64748b;transition:all .2s}.tab-button:hover{color:#334155}.tab-button.active{color:#667eea;border-bottom-color:#667eea}.placeholder-content{background:transparent;border-radius:0;padding:0;box-shadow:none}.placeholder-default-content{text-align:center;padding:3rem 1rem}.placeholder-message{color:#64748b;font-size:1.125rem;margin-bottom:2rem}.placeholder-mockup{display:flex;gap:2rem;justify-content:center;flex-wrap:wrap}.mockup-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:1.5rem;width:300px;text-align:left}.mockup-line{height:12px;background:#cbd5e1;border-radius:3px;margin-bottom:.75rem}.mockup-line.short{width:60%}.location-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1.25rem;background:#f5f7fa;border:1px solid #e1e5eb;border-radius:10px;margin-bottom:1.5rem;flex-wrap:wrap}.filter-controls{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.filter-label{font-weight:600;font-size:.875rem;color:var(--text-secondary, #5a6578);white-space:nowrap}.filter-group{position:relative}.filter-select{appearance:none;padding:.5rem 2.25rem .5rem .875rem;font-size:.875rem;font-family:inherit;background:#fff;border:1px solid var(--border-color, #d1d5dc);border-radius:6px;cursor:pointer;min-width:140px;color:var(--text-primary, #1a1a2e);transition:all .15s ease;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='%235a6578' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.filter-select:hover:not(:disabled){border-color:#06c}.filter-select:focus{outline:none;border-color:#06c;box-shadow:0 0 0 3px #0066cc26}.filter-select:disabled{opacity:.5;cursor:not-allowed;background-color:#eef1f5}.filter-reset-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem .875rem;font-size:.8125rem;font-family:inherit;font-weight:500;background:#fff;border:1px solid var(--border-color, #d1d5dc);border-radius:6px;color:var(--text-secondary, #5a6578);cursor:pointer;transition:all .15s ease}.filter-reset-btn:hover{background:#fff5f5;border-color:#e53935;color:#e53935}.filter-reset-btn:focus{outline:none;box-shadow:0 0 0 3px #e5393526}.reset-icon{font-size:.75rem;line-height:1}.filter-counts{font-size:.875rem;color:var(--text-secondary, #5a6578);white-space:nowrap}.filter-counts strong{color:var(--text-primary, #1a1a2e);font-weight:600}.count-filtered{color:#06c}@media(max-width:768px){.location-filter-bar{flex-direction:column;align-items:stretch;gap:.875rem}.filter-controls{flex-direction:column;align-items:stretch}.filter-label{margin-bottom:.25rem}.filter-select{width:100%}.filter-reset-btn{width:100%;justify-content:center}.filter-counts{text-align:center;padding-top:.5rem;border-top:1px solid #e1e5eb}}.location-filter-bar.compact{padding:.5rem .875rem;gap:.5rem}.location-filter-bar.compact .filter-select{padding:.375rem 2rem .375rem .625rem;font-size:.8125rem;min-width:120px}.location-filter-bar.compact .filter-label{font-size:.8125rem}.location-filter-bar.compact .filter-reset-btn{padding:.375rem .625rem;font-size:.75rem}[data-theme=dark] .location-filter-bar{background:#1e1e2e;border-color:var(--border-color, #3a3a4a)}[data-theme=dark] .filter-select{background:#2a2a3a;border-color:var(--border-color, #3a3a4a);color:var(--text-primary, #e1e1e6);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='%23a1a1aa' d='M2 4l4 4 4-4'/%3E%3C/svg%3E")}[data-theme=dark] .filter-select:disabled{background-color:#1a1a2e}[data-theme=dark] .filter-reset-btn{background:#2a2a3a;border-color:var(--border-color, #3a3a4a);color:var(--text-secondary, #a1a1aa)}[data-theme=dark] .filter-reset-btn:hover{background:#e5393526;border-color:#e53935;color:#e53935}[data-theme=dark] .filter-counts{color:var(--text-secondary, #a1a1aa)}[data-theme=dark] .filter-counts strong{color:var(--text-primary, #e1e1e6)}.status-pill{display:inline-flex;align-items:center;justify-content:center;border-radius:32px;font-family:Inter,sans-serif;font-weight:500;white-space:nowrap;line-height:1}.status-pill-sm{padding:4px 10px;font-size:11px}.status-pill-md{padding:6px 12px;font-size:13px}.status-pill-lg{padding:8px 16px;font-size:14px}.status-pill{background:#f4f4f5;color:#71717a}.info-grid{display:grid;width:100%}.info-grid-cols-1{grid-template-columns:1fr}.info-grid-cols-2{grid-template-columns:repeat(2,1fr)}.info-grid-cols-3{grid-template-columns:repeat(3,1fr)}.info-grid-cols-4{grid-template-columns:repeat(4,1fr)}.info-grid-gap-sm{gap:8px 12px}.info-grid-gap-md{gap:12px 16px}.info-grid-gap-lg{gap:16px 24px}@media(max-width:1024px){.info-grid-cols-4,.info-grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.info-grid-cols-2,.info-grid-cols-3,.info-grid-cols-4{grid-template-columns:1fr}}.info-field{display:flex;align-items:flex-start;gap:6px;min-width:0;line-height:1.4}.info-field-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;color:#71717a;margin-top:2px}.info-field-content{display:flex;min-width:0;flex:1}.info-field-horizontal .info-field-content{flex-direction:row;align-items:baseline;gap:6px;flex-wrap:wrap}.info-field-horizontal .info-field-label{color:#71717a;font-size:13px;font-weight:500;white-space:nowrap}.info-field-horizontal .info-field-label:after{content:":"}.info-field-horizontal .info-field-value{color:#18181b;font-size:13px;font-weight:400;word-break:break-word;flex:1;min-width:0}.info-field-vertical .info-field-content{flex-direction:column;gap:4px}.info-field-vertical .info-field-label{color:#71717a;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.info-field-vertical .info-field-value{color:#18181b;font-size:14px;font-weight:500;word-break:break-word}.info-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b;display:flex;align-items:center;gap:.5rem}.info-icon{font-size:1rem}.info-value{font-size:.875rem;color:#1e293b;font-weight:500}.info-field-emphasized .info-field-value{font-weight:600;color:#18181b}.info-field-currency .info-field-value,.info-field.currency .info-value{font-family:Inter,monospace;font-weight:600;color:#667eea}.info-field.large .info-value{font-size:1.125rem;font-weight:600}.info-field-status .info-field-value{font-weight:500}.info-field-muted .info-field-value{color:#71717a}.info-field-warning .info-field-value{color:#d97706;font-weight:600}.info-field-error .info-field-value{color:#dc2626;font-weight:600}.info-field-success .info-field-value{color:#16a34a;font-weight:600}.add-card{display:flex;align-items:center;justify-content:center;min-height:180px;background:var(--bg-secondary, #f8fafc);border:2px dashed var(--border-color, #cbd5e1);border-radius:12px;cursor:pointer;transition:all .2s ease;width:100%;padding:24px}.add-card:hover{background:var(--bg-tertiary, #f1f5f9);border-color:var(--primary, #3b82f6);transform:translateY(-2px)}.add-card:hover .add-card-icon{background:var(--primary, #3b82f6);color:#fff}.add-card:hover .add-card-label{color:var(--primary, #3b82f6)}.add-card-content{display:flex;flex-direction:column;align-items:center;gap:12px}.add-card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:28px;font-weight:300;background:var(--bg-tertiary, #e2e8f0);color:var(--text-secondary, #64748b);border-radius:50%;transition:all .2s ease}.add-card-label{font-size:14px;font-weight:500;color:var(--text-secondary, #64748b);transition:color .2s ease}.add-card-row{cursor:pointer;transition:background .2s ease}.add-card-row:hover{background:var(--bg-tertiary, #f1f5f9)}.add-card-row-cell{padding:16px!important;border-top:2px dashed var(--border-color, #cbd5e1)!important;background:var(--bg-secondary, #f8fafc)}.add-card-row:hover .add-card-row-cell{border-color:var(--primary, #3b82f6)!important;background:var(--bg-tertiary, #f1f5f9)}.add-card-row-content{display:flex;align-items:center;justify-content:center;gap:8px}.add-card-row .add-card-icon{width:28px;height:28px;font-size:18px}.add-card-row:hover .add-card-icon{background:var(--primary, #3b82f6);color:#fff}.add-card-row:hover .add-card-label{color:var(--primary, #3b82f6)}.add-card.compact{min-height:100px;padding:16px}.add-card.compact .add-card-icon{width:36px;height:36px;font-size:22px}.add-card.compact .add-card-label{font-size:13px}.add-card.small{min-height:60px;padding:12px}.add-card.small .add-card-content{flex-direction:row;gap:8px}.add-card.small .add-card-icon{width:28px;height:28px;font-size:18px}.add-card.small .add-card-label{font-size:13px}.rfps-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.rfps-table{width:100%;border-collapse:collapse;font-size:14px}.rfps-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.rfps-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.rfps-table th:first-child{padding-left:16px}.rfps-table td{padding:12px 16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.rfps-table td:first-child{padding-left:12px}.rfps-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.rfps-table tbody tr:last-child td{border-bottom:none}.rfp-title-cell{max-width:250px}.rfp-title-link{color:var(--text-primary, #1e293b);font-weight:500;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rfp-title-link:hover{color:var(--primary, #3b82f6)}.rfp-type-tag{display:inline-block;padding:4px 8px;background:var(--bg-tertiary, #f1f5f9);color:var(--text-secondary, #64748b);border-radius:4px;font-size:12px;font-weight:500}.location-cell{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-secondary, #64748b)}.date-cell{white-space:nowrap;color:var(--text-secondary, #64748b)}.budget-cell{font-weight:500;color:var(--text-primary, #1e293b)}.bids-cell .bid-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;background:var(--bg-tertiary, #f1f5f9);border-radius:14px;font-weight:600;color:var(--text-primary, #1e293b)}.qa-cell .qa-count{display:inline-flex;align-items:center;gap:4px;font-weight:500}.qa-cell .qa-count.has-unanswered{color:var(--warning, #f59e0b)}.qa-cell .unanswered-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--warning, #f59e0b);color:#fff;border-radius:9px;font-size:11px;font-weight:600}.no-data{color:var(--text-tertiary, #94a3b8)}.actions-cell{white-space:nowrap}.action-buttons{display:flex;align-items:center;gap:8px}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-size:14px;transition:background .2s ease}.action-btn:hover{background:var(--bg-tertiary, #e2e8f0)}.action-btn.delete-btn:hover{background:var(--danger-light, #fef2f2)}.view-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;font-size:13px;padding:6px 12px;border-radius:6px;transition:background .2s ease}.view-link:hover{background:var(--primary-light, #eff6ff)}@media(max-width:1200px){.rfps-table th,.rfps-table td{padding:12px 10px}.location-cell{max-width:120px}}@media(max-width:768px){.rfps-table-container{border-radius:0;border-left:none;border-right:none}}.rfp-list-page{width:100%;max-width:100%;padding:0}.header-content .subtitle{margin:0;color:#64748b;font-size:1rem;display:flex;align-items:center;gap:.5rem}.info-link{background:none;border:none;color:#667eea;font-size:.875rem;cursor:pointer;padding:0;font-weight:500;transition:color .2s}.info-link:hover{color:#5568d3;text-decoration:underline}.rfp-controls-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;gap:1rem}.btn-primary{background:#667eea;color:#fff;white-space:nowrap;flex-shrink:0}.btn-secondary{background:#64748b;color:#fff}.btn-secondary:hover{background:#475569}.btn-sm{padding:.375rem .75rem;font-size:.8125rem}.filter-section{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.filter-label{font-size:.875rem;font-weight:600;color:#64748b}.location-filter-select{padding:.5rem 1rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#1e293b;background:#fff;cursor:pointer;transition:all .2s;min-width:250px}.location-filter-select:hover{border-color:#e4e4e7}.location-filter-select:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.rfp-status-flow{display:inline-flex;background:#fff;border-radius:12px;padding:.5rem .75rem;box-shadow:0 1px 3px #0000001a}.status-flow-container{display:flex;align-items:center;gap:.25rem}.status-flow-step{display:flex;align-items:center;gap:.5rem}.status-flow-arrow{display:flex;align-items:center;color:#cbd5e1}.status-flow-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;border:2px solid transparent;border-radius:10px;background:#f8fafc;cursor:pointer;transition:all .2s;min-width:60px}.status-flow-item:hover{background:#f1f5f9;border-color:#e2e8f0}.status-flow-item.selected{background:#fff;border-color:#667eea;box-shadow:0 2px 8px #667eea33}.status-flow-count{font-size:1.25rem;font-weight:700;line-height:1;padding:.25rem .5rem;border-radius:6px;min-width:2rem;text-align:center}.status-flow-item:first-child .status-flow-count{background:#667eea;color:#fff}.status-flow-label{font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.rfp-cards-container{width:100%}.rfp-status-groups{display:flex;flex-direction:column;gap:24px}.rfp-status-group{display:flex;flex-direction:column;gap:12px}.rfp-status-group-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;border-left:4px solid var(--status-bg, #f1f5f9)}.rfp-status-group-header:hover{background:#f8fafc;border-color:#cbd5e1}.rfp-status-group-left{display:flex;align-items:center;gap:12px}.rfp-status-collapse-icon{display:flex;align-items:center;justify-content:center;color:#64748b;transition:transform .2s}.rfp-status-count{font-size:14px;font-weight:500;color:#64748b}.rfp-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.rfp-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;transition:all .2s;display:flex;flex-direction:column;position:relative;overflow:hidden;cursor:pointer;border-top:4px solid transparent}.rfp-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.rfp-card-accent{position:absolute;top:0;left:0;right:0;height:4px;z-index:5}.rfp-card-content{padding:10px;display:flex;flex-direction:column;gap:8px;position:relative;z-index:2;pointer-events:none;margin-top:4px}.rfp-card-header-actions{pointer-events:auto}.rfp-card-link-overlay{position:absolute;inset:0;z-index:1;cursor:pointer;text-decoration:none}.rfp-card-header-new{display:flex;justify-content:space-between;align-items:center;padding-bottom:6px;border-bottom:1px solid rgba(106,120,135,.24);gap:10px}.rfp-card-header-left{display:flex;flex-direction:column;gap:4px;align-items:flex-start;flex:1}.rfp-card-badges{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.rfp-card-title-new{margin:0;font-size:16px;font-weight:500;color:#2e2f35;line-height:1.2;white-space:nowrap}.rfp-card-header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.rfp-card-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:6px;border:1px solid rgba(106,120,135,.2);border-radius:4px;background:#fff;cursor:pointer;transition:all .2s;text-decoration:none;color:inherit;position:relative;z-index:10}.rfp-card-action-btn:hover{background:#f1f5f9;border-color:#6a788766}.rfp-card-action-btn svg{width:14px;height:14px;flex-shrink:0}.rfp-card-description{margin:0;color:#64748b;font-size:13px;line-height:1.4;font-weight:400}.rfp-card-meta-row{display:flex;gap:12px;flex-wrap:wrap;padding:4px 0;border-bottom:1px solid rgba(106,120,135,.12)}.rfp-card-meta-item{display:flex;align-items:center;gap:4px;font-size:12px;color:#64748b}.rfp-card-winning-bid{display:flex;align-items:center;gap:8px;padding:6px 8px;background:linear-gradient(135deg,#fef3c7,#fde68a);border-radius:6px;border:1px solid #fbbf24}.winning-bid-content{flex:1;display:flex;justify-content:space-between;align-items:center;gap:8px}.winning-bid-company{font-size:12px;font-weight:600;color:#92400e}.winning-bid-amount{font-size:13px;font-weight:700;color:#92400e}.rfp-card-info-grid{padding:6px 0;border-top:1px solid rgba(106,120,135,.12);border-bottom:1px solid rgba(106,120,135,.12)}.rfp-card-questions{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b;padding:2px 0}.unanswered-indicator{color:#f59e0b;font-weight:600}.rfp-card-skills{display:flex;align-items:flex-start;gap:6px;padding-top:2px}.skills-list{display:flex;flex-wrap:wrap;gap:4px;flex:1}.skill-tag{display:inline-block;padding:2px 8px;background:#f1f5f9;color:#475569;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.rfp-card-details-row{display:flex;justify-content:space-between;align-items:flex-start;padding:8px 0;border-top:1px solid rgba(106,120,135,.24);gap:0;width:100%}.rfp-card-detail-item-new{display:flex;flex-direction:column;gap:8px;align-items:flex-start;flex:1 1 0;min-width:0;padding:0 8px}.rfp-card-detail-item-new:first-child{padding-left:0}.rfp-card-detail-item-new:last-child{padding-right:0}.rfp-detail-header{display:flex;gap:6px;align-items:center}.rfp-detail-label{font-size:14px;font-weight:400;color:#87929b;white-space:nowrap}.rfp-detail-value{font-size:16px;font-weight:400;color:#2e2f35;white-space:nowrap}.status-badge{display:inline-block;padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap;background:#f1f5f9;color:#475569}.status-open{background:#d4ffdd;color:#009b34}.status-closed{background:#fee2e2;color:#991b1b}.status-awarded{background:#dbeafe;color:#1e40af}.status-draft{background:#fef3c7;color:#92400e}.bid-count{background:#f1f5f9;padding:.375rem .75rem;border-radius:12px;font-weight:700;color:#667eea;font-size:.875rem}.question-count{display:inline-flex;align-items:center;gap:.5rem;background:#f1f5f9;padding:.375rem .75rem;border-radius:12px;font-weight:700;color:#64748b;font-size:.875rem}.unanswered-badge{background:#ffc107;color:#fff;padding:.125rem .5rem;border-radius:10px;font-size:.75rem;font-weight:700;min-width:20px;text-align:center}.job-type-tag{display:inline-block;padding:.375rem .875rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.job-type-default{background:#f1f5f9;color:#475569}.job-type-construction{background:#fef3c7;color:#92400e}.job-type-hvac{background:#dbeafe;color:#1e40af}.job-type-electrical{background:#fef08a;color:#854d0e}.job-type-plumbing{background:#bfdbfe;color:#1e3a8a}.job-type-roofing{background:#e0e7ff;color:#3730a3}.job-type-maintenance{background:#d1fae5;color:#065f46}.job-type-repair{background:#fed7aa;color:#9a3412}.job-type-renovation{background:#e9d5ff;color:#6b21a8}.job-type-consulting{background:#fce7f3;color:#9f1239}.job-type-it{background:#ddd6fe;color:#5b21b6}.full-width{grid-column:span 2}.empty-state{text-align:center;padding:4rem 2rem}.empty-state h3{margin:0 0 .5rem;color:#1e293b;font-size:1.5rem}.empty-state p{color:#64748b;margin:0 0 1.5rem}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem}.rfp-list-page{padding:0}.rfp-cards-grid{grid-template-columns:1fr;gap:1rem}.rfp-card-content{padding:16px;gap:24px}.rfp-card-header-new,.rfp-card-header-left{flex-direction:column;align-items:flex-start;gap:12px}.rfp-card-details-row{flex-wrap:wrap;gap:16px}.rfp-card-detail-item-new{align-items:flex-start;min-width:calc(50% - 8px)}.rfp-stats{gap:1rem}.stat-card{padding:1rem}}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-in}.modal-content{background:#fff;border-radius:12px;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease-out}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e2e8f0}.modal-header h2{margin:0;font-size:1.25rem;color:#1e293b}.modal-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-body p{margin:0;color:#475569;line-height:1.6;font-size:1rem}.inline-question-list{display:flex;flex-direction:column;gap:24px}.inline-questions-empty{text-align:center;padding:60px 20px}.inline-questions-empty .empty-icon{opacity:.4;margin-bottom:16px}.inline-questions-empty h3{margin:0 0 8px;color:#71717a;font-size:18px}.inline-questions-empty p{margin:0;color:#a1a1aa;font-size:14px}.inline-questions-group{display:flex;flex-direction:column;gap:12px}.inline-group-title{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;color:#71717a}.inline-group-title.pending{color:#b45309}.inline-group-title.answered{color:#15803d}.inline-group-title .title-check{font-size:14px}.inline-question-item{background:#fff;border:2px solid #e4e4e7;border-radius:10px;padding:16px;transition:all .15s ease}.inline-question-item:hover{box-shadow:0 2px 8px #0000000f}.inline-question-item.answered{border-color:#86efac}.inline-question-item.unanswered{border-color:#fcd34d}.inline-question-item.editing{border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.inline-question-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.inline-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:5px;font-size:11px;font-weight:700;letter-spacing:.3px}.inline-status-badge.answered{background:#dcfce7;color:#166534}.inline-status-badge.pending{background:#fef3c7;color:#92400e}.inline-time-ago{font-size:12px;color:#a1a1aa}.inline-question-content{margin-bottom:12px}.inline-question-text{font-size:15px;font-weight:500;line-height:1.5;color:#18181b;margin-bottom:6px}.inline-question-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:#71717a}.inline-rfp-id{font-weight:600;color:#667eea}.inline-meta-separator{color:#d4d4d8}.inline-question-link{display:block;text-decoration:none;color:inherit;border-radius:6px;padding:8px;margin:-8px -8px 4px;transition:background-color .15s ease}.inline-question-link:hover{background-color:#f4f4f5;text-decoration:none}.inline-question-link:hover .inline-question-text{color:#667eea}.inline-answer-section{margin-top:12px;padding-top:12px;border-top:1px solid #e4e4e7}.inline-answer-text{font-size:14px;line-height:1.6;color:#3f3f46;margin-bottom:8px;white-space:pre-wrap}.inline-answer-meta{display:flex;align-items:center;gap:6px;font-size:12px;color:#71717a}.inline-answer-meta svg{color:#22c55e}.inline-answer-time{color:#a1a1aa}.inline-edit-btn{margin-top:10px;padding:6px 12px;background:#f4f4f5;border:1px solid #e4e4e7;border-radius:6px;font-size:12px;font-weight:500;color:#52525b;cursor:pointer;transition:all .15s ease}.inline-edit-btn:hover{background:#e4e4e7;color:#18181b}.inline-answer-prompt{margin-top:12px;padding-top:12px;border-top:1px dashed #e4e4e7}.inline-answer-trigger{width:100%;padding:12px 16px;background:#fafafa;border:2px dashed #d4d4d8;border-radius:8px;font-size:14px;color:#71717a;text-align:left;cursor:pointer;transition:all .15s ease}.inline-answer-trigger:hover{background:#f4f4f5;border-color:#667eea;color:#667eea}.inline-answer-editor{margin-top:12px;padding-top:12px;border-top:1px solid #e4e4e7}.inline-error{margin-bottom:10px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:13px;color:#dc2626}.inline-answer-input{width:100%;padding:12px;border:2px solid #667eea;border-radius:8px;font-family:inherit;font-size:14px;line-height:1.5;color:#18181b;resize:vertical;min-height:80px;transition:border-color .15s ease}.inline-answer-input:focus{outline:none;border-color:#4f46e5;box-shadow:0 0 0 3px #4f46e526}.inline-answer-input::placeholder{color:#a1a1aa}.inline-answer-input:disabled{background:#f4f4f5;cursor:not-allowed}.inline-answer-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.inline-cancel-btn,.inline-save-btn{padding:8px 16px;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.inline-cancel-btn{background:#f4f4f5;color:#52525b}.inline-cancel-btn:hover:not(:disabled){background:#e4e4e7}.inline-save-btn{background:#667eea;color:#fff}.inline-save-btn:hover:not(:disabled){background:#5568d3}.inline-save-btn:disabled,.inline-cancel-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.inline-question-item{padding:12px}.inline-answer-actions{flex-direction:column}.inline-cancel-btn,.inline-save-btn{width:100%}}.rfp-photo-gallery{padding:20px;position:relative;transition:all .3s ease}.rfp-photo-gallery.dropzone-enabled{min-height:200px}.rfp-photo-gallery.dragging{border:2px dashed #2563eb;background-color:#2563eb0d;border-radius:12px}.dropzone-overlay{position:absolute;inset:0;background:#2563eb1a;border:3px dashed #2563eb;border-radius:12px;display:flex;align-items:center;justify-content:center;z-index:10;pointer-events:none}.dropzone-message{text-align:center;color:#2563eb}.dropzone-message svg{margin-bottom:12px;color:#2563eb}.dropzone-message p{font-size:16px;font-weight:500;margin:0}.dropzone-hint{padding:40px 20px;text-align:center;color:#6b7280;border:2px dashed #d1d5db;border-radius:12px;margin-top:16px}.dropzone-hint svg{margin-bottom:12px;opacity:.5}.dropzone-hint p{margin:0;font-size:14px}.rfp-photo-gallery-loading,.rfp-photo-gallery-error{padding:40px;text-align:center;color:#666}.rfp-photo-gallery-error{color:#ef4444}.photo-upload-section{margin-bottom:24px}.upload-button{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:#18181b;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s}.upload-button:hover{background:#27272a}.upload-button:disabled{background:#a1a1aa;cursor:not-allowed}.upload-error{margin-top:12px;padding:12px;background:#fee2e2;color:#ef4444;border-radius:6px;font-size:14px}.no-photos{padding:60px 20px;text-align:center;color:#666}.no-photos svg{margin-bottom:16px;opacity:.3}.no-photos p{margin:8px 0;font-size:16px}.no-photos .hint{font-size:14px;color:#999}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px}.photo-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;transition:box-shadow .2s}.photo-card:hover{box-shadow:0 4px 12px #0000001a}.photo-image-container{position:relative;width:100%;padding-top:75%;background:#f3f4f6;cursor:pointer;overflow:hidden}.photo-image{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;transition:transform .2s}.photo-image-container:hover .photo-image{transform:scale(1.05)}.cover-badge{position:absolute;top:12px;right:12px;padding:6px 12px;background:#8b5cf6;color:#fff;border-radius:4px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.photo-actions{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;gap:4px;padding:6px;background:linear-gradient(to top,rgba(0,0,0,.45) 0%,transparent 60%);opacity:0;transition:opacity .15s}.photo-image-container:hover .photo-actions{opacity:1}.action-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;cursor:pointer;transition:background .1s;flex-shrink:0}.action-button.set-cover{background:#ffffffd9;color:#8b5cf6}.action-button.set-cover:hover{background:#fff}.action-button.delete{background:#dc2626d9;color:#fff}.action-button.delete:hover{background:#dc2626}.photo-description{padding:12px;font-size:14px;color:#666;line-height:1.5}.photo-lightbox{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-close{position:absolute;top:-40px;right:0;width:40px;height:40px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:#fff;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.lightbox-close:hover{background:#fff3}.lightbox-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px}.lightbox-description{margin-top:20px;padding:16px 24px;background:#ffffff1a;border-radius:8px;color:#fff;font-size:14px;max-width:600px;text-align:center}@media(max-width:768px){.photo-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.rfp-photo-gallery{padding:12px}.lightbox-image{max-height:70vh}}.award-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.award-modal{background:var(--surface-color, #ffffff);border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 4px 20px #00000026}.award-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e0e0e0)}.award-modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #1a1a1a)}.close-button{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-secondary, #666);padding:0;line-height:1}.close-button:hover{color:var(--text-primary, #1a1a1a)}.award-modal-content{padding:1.5rem;overflow-y:auto;flex:1}.award-instructions{margin:0 0 1rem;color:var(--text-secondary, #666);font-size:.95rem}.loading-state,.empty-state{text-align:center;padding:2rem;color:var(--text-secondary, #666)}.error-message{background-color:#fee;border:1px solid #fcc;color:#c00;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem}.bids-selection-list{display:flex;flex-direction:column;gap:.75rem}.bid-selection-item{display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--border-color, #e0e0e0);border-radius:8px;cursor:pointer;transition:all .2s ease}.bid-selection-item:hover{border-color:var(--primary-color, #3b82f6);background-color:var(--hover-bg, #f8f9fa)}.bid-selection-item.selected{border-color:var(--primary-color, #3b82f6);background-color:#3b82f60d}.bid-selection-item input[type=radio]{width:18px;height:18px;accent-color:var(--primary-color, #3b82f6)}.bid-selection-content{flex:1;display:flex;justify-content:space-between;align-items:center}.bid-vendor-info{display:flex;align-items:center;gap:.75rem}.bid-vendor-logo{width:36px;height:36px;border-radius:6px;object-fit:cover;background-color:var(--surface-secondary, #f5f5f5)}.bid-vendor-name{font-weight:500;color:var(--text-primary, #1a1a1a)}.bid-amount{font-size:1.1rem;font-weight:600;color:var(--primary-color, #3b82f6)}.award-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e0e0e0)}.award-modal-footer .btn{padding:.625rem 1.25rem;font-size:.95rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .2s ease}.award-modal-footer .btn-secondary{background-color:var(--surface-secondary, #f5f5f5);border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #1a1a1a)}.award-modal-footer .btn-secondary:hover{background-color:var(--hover-bg, #e8e8e8)}.award-modal-footer .btn-primary{background-color:var(--primary-color, #3b82f6);border:1px solid var(--primary-color, #3b82f6);color:#fff}.award-modal-footer .btn-primary:hover:not(:disabled){background-color:var(--primary-hover, #2563eb)}.award-modal-footer .btn-primary:disabled{opacity:.5;cursor:not-allowed}.status-transition-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:1rem}.status-transition-modal{background:var(--card-bg, #fff);border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:480px;width:100%;animation:modalSlideIn .2s ease-out}.status-transition-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.status-transition-modal .modal-header h2{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.status-transition-modal .modal-close-btn{background:none;border:none;font-size:1.75rem;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.status-transition-modal .modal-close-btn:hover:not(:disabled){background-color:var(--background, #f3f4f6);color:var(--text-primary, #111827)}.status-transition-modal .modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.status-transition-modal .modal-body{padding:1.5rem}.status-transition-description{margin:0;font-size:.9375rem;line-height:1.6;color:var(--text-secondary, #4b5563)}.status-transition-modal .modal-footer{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color, #e5e7eb);background:var(--background, #f9fafb);border-radius:0 0 12px 12px}.status-transition-modal .btn{display:inline-flex;align-items:center;justify-content:center;min-width:100px;padding:.625rem 1.25rem;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none}.status-transition-modal .btn:disabled{opacity:.6;cursor:not-allowed}.status-transition-modal .btn-secondary{background-color:var(--card-bg, #fff);border:1px solid var(--border-color, #d1d5db);color:var(--text-primary, #374151)}.status-transition-modal .btn-secondary:hover:not(:disabled){background-color:var(--background, #f3f4f6)}.status-transition-modal .btn-primary{background-color:#667eea;color:#fff}.status-transition-modal .btn-primary:hover:not(:disabled){background-color:#5a67d8}@media(max-width:480px){.status-transition-modal{max-width:100%;margin:0 1rem}.status-transition-modal .modal-footer{flex-direction:column-reverse}.status-transition-modal .btn{width:100%}}.download-pdf-button-wrapper{display:inline-block}.download-pdf-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;border-radius:.375rem;transition:all .2s}.download-pdf-btn:disabled{opacity:.6;cursor:not-allowed}.pdf-icon{flex-shrink:0}.pdf-spinner{display:inline-block;width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pdf-spin .6s linear infinite}.pdf-error-message{margin-top:.5rem;padding:.5rem .75rem;background-color:#f8d7da;color:#842029;border:1px solid #f5c2c7;border-radius:.375rem;font-size:.875rem}.rfp-countdown{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-weight:600;font-size:14px;white-space:nowrap}.rfp-countdown svg{flex-shrink:0}.rfp-countdown-text{line-height:1}.rfp-countdown-normal{background-color:#dcfce7;color:#166534}.rfp-countdown-warning{background-color:#fef3c7;color:#92400e}.rfp-countdown-urgent{background-color:#fed7aa;color:#c2410c}.rfp-countdown-critical{background-color:#fee2e2;color:#dc2626}.rfp-countdown-expired{background-color:#f4f4f5;color:#71717a}.rfp-countdown-closed{background-color:#e0e7ff;color:#4338ca}.rfp-countdown-pulse{animation:countdown-pulse 2s ease-in-out infinite}@keyframes countdown-pulse{0%,to{transform:scale(1);box-shadow:0 0 #dc262666}50%{transform:scale(1.02);box-shadow:0 0 0 6px #dc262600}}.rfp-skill-tags{display:flex;align-items:center}.rfp-skill-tags-list{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.rfp-skill-tag{display:inline-flex;align-items:center;padding:4px 10px;background-color:#e0e7ff;color:#4338ca;border-radius:16px;font-size:12px;font-weight:500;white-space:nowrap;border:none;cursor:default}.rfp-skill-tag-more,.rfp-skill-tag-less{background-color:#f4f4f5;color:#71717a;cursor:pointer;transition:background-color .15s,color .15s}.rfp-skill-tag-more:hover,.rfp-skill-tag-less:hover{background-color:#e4e4e7;color:#52525b}@media(max-width:768px){.rfp-skill-tags-list{max-width:100%;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.rfp-skill-tags-list::-webkit-scrollbar{display:none}}.rfp-header-and-status{display:flex;flex-direction:column;gap:12px}.rfp-header-title-card{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.rfp-header-row-1{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px 12px}.rfp-header-title-group{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.rfp-back-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:6px;color:#18181b;text-decoration:none;flex-shrink:0;transition:background-color .2s}.rfp-back-btn:hover{background-color:#f4f4f5}.rfp-header-title{font-family:Inter,sans-serif;font-size:20px;font-weight:700;line-height:1.3;color:#18181b;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rfp-number-badge{display:inline-flex;align-items:center;padding:4px 10px;background:#f4f4f5;color:#71717a;font-size:12px;font-weight:600;border-radius:6px;flex-shrink:0}.rfp-header-status-group{display:flex;align-items:center;gap:12px;flex-shrink:0}.rfp-header-skills-row{padding:0 20px 12px}.rfp-header-row-2{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:0 20px 16px}.rfp-header-workflow-actions,.rfp-header-utility-actions{display:flex;align-items:center;gap:8px}.rfp-status-error{background:#fee2e2;color:#ef4444;padding:6px 10px;border-radius:6px;font-size:12px;max-width:200px}.rfp-action-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;text-decoration:none}.rfp-action-btn-with-text{display:flex;align-items:center;justify-content:center;gap:6px;width:auto;height:36px;padding:0 14px;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:13px;font-weight:600;font-family:Inter,sans-serif;white-space:nowrap}.rfp-action-btn-with-text:hover:not(:disabled){filter:brightness(.9);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.rfp-action-btn-with-text:active:not(:disabled){transform:translateY(0);filter:brightness(.85)}.rfp-action-btn-with-text span{line-height:1}.rfp-action-btn:disabled,.rfp-action-btn-with-text:disabled{opacity:.5;cursor:not-allowed}.rfp-action-btn-back{background-color:#fff!important;color:#52525b!important;border:1px solid #d4d4d8!important}.rfp-action-btn-back:hover:not(:disabled){background-color:#f4f4f5!important;border-color:#a1a1aa!important}.rfp-action-btn-next{background-color:#667eea!important;color:#fff!important;border:none!important}.rfp-action-btn-next:hover:not(:disabled){background-color:#5568d3!important}.rfp-action-btn-secondary{background:#f4f4f5;color:#71717a;border:1px solid #e4e4e7}.rfp-action-btn-secondary:hover:not(:disabled){background:#e4e4e7}.rfp-action-btn-primary{background:#667eea;color:#fff}.rfp-action-btn-primary:hover:not(:disabled){background:#5568d3}.rfp-action-btn-warning{background:#f59e0b;color:#fff}.rfp-action-btn-warning:hover:not(:disabled){background:#d97706}.rfp-action-btn-dark{background:#18181b;color:#fff}.rfp-action-btn-dark:hover:not(:disabled){background:#27272a}.rfp-winning-bid-banner{display:flex;align-items:center;gap:16px;padding:16px 20px;background:linear-gradient(135deg,#fffbeb,#fef3c7);border:2px solid #f59e0b;border-radius:12px;box-shadow:0 2px 8px #f59e0b26}.rfp-winning-bid-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#fff;border-radius:50%;box-shadow:0 2px 6px #f59e0b33;flex-shrink:0}.rfp-winning-bid-content{flex:1;min-width:0}.rfp-winning-bid-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#92400e;margin-bottom:4px}.rfp-winning-bid-details{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.rfp-winning-bid-company{font-size:18px;font-weight:700;color:#18181b;font-family:Inter,sans-serif}.rfp-winning-bid-amount{font-size:18px;font-weight:700;color:#059669;font-family:Inter,sans-serif;background:#ecfdf5;padding:4px 12px;border-radius:8px}.rfp-winning-bid-rating{display:flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:#92400e;background:#ffffffb3;padding:4px 10px;border-radius:6px}.rfp-winning-bid-view-link{display:inline-flex;align-items:center;padding:10px 16px;background:#18181b;color:#fff;font-size:13px;font-weight:600;border-radius:8px;text-decoration:none;transition:all .2s ease;white-space:nowrap;flex-shrink:0}.rfp-winning-bid-view-link:hover{background:#27272a;transform:translateY(-1px);box-shadow:0 2px 6px #00000026}@media(max-width:768px){.rfp-header-row-1{flex-direction:column;align-items:flex-start;gap:12px}.rfp-header-title-group{flex-wrap:wrap}.rfp-header-status-group{width:100%;justify-content:flex-start}.rfp-header-row-2{flex-direction:column;align-items:stretch;gap:12px}.rfp-header-workflow-actions{justify-content:flex-start}.rfp-header-utility-actions{justify-content:flex-end}.rfp-header-title{font-size:18px}.rfp-winning-bid-banner{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 16px}.rfp-winning-bid-icon{width:40px;height:40px}.rfp-winning-bid-details{gap:8px}.rfp-winning-bid-company,.rfp-winning-bid-amount{font-size:16px}.rfp-winning-bid-view-link{width:100%;justify-content:center}}.rfp-overview-and-scope{border:1px solid #e4e4e7!important;border-radius:12px!important}.rfp-overview-and-scope .card-body{padding:0!important}.rfp-section-tabs{display:flex;gap:0;border-bottom:1px solid #e4e4e7;padding:0 20px}.rfp-section-tab{display:flex;align-items:center;gap:6px;padding:12px 16px;background:none;border:none;border-bottom:2px solid transparent;font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#71717a;cursor:pointer;transition:all .2s;position:relative;top:1px}.rfp-section-tab:hover{color:#18181b}.rfp-section-tab.active{color:#18181b;border-bottom-color:#18181b}.rfp-section-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#f4f4f5;color:#71717a;font-size:11px;font-weight:600;border-radius:10px}.rfp-section-tab.active .rfp-section-count{background:#18181b;color:#fff}.rfp-section-content{padding:20px}.rfp-content-section{display:flex;flex-direction:column;gap:16px}.rfp-update-notice{padding:12px;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:6px;font-size:13px;color:#92400e}.rfp-text-content{display:flex;flex-direction:column;gap:8px}.rfp-content-heading{font-family:Inter,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#71717a;margin:0}.rfp-text-body{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:1.6;color:#18181b;white-space:pre-wrap}.rfp-text-muted{color:#71717a}.rfp-scope-section,.rfp-skills-section{padding-top:16px;margin-top:8px;border-top:1px solid #e4e4e7}.rfp-empty-state{padding:40px 20px;text-align:center;color:#71717a;font-size:14px}.rfp-skills-list{display:flex;flex-wrap:wrap;gap:8px}.rfp-skill-badge{display:inline-flex;align-items:center;padding:6px 12px;background:#e0e7ff;color:#4338ca;font-size:12px;font-weight:500;border-radius:16px}.rfp-questions-list{display:flex;flex-direction:column;gap:16px}.rfp-question-item{padding:16px;background:#f9fafb;border-radius:8px;border-left:3px solid #667eea}.rfp-question-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.rfp-question-number{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;background:#667eea;color:#fff;font-size:12px;font-weight:600;border-radius:14px}.rfp-question-author{font-size:12px;font-weight:500;color:#71717a}.rfp-question-text{font-size:14px;font-weight:500;color:#18181b;line-height:1.5;margin-bottom:8px}.rfp-answer-section{margin-top:12px;padding-top:12px;border-top:1px solid #e4e4e7}.rfp-answer-label{font-size:12px;font-weight:600;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.rfp-answer-text{margin-top:6px;font-size:13px;line-height:1.5;color:#18181b}.rfp-location-hours-section{margin-top:16px;padding-top:16px;border-top:1px solid #e4e4e7}.rfp-location-hours-grid{display:flex;flex-direction:column;gap:8px;max-width:320px;margin-top:12px}.rfp-location-hours-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f9fafb;border-radius:6px}.rfp-location-hours-row .hours-day{color:#374151;font-weight:600;font-size:14px;min-width:100px}.rfp-location-hours-row .hours-time{color:#1f2937;font-size:14px;text-align:right}.rfp-location-hours-row .hours-closed{color:#9ca3af;font-style:italic}@media(max-width:640px){.rfp-section-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.rfp-section-tab{white-space:nowrap}.rfp-location-hours-grid{max-width:100%}}.rfp-bids-card{width:100%;padding:20px;border:1px solid #e4e4e7;border-radius:12px;background:#fff}.rfp-bids-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.rfp-bids-title{font-family:Inter,sans-serif;font-size:18px;font-weight:600;line-height:24px;color:#18181b;margin:0}.bids-sort-dropdown{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:#2e2f35;padding:8px 12px;border:1px solid #e4e4e7;border-radius:6px;background:#fff;cursor:pointer;min-width:160px;transition:border-color .2s}.bids-sort-dropdown:hover{border-color:#87929b}.bids-sort-dropdown:focus{outline:none;border-color:#2663ea;box-shadow:0 0 0 3px #2663ea1a}.bids-list-rows{display:flex;flex-direction:column;gap:8px}.bid-row{display:grid;grid-template-columns:40px 1fr 180px 100px 100px 100px 32px;align-items:center;gap:16px;padding:14px 16px;background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;cursor:pointer;transition:all .15s ease}.bid-row:hover:not(.bid-row-header){background:#f4f4f5;border-color:#d4d4d8;transform:translateY(-1px);box-shadow:0 2px 8px #0000000f}.bid-row-header{background:#f8f9fa;border-color:#e4e4e7;cursor:default;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#71717a;padding:10px 16px}.bid-row-header .bid-row-rank,.bid-row-header .bid-row-vendor,.bid-row-header .bid-row-amount-section,.bid-row-header .bid-row-date,.bid-row-header .bid-row-start-date,.bid-row-header .bid-row-status{font-family:Inter,sans-serif;font-size:11px;font-weight:600;color:#71717a}.bid-row-awarded{background:linear-gradient(to right,#f0fdf4,#fafafa);border-color:#86efac}.bid-row-awarded:hover{background:linear-gradient(to right,#dcfce7,#f4f4f5);border-color:#4ade80}.bid-row-rank{font-family:Inter,sans-serif;font-size:13px;font-weight:600;color:#a1a1aa;text-align:center}.bid-row-vendor{display:flex;align-items:center;gap:12px;min-width:0}.bid-row-logo{width:36px;height:36px;border-radius:6px;object-fit:cover;flex-shrink:0;border:1px solid #e4e4e7}.bid-row-vendor-details{display:flex;flex-direction:column;gap:2px;min-width:0}.bid-row-vendor-name{font-family:Inter,sans-serif;font-size:14px;font-weight:600;color:#18181b;display:flex;align-items:center;gap:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bid-winner-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-radius:4px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.bid-row-vendor-rating{font-family:Inter,sans-serif;font-size:12px;color:#71717a}.bid-row-amount-section{display:flex;align-items:center;gap:8px}.bid-row-amount{font-family:Inter,sans-serif;font-size:16px;font-weight:700;color:#18181b}.bid-amount-lowest{color:#059669}.bid-amount-highest{color:#dc2626}.bid-amount-tag{font-size:10px;font-weight:600;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.3px}.bid-tag-lowest{background:#d1fae5;color:#059669}.bid-tag-highest{background:#fee2e2;color:#dc2626}.bid-row-date,.bid-row-start-date{font-family:Inter,sans-serif;font-size:13px;color:#71717a;text-align:center}.bid-row-status{display:flex;justify-content:center}.bid-status-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:capitalize}.bid-status-pill.submitted{background:#dbeafe;color:#1d4ed8}.bid-status-pill.under-review{background:#fef3c7;color:#92400e}.bid-status-pill.accepted{background:#d1fae5;color:#059669}.bid-status-pill.rejected{background:#fee2e2;color:#dc2626}.bid-status-pill.withdrawn{background:#f4f4f5;color:#71717a}.bid-row-action{display:flex;justify-content:center;align-items:center}.bid-row-arrow{font-size:16px;color:#a1a1aa;transition:transform .15s ease,color .15s ease}.bid-row:hover .bid-row-arrow{color:#18181b;transform:translate(2px)}@media(max-width:1100px){.bid-row{grid-template-columns:32px 1fr 140px 90px 90px 32px}.bid-row-status{display:none}}@media(max-width:900px){.bid-row{grid-template-columns:32px 1fr 120px 80px 32px}.bid-row-status,.bid-row-start-date{display:none}}@media(max-width:640px){.bid-row{grid-template-columns:1fr auto auto;gap:12px;padding:12px}.bid-row-rank,.bid-row-date,.bid-row-start-date,.bid-row-status{display:none}.bid-row-amount{font-size:14px}}.bid-analysis-card{width:100%;padding:16px;border:1px solid #e4e4e7;border-radius:12px;background:#fff}.bid-analysis-title{font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:20px;color:#18181b;margin:0 0 32px}.bid-analysis-bar-container{position:relative;height:84px;width:100%;margin-bottom:32px}.bid-analysis-bar-background{position:relative;width:100%;height:100%}.bid-analysis-gradient-bar{position:absolute;top:28px;left:0;right:0;height:6px;background:#009b3414;border-radius:20px;overflow:hidden}.gradient-left{position:absolute;left:0;top:0;height:100%;background:linear-gradient(to right,#6ad5ff,#55ff8e)}.gradient-right{position:absolute;top:0;height:100%;background:linear-gradient(to right,#55ff8e,#f85446)}.budget-marker{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;width:125px}.budget-marker-content{display:flex;flex-direction:column;align-items:center;gap:0;position:relative}.budget-label{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:#009b34;white-space:nowrap;margin-bottom:4px}.budget-label-text{color:#87929b}.budget-marker-icon{width:20px;height:20px;font-size:20px;line-height:20px;color:#009b34;display:flex;align-items:center;justify-content:center;position:absolute;top:31px;left:50%;transform:translate(-50%) translateY(-50%)}.bid-marker{position:absolute;top:20px;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:5px;width:125px}.bid-marker-bar{width:4px;height:16px;border-radius:4px;position:absolute;top:11px;left:50%;transform:translate(-50%) translateY(-50%)}.bid-marker-lowest .bid-marker-bar{background:#68d9f4}.bid-marker-highest .bid-marker-bar{background:#aea367}.bid-marker-content{display:flex;flex-direction:column;gap:5px;width:100%;margin-top:22px}.bid-marker-vendor{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:#87929b}.bid-marker-lowest .bid-marker-amount{color:#158daa}.bid-marker-highest .bid-marker-amount{color:#9b5300}.bid-marker-amount{font-family:Inter,sans-serif;font-size:14px;font-weight:400}.bid-dot-container{position:absolute;top:0;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;cursor:pointer;z-index:10}.bid-dot{width:10px;height:10px;border-radius:50%;background:#4b5563;border:2px solid white;box-shadow:0 2px 4px #0000001a;position:absolute;top:31px;transform:translateY(-50%);transition:all .2s ease}.bid-dot-container:hover .bid-dot,.bid-dot-highlighted{width:12px;height:12px;background:#2563eb;box-shadow:0 4px 8px #2563eb4d}.bid-hover-card{position:absolute;bottom:100%;margin-bottom:8px;padding:12px 16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 12px #00000026;white-space:nowrap;z-index:20;pointer-events:none;animation:fadeIn .2s ease;left:50%;transform:translate(-50%);min-width:120px}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.bid-hover-card:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid white;filter:drop-shadow(0 2px 2px rgba(0,0,0,.1))}.bid-hover-card-vendor{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#111827;margin-bottom:4px}.bid-hover-card-amount{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#2563eb}.bid-hover-cards-container{position:absolute;bottom:100%;margin-bottom:8px;z-index:20;pointer-events:none;display:flex;flex-direction:column;gap:8px;align-items:center;animation:fadeIn .2s ease}.bid-hover-cards-container .bid-hover-card{position:relative;margin:0;transform:none;left:auto;min-width:140px;pointer-events:auto}.bid-hover-cards-container .bid-hover-card:after{display:none}.bid-hover-cards-container .bid-hover-card:last-child:after{display:block;content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:6px solid white;filter:drop-shadow(0 2px 2px rgba(0,0,0,.1))}.bid-analysis-stats{display:flex;gap:12px;width:100%}.stat-card{flex:1;display:flex;flex-direction:column;gap:8px;padding:12px;border-radius:8px}.stat-card-lowest{background:#d4fff4}.stat-card-median{background:#d4ffdd}.stat-card-average{background:#e3ffd4}.stat-card-highest{background:#ffe9d4}.stat-label{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:#808090}.stat-value{font-family:Inter,sans-serif;font-size:16px;font-weight:600}.stat-card-lowest .stat-value{color:#307e6a}.stat-card-median .stat-value{color:#2a9541}.stat-card-average .stat-value{color:#3e7e1b}.stat-card-highest .stat-value{color:#81450c}.loading-state,.empty-state{text-align:center;padding:2rem;color:#64748b}.rfp-bids-and-award{display:flex;flex-direction:column;gap:20px}.rfp-award-summary-card,.rfp-bid-stats-card{border:1px solid #e4e4e7!important;border-radius:12px!important;padding:20px!important}.rfp-award-summary-card .card-body,.rfp-bid-stats-card .card-body{padding:0!important}.rfp-award-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.rfp-award-heading{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#18181b;margin:0}.rfp-bid-stats-heading{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#18181b;margin:0 0 16px}.rfp-view-bid-link{font-family:Inter,sans-serif;font-size:13px;font-weight:500;color:#2563eb;text-decoration:none;padding:6px 12px;background:#eff6ff;border-radius:6px;transition:all .15s ease}.rfp-view-bid-link:hover{background:#dbeafe;color:#1d4ed8}.rfp-award-warning{padding:12px;background:#fef2f2;border-left:3px solid #ef4444;border-radius:6px;font-size:13px;color:#991b1b;margin-bottom:16px}.rfp-award-notes{margin-top:20px;padding-top:20px;border-top:1px solid #e4e4e7}.rfp-award-notes-heading{font-family:Inter,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#71717a;margin:0 0 8px}.rfp-award-notes-text{font-size:14px;line-height:1.6;color:#18181b;margin:0;white-space:pre-wrap}.rfp-bid-details{display:flex;flex-direction:column;gap:20px}@media(max-width:768px){.rfp-award-heading,.rfp-bid-stats-heading{font-size:14px}}.rfp-location-card{background:linear-gradient(135deg,#fff,#fafbff);border:1px solid #e0e7ff;border-radius:12px;padding:0;overflow:hidden;box-shadow:0 2px 8px #4338ca14;margin-bottom:16px}.rfp-location-card-compact{font-size:13px}.rfp-location-header{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:12px 14px;background:linear-gradient(135deg,#eef2ff,#e0e7ff);border-bottom:1px solid #c7d2fe}.rfp-location-header-left{display:flex;align-items:center;gap:8px;min-width:0}.rfp-location-header-left>svg{flex-shrink:0}.rfp-location-name{margin:0;font-size:14px;font-weight:600;color:#1e1b4b;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rfp-location-compact-content{padding:0}.rfp-location-compact-section{padding:10px 14px;border-bottom:1px solid #f0f0f5}.rfp-location-compact-section:last-child{border-bottom:none}.rfp-location-section-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6366f1;margin-bottom:6px}.rfp-location-compact-row{display:flex;flex-wrap:wrap;gap:6px 12px}.rfp-location-compact-item{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:#52525b;text-decoration:none}.rfp-location-compact-item svg{flex-shrink:0}.rfp-location-contact-name-compact{font-weight:500;color:#1e1b4b}.rfp-location-email-compact{color:#4338ca;word-break:break-all}.rfp-location-email-compact:hover{text-decoration:underline}.rfp-location-phone-compact{color:#16a34a;font-weight:500}.rfp-location-phone-compact:hover{color:#15803d}.rfp-location-compact-grid{display:flex;flex-direction:column;gap:8px}.rfp-location-compact-field{display:flex;align-items:flex-start;gap:4px;font-size:12px;color:#52525b;line-height:1.4}.rfp-location-compact-field svg{flex-shrink:0;margin-top:2px}.rfp-location-address-field span{color:#3f3f46}.rfp-location-site-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:4px 12px}.rfp-location-site-item{display:flex;align-items:baseline;gap:4px;font-size:11px}.rfp-location-site-item .site-label{color:#71717a;font-weight:500}.rfp-location-site-item .site-value{color:#1e293b;font-weight:600}.rfp-location-website-compact{color:#4338ca;text-decoration:none;font-size:12px}.rfp-location-website-compact:hover{text-decoration:underline}.rfp-location-site-code-value{font-size:14px;font-weight:600;color:#1e1b4b}.rfp-location-lifecycle-badge{padding:4px 10px;border-radius:6px;font-size:11px;font-weight:600;text-align:center;white-space:nowrap}.rfp-location-actions{padding:10px 14px;border-top:1px solid #f0f0f5}.view-location-btn{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:500;color:#4338ca;text-decoration:none;transition:color .15s ease}.view-location-btn:hover{color:#3730a3;text-decoration:underline}.rfp-location-hours-grid{display:flex;flex-direction:column;gap:.25rem}.rfp-location-hours-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0;font-size:.85rem}.hours-day{color:#64748b;font-weight:500;min-width:90px}.hours-time{color:#334155;text-align:right}.hours-closed{color:#94a3b8;font-style:italic}@media(max-width:768px){.rfp-location-header{padding:10px 12px}.rfp-location-compact-section{padding:8px 12px}.rfp-location-compact-row{flex-direction:column;gap:4px}.rfp-location-site-grid{grid-template-columns:1fr;gap:4px}.rfp-location-site-item{justify-content:space-between}}.rfp-summary-card-container{display:flex;flex-direction:column;gap:12px}.rfp-summary-section{padding:14px 16px;border-radius:10px}.rfp-summary-section .card-body{overflow:visible;padding:0}.rfp-summary-heading{display:flex;align-items:center;gap:8px;margin:0 0 12px;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase;letter-spacing:.03em}.rfp-summary-subheading{margin:12px 0 6px;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.rfp-summary-description{background:#f8fafc;border:1px solid #e2e8f0}.rfp-summary-description-text{margin:0;font-size:14px;line-height:1.6;color:#1e293b}.rfp-summary-scope-text{margin:0;font-size:13px;line-height:1.5;color:#475569}.rfp-summary-financials{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border:1px solid #bbf7d0}.rfp-summary-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.rfp-summary-stat{display:flex;flex-direction:column;gap:2px}.rfp-summary-stat-primary{grid-column:1 / -1;padding:10px;background:#ffffffb3;border-radius:6px;text-align:center}.rfp-summary-stat .stat-label{font-size:11px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.rfp-summary-stat .stat-value{font-size:15px;font-weight:700;color:#1e293b}.rfp-summary-stat .stat-value-currency{color:#16a34a;font-size:18px}.rfp-summary-stat .stat-value-low{color:#16a34a}.rfp-summary-winner{background:linear-gradient(135deg,#fefce8,#fef9c3);border:1px solid #fde047}.rfp-summary-heading-winner{color:#854d0e}.rfp-summary-winner-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.winner-company-name{font-size:15px;font-weight:700;color:#854d0e}.winner-amount{font-size:16px;font-weight:700;color:#16a34a}.rfp-summary-award-notes{font-size:12px;color:#78716c;margin-bottom:8px;padding:8px;background:#ffffff80;border-radius:4px}.award-notes-label{font-weight:600;color:#57534e}.award-notes-text{margin-left:4px}.rfp-summary-link{display:inline-block;font-size:12px;font-weight:600;color:#b45309;text-decoration:none;transition:color .15s}.rfp-summary-link:hover{color:#92400e;text-decoration:underline}.rfp-summary-skills{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border:1px solid #e9d5ff}.rfp-summary-skills-list{display:flex;flex-wrap:wrap;gap:6px}.rfp-summary-skill-badge{display:inline-block;padding:4px 10px;font-size:12px;font-weight:500;color:#6b21a8;background:#ffffffb3;border:1px solid #d8b4fe;border-radius:999px}.rfp-summary-qa{background:linear-gradient(135deg,#ecfeff,#cffafe);border:1px solid #a5f3fc}.rfp-summary-qa-stats{display:flex;align-items:center;gap:16px}.qa-stat{display:flex;align-items:center;gap:4px}.qa-stat-value{font-size:18px;font-weight:700;color:#0e7490}.qa-stat-label{font-size:12px;color:#64748b}.qa-stat-warning,.qa-stat-warning .qa-stat-value{color:#ea580c}.qa-stat-success{color:#16a34a}.rfp-summary-dates{background:#f8fafc;border:1px solid #e2e8f0}.rfp-summary-dates-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.rfp-summary-date-item{display:flex;flex-direction:column;gap:2px;text-align:center}.rfp-summary-date-item .date-label{font-size:10px;font-weight:500;color:#64748b;text-transform:uppercase}.rfp-summary-date-item .date-value{font-size:13px;font-weight:600;color:#1e293b}.rfp-summary-fmx{background:#fefce8;border:1px solid #fde68a}.rfp-summary-fmx-number{font-size:13px;margin-bottom:6px}.fmx-label{color:#78716c}.fmx-value{font-weight:600;color:#1e293b;margin-left:4px}.rfp-summary-fmx-link{display:inline-block;font-size:12px;font-weight:600;color:#b45309;text-decoration:none;transition:color .15s}.rfp-summary-fmx-link:hover{color:#92400e;text-decoration:underline}@media(max-width:768px){.rfp-summary-stats-grid{grid-template-columns:1fr 1fr}.rfp-summary-dates-grid{grid-template-columns:1fr;gap:6px}.rfp-summary-date-item{flex-direction:row;justify-content:space-between;text-align:left}}.rfp-skills-manager-card{border:1px solid #e4e4e7!important;border-radius:12px!important;padding:20px!important}.rfp-skills-manager-card .card-body{padding:0!important}.skills-manager-header{margin-bottom:20px}.skills-manager-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.skills-manager-heading{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#18181b;margin:0}.skills-linked-count{font-size:13px;font-weight:500;color:#2563eb;background:#eff6ff;padding:4px 10px;border-radius:12px}.skills-manager-description{font-size:13px;color:#71717a;margin:0;line-height:1.5}.skills-error-message{padding:10px 12px;background:#fef2f2;border-left:3px solid #ef4444;border-radius:6px;font-size:13px;color:#991b1b;margin-bottom:16px}.skills-search-box{position:relative;margin-bottom:20px}.skills-search-input{width:100%;padding:10px 36px 10px 14px;border:1px solid #e4e4e7;border-radius:8px;font-size:14px;font-family:Inter,sans-serif;color:#18181b;background:#fafafa;transition:all .15s ease}.skills-search-input:focus{outline:none;border-color:#2563eb;background:#fff;box-shadow:0 0 0 3px #2563eb1a}.skills-search-input::placeholder{color:#a1a1aa}.skills-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:20px;color:#71717a;cursor:pointer;padding:0 4px;line-height:1}.skills-search-clear:hover{color:#18181b}.skills-categories-list{display:flex;flex-direction:column;gap:24px}.skills-category-group{border-bottom:1px solid #e4e4e7;padding-bottom:20px}.skills-category-group:last-child{border-bottom:none;padding-bottom:0}.skills-category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.skills-category-name{font-family:Inter,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#71717a;margin:0}.skills-category-count{font-size:12px;color:#16a34a;font-weight:500}.skills-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.skill-checkbox-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;background:#fafafa;border:1px solid #e4e4e7;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.skill-checkbox-item:hover{background:#f4f4f5;border-color:#d4d4d8}.skill-checkbox-item.skill-checked{background:#eff6ff;border-color:#bfdbfe}.skill-checkbox-item.skill-checked:hover{background:#dbeafe;border-color:#93c5fd}.skill-checkbox-item.skill-updating{opacity:.7;pointer-events:none}.skill-checkbox{width:18px;height:18px;margin:2px 0 0;cursor:pointer;accent-color:#2563eb;flex-shrink:0}.skill-checkbox-label{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.skill-name{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#18181b}.skill-checked .skill-name{color:#1d4ed8}.skill-description{font-size:12px;color:#71717a;line-height:1.4;cursor:pointer;background:none;border:none;padding:0;margin:0;text-align:left;font-family:inherit;width:100%;display:flex;align-items:flex-start;gap:4px}.skill-description:hover{color:#52525b}.skill-description-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex:1}.skill-description.expanded .skill-description-text{display:block;-webkit-line-clamp:unset;overflow:visible}.skill-description-toggle{font-size:8px;color:#a1a1aa;flex-shrink:0;margin-top:2px}.skill-description:hover .skill-description-toggle{color:#71717a}.skill-updating-indicator{font-size:14px;color:#71717a;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.skills-empty-state,.loading-state{text-align:center;padding:40px 20px;color:#71717a;font-size:14px}@media(max-width:768px){.skills-checkbox-grid{grid-template-columns:1fr}.skills-manager-title-row{flex-direction:column;align-items:flex-start;gap:8px}}.rfp-detail-page-new{width:100%;padding:0;background:#f9fafb;min-height:100vh}.rfp-detail-workspace{max-width:1600px;margin:0 auto;padding:20px;display:flex;flex-direction:column;gap:20px}.rfp-detail-layout{display:grid;grid-template-columns:1fr 320px;gap:20px;align-items:start}.rfp-detail-primary{display:flex;flex-direction:column;gap:0;min-width:0}.rfp-detail-sidebar{position:sticky;top:20px;max-height:calc(100vh - 40px);overflow-y:auto}.rfp-detail-header{background:#fff;padding:20px;border-radius:12px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.header-left-section{flex:1;display:flex;flex-direction:column;gap:8px}.header-title-row{display:flex;align-items:center;gap:8px}.back-button-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:#18181b;text-decoration:none;flex-shrink:0}.back-button-icon:hover{opacity:.7}.rfp-detail-title{font-family:Inter,sans-serif;font-size:18px;font-weight:700;line-height:24px;color:#18181b;margin:0}.status-badge-new{padding:6px 12px;border-radius:32px;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:normal;white-space:nowrap}.status-badge-new.status-badge-open{background:#d4fffe;color:#20a8de}.status-badge-new.status-badge-draft{background:#f5f5f5;color:#666}.status-badge-new.status-badge-review{background:#fef3c7;color:#f59e0b}.status-badge-new.status-badge-closed{background:#fee2e2;color:#ef4444}.status-badge-new.status-badge-awarded{background:#ede9fe;color:#8b5cf6}.header-right-section{flex-shrink:0;display:flex;gap:8px;align-items:center}.status-actions-compact{display:flex;gap:6px;align-items:center}.header-icon-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;position:relative;text-decoration:none}.header-icon-btn svg{width:18px;height:18px;flex-shrink:0}.header-icon-btn:disabled{opacity:.5;cursor:not-allowed}.header-icon-btn:after{content:attr(title);position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#18181b;color:#fff;font-size:12px;font-weight:500;padding:6px 10px;border-radius:6px;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000;pointer-events:none}.header-icon-btn:before{content:"";position:absolute;top:calc(100% + 2px);left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:#18181b;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:1000}.header-icon-btn:hover:after,.header-icon-btn:hover:before{opacity:1;visibility:visible}.header-icon-btn-secondary{background:#f4f4f5;color:#71717a;border:1px solid #e4e4e7}.header-icon-btn-secondary:hover:not(:disabled){background:#e4e4e7}.header-icon-btn-primary{background:#667eea;color:#fff}.header-icon-btn-primary:hover:not(:disabled){background:#5568d3}.header-icon-btn-warning{background:#f59e0b;color:#fff}.header-icon-btn-warning:hover:not(:disabled){background:#d97706}.header-icon-btn-dark{background:#18181b;color:#fff}.header-icon-btn-dark:hover:not(:disabled){background:#27272a}.status-error-message{background:#fee2e2;color:#ef4444;padding:6px 10px;border-radius:6px;font-size:12px;max-width:200px}.pdf-spinner-small{display:inline-block;width:16px;height:16px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pdf-spin .6s linear infinite}@keyframes pdf-spin{to{transform:rotate(360deg)}}.edit-rfp-button{display:flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:8px 16px;background:#18181b;color:#fafafa;border:none;border-radius:6px;font-family:Inter,sans-serif;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .2s}.edit-rfp-button:hover{background:#27272a}.edit-icon-wrapper{display:flex;align-items:center;justify-content:center;width:16px;height:16px}.edit-icon-wrapper svg{width:100%;height:100%}.rfp-key-details-banner{border:1px solid #e4e4e7!important;border-radius:12px!important;padding:16px!important;background:#fff}.rfp-detail-tabs{display:flex;gap:0;border-bottom:1px solid #e4e4e7;background:#fff;border-radius:12px 12px 0 0;padding:0 20px}.tab-button{background:none;border:none;border-bottom:2px solid transparent;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#71717a;cursor:pointer;padding:6px 0;margin-right:24px;transition:all .2s}.tab-button:hover{color:#18181b}.tab-button.active{color:#18181b;border-bottom-color:#18181b}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;background:#ef4444;color:#fff;font-size:11px;font-weight:600;border-radius:9px}.tab-badge-info{background:#2563eb}.rfp-overview-card{border:1px solid #e4e4e7!important;border-radius:12px!important}.rfp-overview-card .card-body{padding:16px!important;display:flex;flex-direction:column;gap:32px}.rfp-description-text{font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:20px;color:#87929b;margin:0}.rfp-key-details{display:flex;gap:12px;align-items:flex-start}.key-detail-item{flex:1;display:flex;flex-direction:column;gap:8px;padding-right:12px}.key-detail-item:last-child{padding-right:0}.key-detail-header{display:flex;align-items:center;gap:6px}.key-detail-label{font-family:Inter,sans-serif;font-size:14px;font-weight:400;color:#87929b}.key-detail-value{font-family:Inter,sans-serif;font-size:16px;font-weight:400;color:#2e2f35;padding-left:24px}.key-detail-divider{width:0;height:100%;border-left:1px solid #e4e4e7;align-self:stretch}.rfp-main-content-layout{display:flex;gap:24px;align-items:flex-start}.rfp-left-column{flex:1;display:flex;flex-direction:column;gap:24px}.rfp-right-column{flex-shrink:0;width:290px;display:flex;flex-direction:column}.rfp-horizontal-sections{display:flex;flex-direction:column;gap:24px}.rfp-full-width-section,.rfp-conversation-tab{width:100%}.rfp-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.section-header h2{margin:0;font-size:20px;color:#1e293b}.btn-link-small{color:#667eea;text-decoration:none;font-size:.875rem;font-weight:500;padding:.25rem .5rem;border-radius:4px;transition:all .2s;display:inline-flex;align-items:center;gap:.25rem}.btn-link-small:hover{color:#5568d3;background:#f0f4ff}.loading-state{text-align:center;padding:40px;color:#64748b}.highlight-question{animation:highlightFade 2s ease-out}@keyframes highlightFade{0%{background-color:#fef3c7;box-shadow:0 0 0 4px #fbbf244d}to{background-color:transparent;box-shadow:none}}.rfp-photos-card,.rfp-conversation-card,.rfp-qa-card{border:1px solid #e4e4e7!important;border-radius:12px!important;margin-top:16px}.rfp-photos-card .card-body,.rfp-conversation-card .card-body,.rfp-qa-card .card-body{padding:20px!important}.rfp-photos-heading{font-family:Inter,sans-serif;font-size:16px;font-weight:600;color:#18181b;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #e4e4e7}.rfp-qa-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.rfp-qa-header h2{margin:0;font-size:18px;font-weight:600;color:#1e293b}.rfp-conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.rfp-conversation-header h2{margin:0;font-size:18px;font-weight:600;color:#1e293b}.rfp-cover-photo-banner{width:100%;height:280px;overflow:hidden;border-radius:12px;background:#f5f5f5}@media(max-width:1200px){.rfp-detail-layout{grid-template-columns:1fr}.rfp-detail-sidebar{position:static;max-height:none;order:2}}@media(max-width:768px){.rfp-detail-workspace{padding:12px}.rfp-detail-layout{gap:16px}.rfp-cover-photo-banner{height:200px}.rfp-detail-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.tab-button{white-space:nowrap}}.rfp-detail-page{width:100%;max-width:100%;padding:0 2rem}.rfp-detail-content{display:grid;grid-template-columns:1fr 400px;gap:2rem}.main-column,.side-column{display:flex;flex-direction:column;gap:1.5rem}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}@media(max-width:1024px){.rfp-detail-content{grid-template-columns:1fr}}@media(max-width:768px){.btn{width:100%;justify-content:center}}.location-selector{width:100%;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;color:#1e293b;background-color:#fff;cursor:pointer;transition:all .2s}.location-selector:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.location-selector:disabled{background-color:#f1f5f9;cursor:not-allowed;opacity:.6}.location-selector option{padding:.5rem}.rfp-photo-upload{display:flex;flex-direction:column;gap:12px}.photo-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:24px 16px;border:2px dashed #d1d5db;border-radius:8px;background:#f9fafb;color:#6b7280;cursor:pointer;transition:border-color .15s,background .15s;min-height:100px}.photo-dropzone:hover,.photo-dropzone:focus-visible{border-color:#6366f1;background:#f5f3ff;outline:none}.photo-dropzone--active{border-color:#6366f1;background:#ede9fe}.photo-dropzone--uploading{cursor:default;opacity:.7}.photo-file-input{display:none}.photo-upload-hint{font-size:.875rem;font-weight:500;color:#374151}.photo-upload-sub{font-size:.75rem;color:#9ca3af}.photo-upload-error{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;font-size:.8125rem;color:#dc2626}.photo-error-dismiss{background:none;border:none;font-size:1rem;line-height:1;color:#dc2626;cursor:pointer;padding:0 2px;flex-shrink:0}.rfp-photo-upload .photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:10px}.rfp-photo-upload .photo-item{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:1;border:2px solid transparent;background:#f3f4f6}.rfp-photo-upload .photo-item--cover{border-color:#6366f1}.rfp-photo-upload .photo-thumb{width:100%;height:100%;object-fit:cover;display:block}.rfp-photo-upload .photo-cover-badge{position:absolute;top:4px;left:4px;background:#6366f1;color:#fff;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:3px;pointer-events:none}.rfp-photo-upload .photo-actions{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:flex-end;gap:4px;padding:5px;background:linear-gradient(to top,rgba(0,0,0,.45) 0%,transparent 60%);opacity:0;transition:opacity .15s}.rfp-photo-upload .photo-item:hover .photo-actions{opacity:1}.rfp-photo-upload .photo-action-btn{border:none;border-radius:4px;width:26px;height:26px;font-size:.9rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .1s}.rfp-photo-upload .photo-action-btn--cover{background:#ffffffd9;color:#6366f1}.rfp-photo-upload .photo-action-btn--cover:hover{background:#fff}.rfp-photo-upload .photo-action-btn--delete{background:#dc2626d9;color:#fff;font-size:1.1rem}.rfp-photo-upload .photo-action-btn--delete:hover{background:#dc2626}.photo-staged-note{font-size:.8125rem;color:#6b7280;margin:0}.rfp-edit-page{width:100%;max-width:1200px;margin:0 auto;padding:0;overflow-x:visible}.rfp-edit-overlay{position:fixed!important;inset:0!important;background:#0f172a99!important;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:flex-start;padding:32px 16px;overflow:hidden;z-index:9999!important;margin:0;width:100vw!important;height:100vh!important}.rfp-edit-modal{width:min(1180px,100%);max-height:calc(100vh - 64px);background:#fff;border-radius:14px;box-shadow:0 10px 40px #0f172a40;overflow:hidden;border:1px solid rgba(148,163,184,.35);display:flex;flex-direction:column}.rfp-edit-modal.loading-modal{display:flex;align-items:center;justify-content:center;padding:64px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #e2e8f0;gap:12px;flex-shrink:0}.modal-badge{display:inline-flex;padding:6px 10px;border-radius:999px;background:#eef2ff;color:#4338ca;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.02em}.modal-header .header-content h1{margin:4px 0 0!important;font-size:20px!important;font-weight:700!important;color:#0f172a!important}.modal-close{border:none;background:#f8fafc;width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:20px;color:#475569;cursor:pointer;transition:all .2s ease}.modal-close:hover{background:#e2e8f0;color:#0f172a}.rfp-edit-modal-body{padding:16px 24px 28px;overflow-y:auto;flex:1;min-height:0}.rfp-edit-action-button{max-width:25%}.rfp-form{background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.form-section{padding:2rem;border-bottom:1px solid #e2e8f0}.form-section:last-of-type{border-bottom:none}.form-section h2{margin:0 0 1.5rem;color:#1e293b;font-size:1.25rem;font-weight:600}.form-group:last-child{margin-bottom:0}.required{color:#ef4444}.form-input::placeholder{color:#94a3b8}textarea.form-input{resize:vertical;min-height:120px}.form-actions{padding:1.5rem 2rem;background:#f8fafc;display:flex;justify-content:flex-end;align-items:center;gap:1rem;min-height:80px}.btn{padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;white-space:nowrap;flex-shrink:0}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary:hover:not(:disabled){background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 6px #667eea4d}@media(max-width:768px){.form-row{grid-template-columns:1fr;gap:1.5rem}.form-section{padding:1.5rem}#rfp-edit-action-buttons{display:block}.rfp-edit-action-button{margin:1rem 3rem;max-width:75%}.form-actions{flex-direction:column;padding:1rem 1.5rem}.btn{width:100%;justify-content:center}}.vendors-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.vendors-table{width:100%;border-collapse:collapse;font-size:14px}.vendors-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.vendors-table th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.vendors-table tbody tr{border-bottom:1px solid #e9ecef;transition:background-color .2s ease;border-left:3px solid transparent}.vendors-table tbody tr:hover{background-color:#f8f9fa}.vendors-table tbody tr.new-vendor-row{border-left:3px solid #667eea;animation:rowBorderGlow 2s ease-in-out infinite;box-shadow:-3px 0 #667eea66}@keyframes rowBorderGlow{0%,to{border-left-color:#667eea;box-shadow:-3px 0 #667eea66}50%{border-left-color:#7c8ef5;box-shadow:-3px 0 #667eeacc,-6px 0 8px #667eea4d}}.vendors-table tbody tr:last-child{border-bottom:none}.vendors-table td{padding:16px;color:#212529;vertical-align:middle}.company-name-cell{font-weight:500}.company-name-link{color:#06c;text-decoration:none;transition:color .2s ease}.company-name-link:hover{color:#0052a3;text-decoration:underline}.trade-cell{max-width:250px}.trade-tags{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.trade-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#e7f3ff;color:#06c;border-radius:4px;font-size:12px;white-space:nowrap}.certified-mark{color:#28a745;font-weight:700}.more-trades{font-size:12px;color:#6c757d;font-style:italic}.contact-cell,.phone-cell{color:#495057}.status-cell{font-weight:500}.status-badge-table{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize}.status-badge-table.active{background:#d4edda;color:#155724}.status-badge-table.pending{background:#fff3cd;color:#856404}.status-badge-table.inactive,.status-badge-table.rejected{background:#f8d7da;color:#721c24}.status-badge-table.unknown{background:#e9ecef;color:#495057}@media(max-width:1200px){.trade-cell{max-width:150px}.trade-tags{flex-direction:column;align-items:flex-start}}@media(max-width:768px){.vendors-table-container{overflow-x:auto}.vendors-table{min-width:800px}.vendors-table th,.vendors-table td{padding:8px 12px}}.vendors-list-container{padding:0;width:100%;max-width:100%}.vendors-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e1e5eb}.vendors-filter-bar{display:flex;align-items:center;gap:1rem;padding:.875rem 1.25rem;background:#f5f7fa;border:1px solid #e1e5eb;border-radius:10px;margin-bottom:1.5rem}.vendors-filter-bar .filter-controls{display:flex;align-items:center;gap:.75rem}.vendors-filter-bar .filter-label{font-weight:600;font-size:.875rem;color:#5a6578;white-space:nowrap}.vendors-filter-bar .filter-box{min-width:160px}.vendors-filter-bar .filter-select{appearance:none;width:100%;padding:.5rem 2.25rem .5rem .875rem;font-size:.875rem;font-family:inherit;background:#fff;border:1px solid #d1d5dc;border-radius:6px;cursor:pointer;color:#1a1a2e;transition:all .15s ease;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='%235a6578' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center}.vendors-filter-bar .filter-select:hover{border-color:#667eea}.vendors-filter-bar .filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea26}.vendors-filters{display:flex;gap:15px;margin-bottom:25px}.checkbox-filter{display:flex;align-items:center;padding:0 16px;background:#fff;border:1px solid #ddd;border-radius:8px;min-width:180px}.checkbox-filter .checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;margin:0;padding:0}.checkbox-filter input[type=checkbox]{width:18px;height:18px;cursor:pointer}.checkbox-filter span{font-size:14px;font-weight:500;color:#333;-webkit-user-select:none;user-select:none}.vendors-stats{display:flex;gap:20px;margin-bottom:30px}.vendors-grouped{display:flex;flex-direction:column;gap:40px}.vendor-status-group{display:flex;flex-direction:column;gap:20px}.status-group-title{display:flex;align-items:center;gap:12px;margin:0;font-size:24px;font-weight:600;color:#333;padding-bottom:12px;border-bottom:3px solid #f0f0f0}.status-count{font-size:20px;color:#666;font-weight:500}.vendors-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.vendor-card{background:#fff;border-radius:12px;padding:16px;transition:all .3s ease;text-decoration:none;display:flex;flex-direction:column;border:2px solid transparent;overflow:hidden;min-width:0}.vendor-card-list{border-radius:8px;border:1px solid #676767}.vendor-card-list:hover{transform:translateY(-4px);text-decoration:none}.vendor-card.new-vendor{border:2px solid #667eea;animation:borderGlow 2s ease-in-out infinite;box-shadow:0 2px 10px #667eea33,0 0 #667eea66}@keyframes borderGlow{0%,to{box-shadow:0 2px 10px #667eea33,0 0 #667eea66;border-color:#667eea}50%{box-shadow:0 2px 10px #667eea4d,0 0 20px 4px #667eea99;border-color:#7c8ef5}}.vendor-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #f0f0f0;gap:10px;min-width:0}.vendor-name{margin:0;color:#333;font-size:18px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-vendor-badge{background:#667eea;color:#fff;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:capitalize;white-space:nowrap}.status-badge.rejected{background:#f8d7da;color:#721c24;border:1px solid #e4e4e7}.vendor-card-body{flex:1;display:flex;flex-direction:column;gap:8px;margin-bottom:10px;min-width:0;overflow:hidden}.vendor-skills-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;padding-top:12px;border-top:1px solid #f0f0f0}.skill-tag{display:inline-flex;align-items:center;gap:4px;background:#f0f4ff;color:#4c6ef5;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;border:1px solid #dbe4ff}.certified-indicator{display:inline-flex;align-items:center;justify-content:center;background:#10b981;color:#fff;width:14px;height:14px;border-radius:50%;font-size:10px;font-weight:700}.vendor-info{display:flex;gap:8px;min-width:0}.info-label{font-size:13px;color:#666;font-weight:600;min-width:60px;flex-shrink:0}.info-value{font-size:13px;color:#333;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-website{color:#667eea;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vendor-card-footer{padding-top:12px;border-top:1px solid #f0f0f0}.vendor-manager-notes{margin-top:12px;padding:10px;background:#f8f9ff;border-left:3px solid #e4e4e7;border-radius:4px}.vendor-manager-notes .notes-label{font-size:11px;font-weight:700;color:#667eea;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.vendor-manager-notes .notes-content{font-size:13px;color:#555;line-height:1.5;white-space:pre-wrap}.vendor-rejection-reason{margin-top:12px;padding:10px;background:#fff5f5;border-left:3px solid #dc3545;border-radius:4px}.vendor-rejection-reason .rejection-label{font-size:11px;font-weight:700;color:#dc3545;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.vendor-rejection-reason .rejection-content{font-size:13px;color:#721c24;line-height:1.5;white-space:pre-wrap}@media(max-width:768px){.vendors-header{flex-direction:column;gap:20px}.vendors-filters,.vendors-stats{flex-direction:column}.stat-item{max-width:none}.vendors-grid{grid-template-columns:1fr}}.business-card{width:320px;height:180px;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);border-radius:12px;padding:20px;cursor:grab;transition:all .3s ease;box-shadow:0 4px 15px #0003;position:relative;overflow:hidden;-webkit-user-select:none;user-select:none}.business-card:before{content:"";position:absolute;top:0;right:0;width:120px;height:120px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;transform:translate(30%,-30%)}.business-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0000004d}.business-card.dragging{opacity:.95;box-shadow:0 12px 35px #0006;cursor:grabbing;z-index:100;transform:scale(1.02) rotate(2deg)}.business-card.primary{background:linear-gradient(135deg,#1e3a8a,#1e40af,#3b82f6);box-shadow:0 4px 20px #3b82f666}.business-card.company-primary{background:linear-gradient(135deg,#065f46,#059669,#10b981);box-shadow:0 4px 20px #10b98166}.business-card-inner{display:flex;align-items:flex-start;gap:16px;height:100%}.business-card-avatar{position:relative;width:56px;height:56px;background:linear-gradient(135deg,#e94560,#ff6b6b);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #e9456066}.business-card-initials{font-size:1.25rem;font-weight:700;color:#fff;letter-spacing:1px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.business-card-info{flex:1;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;min-width:0}.business-card-name{font-size:1.125rem;font-weight:600;color:#fff;margin-bottom:4px;line-height:1.3;text-align:left}.business-card-title{font-size:.8125rem;color:#94a3b8;font-style:italic;margin-bottom:12px;text-align:left}.business-card-details{display:flex;flex-direction:column;gap:6px;align-items:flex-start}.business-card-email{font-size:.75rem;color:#60a5fa;word-break:break-all;text-align:left}.business-card-phone{font-size:.75rem;color:#a5b4fc;text-align:left}.business-card-location{font-size:.75rem;color:#9ca3af;text-align:left;margin-top:.25rem}.business-card-primary-badge{position:absolute;bottom:-2px;right:-2px;width:20px;height:20px;background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;font-size:.625rem;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #1a1a2e;box-shadow:0 2px 6px #0000004d}.business-card-primary-badge.company{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 2px 6px #10b98166}.company-primary-label{display:inline-block;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.5625rem;font-weight:600;padding:.125rem .375rem;border-radius:4px;margin-left:.375rem;text-transform:uppercase;letter-spacing:.5px;vertical-align:middle}.business-card-set-primary{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;color:#ffffffb3;transition:all .2s ease;opacity:0;z-index:10}.business-card-set-address-primary{position:absolute;top:8px;left:8px;width:28px;height:28px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;color:#ffffffb3;transition:all .2s ease;opacity:0;z-index:10}.business-card:hover .business-card-set-primary,.business-card:hover .business-card-set-address-primary{opacity:1}.business-card-set-primary:hover{background:linear-gradient(135deg,#10b981,#059669);border-color:transparent;color:#fff;transform:scale(1.1)}.business-card-set-address-primary:hover{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:transparent;color:#fff;transform:scale(1.1)}.business-card-delete{position:absolute;top:8px;right:40px;width:28px;height:28px;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.125rem;font-weight:700;color:#ffffffb3;transition:all .2s ease;opacity:0;z-index:10}.business-card:hover .business-card-delete{opacity:1}.business-card-delete:hover{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:transparent;color:#fff;transform:scale(1.1)}.business-cards-section{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e4e4e7}.business-cards-section h4{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#18181b}.business-cards-grid{display:flex;flex-wrap:wrap;gap:1.5rem}@media(max-width:768px){.business-card{width:280px;height:160px;padding:16px}.business-card-avatar{width:48px;height:48px}.business-card-initials,.business-card-name{font-size:1rem}.business-card-title{font-size:.75rem}.business-card-email,.business-card-phone,.business-card-location{font-size:.6875rem}}@media(max-width:480px){.business-card{width:100%;max-width:320px}.business-cards-grid{justify-content:center}}.address-contacts-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;margin-bottom:1rem;transition:all .2s ease}.address-contacts-card.primary{border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 2px #3b82f61a}.address-contacts-card.drop-active{border-color:#10b981;background:#10b9810d;box-shadow:0 0 0 2px #10b98133}.address-badges{display:flex;gap:.5rem;flex-wrap:wrap}.address-type-badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:500;text-transform:uppercase;background:#f1f5f9;color:#475569;border-radius:4px}.primary-badge{display:inline-block;padding:.25rem .5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;background:var(--primary-color, #3b82f6);color:#fff;border-radius:4px}.address-actions{display:flex;gap:.25rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;font-size:.875rem;color:#64748b;transition:all .15s ease;position:relative}.btn-icon[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:.375rem .5rem;background:#1e293b;color:#fff;font-size:.75rem;font-weight:400;white-space:nowrap;border-radius:4px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .1s ease,visibility .1s ease;z-index:100;margin-bottom:4px}.btn-icon[data-tooltip]:hover:after{opacity:1;visibility:visible}.btn-icon:hover{background:#f1f5f9;border-color:#e2e8f0;color:#1e293b}.btn-icon.btn-danger:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.location-display-name{margin-bottom:.375rem}.location-name-link{font-size:1rem;font-weight:600;color:var(--primary-color, #3b82f6);text-decoration:none;transition:color .15s ease}.location-name-link:hover{color:#1d4ed8;text-decoration:underline}.address-details-stacked{display:flex;flex-direction:column;gap:.375rem;font-size:.875rem;color:#64748b}.address-detail-row{display:flex;align-items:center;gap:.5rem}.detail-icon{font-size:.875rem;width:1.25rem;text-align:center;flex-shrink:0}.detail-value,.address-text-compact{color:#475569}.address-text-compact.address-link{color:var(--primary-color, #3b82f6);text-decoration:none;transition:color .15s ease}.address-text-compact.address-link:hover{text-decoration:underline}.address-details{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:.5rem}.address-icon{font-size:1rem;line-height:1.5}.address-text{font-size:.9375rem;color:#1e293b;line-height:1.5}.address-text.address-link{color:var(--primary-color, #3b82f6);text-decoration:none;font-weight:500;transition:color .15s ease}.address-text.address-link:hover{color:#1d4ed8;text-decoration:underline}.address-contacts-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}.contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.contacts-header h4{margin:0;font-size:.875rem;font-weight:600;color:#475569}.btn-add-contact{padding:.375rem .75rem;font-size:.75rem;font-weight:500;color:var(--primary-color, #3b82f6);background:transparent;border:1px solid var(--primary-color, #3b82f6);border-radius:4px;cursor:pointer;transition:all .15s ease}.btn-add-contact:hover{background:var(--primary-color, #3b82f6);color:#fff}.contacts-list{min-height:60px;width:100%;padding:.5rem 0;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:flex-start;gap:.75rem}.contacts-list .business-card{flex:0 0 auto}.contacts-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem;text-align:center;color:#94a3b8;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:6px}.empty-text{font-size:.875rem}.empty-hint{font-size:.75rem;margin-top:.25rem}.address-notes{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e2e8f0;font-size:.875rem;color:#64748b}.address-notes strong{color:#475569}@media(max-width:640px){.address-card-header{flex-direction:column;gap:.5rem}.address-actions{align-self:flex-end}.address-contact-info{flex-direction:column;gap:.375rem;padding-left:0}.contacts-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.modal-content{background:var(--card-bg, #fff);border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary, #111827)}.modal-close-btn{background:none;border:none;font-size:2rem;line-height:1;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.modal-close-btn:hover:not(:disabled){background-color:var(--background, #f3f4f6);color:var(--text-primary, #111827)}.modal-close-btn:disabled{opacity:.5;cursor:not-allowed}.address-form{padding:1.5rem;display:block!important;height:auto!important;flex:none!important}.address-form .form-group{display:block!important;flex:none!important;flex-direction:unset!important;height:auto!important;margin-bottom:1.25rem}.address-form .form-group label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.875rem;color:var(--text-primary, #111827)}.address-form .required{color:#ef4444;margin-left:.25rem}.address-form .form-group input[type=text],.address-form .form-group select,.address-form .form-group textarea{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;flex-grow:0!important;flex-shrink:0!important;align-self:auto!important;padding:.625rem .75rem!important;border:1px solid var(--border-color, #e5e7eb);border-radius:6px;font-size:.9375rem;color:var(--text-primary, #111827);background:var(--card-bg, #fff);transition:all .2s ease;box-sizing:border-box!important}.address-form .form-group input[type=text]:focus,.address-form .form-group select:focus,.address-form .form-group textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.address-form .form-group input[type=text]:disabled,.address-form .form-group select:disabled,.address-form .form-group textarea:disabled{background-color:var(--background, #f3f4f6);cursor:not-allowed;opacity:.6}.address-form .form-group input.error,.address-form .form-group select.error,.address-form .form-group textarea.error{border-color:#ef4444}.address-form .form-group .error-message{display:block;margin-top:.375rem;font-size:.8125rem;font-weight:400;color:#ef4444;background:none;border:none;border-radius:0;padding:0;line-height:1.4}.address-form .form-row{display:grid!important;grid-template-columns:2fr 1fr 1fr;gap:1rem;align-items:start!important}.address-form .form-row>.form-group{align-self:start!important;height:auto!important}.checkbox-group{border-top:1px solid var(--border-color, #e5e7eb);padding-top:1rem;margin-bottom:0}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500}.checkbox-label input[type=checkbox]:disabled{cursor:not-allowed;opacity:.5}.help-text{margin-top:.5rem;font-size:.8125rem;color:var(--text-secondary, #6b7280);font-weight:400;padding-left:1.625rem}.modal-content .modal-footer{display:flex!important;flex-direction:row!important;justify-content:flex-end!important;align-items:center!important;gap:.75rem!important;padding:1.5rem;border-top:1px solid var(--border-color, #e5e7eb);flex-wrap:nowrap!important}.modal-content .modal-footer .btn{display:inline-flex!important;width:auto!important;min-width:100px!important;max-width:none!important;flex:0 0 auto!important;padding:.625rem 1.25rem!important;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;align-items:center;justify-content:center;box-sizing:border-box!important}.modal-content .modal-footer .btn:disabled{opacity:.6;cursor:not-allowed}.modal-content .modal-footer .btn-secondary{background-color:var(--card-bg, #fff)!important;border:1px solid var(--border-color, #e5e7eb)!important;color:var(--text-primary, #111827)!important}.modal-content .modal-footer .btn-secondary:hover:not(:disabled){background-color:var(--background, #f3f4f6)!important}.modal-content .modal-footer .btn-primary{background-color:var(--primary-color, #3b82f6)!important;color:#fff!important}.modal-content .modal-footer .btn-primary:hover:not(:disabled){background-color:var(--primary-hover, #2563eb)!important}@media(max-width:640px){.modal-content{max-width:100%;max-height:100vh;border-radius:0}.address-form .form-row{grid-template-columns:1fr}.modal-content .modal-footer{flex-direction:column!important}.modal-content .modal-footer .btn{width:100%!important;flex:0 0 auto!important}}.address-contacts-manager{padding:1rem}.address-contacts-manager.loading,.address-contacts-manager.error{display:flex;align-items:center;justify-content:center;min-height:200px}.loading-spinner{color:#64748b;font-size:.875rem}.error-message{text-align:center;color:#dc2626}.error-message p{margin:0 0 1rem}.btn-retry{padding:.5rem 1rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;font-size:.875rem;color:#475569;transition:all .15s ease}.btn-retry:hover{background:#e2e8f0}.move-error-banner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.875rem 1rem;margin-bottom:1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;font-size:.9375rem}.move-error-banner .dismiss-btn{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;background:transparent;border:none;border-radius:4px;cursor:pointer;font-size:1.25rem;color:#991b1b;line-height:1;transition:background .15s ease}.move-error-banner .dismiss-btn:hover{background:#991b1b1a}.manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.manager-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1e293b}.btn-add-address{padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#fff;background:var(--primary-color, #3b82f6);border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-add-address:hover{background:var(--primary-color-dark, #2563eb)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;text-align:center;background:#f8fafc;border:2px dashed #e2e8f0;border-radius:8px}.empty-state p{margin:0 0 1rem;color:#64748b;font-size:.9375rem}.btn-primary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:#fff;background:var(--primary-color, #3b82f6);border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-primary:hover{background:var(--primary-color-dark, #2563eb)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.625rem 1.25rem;font-size:.875rem;font-weight:500;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s ease}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.addresses-list{display:flex;flex-direction:column;gap:1rem}.drag-overlay-contact{opacity:.9;transform:scale(1.02)}.unassigned-contacts-section{margin-top:2rem;padding:1rem;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px}.unassigned-contacts-section h4{margin:0 0 .25rem;font-size:.9375rem;font-weight:600;color:#92400e}.section-hint{margin:0 0 1rem;font-size:.8125rem;color:#a16207}.unassigned-contacts-list{padding:.5rem 0;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:flex-start;gap:.75rem}.unassigned-contacts-list .business-card{flex:0 0 auto}.unassigned-contact{display:flex;flex-direction:column;padding:.5rem .75rem;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;transition:all .15s ease}.unassigned-contact:hover{border-color:var(--primary-color, #3b82f6);box-shadow:0 2px 4px #0000000d}.unassigned-contact .contact-name{font-size:.875rem;font-weight:500;color:#1e293b}.unassigned-contact .contact-email{font-size:.75rem;color:#64748b;margin-top:.125rem}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.contact-form-modal{max-width:420px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0}.modal-header h3{margin:0;font-size:1.125rem;font-weight:600;color:#1e293b}.modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:1.25rem;color:#64748b;transition:all .15s ease}.modal-close:hover{background:#f1f5f9;color:#1e293b}.modal-body{padding:1.25rem}.email-step{display:flex;flex-direction:column;gap:1rem}.email-step p{margin:0;font-size:.9375rem;color:#475569}.email-input{padding:.625rem .875rem;font-size:.9375rem;border:1px solid #e2e8f0;border-radius:6px;transition:all .15s ease}.email-input:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.details-step{display:flex;flex-direction:column;gap:1rem}.info-banner{padding:.75rem 1rem;font-size:.875rem;color:#0369a1;background:#e0f2fe;border-radius:6px}.info-banner.info-banner-warning{color:#92400e;background:#fef3c7;border:1px solid #fcd34d}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.8125rem;font-weight:500;color:#475569}.form-group input,.form-group textarea{padding:.5rem .75rem;font-size:.9375rem;border:1px solid #e2e8f0;border-radius:6px;transition:all .15s ease}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{background:#f8fafc;color:#64748b;cursor:not-allowed}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}@media(max-width:640px){.manager-header{flex-direction:column;align-items:stretch;gap:.75rem}.btn-add-address{width:100%;text-align:center}.modal-content{width:95%;margin:1rem}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.compliance-records-container{width:100%}.records-table-wrapper{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.records-table{width:100%;border-collapse:collapse;background:#fff}.records-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.records-table th{padding:.75rem 1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;white-space:nowrap}.records-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;font-size:.875rem;color:#374151}.records-table tbody tr:last-child td{border-bottom:none}.records-table tbody tr:hover{background-color:#f9fafb}.status-verified{background-color:#d1fae5;color:#065f46}.status-expired{background-color:#fee2e2;color:#991b1b}.status-unknown{background-color:#e5e7eb;color:#374151}.text-warning{color:#dc2626;font-weight:600}.edit-grace-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:4px;border-radius:4px;transition:background-color .2s}.edit-grace-btn:hover{background-color:#f3f4f6}.edit-grace-btn:active{background-color:#e5e7eb}.modal-content{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#9ca3af;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s,color .2s}.modal-close:hover{background-color:#f3f4f6;color:#374151}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:#374151}.form-input{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}.form-input:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #3b82f61a}.form-hint{margin-top:.25rem;font-size:.75rem;color:#6b7280}.modal-footer{display:flex;gap:.75rem;padding:1.5rem;border-top:1px solid #e5e7eb;justify-content:flex-end}.cancel-btn{padding:.5rem 1rem;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s,border-color .2s}.cancel-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#e4e4e7}.cancel-btn:disabled{opacity:.5;cursor:not-allowed}.save-btn{padding:.5rem 1rem;border:none;background-color:#3b82f6;color:#fff;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.save-btn:hover:not(:disabled){background-color:#2563eb}.save-btn:disabled{opacity:.5;cursor:not-allowed}.bid-history-container{width:100%}.bids-table-wrapper{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.bids-table{width:100%;border-collapse:collapse;background:#fff}.bids-table thead{background-color:#f9fafb;border-bottom:2px solid #e5e7eb}.bids-table th{padding:.75rem 1rem;text-align:left;font-size:.875rem;font-weight:600;color:#374151;white-space:nowrap}.bids-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e7eb;font-size:.875rem;color:#374151}.bids-table tbody tr:hover{background-color:#f9fafb}.rfp-link{color:#2563eb;text-decoration:none;font-weight:500}.rfp-link:hover{text-decoration:underline}.bid-amount{font-weight:600;color:#059669}.text-center{text-align:center}.rank-badge{display:inline-block;padding:.25rem .5rem;border-radius:12px;background-color:#dbeafe;color:#1e40af;font-size:.75rem;font-weight:600}.view-link{color:#2563eb;text-decoration:none;font-weight:500;padding:.25rem .75rem;border-radius:4px;transition:background-color .2s;display:inline-block}.view-link:hover{background-color:#eff6ff;text-decoration:none}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-accepted{background-color:#d1fae5;color:#065f46}.status-pending{background-color:#fef3c7;color:#92400e}.status-rejected{background-color:#fee2e2;color:#991b1b}.status-draft,.status-unknown{background-color:#e5e7eb;color:#374151}.empty-state{padding:3rem 1rem;text-align:center;color:#6b7280}.empty-state p{margin:0;font-size:.95rem}.vendor-interaction-container{display:grid;grid-template-columns:1fr 1fr;gap:2rem;padding:1rem 0}@media(max-width:1024px){.vendor-interaction-container{grid-template-columns:1fr}}.interaction-form-section,.interaction-history-section{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.interaction-form-section h3{margin-top:0;margin-bottom:1.5rem;font-size:1.125rem;color:#111827}.interactions-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.interactions-header h3{margin:0;font-size:1.125rem;color:#111827}.interaction-search{flex:1;min-width:200px;max-width:300px;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.interaction-search:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #2563eb1a}.interaction-search::placeholder{color:#9ca3af}.interaction-form{display:flex;flex-direction:column;gap:1rem}@media(max-width:640px){.form-row{grid-template-columns:1fr}}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-field label{font-size:.875rem;font-weight:500;color:#374151}.form-field input,.form-field select,.form-field textarea{padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #2563eb1a}.form-field textarea{resize:vertical;font-family:inherit}.form-actions{margin-top:1rem;display:flex;justify-content:flex-end}.submit-button{padding:.625rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.submit-button:hover:not(:disabled){background-color:#1d4ed8}.submit-button:disabled{background-color:#9ca3af;cursor:not-allowed}.error-message{padding:.75rem 1rem;background-color:#fee2e2;color:#991b1b;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.success-message{padding:.75rem 1rem;background-color:#d1fae5;color:#065f46;border-radius:6px;font-size:.875rem;margin-bottom:1rem}.interactions-list{display:flex;flex-direction:column;gap:1rem;max-height:500px;overflow-y:auto;padding-right:.5rem}.interactions-list::-webkit-scrollbar{width:8px}.interactions-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.interactions-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.interactions-list::-webkit-scrollbar-thumb:hover{background:#94a3b8}.interaction-card{padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.interaction-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.interaction-header-left{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.interaction-type{display:inline-block;padding:.25rem .75rem;background-color:#dbeafe;color:#1e40af;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.interaction-contact{font-size:.75rem;color:#2563eb;font-weight:500}.interaction-staff{font-size:.75rem;color:#6b7280;font-style:italic}.interaction-date{font-size:.75rem;color:#6b7280;white-space:nowrap}.interaction-summary{font-size:.875rem;color:#374151;line-height:1.5;margin-bottom:.75rem}.interaction-next-action{font-size:.8125rem;color:#6b7280;padding-top:.75rem;border-top:1px solid #e5e7eb}.interaction-next-action strong{color:#374151}.next-action-date{color:#9ca3af;margin-left:.5rem}.empty-state{padding:2rem 1rem;text-align:center;color:#6b7280}.empty-state p{margin:0;font-size:.875rem}.vendor-header-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #0000001a}.vendor-header-content{display:flex;align-items:center;gap:1.5rem}.vendor-icon{width:80px;height:80px;flex-shrink:0;border:1px solid var(--border-color);border-radius:8px;overflow:hidden;background:var(--background);display:flex;align-items:center;justify-content:center}.vendor-icon img{width:100%;height:100%;object-fit:contain;padding:4px}.vendor-info{flex:1;min-width:0}.vendor-name{margin:0 0 .75rem;font-size:2.25rem;font-weight:600;color:var(--text-primary);line-height:1.2}.vendor-skill-tags{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.vendor-skill-tag{display:inline-flex;align-items:center;padding:.25rem .75rem;background:linear-gradient(135deg,#3b82f626,#6366f126);color:var(--primary-color, #3b82f6);border:1px solid rgba(59,130,246,.3);border-radius:9999px;font-size:.8125rem;font-weight:500;letter-spacing:.01em;white-space:nowrap}.vendor-contact-meta{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.contact-item{display:flex;align-items:center;gap:.5rem;color:var(--text-secondary);font-size:.9375rem}.contact-icon{font-size:1rem;line-height:1}.contact-value{line-height:1.4;word-break:break-word;overflow-wrap:break-word}.contact-email{color:var(--text-tertiary, #888);font-size:.875em}.contact-link{color:var(--primary-color);text-decoration:none;transition:color .2s ease}.contact-link:hover{color:var(--primary-hover);text-decoration:underline}.vendor-status-container{flex-shrink:0;margin-left:auto}.vendor-status-badge{padding:.5rem 1rem;border-radius:6px;font-weight:600;font-size:.875rem;letter-spacing:.5px;text-align:center;min-width:120px}.vendor-status-badge.green{background-color:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.vendor-status-badge.yellow{background-color:#eab3081a;color:#eab308;border:1px solid rgba(234,179,8,.3)}.vendor-status-badge.red{background-color:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.vendor-status-badge.gray{background-color:#9ca3af1a;color:#6b7280;border:1px solid rgba(156,163,175,.3)}@media(max-width:768px){.vendor-header-content{flex-direction:column;align-items:flex-start}.vendor-icon{width:60px;height:60px}.vendor-name{font-size:1.5rem}.vendor-skill-tags{gap:.375rem}.vendor-skill-tag{font-size:.75rem;padding:.1875rem .5rem}.vendor-contact-meta{gap:.5rem}.vendor-status-container{margin-left:0;width:100%}.vendor-status-badge{width:100%}}.vendor-skills-container{padding:1.5rem}.skills-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.skills-header-left{display:flex;align-items:center;gap:1rem}.skills-header h3{margin:0;color:#1e293b;font-size:1.25rem}.skills-count{background:#e2e8f0;color:#475569;padding:.25rem .75rem;border-radius:999px;font-size:.8125rem;font-weight:500}.btn-manage-skills{background:#2563eb;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-manage-skills:hover{background:#1d4ed8;transform:translateY(-1px)}.skills-category{margin-bottom:2rem}.category-title{margin:0 0 1rem;color:#475569;font-size:1rem;font-weight:600;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.vendor-skills-container .skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;width:100%}.vendor-skills-container .skill-card,.vendor-skills-container .skills-grid .skill-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem;transition:all .2s;position:relative;min-width:0;width:100%;max-width:none!important;box-sizing:border-box}.skill-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #00000014}.skill-card.skill-updating{opacity:.7;pointer-events:none}.skill-card-header{margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #f1f5f9}.skill-name-section{display:flex;flex-direction:column;gap:.5rem}.skill-name{font-weight:600;color:#1e293b;font-size:1rem}.certified-icon-toggle{position:absolute;top:.75rem;right:.75rem;background:none;border:none;padding:.25rem;cursor:pointer;transition:all .2s;border-radius:4px;display:flex;align-items:center;justify-content:center;z-index:10}.certified-icon-toggle:hover{background:#0000000d;transform:scale(1.1)}.certified-icon-toggle:disabled{opacity:.5;cursor:not-allowed}.certified-icon-toggle.certified:hover{background:#15803d1a}.certified-toggle{display:flex;align-items:center;cursor:pointer}.certified-toggle input{display:none}.certified-badge{padding:.25rem .625rem;border-radius:999px;font-size:.75rem;font-weight:600;background:#f1f5f9;color:#64748b;transition:all .2s}.certified-badge.certified{background:#dcfce7;color:#15803d}.certified-toggle:hover .certified-badge{transform:scale(1.02)}.skill-card-body{display:grid;grid-template-columns:1fr;gap:1rem}.skill-field{display:flex;flex-direction:column;gap:.375rem}.skill-field label{font-size:.75rem;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.025em}.skill-select{padding:.5rem;border:1px solid #e2e8f0;border-radius:6px;font-size:.875rem;color:#1e293b;background:#fff;cursor:pointer;transition:all .15s}.skill-select:hover{border-color:#cbd5e1}.skill-select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.experience-input-wrapper{display:flex;align-items:center;border:1px solid #e2e8f0;border-radius:6px;overflow:hidden;transition:all .15s}.experience-input-wrapper:hover{border-color:#cbd5e1}.experience-input-wrapper:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.experience-input{width:60px;padding:.5rem;border:none;font-size:.875rem;color:#1e293b;background:#fff;text-align:center}.experience-input:focus{outline:none}.experience-suffix{padding:0 .5rem;font-size:.8125rem;color:#64748b;background:#f8fafc;border-left:1px solid #e2e8f0;height:100%;display:flex;align-items:center}.skill-saving-indicator{position:absolute;top:.5rem;right:.5rem;background:#2563eb;color:#fff;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.no-skills{padding:3rem;text-align:center;color:#64748b;background:#f8fafc;border-radius:12px;border:2px dashed #e2e8f0}.no-skills p{margin:0 0 1rem;font-size:1rem}.btn-add-first{background:#2563eb;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-first:hover{background:#1d4ed8;transform:translateY(-1px)}.loading,.error{padding:2rem;text-align:center;color:#64748b}.error{color:#dc2626;background:#fee2e2;border-radius:8px;padding:1rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-content{background:#fff;border-radius:12px;padding:1.5rem;max-width:400px;width:90%;box-shadow:0 20px 40px #0003}.modal-content h3{margin:0 0 1rem;color:#1e293b;font-size:1.125rem}.modal-content p{margin:0 0 1.5rem;color:#64748b;line-height:1.5}.skill-selector-modal{max-width:640px;max-height:85vh;display:flex;flex-direction:column}.selector-header{margin-bottom:1rem}.selector-header h3{margin:0 0 .5rem;color:#1e293b;font-size:1.25rem}.selector-header p{margin:0;color:#64748b;font-size:.875rem;line-height:1.4}.selector-search{position:relative;margin-bottom:.75rem}.selector-search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid #e2e8f0;border-radius:8px;font-size:.9375rem;transition:all .15s}.selector-search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.selector-search-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;font-size:1.25rem;color:#94a3b8;cursor:pointer;padding:.25rem;line-height:1}.selector-search-clear:hover{color:#64748b}.selector-count{font-size:.8125rem;color:#2563eb;font-weight:600;margin-bottom:1rem;padding:.5rem .75rem;background:#eff6ff;border-radius:6px;display:inline-block}.selector-skills-list{flex:1;overflow-y:auto;max-height:400px;padding-right:.5rem;margin-bottom:1rem}.selector-category{margin-bottom:1.25rem}.selector-category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.375rem;border-bottom:1px solid #e2e8f0}.selector-category-name{font-size:.875rem;font-weight:600;color:#475569}.selector-category-count{font-size:.75rem;color:#2563eb;font-weight:500}.selector-checkbox-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.selector-checkbox-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:6px;cursor:pointer;transition:all .15s;border:1px solid transparent;background:#f8fafc}.selector-checkbox-item:hover{background:#f1f5f9}.selector-checkbox-item.selected{background:#eff6ff;border-color:#bfdbfe}.selector-checkbox-item input{width:1rem;height:1rem;cursor:pointer;accent-color:#2563eb}.selector-skill-name{font-size:.875rem;color:#1e293b}.selector-empty{padding:2rem;text-align:center;color:#64748b;font-size:.9375rem}.selector-actions{display:flex;justify-content:flex-end;gap:.75rem;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-primary{background:#2563eb;color:#fff;border:none;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:#1d4ed8}.btn-primary:disabled{background:#93c5fd;cursor:not-allowed}.btn-secondary{background:#fff;color:#374151;border:1px solid #d1d5db;padding:.625rem 1.25rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}.btn-danger{background:#dc2626;color:#fff;border:none;padding:.5rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .2s}.btn-danger:hover{background:#b91c1c}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem}@media(max-width:1024px){.vendor-skills-container .skills-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.vendor-skills-container .skills-grid,.selector-checkbox-grid{grid-template-columns:1fr}.skills-header{flex-direction:column;align-items:flex-start;gap:1rem}.skills-header-left{flex-direction:column;align-items:flex-start}}.vendor-history-container{margin-top:2rem;padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.vendor-history-container h3{margin:0 0 1.5rem;font-size:1.25rem;color:#1a1a1a}.history-timeline{display:flex;flex-direction:column;gap:1.5rem;position:relative;padding-left:2rem}.history-timeline:before{content:"";position:absolute;left:1rem;top:0;bottom:0;width:2px;background:#e5e7eb}.history-event{position:relative;display:flex;gap:1rem;align-items:flex-start}.event-icon{position:absolute;left:-2rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e5e7eb;border-radius:50%;font-size:1rem;z-index:1}.event-content{flex:1;padding:1rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb}.event-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.event-type{font-weight:600;color:#1a1a1a;font-size:1rem}.event-timestamp{font-size:.875rem;color:#6b7280}.event-details{display:flex;flex-direction:column;gap:.5rem;font-size:.875rem;color:#4b5563}.status-change{display:flex;align-items:center;gap:.5rem}.status-old{padding:.125rem .5rem;background:#fee2e2;color:#991b1b;border-radius:4px;font-weight:500}.status-new{padding:.125rem .5rem;background:#d1fae5;color:#065f46;border-radius:4px;font-weight:500}.performed-by{color:#6b7280;font-style:italic}.event-reason,.event-notes{padding:.75rem;background:#fff;border-left:3px solid #3b82f6;border-radius:4px;margin-top:.5rem}.event-reason strong,.event-notes strong{color:#1a1a1a;display:block;margin-bottom:.25rem}.loading,.error,.no-history{text-align:center;padding:2rem;color:#6b7280}.error{color:#dc2626}.vendor-documents-container{padding:1rem}.document-item{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;transition:box-shadow .2s;position:relative}.document-item:hover{box-shadow:0 2px 8px #0000001a}.document-title-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.document-icon{flex-shrink:0;color:#1976d2}.document-title-row h4{flex:1;margin:0;font-size:1rem;font-weight:600;color:#333}.document-info{margin-bottom:.75rem}.document-meta{display:flex;flex-wrap:wrap;gap:.75rem;font-size:.875rem;color:#666}.compliance-badge{padding:.125rem .5rem;background-color:#e3f2fd;color:#1976d2;border-radius:4px;font-weight:500;font-size:.75rem}.document-actions{display:flex;gap:.5rem;flex-wrap:wrap}.action-btn{padding:.5rem 1rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;font-size:.875rem;display:flex;align-items:center;gap:.25rem;transition:all .2s}.action-btn:hover{background:#f5f5f5}.action-btn.edit{color:#1976d2;border-color:#1976d2}.action-btn.edit:hover{background:#e3f2fd}.action-btn.save{background:#4caf50;color:#fff;border-color:#4caf50}.action-btn.save:hover{background:#45a049}.action-btn.cancel{background:#9e9e9e;color:#fff;border-color:#9e9e9e}.action-btn.cancel:hover{background:#757575}.action-btn.download{color:#1976d2;border-color:#1976d2}.action-btn.download:hover{background:#e3f2fd}.action-btn.delete{color:#d32f2f;border-color:#d32f2f}.action-btn.delete:hover{background:#ffebee}.form-input{padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.875rem;font-family:inherit}.form-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 2px #1976d21a}.empty-content{text-align:center;padding:3rem 1rem;color:#666}.empty-icon{font-size:3rem;margin-bottom:1rem}.empty-hint{font-size:.875rem;color:#999;margin-top:.5rem}.loading-message,.error-message{text-align:center;padding:2rem;color:#666}.error-message{color:#d32f2f}.vendor-company-info{display:flex;flex-direction:column;gap:1.5rem}.company-info-card{padding:1.5rem}.company-info-card h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#1e293b;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.card-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0}.card-header-row h3{margin:0;padding:0;border:none}.btn-edit{padding:.375rem .75rem;font-size:.8125rem;font-weight:500;color:#3b82f6;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;text-decoration:none;transition:all .2s ease}.btn-edit:hover{background:#dbeafe;border-color:#93c5fd}.info-section{display:flex;flex-direction:column;gap:.75rem}.info-row{display:flex;flex-wrap:wrap;gap:.5rem}.info-label{font-size:.8125rem;font-weight:500;color:#64748b;min-width:140px}.info-value{font-size:.875rem;color:#1e293b;flex:1}.info-link{color:#3b82f6;text-decoration:none}.info-link:hover{text-decoration:underline}.notes-content{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.notes-content p{margin:0;font-size:.875rem;color:#475569;line-height:1.6;white-space:pre-wrap}.empty-state{text-align:center;padding:2rem;color:#64748b}.empty-state p{margin:0}@media(max-width:640px){.info-row{flex-direction:column;gap:.25rem}.info-label{min-width:auto}}.vendor-detail-container{padding:0;width:100%;max-width:100%}.vendor-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #f0f0f0}.header-left{flex:1}.back-button{display:inline-block;color:#667eea;text-decoration:none;font-size:14px;font-weight:600;margin-bottom:15px;transition:color .2s}.vendor-detail-header h1{margin:0 15px 10px 0;color:#333;font-size:32px;display:inline-block}.vendor-detail-content{display:flex;flex-direction:column;gap:25px}.company-info-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.company-info-card label{color:#fffc}.company-info-card .detail-value{color:#fff;font-weight:500}.company-info-card .detail-value a{color:#fff;text-decoration:underline}.detail-grid.compact{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.detail-field.full-width{grid-column:1 / -1}.status-badge{padding:6px 16px;border-radius:16px;font-size:13px;font-weight:600;text-transform:capitalize;display:inline-block}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.status-badge.unknown{background:#e2e3e5;color:#383d41}.related-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px}.related-link{display:block;padding:15px 20px;background:#f8f9fa;border-radius:8px;text-decoration:none;color:#333;font-weight:600;text-align:center;transition:all .2s}.related-link:hover{background:#e9ecef;transform:translate(4px);color:#667eea}.approve-button{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.approve-button:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.approve-button:disabled{opacity:.6;cursor:not-allowed}.reject-button{background:#ffc107;color:#333;border:none;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.reject-button:hover:not(:disabled){background:#e0a800;transform:translateY(-2px)}.reject-button:disabled{opacity:.6;cursor:not-allowed}.rejection-textarea{width:100%;padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;margin-top:15px;transition:border-color .2s}.rejection-textarea:focus{outline:none;border-color:#e4e4e7}.rejection-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.confirm-reject-button{background:#ffc107;color:#333;border:none;padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-reject-button:hover:not(:disabled){background:#e0a800}.confirm-reject-button:disabled{opacity:.6;cursor:not-allowed}.info-text{color:#666;font-size:14px;font-style:italic;margin-top:5px}.manager-notes-section{background:#f8f9ff;border:2px solid #e0e4ff}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.notes-actions{display:flex;gap:10px}.edit-notes-button,.save-notes-button,.cancel-notes-button{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.edit-notes-button{background:#667eea;color:#fff}.edit-notes-button:hover{background:#5568d3}.save-notes-button{background:#28a745;color:#fff}.save-notes-button:hover:not(:disabled){background:#218838}.save-notes-button:disabled{opacity:.6;cursor:not-allowed}.cancel-notes-button{background:#6c757d;color:#fff}.cancel-notes-button:hover:not(:disabled){background:#5a6268}.cancel-notes-button:disabled{opacity:.6;cursor:not-allowed}.manager-notes-textarea{width:100%;padding:12px;border:2px solid #d0d4ff;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.manager-notes-textarea:focus{outline:none;border-color:#e4e4e7}.manager-notes-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.manager-notes-display{padding:15px;background:#fff;border-radius:8px;border:1px solid #e0e4ff;min-height:100px;line-height:1.6;white-space:pre-wrap;color:#333}.no-notes{color:#999;font-style:italic}.vendor-detail-container .contact-card{flex:0 1 calc(50% - .5rem);min-width:0;max-width:calc(50% - .5rem)}@media(min-width:1600px){.vendor-detail-container .contact-card{flex:0 1 calc(25% - .75rem);max-width:calc(25% - .75rem)}}@media(max-width:768px){.vendor-detail-container .contact-card{flex:1 1 100%;max-width:100%}.vendor-detail-header{flex-direction:column;gap:20px}.header-actions{width:100%;justify-content:stretch}.edit-button,.delete-button{flex:1}.detail-grid,.related-links{grid-template-columns:1fr}}.vendor-form-container{padding:0;width:100%;max-width:1200px;margin:0 auto}.form-header{margin-bottom:30px}.form-header .subtitle{margin:5px 0 0;color:#666;font-size:16px}.form-header .back-button{display:inline-block;color:#667eea;text-decoration:none;font-size:14px;font-weight:600;margin-bottom:15px;transition:color .2s}.form-header .back-button:hover{color:#5568d3}.form-header h1{margin:0;color:#333;font-size:32px}.vendor-form{background:#fff;padding:40px;border-radius:12px;box-shadow:0 2px 10px #0000001a}.info-banner{background:#cfe2ff;border-left:4px solid #e4e4e7;padding:15px 20px;border-radius:8px;margin-bottom:25px}.info-banner p{margin:0;color:#084298;line-height:1.6}.info-banner strong{font-weight:600}.error-message{background:#f8d7da;color:#721c24;padding:15px 20px;border-radius:8px;margin-bottom:25px;border-left:4px solid #e4e4e7}.form-section{margin-bottom:35px}.form-section h2{margin:0 0 20px;color:#667eea;font-size:20px;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.form-field{display:flex;flex-direction:column}.form-field.full-width{grid-column:1 / -1}.form-field label{font-size:13px;font-weight:600;color:#555;margin-bottom:8px}.form-field input,.form-field select,.form-field textarea{padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;font-family:inherit;transition:all .2s}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.form-field small{font-size:12px;color:#666;margin-top:4px}.form-field .input-hint{font-size:12px;color:#666;margin-top:4px;font-style:italic}.form-field textarea{resize:vertical;min-height:100px}.phone-input-container{display:flex;gap:10px;align-items:center}.country-code-input{display:flex;align-items:center;border:1px solid #ddd;border-radius:8px;padding:0 12px;background:#fff;transition:all .2s;min-width:70px}.country-code-input:focus-within{border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.plus-prefix{color:#666;font-weight:600;margin-right:4px}.country-code-field{border:none!important;padding:12px 0!important;width:40px;font-size:14px;box-shadow:none!important}.country-code-field:focus{outline:none;box-shadow:none!important}.phone-number-field{flex:1}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:35px;padding-top:30px;border-top:2px solid #f0f0f0}.cancel-button{background:#6c757d;color:#fff;padding:12px 30px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s;display:inline-block;text-align:center}.cancel-button:hover{background:#5a6268;transform:translateY(-2px)}.submit-button{background:#667eea;color:#fff;border:none;padding:12px 30px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.submit-button:hover:not(:disabled){background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.submit-button:disabled{opacity:.6;cursor:not-allowed}@media(max-width:768px){.vendor-form-container{padding:15px}.vendor-form{padding:25px}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.cancel-button,.submit-button{width:100%}}.locations-table-container{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.locations-table{width:100%;border-collapse:collapse;font-size:14px}.locations-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.locations-table th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.locations-table tbody tr{border-bottom:1px solid #e9ecef;transition:background-color .2s ease}.locations-table tbody tr:hover{background-color:#f8f9fa}.locations-table tbody tr:last-child{border-bottom:none}.locations-table td{padding:16px;color:#212529;vertical-align:middle}.location-name-cell{font-weight:500}.location-name-link{color:#06c;text-decoration:none;transition:color .2s ease}.location-name-link:hover{color:#0052a3;text-decoration:underline}.address-cell,.city-state-cell,.phone-cell,.email-cell{color:#495057}.no-data{color:#adb5bd;font-style:italic}.lifecycle-cell{white-space:nowrap}.lifecycle-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600}.actions-cell{text-align:right}.view-details-link{color:#06c;text-decoration:none;font-size:13px;transition:color .2s ease}.view-details-link:hover{color:#0052a3;text-decoration:underline}@media(max-width:1200px){.locations-table-container{overflow-x:auto}.locations-table{min-width:900px}}@media(max-width:768px){.locations-table{min-width:800px}.locations-table th,.locations-table td{padding:8px 12px}}.locations-list-container{padding:0;width:100%;max-width:100%;box-sizing:border-box}.locations-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.create-button{background:#667eea;color:#fff;padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s}.create-button:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.locations-filters{display:flex;gap:15px;margin-bottom:25px}.search-box{flex:1;max-width:600px;position:relative}.search-input{width:100%;padding:12px 40px 12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s}.search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:#999;font-size:16px;cursor:pointer;padding:4px;line-height:1;transition:color .2s}.search-clear:hover{color:#333}.locations-stats{display:flex;gap:20px;margin-bottom:30px}.stat-item{flex:1;max-width:250px;background:#fff;padding:20px;border-radius:10px;display:flex;flex-direction:column;align-items:center}.locations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.location-card{background:#fff;border-radius:12px;padding:24px;transition:all .3s ease;text-decoration:none;display:flex;flex-direction:column}.location-card-list{position:relative;border-radius:8px;border:1px solid #676767}.location-card-list:hover{transform:translateY(-4px);text-decoration:none}.location-card-delete-btn{position:absolute;top:12px;right:12px;width:28px;height:28px;border-radius:50%;border:none;background:#dc3545e6;color:#fff;font-size:18px;font-weight:700;cursor:pointer;opacity:0;transition:opacity .2s ease,transform .2s ease;display:flex;align-items:center;justify-content:center;z-index:10}.location-card-list:hover .location-card-delete-btn{opacity:1}.location-card-delete-btn:hover{background:#c82333;transform:scale(1.1)}.location-card-header{display:flex;flex-direction:column;gap:4px;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid #f0f0f0}.location-card-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.location-name{margin:0;color:#333;font-size:20px}.location-lifecycle-tag{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}.location-site-code{font-size:14px;color:#666;font-weight:500}.location-type{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;background:#d4edda;color:#155724;white-space:nowrap}.location-card-body{flex:1;display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.location-info{display:flex;align-items:flex-start;gap:10px}.info-icon{font-size:16px;line-height:1.4;flex-shrink:0}.info-text{font-size:14px;color:#555;line-height:1.4}.location-card-footer{padding-top:16px;border-top:1px solid #f0f0f0}.location-actions{display:flex;gap:10px;flex-wrap:wrap}.action-button{flex:1;min-width:80px;padding:8px 16px;border-radius:6px;font-size:14px;font-weight:600;text-align:center;text-decoration:none;border:none;cursor:pointer;transition:all .2s}.view-button{background:#667eea;color:#fff}.view-button:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 2px 6px #667eea4d}.edit-button{background:#28a745;color:#fff}.edit-button:hover{background:#218838;transform:translateY(-1px);box-shadow:0 2px 6px #28a7454d}.delete-button{background:#dc3545;color:#fff}.delete-button:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 2px 6px #dc35454d}@media(max-width:1024px){.locations-list-container{padding:0}}@media(max-width:768px){.locations-list-container{padding:0}.locations-header{flex-direction:column;gap:20px}.locations-stats{flex-direction:column}.stat-item{max-width:none}.locations-grid{grid-template-columns:1fr}.header-content h1{font-size:24px}}@media(max-width:480px){.locations-list-container{padding:0}.header-content h1{font-size:20px}.locations-grid{grid-template-columns:1fr;gap:15px}.location-card{padding:16px}}.user-search-dropdown{position:relative;width:100%}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:.75rem 2.5rem .75rem 1rem;border:1px solid #e5e7eb;border-radius:.5rem;font-size:1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:border-color .2s,box-shadow .2s;background:#fff}.search-input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.search-input:disabled{background:#f9fafb;cursor:not-allowed}.search-spinner{position:absolute;right:1rem;width:1rem;height:1rem;border:2px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite}.search-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid #e5e7eb;border-radius:.5rem;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;max-height:300px;overflow-y:auto;z-index:1001}.dropdown-item{padding:.75rem 1rem;cursor:pointer;border-bottom:1px solid #f3f4f6;transition:background-color .15s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover,.dropdown-item.highlighted{background-color:#f3f4f6}.dropdown-item.create-new,.dropdown-item.create-from-scratch{display:flex;align-items:center;gap:.5rem;color:#2563eb;font-weight:500;background-color:#f0f9ff;border-top:1px solid #e5e7eb}.dropdown-item.create-new:hover,.dropdown-item.create-new.highlighted,.dropdown-item.create-from-scratch:hover,.dropdown-item.create-from-scratch.highlighted{background-color:#dbeafe}.create-icon{display:inline-flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;background:#2563eb;color:#fff;border-radius:50%;font-size:.875rem;font-weight:600}.dropdown-item.loading-item{color:#6b7280;font-style:italic;cursor:default}.dropdown-item.loading-item:hover{background-color:#fff}.user-name{font-weight:500;color:#18181b;font-size:.9375rem;margin-bottom:.25rem}.user-details{font-size:.8125rem;color:#6b7280;display:flex;align-items:center;flex-wrap:wrap;gap:.25rem}.user-email,.user-phone{white-space:nowrap}.separator{color:#d1d5db;margin:0 .25rem}.existing-contact-badge{margin-top:.375rem;font-size:.75rem;color:#92400e;background-color:#fef3c7;padding:.25rem .5rem;border-radius:.25rem;display:inline-block}.help-text.create-hint{margin-top:.5rem;font-size:.8125rem;color:#6b7280}.contact-manager{background:transparent;border-radius:0;padding:0;box-shadow:none;margin:0}.contact-manager.loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:#666}.contact-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.contact-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.add-contact-btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.5rem;background-color:#2563eb;color:#fff;text-decoration:none}.add-contact-btn:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d;text-decoration:none}.add-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid #fafafa;border-radius:50%;font-size:12px;line-height:1}.error-message{background:#fee2e2;color:#991b1b;padding:12px;border-radius:6px;margin-bottom:16px}.contact-form-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.contact-form-modal{background:#fff;border-radius:12px;padding:24px;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}@media(max-width:480px){.contact-form-modal{width:95%;padding:1rem;border-radius:8px;max-height:95vh}}.modal-header h4{margin:0;font-size:1.25rem;color:#111827}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#6b7280;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.close-btn:hover{background:#f3f4f6;color:#111827}.contact-form-modal .form-field{margin-bottom:16px}.contact-form-modal .form-field label{display:block;margin-bottom:6px;font-weight:500;color:#374151}.contact-form-modal .form-field input,.contact-form-modal .form-field textarea{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.contact-form-modal .form-field input:focus,.contact-form-modal .form-field textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.contact-form-modal .form-field small{display:block;margin-top:4px;color:#6b7280;font-size:12px}.contact-form-modal .form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.contact-form-modal .cancel-btn,.contact-form-modal .submit-btn{padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.contact-form-modal .cancel-btn{background:#fff;border:1px solid #d1d5db;color:#374151}.contact-form-modal .cancel-btn:hover{background:#f9fafb}.contact-form-modal .submit-btn{background:#2563eb;border:none;color:#fff}.contact-form-modal .submit-btn:hover{background:#1d4ed8}.contact-form-modal .submit-btn:disabled{background:#9ca3af;cursor:not-allowed}.contact-form-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:480px){.contact-form-modal .form-row{grid-template-columns:1fr;gap:0}}.contact-form-modal .help-text{margin-top:6px;font-size:12px;color:#6b7280;line-height:1.4}.contact-form-modal .info-message{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af;padding:12px;border-radius:6px;margin-bottom:16px;font-size:14px;line-height:1.5}.contact-form-modal .info-message.success{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.contact-form-modal .modal-error{margin-bottom:16px}.contact-form-modal .form-field input:disabled{background:#f3f4f6;color:#6b7280;cursor:not-allowed}.contacts-list{margin-top:20px;margin-left:0;padding-left:0;background:transparent}.contacts-grid{background:transparent}.empty-state{text-align:center;padding:40px 20px;color:#6b7280}.empty-state p{margin-bottom:16px;font-size:14px}.add-first-btn{background:#f3f4f6;border:2px dashed #d1d5db;color:#374151;padding:10px 20px;border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s}.add-first-btn:hover{background:#e5e7eb;border-color:#9ca3af}.contacts-grid{display:flex;flex-direction:row;gap:1rem;width:100%;flex-wrap:wrap;margin:0;padding:0}@media(min-width:769px){.contact-card{flex:0 1 calc(50% - .5rem);min-width:0;max-width:calc(50% - .5rem)}}@media(min-width:1600px){.contact-card{flex:0 1 calc(25% - .75rem);min-width:0;max-width:calc(25% - .75rem)}}.contact-card{background:#fff!important;border:1px solid #e4e4e7;border-radius:.5rem;display:flex;flex-direction:column;flex:1;min-width:0;transition:all .2s;position:relative;box-shadow:none;overflow:hidden;word-wrap:break-word;overflow-wrap:break-word}.contact-card:hover{border-color:#d4d4d8;box-shadow:0 2px 8px #0000001a}.contact-card-content{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0;overflow:hidden;padding:1rem}.contact-card-content.clickable{cursor:pointer;transition:background .2s;border-radius:.5rem}.contact-card-content.clickable:hover{background:#f9fafb}.contact-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.contact-name{margin:0;font-size:1rem;font-weight:600;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;flex:1;min-width:0;word-wrap:break-word;overflow-wrap:break-word}.contact-main-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.contact-title{margin:0;font-size:.875rem;font-weight:400;color:#71717a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43}.contact-email,.contact-phone{margin:0;font-size:.875rem;font-weight:400;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43;display:flex;align-items:center;gap:.5rem;min-width:0;word-wrap:break-word;overflow-wrap:break-word}.contact-icon{flex-shrink:0;color:#71717a;width:20px;height:20px}.contact-separator{width:100%;height:1px;background-color:#e4e4e7;margin:.75rem 0}.contact-description{margin:0;font-size:.875rem;font-weight:400;color:#71717a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43}.contact-actions{display:flex;gap:.25rem;justify-content:flex-end;flex-shrink:0;margin-left:.5rem}.contact-actions button{background:none;border:none;padding:.25rem;cursor:pointer;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:background .2s;width:28px;height:28px}.contact-delete-btn svg{width:22px;height:22px}.contact-download-btn:hover{background:#dbeafe}.contact-edit-btn:hover{background:#f4f4f5}.contact-delete-btn:hover{background:#fee2e2}.help-text{margin:.5rem 0 0;font-size:.75rem;color:#6b7280;font-style:italic}.loading-users{padding:.5rem;text-align:center;color:#666;font-size:.875rem}.selected-user-info{background:#f0f9ff;border:1px solid #bfdbfe;border-radius:6px;padding:1rem;margin-bottom:1rem}.selected-user-info h5{margin:0 0 .5rem;color:#1e40af;font-size:.875rem;font-weight:600}.selected-user-info p{margin:.25rem 0;font-size:.875rem;color:#1e293b}.edit-contact-info{background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:1rem;margin-bottom:1rem}.edit-contact-info p{margin:.25rem 0;font-size:.875rem;color:#78350f}.checkbox-field{margin-top:12px;margin-bottom:16px}.checkbox-field label{display:flex;align-items:center;gap:8px;font-weight:400;cursor:pointer}.checkbox-field input[type=checkbox]{width:1rem;height:1rem;margin:0;cursor:pointer}.checkbox-field input[type=checkbox]:disabled{cursor:not-allowed}.checkbox-field label:has(input:disabled){opacity:.6;cursor:not-allowed}.warning-message{background:#fef3c7;border:1px solid #fbbf24;border-radius:6px;padding:1rem;margin-bottom:1rem;color:#92400e;font-size:.875rem}.warning-message strong{color:#78350f}.submit-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.submit-btn:disabled:hover{background:#9ca3af}@media(max-width:1024px)and (min-width:769px){.contacts-grid{display:flex;flex-wrap:wrap}.contact-card{flex:1 1 calc(50% - .5rem);min-width:0;max-width:none}}@media(max-width:768px){.contact-manager{padding:1rem}.contact-header{flex-direction:column;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.contact-header h3{font-size:1.125rem}.add-contact-btn{width:100%;justify-content:center}.contacts-grid{flex-direction:column;gap:1rem}.contact-card{width:100%;min-width:0}.contact-header-row{flex-wrap:wrap;gap:.5rem}.contact-name{font-size:.9375rem;flex:1;min-width:0}.contact-actions{gap:.25rem}.contact-actions button{width:32px;height:32px}.contact-title,.contact-email,.contact-phone,.contact-description{font-size:.8125rem}}@media(max-width:480px){.contact-manager{padding:.75rem}.contact-header h3{font-size:1rem}.add-contact-btn{font-size:.8125rem;padding:.5rem .875rem}.contact-card{padding:.875rem}.contact-name{font-size:.875rem}.contact-title,.contact-email,.contact-phone,.contact-description{font-size:.75rem}.contact-icon{width:18px;height:18px}.contact-actions button{width:28px;height:28px}}.step-3-content{padding:1rem}.confirmation-section{margin-bottom:1.5rem}.confirmation-details{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;padding:1rem;margin-top:1rem}.confirmation-details p{margin:.5rem 0;font-size:.9375rem;color:#374151}.confirmation-details p:first-child{margin-top:0}.confirmation-details p:last-child{margin-bottom:0}.confirmation-details strong{color:#18181b;min-width:80px;display:inline-block}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.location-map-container{border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.location-map-placeholder{display:flex;align-items:center;justify-content:center;background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:8px}.location-map-placeholder-content{text-align:center;color:#6b7280}.location-map-placeholder-content p{margin:.5rem 0}.location-map-placeholder-hint{font-size:.875rem;font-style:italic}.location-map-coords{font-family:Courier New,monospace;font-size:.875rem;color:#6b7280}.location-map-link{color:#667eea;text-decoration:none;font-size:.875rem;font-weight:500}.location-map-link:hover{text-decoration:underline}.leaflet-container{font-family:inherit}.leaflet-popup-content-wrapper{border-radius:8px;box-shadow:0 4px 6px -1px #0000001a}.leaflet-popup-content{margin:12px;line-height:1.6}.location-card{background:#fff;border-radius:8px;overflow:hidden}.location-card.no-location{padding:30px;text-align:center;color:#999;font-style:italic}.location-card-full{padding:0}.location-section{padding:24px 30px;border-bottom:1px solid #f0f0f0}.location-section:last-child{border-bottom:none}.location-section-title{margin:0 0 20px;font-size:18px;font-weight:600;color:#333;display:flex;align-items:center;gap:8px}.location-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.location-detail{display:flex;flex-direction:column;gap:6px}.location-detail label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.location-value{font-size:15px;color:#333;font-weight:500;line-height:1.5}.location-value a{color:#667eea;text-decoration:none;transition:color .2s}.location-value a:hover{color:#5568d3;text-decoration:underline}.location-coordinates{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.coordinates-map-link{display:inline-flex;align-items:center;gap:4px;font-size:13px;padding:4px 10px;background:#f3f4f6;border-radius:4px;color:#667eea!important;font-weight:600;transition:all .2s}.coordinates-map-link:hover{background:#667eea;color:#fff!important;text-decoration:none!important}.location-notes{font-size:14px;line-height:1.6;color:#555;background:#f9fafb;padding:16px;border-radius:6px;border-left:3px solid #667eea}.location-card-compact{padding:16px 20px;display:flex;align-items:center;transition:all .2s;border:1px solid #e5e7eb}.location-card-compact:hover{box-shadow:0 4px 12px #00000026;border-color:#667eea}.location-compact-content{display:flex;align-items:center;gap:14px;width:100%}.location-icon{font-size:24px;line-height:1}.location-compact-info{flex:1;display:flex;flex-direction:column;gap:4px}.location-compact-name{font-size:16px;font-weight:600;color:#333}.location-compact-address{font-size:13px;color:#6b7280}.location-map-link{font-size:20px;text-decoration:none;opacity:.6;transition:all .2s;padding:6px;border-radius:4px}.location-map-link:hover{opacity:1;background:#f3f4f6}.location-hours-grid{display:flex;flex-direction:column;gap:8px;max-width:320px}.location-hours-row{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f9fafb;border-radius:6px}.location-hours-row .hours-day{color:#374151;font-weight:600;font-size:14px;min-width:100px}.location-hours-row .hours-time{color:#1f2937;font-size:14px;text-align:right}.location-hours-row .hours-closed{color:#9ca3af;font-style:italic}@media(max-width:768px){.location-section{padding:20px}.location-details-grid{grid-template-columns:1fr;gap:16px}.location-section-title{font-size:16px}.location-card-compact{padding:14px 16px}.location-compact-content{gap:12px}.location-icon{font-size:20px}.location-compact-name{font-size:15px}.coordinates-map-link{font-size:12px;padding:3px 8px}.location-hours-grid{max-width:100%}}@media print{.location-card{border:1px solid #e5e7eb}.coordinates-map-link,.location-map-link{display:none}.location-value a{color:#333;text-decoration:none}.location-value a:after{content:" (" attr(href) ")";font-size:11px;color:#666}}.location-detail-container{padding:0;width:100%;max-width:100%}.location-detail-header{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.header-nav-row{display:flex;justify-content:space-between;align-items:center}.back-button{display:inline-block;color:#667eea;text-decoration:none;font-size:14px;font-weight:600;transition:color .2s}.back-button:hover{color:#5568d3}.header-actions{display:flex;gap:10px}.location-title-box{display:flex;justify-content:space-between;align-items:center;background:#f8f9fa;padding:20px 24px;border-radius:12px}.location-title-content{display:flex;flex-direction:column;gap:4px}.location-detail-header h1{margin:0;color:#333;font-size:28px}.location-id-small{font-size:.75rem;color:#6b7280;font-family:monospace}.location-badges{display:flex;gap:8px;align-items:center}.location-type-badge{padding:6px 16px;border-radius:16px;font-size:13px;font-weight:600;background:#d4edda;color:#155724}.location-lifecycle-badge{padding:6px 16px;border-radius:16px;font-size:13px;font-weight:600}.edit-button{background:#667eea;color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;font-size:14px;transition:all .2s}.edit-button:hover{background:#5568d3;transform:translateY(-2px)}.delete-button{background:#dc3545;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.delete-button:hover{background:#c82333;transform:translateY(-2px)}.location-overview-section{margin-bottom:25px}.location-detail-content{display:flex;flex-direction:column;gap:25px}.detail-section{background:#fff;padding:30px;border-radius:12px;box-shadow:0 2px 10px #0000001a}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.section-header h2{margin:0;color:#667eea;font-size:20px}.detail-section h2{margin:0 0 20px;color:#667eea;font-size:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.detail-field{display:flex;flex-direction:column}.detail-field label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.detail-value{font-size:16px;color:#333;padding:10px 0}.detail-value a{color:#667eea;text-decoration:none}.detail-value a:hover{text-decoration:underline}.detail-text{color:#555;line-height:1.6;white-space:pre-wrap}.add-contact-button{background:#667eea;color:#fff;padding:8px 16px;border-radius:6px;text-decoration:none;font-weight:600;font-size:13px;transition:all .2s}.add-contact-button:hover{background:#5568d3}.contacts-list{display:flex;flex-direction:column;gap:12px}.contact-card{display:flex;justify-content:space-between;align-items:center;padding:4rem;background:#f8f9fa;border-radius:8px;text-decoration:none;transition:all .2s ease}.contact-card:hover{background:#e9ecef;transform:translate(4px)}.contact-info{flex:1}.contact-name{font-size:16px;font-weight:600;color:#333;margin-bottom:4px}.contact-title{font-size:13px;color:#666}.contact-details{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.contact-detail{font-size:13px;color:#555}.no-contacts{padding:40px;text-align:center}.no-contacts p{color:#666;margin-bottom:20px}.add-first-contact{display:inline-block;background:#667eea;color:#fff;padding:12px 24px;border-radius:8px;text-decoration:none;font-weight:600;transition:all .2s}.add-first-contact:hover{background:#5568d3;transform:translateY(-2px)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;padding:30px;border-radius:12px;max-width:500px;width:90%;box-shadow:0 10px 40px #0000004d}.modal-content h3{margin:0 0 15px;color:#333;font-size:22px}.modal-content p{margin:10px 0;color:#555;line-height:1.6}.warning-text{color:#dc3545;font-weight:600;margin-top:15px}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:25px}.cancel-button{background:#6c757d;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.cancel-button:hover:not(:disabled){background:#5a6268}.cancel-button:disabled{opacity:.6;cursor:not-allowed}.confirm-delete-button{background:#dc3545;color:#fff;border:none;padding:10px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.confirm-delete-button:hover:not(:disabled){background:#c82333}.confirm-delete-button:disabled{opacity:.6;cursor:not-allowed}.error-container{background:#fff;padding:40px;border-radius:12px;text-align:center;box-shadow:0 2px 10px #0000001a;max-width:600px;margin:40px auto}.retry-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;margin-bottom:15px}.back-link{display:inline-block;color:#667eea;text-decoration:none;font-weight:600;transition:color .2s}.account-reps-list{display:flex;flex-direction:column;gap:20px}.section-description{color:#666;font-size:14px;margin:-10px 0 20px;line-height:1.6}.account-rep-card{background:#f8f9fa;border-radius:8px;padding:20px;border-left:4px solid #667eea;transition:all .2s}.account-rep-card.status-requested{border-left-color:#ffc107;background:#fffbf0}.account-rep-card.status-approved{border-left-color:#17a2b8;background:#f0f9fb}.account-rep-card.status-active{border-left-color:#28a745;background:#f0f9f4}.account-rep-card.status-inactive{border-left-color:#6c757d;background:#f5f5f5}.account-rep-card.status-rejected{border-left-color:#dc3545;background:#fef5f6}.account-rep-card.status-applied{border-left-color:#ffc107;background:#fffbf0}.account-rep-card.status-inreview{border-left-color:#6f42c1;background:#f8f4ff}.rep-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:15px;padding-bottom:15px;border-bottom:1px solid #e0e0e0}.rep-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.rep-info h3{margin:0;color:#333;font-size:18px}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-requested{background:#ffc107;color:#856404}.status-badge.status-approved{background:#17a2b8;color:#fff}.status-badge.status-active{background:#28a745;color:#fff}.status-badge.status-inactive{background:#6c757d;color:#fff}.status-badge.status-rejected{background:#dc3545;color:#fff}.status-badge.status-applied{background:#ffc107;color:#856404}.status-badge.status-inreview{background:#6f42c1;color:#fff}.rep-company{margin:0;color:#667eea;font-weight:600;font-size:14px}.rep-contact{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.rep-email,.rep-phone{font-size:13px;color:#555}.rep-skills{margin-top:15px}.rep-skills h4{margin:0 0 10px;color:#555;font-size:14px;font-weight:600}.skills-grid{display:flex;flex-wrap:wrap;gap:8px}.skill-badge{display:flex;align-items:center;gap:6px;background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #e0e0e0;font-size:13px}.skill-name{font-weight:600;color:#333}.skill-years{color:#666;font-size:12px}.skill-certified{background:#28a745;color:#fff;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.skill-level{background:#667eea;color:#fff;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600}.rep-notes{margin-top:15px;padding:12px;background:#fff;border-radius:6px;font-size:13px;color:#555}.rep-notes strong{color:#333}.rep-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid #e0e0e0;flex-wrap:wrap}.rep-actions button{padding:8px 16px;border:none;border-radius:6px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.approve-button{background:#28a745;color:#fff}.approve-button:hover{background:#218838;transform:translateY(-1px)}.reject-button{background:#dc3545;color:#fff}.reject-button:hover{background:#c82333;transform:translateY(-1px)}.activate-button{background:#17a2b8;color:#fff}.activate-button:hover{background:#138496;transform:translateY(-1px)}.deactivate-button{background:#6c757d;color:#fff}.deactivate-button:hover{background:#5a6268;transform:translateY(-1px)}.section-header-with-action{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.section-header-with-action h2{margin:0 0 5px;color:#667eea;font-size:20px;border:none;padding:0}.section-header-with-action .section-description{margin:0}.create-rfp-button{display:inline-block;background:#667eea;color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;font-size:14px;transition:all .2s;white-space:nowrap}.create-rfp-button:hover{background:#5568d3;transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.vendors-controls{display:flex;gap:15px;margin-bottom:20px;align-items:center}.vendors-controls .filter-box{min-width:180px}.vendors-controls .filter-select{width:100%;padding:10px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.vendors-controls .filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.view-toggle{display:flex;gap:4px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:4px}.view-toggle-btn{display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:8px 12px;border-radius:6px;cursor:pointer;color:#666;transition:all .2s ease}.view-toggle-btn:hover{background:#f0f0f0;color:#333}.view-toggle-btn.active{background:#667eea;color:#fff}.view-toggle-btn svg{pointer-events:none}.vendors-grouped{display:flex;flex-direction:column;gap:30px}.vendor-status-group{display:flex;flex-direction:column;gap:15px}.status-group-title{display:flex;align-items:center;gap:12px;margin:0;font-size:18px;font-weight:600;color:#333;padding-bottom:10px;border-bottom:2px solid #f0f0f0}.status-count{font-size:16px;color:#666;font-weight:500}.location-vendors-table-container{overflow-x:auto;margin-top:10px}.location-vendors-table{width:100%;border-collapse:collapse;font-size:14px}.location-vendors-table thead{background:#f8f9fa}.location-vendors-table th{padding:12px 16px;text-align:left;font-weight:600;color:#333;border-bottom:2px solid #e0e0e0;white-space:nowrap}.location-vendors-table td{padding:12px 16px;border-bottom:1px solid #e0e0e0;vertical-align:top}.location-vendors-table tr:hover{background:#f8f9fa}.location-vendors-table .vendor-name-link{color:#667eea;text-decoration:none;font-weight:600}.location-vendors-table .vendor-name-link:hover{text-decoration:underline}.location-vendors-table a{color:#667eea;text-decoration:none}.location-vendors-table a:hover{text-decoration:underline}.location-vendors-table .actions-cell{display:flex;gap:8px;flex-wrap:wrap}.table-action-btn{padding:6px 12px;border:none;border-radius:4px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.table-action-btn.activate{background:#17a2b8;color:#fff}.table-action-btn.activate:hover{background:#138496}.table-action-btn.approve{background:#28a745;color:#fff}.table-action-btn.approve:hover{background:#218838}.table-action-btn.reject{background:#dc3545;color:#fff}.table-action-btn.reject:hover{background:#c82333}.table-action-btn.deactivate{background:#6c757d;color:#fff}.table-action-btn.deactivate:hover{background:#5a6268}@media(max-width:768px){.header-nav-row{flex-direction:column;align-items:flex-start;gap:15px}.header-actions{width:100%;justify-content:stretch}.edit-button,.delete-button{flex:1}.location-title-box{flex-direction:column;align-items:flex-start;gap:12px}.detail-grid{grid-template-columns:1fr}.rep-header{flex-direction:column;gap:10px}.rep-contact{align-items:flex-start}.section-header-with-action{flex-direction:column;gap:15px}.create-rfp-button{width:100%;text-align:center}.vendors-controls{flex-direction:column;align-items:stretch}.vendors-controls .filter-box{width:100%}.view-toggle{align-self:flex-end}.location-vendors-table-container{margin:0 -30px;padding:0 30px}}.address-search{margin-bottom:1rem}.address-search-input-group{display:flex;gap:.5rem;margin-bottom:.5rem}.address-search-input{flex:1;padding:.5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.875rem}.address-search-input:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.address-search-input:disabled{background-color:#f3f4f6;cursor:not-allowed}.address-search-button{padding:.5rem 1rem;background-color:#667eea;color:#fff;border:none;border-radius:4px;font-size:.875rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .2s}.address-search-button:hover:not(:disabled){background-color:#5568d3}.address-search-button:disabled{background-color:#9ca3af;cursor:not-allowed}.address-search-error{padding:.5rem;background-color:#fee2e2;border:1px solid #e4e4e7;border-radius:4px;color:#dc2626;font-size:.875rem;margin-bottom:.5rem}.address-search-success{padding:.5rem;background-color:#d1fae5;border:1px solid #e4e4e7;border-radius:4px;color:#059669;font-size:.875rem;margin-bottom:.5rem}.address-search-hint{font-size:.75rem;color:#6b7280;font-style:italic}.location-relationship-manager{padding:1.5rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.location-relationships-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.location-relationships-header h3{margin:0;font-size:1.25rem;color:#1f2937}.location-relationships-loading{text-align:center;padding:2rem;color:#6b7280}.error-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:6px;margin-bottom:1rem;display:flex;justify-content:space-between;align-items:center}.error-dismiss{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#991b1b;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.add-location-form{background:#f9fafb;padding:1.5rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #e5e7eb}.add-location-form .form-group{margin-bottom:1rem}.add-location-form .form-group:last-of-type{margin-bottom:1.5rem}.add-location-form label{display:block;font-weight:500;margin-bottom:.5rem;color:#374151}.add-location-form select,.add-location-form textarea{width:100%;padding:.625rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem;transition:border-color .2s}.add-location-form select:focus,.add-location-form textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.add-location-form select:disabled,.add-location-form textarea:disabled{background:#f3f4f6;cursor:not-allowed}.form-actions{display:flex;gap:.75rem}.btn-primary,.btn-secondary,.btn-approve,.btn-reject,.btn-delete,.btn-activate,.btn-deactivate{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-primary{background:#3b82f6;color:#fff}.btn-primary:hover:not(:disabled){background:#2563eb}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover:not(:disabled){background:#d1d5db}.no-locations{text-align:center;padding:3rem 1rem;color:#6b7280}.no-locations p{margin:.5rem 0}.hint-text{font-size:.875rem;color:#9ca3af}.location-reps-list{display:flex;flex-direction:column;gap:1rem}.location-rep-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem;transition:box-shadow .2s}.location-rep-card:hover{box-shadow:0 2px 8px #00000014}.location-rep-header{display:flex;justify-content:space-between;align-items:start;margin-bottom:.75rem}.location-info{flex:1}.location-info h4{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:#1f2937}.location-meta-row{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.75rem}.site-code,.region{display:inline-block;background:#e0e7ff;color:#4338ca;padding:.125rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:500}.region{background:#dbeafe;color:#1e40af}.location-address-inline{color:#64748b;font-size:.75rem}.status-badge{padding:.375rem .875rem;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.status-approved{background:#d1fae5;color:#065f46}.status-requested{background:#fef3c7;color:#92400e}.status-rejected{background:#fee2e2;color:#991b1b}.status-inactive{background:#e5e7eb;color:#4b5563}.location-rep-notes{background:#fff;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.875rem;color:#4b5563}.location-rep-notes strong{color:#1f2937}.location-rep-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-approve{background:#10b981;color:#fff}.btn-approve:hover{background:#059669}.btn-reject{background:#ef4444;color:#fff}.btn-reject:hover{background:#dc2626}.btn-activate{background:#3b82f6;color:#fff}.btn-activate:hover{background:#2563eb}.btn-deactivate{background:#f59e0b;color:#fff}.btn-deactivate:hover{background:#d97706}.btn-delete{background:#9ca3af;color:#fff}.btn-delete:hover{background:#6b7280}.location-id-small{font-size:.75rem;color:#6b7280;font-family:monospace;margin-top:.25rem}@media(max-width:768px){.location-relationships-header{flex-direction:column;align-items:flex-start;gap:1rem}.location-rep-header{flex-direction:column;gap:.75rem}.location-rep-actions{width:100%}.btn-approve,.btn-reject,.btn-delete,.btn-activate,.btn-deactivate{flex:1}}.contact-detail-container{padding:0;width:100%;max-width:100%}.contact-header-wrapper{display:flex;flex-direction:column;gap:16px}.contact-header-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.contact-header-left{display:flex;align-items:center;gap:16px}.contact-name-section{display:flex;flex-direction:column}.contact-header-right{margin-left:auto}.contact-info-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;font-size:14px}.contact-job-title{font-weight:600;color:#374151}.contact-info-right .separator{margin:0 6px;color:#d1d5db}.contact-info-right .company-link{color:#667eea;text-decoration:none;font-weight:600;transition:color .2s}.contact-info-right .company-link:hover{color:#5568d3;text-decoration:underline}.contact-header-bottom{border-top:1px solid #e5e7eb;padding-top:12px}.contact-badges-horizontal{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.contact-avatar .avatar-initials{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;text-transform:uppercase}.contact-type-badge{background:#667eea;color:#fff;padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.badge-small{padding:4px 10px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.badge-admin{background:#dbeafe;color:#1e40af}.badge-vendor{background:#dcfce7;color:#166534}.badge-payment{background:#fef3c7;color:#92400e}.badge-ccw{background:#e0e7ff;color:#3730a3}.badge-active{background:#d1fae5;color:#065f46;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;display:inline-block}.badge-inactive{background:#fee2e2;color:#991b1b;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:600;display:inline-block}.badge-skill{background:#f3e8ff;color:#6b21a8;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;display:inline-block}.ml-2{margin-left:8px}.info-grid-dense{display:flex;flex-direction:column;gap:16px}.info-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.info-item-dense{display:flex;flex-direction:column;gap:6px}.info-item-dense.span-2{grid-column:span 2}.info-item-dense label{font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.info-value-dense{font-size:14px;color:#1f2937;font-weight:500;line-height:1.5}.info-value-dense a{color:#667eea;text-decoration:none;transition:color .2s}.info-value-dense a:hover{color:#5568d3;text-decoration:underline}.code-text{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;background:#f9fafb;padding:4px 8px;border-radius:4px;color:#4b5563}.company-link-large{font-size:18px;font-weight:600;color:#667eea;text-decoration:none}.company-link-large:hover{color:#5568d3;text-decoration:underline}.info-full-width{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.info-full-width label{display:block;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.notes-display{white-space:pre-wrap;padding:12px;background:#f9fafb;border-radius:6px;min-height:60px;color:#4b5563;font-size:14px;line-height:1.6}.notes-textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s}.notes-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.skills-section{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.skills-section label{display:block;font-size:11px;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.skills-container-dense{display:flex;flex-wrap:wrap;gap:8px}.vcf-action{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.company-actions{margin-top:24px;padding-top:24px;border-top:1px solid #e5e7eb}.btn-secondary{background:#f3f4f6;color:#374151;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;font-size:14px;border:none;cursor:pointer;transition:all .2s;display:inline-block}.btn-secondary:hover{background:#e5e7eb;transform:translateY(-1px)}.info-input{width:100%;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .2s;color:#1f2937}.info-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.activity-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.stat-card{background:#f9fafb;padding:20px;border-radius:8px;border-left:4px solid #667eea}.stat-label{font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.stat-value{font-size:32px;font-weight:700;color:#667eea}.no-activity{text-align:center;color:#6b7280;padding:40px;font-size:14px}.error-banner{background:#fee2e2;color:#991b1b;padding:16px;border-radius:8px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.error-dismiss{background:none;border:none;font-size:24px;cursor:pointer;color:#991b1b;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.error-dismiss:hover{background:#991b1b1a}.loading-spinner{text-align:center;padding:60px;color:#6b7280;font-size:16px}.error-message{background:#fee2e2;color:#991b1b;padding:24px;border-radius:8px;text-align:center;font-size:14px}.section-header{margin-bottom:20px}.section-header h2{margin:0;color:#667eea;font-size:18px;font-weight:600}@media(max-width:1200px){.info-row{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.contact-detail-container{padding:16px}.info-row{grid-template-columns:1fr}.contact-avatar .avatar-initials{width:60px;height:60px;font-size:24px}.contact-header-top{flex-direction:column;gap:16px}.contact-header-right{margin-left:0;width:100%}.contact-info-right{align-items:flex-start;text-align:left}.activity-stats-grid{grid-template-columns:1fr}}.editable-value{display:flex;align-items:center;gap:8px;font-size:14px;color:#1f2937;font-weight:500;line-height:1.5}.editable-value a{color:#667eea;text-decoration:none;transition:color .2s}.editable-value a:hover{color:#5568d3;text-decoration:underline}.inline-edit-pencil{background:none;border:none;cursor:pointer;padding:4px;font-size:14px;opacity:.4;transition:opacity .2s,transform .2s;border-radius:4px}.inline-edit-pencil:hover{opacity:1;transform:scale(1.1);background:#f3f4f6}.info-item-dense:hover .inline-edit-pencil{opacity:.7}.inline-edit-container{display:flex;align-items:center;gap:8px}.inline-edit-container.inline-edit-full{flex-direction:column;align-items:stretch}.inline-edit-input{flex:1;padding:6px 10px;border:2px solid #667eea;border-radius:6px;font-size:14px;font-family:inherit;color:#1f2937;background:#fff;min-width:120px}.inline-edit-input:focus{outline:none;box-shadow:0 0 0 3px #667eea33}.inline-edit-select{flex:1;padding:6px 10px;border:2px solid #667eea;border-radius:6px;font-size:14px;font-family:inherit;color:#1f2937;background:#fff;min-width:150px;cursor:pointer}.inline-edit-select:focus{outline:none;box-shadow:0 0 0 3px #667eea33}.inline-edit-textarea{width:100%;padding:10px 12px;border:2px solid #667eea;border-radius:6px;font-size:14px;font-family:inherit;color:#1f2937;background:#fff;resize:vertical;min-height:80px}.inline-edit-textarea:focus{outline:none;box-shadow:0 0 0 3px #667eea33}.inline-edit-actions{display:flex;gap:4px}.inline-edit-full .inline-edit-actions{justify-content:flex-end;margin-top:8px}.inline-save-btn,.inline-cancel-btn{padding:6px 10px;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s;font-weight:600}.inline-save-btn{background:#10b981;color:#fff}.inline-save-btn:hover:not(:disabled){background:#059669}.inline-save-btn:disabled{opacity:.6;cursor:not-allowed}.inline-cancel-btn{background:#f3f4f6;color:#6b7280}.inline-cancel-btn:hover:not(:disabled){background:#e5e7eb;color:#374151}.inline-cancel-btn:disabled{opacity:.6;cursor:not-allowed}.vendor-contact-meta.compact{display:flex;flex-wrap:wrap;gap:.375rem .75rem;margin-top:.25rem;font-size:.8125rem}.contact-meta-link{display:inline-flex;align-items:center;gap:.25rem;color:#4338ca;text-decoration:none;transition:color .15s ease}.contact-meta-link:hover{color:#1d4ed8;text-decoration:underline}.contact-meta-link.phone{color:#16a34a}.contact-meta-link.phone:hover{color:#15803d}.contact-meta-icon{font-size:.6875rem}.detail-page-header{margin-bottom:1.5rem;max-width:1280px;margin-left:auto;margin-right:auto}.header-top{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.header-left{display:flex;align-items:center;gap:.75rem;flex-wrap:nowrap}.title-row{display:inline-flex;align-items:center;gap:.6rem;line-height:1}.back-button{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;color:#1a1a1a;text-decoration:none;transition:color .2s;flex-shrink:0;padding:0;margin:0;height:24px;line-height:1;transform:translateY(6px)}.back-button svg{display:block;width:100%;height:100%}.back-button:hover{color:#2563eb}.detail-title{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0;padding:0;white-space:nowrap;line-height:1.2;display:flex;align-items:center}.header-left .status-badge{flex-shrink:0;display:inline-flex;align-items:center;margin:0}.header-action-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:0 1.25rem;height:40px;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .2s;text-decoration:none;flex-shrink:0}.header-action-button:hover{background-color:#1d4ed8}.action-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0;margin:0;padding:0}.action-icon svg{display:block;margin:0;padding:0;vertical-align:middle}.action-label{display:flex;align-items:center;margin:0;padding:0}@media(max-width:768px){.header-top{flex-direction:column;align-items:flex-start;gap:1rem}.header-left{flex-wrap:wrap}.detail-title{font-size:1.25rem}.header-action-button{width:100%;justify-content:center}}.compact-rfp-header{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:12px 16px;margin-bottom:16px}.compact-rfp-header-title{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid #e5e7eb;margin-bottom:10px}.compact-rfp-header-title h2{margin:0;font-size:16px;font-weight:600;color:#111827;flex:1}.compact-rfp-details-row{display:flex;align-items:center;gap:0;flex-wrap:wrap}.compact-rfp-detail-item{display:flex;align-items:center;gap:6px;padding:0 12px}.compact-rfp-detail-item:first-child{padding-left:0}.compact-rfp-detail-content{display:flex;flex-direction:column;gap:2px}.compact-rfp-detail-label{font-size:11px;color:#6b7280;text-transform:uppercase;letter-spacing:.025em;font-weight:500}.compact-rfp-detail-value{font-size:14px;color:#111827;font-weight:500}.compact-rfp-divider{width:1px;height:32px;background-color:#e5e7eb;margin:0}@media(max-width:1024px){.compact-rfp-details-row{flex-direction:column;align-items:flex-start;gap:8px}.compact-rfp-detail-item{padding:0;width:100%}.compact-rfp-divider{display:none}}@media(max-width:768px){.compact-rfp-header{padding:10px 12px}.compact-rfp-header-title h2{font-size:14px}.compact-rfp-detail-label{font-size:10px}.compact-rfp-detail-value{font-size:13px}}.bid-placeholder-tab{min-height:300px;display:flex;align-items:center;justify-content:center}.placeholder-content{text-align:center;max-width:400px}.placeholder-icon{font-size:48px;margin-bottom:16px}.placeholder-content h3{margin:0 0 12px;font-size:24px;color:#111827;font-weight:600}.placeholder-content p{margin:0 0 20px;font-size:16px;color:#6b7280;line-height:1.5}.placeholder-note{display:inline-block;padding:8px 16px;background-color:#f3f4f6;border-radius:6px;font-size:14px;color:#6b7280;font-weight:500}.error-text{color:#dc2626}.bid-documents-tab{padding:24px}.documents-tab-title{margin:0 0 20px;font-size:18px;font-weight:600;color:#111827}.documents-list{display:flex;flex-direction:column;gap:12px}.document-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;transition:background-color .2s}.document-item:hover{background-color:#f3f4f6}.document-icon{font-size:24px;flex-shrink:0}.document-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.document-name{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-meta{font-size:12px;color:#6b7280}.document-download-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:#2563eb;color:#fff;border-radius:6px;text-decoration:none;transition:background-color .2s;flex-shrink:0}.document-download-btn:hover{background-color:#1d4ed8}.bid-detail-container{max-width:1280px;margin:0 auto;padding:0}.bid-action-bar{display:flex;justify-content:flex-end;margin-bottom:1rem;padding:.75rem 1rem;background:#fef2f2;border-radius:8px;border:1px solid #fecaca}.bid-detail-tabs{display:flex;overflow-y:hidden;gap:8px;margin-bottom:20px;border-bottom:2px solid #e5e7eb;padding-bottom:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.bid-detail-tabs .tab-button{background:none;border:none;padding:12px 20px;font-size:15px;font-weight:500;color:#6b7280;cursor:pointer;position:relative;transition:all .2s;white-space:nowrap;border-bottom:3px solid transparent;margin-bottom:-2px}.bid-detail-tabs .tab-button:hover{color:#3b82f6;background-color:#f0f9ff}.bid-detail-tabs .tab-button.active{color:#3b82f6;border-bottom-color:#3b82f6;font-weight:600}.bid-detail-tabs::-webkit-scrollbar{height:4px}.bid-detail-tabs::-webkit-scrollbar-track{background:transparent}.bid-detail-tabs::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:2px}.skeleton-section{animation:skeleton-pulse 1.5s ease-in-out infinite}.skeleton-header{margin-bottom:32px;padding-bottom:24px;border-bottom:2px solid #e5e7eb}.skeleton-back{height:16px;width:120px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px;margin-bottom:12px}.skeleton-title{height:32px;width:300px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px;margin-bottom:8px}.skeleton-subtitle{height:20px;width:200px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}.skeleton-section-title{height:24px;width:150px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px;margin-bottom:20px}.skeleton-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.skeleton-item{height:60px;background:linear-gradient(90deg,#e5e7eb 25%,#f3f4f6,#e5e7eb 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px}.rfp-subtitle{margin:0 0 12px;font-size:16px;color:#6b7280;font-weight:500}.bid-meta{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.bid-id{font-size:14px;color:#6b7280;font-family:Courier New,monospace}.winning-badge{padding:8px 16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-radius:8px;font-size:14px;font-weight:700;box-shadow:0 4px 12px #10b98166;animation:badge-glow 2s ease-in-out infinite;display:inline-flex;align-items:center;gap:6px}@keyframes badge-glow{0%,to{box-shadow:0 4px 12px #10b98166}50%{box-shadow:0 6px 20px #10b98199}}.edit-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.875rem;font-weight:500;padding:.375rem .75rem;background-color:#fef3c7;color:#92400e;border-radius:.375rem;border:1px solid #fbbf24}.btn-edit,.btn-secondary{padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit{background:#f59e0b;color:#fff;border:none;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.btn-edit:hover{background:#d97706;transform:translateY(-1px)}.btn-secondary{background:#fff;color:#374151;border:2px solid #e5e7eb}.btn-secondary:hover{border-color:#3b82f6;color:#3b82f6}.vendor-bid-detail-layout{display:flex;flex-direction:column;gap:24px;margin-bottom:24px}.vendor-rfp-card{margin-bottom:0}.vendor-rfp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.vendor-rfp-title{margin:0;flex:1;font-size:20px;color:#111827;font-weight:700;word-break:break-word}.vendor-rfp-status{padding:6px 12px;border-radius:6px;font-size:14px;font-weight:600;text-transform:capitalize;white-space:nowrap;flex-shrink:0}.detail-value.due-date-warning{color:#f59e0b}.vendor-description{margin:0;padding:0;background:transparent;border-radius:0;max-height:none;overflow:visible}.vendor-description p{margin:0;color:#374151;line-height:1.6;white-space:pre-wrap;word-wrap:break-word;font-size:14px}.vendor-rfp-separator{width:100%;height:1px;background-color:#e5e7eb;margin:20px 0}.vendor-key-details{display:flex;align-items:flex-start;gap:0;padding-top:0;border-top:none;flex-wrap:nowrap;margin-top:0}.vendor-detail-item{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0;padding:0}.vendor-detail-divider{width:1px;height:100%;background-color:#e5e7eb;flex-shrink:0;margin:0 24px;min-height:60px}.vendor-detail-content{display:flex;flex-direction:column;gap:4px}.vendor-detail-content label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.vendor-detail-content span{font-size:24px;color:#111827;font-weight:700}.vendor-detail-content span.due-date-warning{color:#f59e0b}.vendor-bid-card{margin-bottom:0}.vendor-bid-overview{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e5e7eb;display:flex;align-items:flex-start;gap:24px;flex-wrap:wrap}.vendor-bid-amount-badge{display:inline-flex;flex-direction:column;gap:4px;padding:16px 24px;background:#d1fae5;border-radius:8px;margin-bottom:0;flex:1 1 0;min-width:0;box-sizing:border-box}.bid-amount-label{font-size:12px;color:#065f46;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.bid-amount-value{font-size:24px;color:#059669;font-weight:700}.vendor-bid-status-row{display:flex;gap:24px;flex-wrap:wrap;align-items:flex-start;flex:3 1 0;min-width:0}.vendor-status-item{display:flex;align-items:flex-start;gap:12px;flex:1 1 0;min-width:0;padding:16px 24px;background:#fff;border:1px solid #e4e4e7;border-radius:8px;min-height:72px;box-sizing:border-box}.vendor-status-item .on-time,.vendor-status-item .late{font-size:24px;font-weight:700;background:none;padding:0;border:none}.vendor-status-item .on-time{color:#059669}.vendor-status-item .late{color:#111827}.vendor-line-items-section{margin-top:0}.vendor-line-items-section .section-header{margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.overview-rfp-container{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}@media(max-width:1024px){.overview-rfp-container{grid-template-columns:1fr}.overview-rfp-container .rfp-details{order:1}.overview-rfp-container .bid-overview{order:2}}.detail-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid #e4e4e7;transition:all .3s ease;position:relative;box-shadow:none!important}.bid-detail-container .card{box-shadow:none!important;border:1px solid #e4e4e7}.detail-section:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#3b82f6;border-radius:12px 0 0 12px;opacity:0;transition:opacity .3s ease}.detail-section:hover{border-color:#e4e4e7}.detail-section:hover:before{opacity:0}.detail-section h2{margin:0 0 20px;font-size:20px;color:#111827;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid #f3f4f6}.section-header h2{margin:0;padding:0;border:none}.edit-icon{font-size:20px;padding:8px 12px;background:#fef3c7;border-radius:8px;text-decoration:none;transition:all .2s;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;border:2px solid transparent}.edit-icon:hover{background:#fbbf24;border-color:#f59e0b;transform:translateY(-2px)}.rfp-header-inline{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.rfp-header-inline h2{margin:0;flex:1;min-width:0;word-break:break-word}.rfp-status-inline{padding:6px 12px;border-radius:6px;font-size:14px;font-weight:600}.btn-view-rfp-full{display:inline-block;margin-top:16px;padding:10px 20px;background:#3b82f6;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;transition:all .2s}.btn-view-rfp-full:hover{background:#2563eb;transform:translateY(-1px)}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}@media(max-width:640px){.info-grid{grid-template-columns:1fr;gap:16px}}@media(max-width:768px){.bid-primary-info{grid-template-columns:1fr;gap:1.5rem}.bid-status-section{align-items:flex-start}.bid-amount-display{font-size:2rem}.bid-metadata-grid{grid-template-columns:1fr;gap:1rem}}.info-item{display:flex;flex-direction:column;gap:8px;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb;transition:all .2s ease}.info-item:hover{background:#fff;border-color:#e4e4e7;transform:translateY(-2px)}.info-item label{font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:16px;color:#111827;font-weight:700}.info-item span.due-date-warning{color:#f59e0b}.value-large{font-size:28px!important;color:#059669!important;font-weight:700!important}.on-time{color:#059669}.late{color:#dc2626}.rank{color:#7c3aed;font-size:20px!important}.bid-notes{margin-top:20px;padding:16px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6}.bid-notes label{display:block;font-size:13px;color:#6b7280;font-weight:600;text-transform:uppercase;margin-bottom:8px}.bid-notes p{margin:0;color:#374151;line-height:1.6}.rfp-card{border:2px solid #e5e7eb;border-radius:10px;padding:20px;background:#f9fafb}.rfp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.rfp-header h3{margin:0 0 8px;font-size:20px;color:#111827}.rfp-status{display:inline-block;padding:4px 12px;border-radius:6px;font-size:13px;font-weight:600}.btn-view-rfp{padding:8px 16px;background:#3b82f6;color:#fff;border-radius:6px;text-decoration:none;font-weight:600;transition:all .2s}.btn-view-rfp:hover{background:#2563eb;transform:translate(2px)}.rfp-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:16px}.rfp-description{margin-top:16px;padding:12px;background:#fff;border-radius:6px;max-height:200px;overflow-y:auto}.rfp-description label{display:block;font-size:12px;color:#6b7280;font-weight:600;text-transform:uppercase;margin-bottom:6px;position:sticky;top:0;background:#fff;z-index:1;padding-bottom:6px}.rfp-description p{margin:0;color:#374151;line-height:1.6;white-space:pre-wrap;word-wrap:break-word}.rfp-flags{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.flag{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:600}.flag-open{background:#dbeafe;color:#1e40af}.flag-closed{background:#fee2e2;color:#991b1b}.flag-awarded{background:#fef3c7;color:#92400e}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:24px;margin-bottom:24px}.comparison-item{text-align:center;padding:20px;background:#f9fafb;border-radius:10px;border:2px solid #e5e7eb}.comparison-item label{display:block;font-size:13px;color:#6b7280;font-weight:600;text-transform:uppercase;margin-bottom:8px}.under-budget{color:#059669!important}.over-budget{color:#dc2626!important}.percentage-analysis{margin-top:24px}.percentage-bar{margin-bottom:16px}.percentage-bar label{display:block;font-size:13px;color:#6b7280;font-weight:600;margin-bottom:8px}.bar-container{width:100%;height:32px;background:#e5e7eb;border-radius:8px;overflow:hidden;position:relative}.bar-fill{height:100%;display:flex;align-items:center;justify-content:center;transition:width .5s ease;min-width:50px}.bar-label{color:#fff;font-weight:700;font-size:14px}.line-items-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:24px;padding:16px;background:#f9fafb;border-radius:8px}.summary-item{text-align:center}.summary-item label{display:block;font-size:12px;color:#6b7280;font-weight:600;margin-bottom:4px}.summary-item span{display:block;font-size:20px;color:#111827;font-weight:700}.line-items-table{overflow-x:auto;border-radius:8px;border:1px solid #e5e7eb}.line-items-table table{width:100%;border-collapse:collapse}.line-items-table th{background:linear-gradient(135deg,#f3f4f6,#f9fafb);padding:14px 12px;text-align:left;font-size:12px;color:#374151;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #d1d5db}.line-items-table th:nth-child(2),.line-items-table th:nth-child(3),.line-items-table th:nth-child(4){text-align:right}.line-items-table td:nth-child(2){text-align:right}.line-items-table td{padding:14px 12px;border-bottom:1px solid #e5e7eb;color:#374151;font-size:14px}.text-right{text-align:right}.line-items-table tbody tr{transition:all .2s ease}.line-items-table tbody tr:hover{background:#f0f9ff;transform:scale(1.01)}.total-cell{text-align:right;font-weight:600}.total-row{background:#f3f4f6;font-weight:700}.total-row td{border-top:2px solid #d1d5db;border-bottom:none;padding-top:16px;padding-bottom:16px}.attachments-section{background:#fef3c7;border-left:4px solid #f59e0b}.info-message{margin:0;color:#92400e;display:flex;align-items:center;gap:8px}.status-badge{padding:6px 12px;border-radius:6px;font-size:13px;font-weight:600;text-transform:capitalize}.status-gray{background:#f3f4f6;color:#374151}.status-blue{background:#dbeafe;color:#1e40af}.status-orange{background:#fed7aa;color:#9a3412}.status-green{background:#d1fae5;color:#065f46}.status-red{background:#fee2e2;color:#991b1b}@media(max-width:768px){.bid-detail-container{padding:0}.btn-edit,.btn-secondary{flex:1}.detail-section{padding:16px;margin-bottom:16px}.detail-section h2{font-size:18px;margin-bottom:16px}.value-large{font-size:20px!important}.comparison-grid,.info-grid,.rfp-info-grid{grid-template-columns:1fr}.info-item label{font-size:12px}.info-item span{font-size:15px}.rfp-header-inline{flex-direction:column;align-items:flex-start;gap:8px}.rfp-header-inline h2{font-size:18px}.btn-view-rfp-full{width:100%;text-align:center}.line-items-table{font-size:13px;border-radius:0;border-left:none;border-right:none}.line-items-table th,.line-items-table td{padding:10px 8px}.line-items-table th:first-child,.line-items-table td:first-child{padding-left:12px}.line-items-table th:last-child,.line-items-table td:last-child{padding-right:12px}.rfp-details-row{flex-direction:column;align-items:flex-start;gap:1rem;padding-top:1rem}.detail-field{padding:0;width:100%}.detail-divider{display:none}.vendor-key-details{flex-direction:column;gap:20px}.vendor-detail-item{min-width:100%}.vendor-bid-status-row{flex-direction:column;gap:20px}.vendor-status-item{min-width:100%}.bid-amount-value{font-size:24px}}@media(max-width:480px){.bid-detail-container{padding:0}.detail-section{padding:12px}.info-item{padding:12px;background:#f9fafb;border-radius:8px}.value-large{font-size:18px!important}.comparison-item{padding:12px}.line-items-table{font-size:12px}.line-items-table th,.line-items-table td{padding:8px 6px;font-size:11px}.line-items-table th{padding:10px 6px}.line-items-table td:first-child{max-width:120px;word-wrap:break-word;white-space:normal}.total-cell{font-size:12px!important}}.award-banner{display:flex;align-items:center;gap:20px;padding:24px;margin-bottom:24px;border-radius:12px;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;box-shadow:0 4px 20px #f59e0b33;animation:award-pulse 2s ease-in-out infinite}@keyframes award-pulse{0%,to{box-shadow:0 4px 20px #f59e0b33}50%{box-shadow:0 8px 30px #f59e0b66}}.award-banner.winning{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981;box-shadow:0 4px 20px #10b9814d}.award-icon{font-size:48px;line-height:1}.award-content h3{margin:0 0 4px;font-size:20px;font-weight:700;color:#065f46}.award-content p{margin:0;font-size:14px;color:#047857}.bid-hero-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:2px solid #3b82f6;box-shadow:0 8px 30px #3b82f626!important}.bid-hero-content{padding:8px}.bid-hero-main{display:flex;gap:32px;align-items:flex-start;flex-wrap:wrap}.bid-amount-section{flex:1;min-width:280px;text-align:center;padding:24px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.bid-amount-label{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#6b7280;margin-bottom:12px}.bid-amount-display{font-size:48px;font-weight:800;color:#059669;margin-bottom:16px;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.bid-timing-badge{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:24px;font-size:14px;font-weight:600}.bid-timing-badge.on-time{background:#d1fae5;color:#065f46;border:2px solid #10b981}.bid-stats-link:hover{text-decoration:none}.bid-timing-badge.late{background:#fee2e2;color:#991b1b;border:2px solid #dc2626}.bid-timing-badge.draft{background:#fef3c7;color:#92400e;border:2px solid #f59e0b}.bid-quick-stats{flex:2;display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px}.quick-stat{background:#fff;padding:20px;border-radius:12px;text-align:center;border:2px solid #e5e7eb;transition:all .3s ease}.quick-stat:hover{border-color:#3b82f6;transform:translateY(-4px);box-shadow:0 4px 12px #3b82f626}.quick-stat .stat-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:8px}.quick-stat .stat-value{font-size:28px;font-weight:700;color:#111827}.rfp-context-card h2{margin:0 0 20px;font-size:18px;color:#374151}.card-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.card-header-with-action h2{margin:0;border:none;padding:0}.btn-view-full{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#3b82f6;color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:14px;transition:all .2s ease}.btn-view-full:hover{background:#2563eb;transform:translate(4px)}.rfp-title-section{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.rfp-title-section h3{margin:0;font-size:24px;font-weight:700;color:#111827;flex:1}.rfp-number{padding:6px 12px;background:#f3f4f6;color:#374151;font-weight:600;font-size:14px;border-radius:6px;font-family:Courier New,monospace}.rfp-description-box,.rfp-scope-box{margin-bottom:20px;padding:16px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6}.rfp-description-box label,.rfp-scope-box label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:8px}.rfp-description-box p,.rfp-scope-box p{margin:0;color:#374151;line-height:1.7;white-space:pre-wrap}.rfp-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px}.rfp-detail-item{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;transition:all .2s ease}.rfp-detail-item:hover{border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61a}.rfp-detail-item .detail-info{flex:1}.rfp-detail-item .detail-info label{display:block;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:6px}.rfp-detail-item .detail-info span{display:block;font-size:16px;font-weight:600;color:#111827}.vendor-info-card h2{margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.vendor-info-content{display:flex;flex-direction:column;gap:24px}.vendor-info-section label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:8px}.vendor-company-name{font-size:22px;font-weight:700;color:#111827;display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vendor-rating{font-size:14px;font-weight:600;color:#f59e0b;padding:6px 12px;background:#fef3c7;border-radius:6px}.contact-details{display:flex;flex-direction:column;gap:8px}.contact-name{font-size:18px;font-weight:600;color:#111827}.contact-email{font-size:14px;color:#3b82f6;text-decoration:none;font-weight:500;transition:color .2s ease}.contact-email:hover{color:#2563eb;text-decoration:underline}.submitted-by-name{font-size:16px;font-weight:600;color:#374151}.bid-timeline-card h2{margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.timeline-items{display:flex;flex-direction:column;gap:20px}.timeline-item{display:flex;gap:16px;padding:16px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6;transition:all .2s ease}.timeline-item:hover{background:#f0f9ff;border-left-color:#2563eb}.timeline-icon{font-size:28px;line-height:1}.timeline-content{flex:1;display:flex;flex-direction:column;gap:6px}.timeline-content label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280}.timeline-date{font-size:18px;font-weight:700;color:#111827}.timeline-status{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:4px 12px;border-radius:20px;margin-top:4px;width:fit-content}.timeline-status.on-time{background:#d1fae5;color:#065f46}.timeline-status.late{background:#fee2e2;color:#991b1b}.timeline-status.draft{background:#fef3c7;color:#92400e}.timeline-user{font-size:13px;color:#6b7280;font-style:italic}.line-items-card .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e5e7eb}.line-items-card .section-header h2{margin:0;padding:0;border:none}.btn-edit-items{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#fef3c7;color:#92400e;text-decoration:none;border-radius:8px;font-weight:600;font-size:14px;border:2px solid #fbbf24;transition:all .2s ease}.btn-edit-items:hover{background:#fbbf24;color:#78350f;transform:translateY(-2px)}.line-items-summary-enhanced{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:24px}.summary-stat{display:flex;align-items:center;gap:16px;padding:20px;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-radius:12px;border:2px solid #e5e7eb;transition:all .3s ease}.summary-stat:hover{border-color:#3b82f6;transform:translateY(-4px);box-shadow:0 4px 12px #3b82f61a}.summary-stat-icon{font-size:32px;line-height:1}.summary-stat-content{flex:1}.summary-stat-content label{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#6b7280;margin-bottom:6px}.summary-stat-content span{display:block;font-size:24px;font-weight:700;color:#111827}.summary-stat-content .highlight-amount{color:#059669;font-size:28px}.line-items-table-wrapper{overflow-x:auto;border-radius:12px;border:2px solid #e5e7eb;box-shadow:0 2px 8px #0000000d}.line-items-table-enhanced{width:100%;border-collapse:collapse;background:#fff}.line-items-table-enhanced thead{background:linear-gradient(135deg,#1e40af,#3b82f6)}.line-items-table-enhanced th{padding:16px 12px;text-align:left;font-size:13px;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.5px;border-bottom:none}.line-items-table-enhanced th.col-quantity,.line-items-table-enhanced th.col-unit,.line-items-table-enhanced th.col-price,.line-items-table-enhanced th.col-total{text-align:right}.line-items-table-enhanced th.col-category{text-align:center}.line-items-table-enhanced tbody tr{border-bottom:1px solid #e5e7eb;transition:all .2s ease}.line-items-table-enhanced tbody tr:hover{background:#f0f9ff}.line-items-table-enhanced td{padding:16px 12px;color:#374151;font-size:14px}.line-items-table-enhanced .col-description{font-weight:500;color:#111827}.item-notes{margin-top:6px;font-size:12px;color:#6b7280;font-style:italic}.category-badge{display:inline-block;padding:4px 12px;background:#e0e7ff;color:#3730a3;border-radius:12px;font-size:12px;font-weight:600;text-align:center}.line-items-table-enhanced .col-quantity,.line-items-table-enhanced .col-price,.line-items-table-enhanced .col-total{text-align:right;font-family:Courier New,monospace}.line-items-table-enhanced .col-unit{text-align:center;font-size:12px;color:#6b7280}.line-items-table-enhanced tfoot{background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.line-items-table-enhanced tfoot td{padding:20px 12px;border-top:3px solid #3b82f6;font-size:16px}.grand-total{color:#059669!important;font-size:24px!important}.bid-notes-card h2,.award-notes-card h2{margin:0 0 16px}.notes-content{padding:20px;background:#f9fafb;border-radius:8px;border-left:4px solid #3b82f6}.notes-content p{margin:0;color:#374151;line-height:1.7;white-space:pre-wrap}.award-notes-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b}.award-notes-header h2{color:#92400e;border-bottom:2px solid #f59e0b;padding-bottom:12px}.award-notes-content{padding:20px;background:#fff;border-radius:8px;margin-top:16px}.award-notes-content p{margin:0;color:#374151;line-height:1.7;font-size:16px}.rfp-project-details-card{margin-bottom:1.5rem}.rfp-project-details-card .card-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.rfp-project-details-card h2{margin:0}.rfp-project-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.project-detail-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.project-detail-emoji{font-size:1.25rem;line-height:1}.project-detail-info{display:flex;flex-direction:column;gap:.25rem}.project-detail-info label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.project-detail-info span{font-size:.9375rem;font-weight:500;color:#1a1a1a}.rfp-description-box,.rfp-scope-box{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.rfp-description-box label,.rfp-scope-box label{display:block;font-size:.875rem;font-weight:600;color:#374151;margin-bottom:.75rem}.rfp-description-box p{color:#4b5563;line-height:1.6;margin:0}.rfp-scope-box pre{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;margin:0;color:#4b5563;line-height:1.6;background:#f9fafb;padding:1rem;border-radius:.5rem;border:1px solid #e5e7eb}.rfp-photos-section-card,.rfp-photos-section-card h2{margin-bottom:1.5rem}@media(max-width:768px){.rfp-project-details-grid{grid-template-columns:1fr}.bid-hero-main{flex-direction:column}.bid-amount-section{min-width:100%}.bid-quick-stats{grid-template-columns:1fr}.bid-amount-display{font-size:36px}.rfp-details-grid,.line-items-summary-enhanced{grid-template-columns:1fr}.line-items-table-enhanced{font-size:12px}.line-items-table-enhanced th,.line-items-table-enhanced td{padding:12px 8px}.line-items-table-enhanced .col-category,.line-items-table-enhanced .col-unit{display:none}.award-banner{flex-direction:column;text-align:center}.award-icon{font-size:40px}}.header-bid-section h2{font-size:1.25rem;font-weight:600;color:#374151;margin:0 0 16px}@media(max-width:768px){.header-rfp-title-row{flex-direction:column;align-items:flex-start;gap:8px}.header-rfp-title-row h1{font-size:1.4rem}.header-info-grid{grid-template-columns:repeat(2,1fr)}.header-rfp-section,.header-bid-section{padding:16px}}.bids-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.bids-table{width:100%;border-collapse:collapse;font-size:14px}.bids-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.bids-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.bids-table td{padding:16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.bids-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.bids-table tbody tr:last-child td{border-bottom:none}.bids-table .rfp-title-cell{max-width:250px}.bids-table .rfp-link,.bids-table .vendor-link{color:var(--text-primary, #1e293b);font-weight:500;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bids-table .rfp-link:hover,.bids-table .vendor-link:hover{color:var(--primary, #3b82f6)}.bids-table .vendor-cell{max-width:180px}.bids-table .amount-cell .bid-amount{font-weight:600;color:var(--text-primary, #1e293b)}.bids-table .date-cell{white-space:nowrap;color:var(--text-secondary, #64748b)}.bids-table .line-items-cell{text-align:center;color:var(--text-secondary, #64748b)}.bids-table .actions-cell{white-space:nowrap}.bids-table .view-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;font-size:13px;padding:6px 12px;border-radius:6px;transition:background .2s ease}.bids-table .view-link:hover{background:var(--primary-light, #eff6ff)}@media(max-width:768px){.bids-table-container{border-radius:0;border-left:none;border-right:none}}.bids-list-container{padding:0;width:100%;max-width:100%}.bids-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px}.header-content h1{margin:0 0 5px;color:#333;font-size:32px}.subtitle{margin:0;color:#666;font-size:16px}.bids-filters{display:flex;gap:15px;margin-bottom:25px}.search-box{flex:1}.search-input{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s}.search-input:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.filter-box{min-width:200px}.filter-select{width:100%;padding:12px 16px;border:1px solid #ddd;border-radius:8px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s}.filter-select:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.bids-stats{display:flex;gap:20px;margin-bottom:30px}.stat-item{flex:1;background:#fff;padding:20px;border-radius:10px;display:flex;flex-direction:column;align-items:center}.stat-value{font-size:32px;font-weight:700;color:#667eea;margin-bottom:5px}.stat-label{font-size:14px;color:#666;text-transform:uppercase;letter-spacing:.5px}.bids-grouped{display:flex;flex-direction:column;gap:40px}.vendor-bids-group{display:flex;flex-direction:column;gap:20px}.vendor-group-header{display:flex;justify-content:space-between;align-items:center;padding:20px;background:#fff;border-radius:12px;border:1px solid #676767}.vendor-group-info{display:flex;align-items:center;gap:16px}.vendor-group-title{margin:0;font-size:24px;font-weight:600;color:#333}.vendor-name-link{color:#667eea;text-decoration:none;transition:color .2s}.vendor-name-link:hover{color:#5568d3;text-decoration:underline}.vendor-bids-count{font-size:16px;color:#666;font-weight:500;padding:6px 12px;background:#f0f4ff;border-radius:12px}.vendor-total-amount{font-size:20px;font-weight:700;color:#10b981}.bids-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.bid-card{background:#fff;border-radius:12px;padding:24px;transition:all .3s ease;text-decoration:none;display:flex;flex-direction:column;border-left:4px solid #e4e4e7}.bid-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #00000026}.bid-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f0f0f0}.bid-rfp-title{flex:1;margin-right:12px;color:#333;font-size:16px;font-weight:600}.bid-card-body{flex:1;display:flex;flex-direction:column;gap:12px;margin-bottom:12px}.bid-info{display:flex;justify-content:space-between;align-items:center;gap:8px}.info-label{font-size:13px;color:#666;font-weight:600}.info-value{font-size:13px;color:#333}.bid-amount{font-size:18px;font-weight:700;color:#10b981}.bid-notes-preview{margin-top:8px;padding:12px;background:#f8f9fa;border-radius:8px;font-size:13px;color:#666;line-height:1.5}.bid-card-footer{padding-top:16px;border-top:1px solid #f0f0f0}.view-details{color:#667eea;font-size:14px;font-weight:600}.empty-state{background:#fff;padding:60px;border-radius:12px;text-align:center;box-shadow:0 2px 10px #0000001a}.empty-state p{color:#666;font-size:16px;margin-bottom:20px}.clear-search{background:#667eea;color:#fff;border:none;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.clear-search:hover{background:#5568d3}.loading{display:flex;justify-content:center;align-items:center;min-height:400px;color:#666;font-size:18px}.error-container{background:#fff;padding:40px;border-radius:12px;text-align:center;box-shadow:0 2px 10px #0000001a}.error{color:#dc3545;margin-bottom:20px;font-size:16px}.retry-button{background:#667eea;color:#fff;border:none;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s}.retry-button:hover{background:#5568d3}@media(max-width:768px){.bids-header{flex-direction:column;gap:20px}.bids-filters,.bids-stats{flex-direction:column}.vendor-group-header{flex-direction:column;align-items:flex-start;gap:12px}.bids-grid{grid-template-columns:1fr}}.vendor-selector{width:100%;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;color:#1e293b;background:#fff;cursor:pointer;transition:all .2s}.vendor-selector:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}.vendor-selector:disabled{background:#f1f5f9;cursor:not-allowed;opacity:.6}.vendor-selector-readonly{display:flex;align-items:center;justify-content:space-between;padding:.75rem;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px}.vendor-name{font-size:.875rem;font-weight:600;color:#1e293b}.vendor-badge{font-size:.75rem;padding:.25rem .5rem;background:#667eea;color:#fff;border-radius:4px;font-weight:600}.line-item-viewer{display:flex;justify-content:space-between;align-items:flex-start;padding:1rem;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;gap:1rem}.line-item-main{flex:1;min-width:0}.line-item-description{margin-bottom:.75rem}.item-name{font-weight:600;color:#1e293b;font-size:.875rem;margin-bottom:.25rem}.item-notes{font-size:.8125rem;color:#64748b;font-style:italic}.line-item-details{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.8125rem}.detail-label{color:#64748b;font-weight:500}.detail-value{color:#1e293b;font-weight:600}.detail-separator{color:#94a3b8;margin:0 .25rem}.line-total{font-size:1rem;font-weight:700;color:#667eea;margin-left:.5rem}.line-item-actions{display:flex;gap:.5rem;align-items:flex-start}.btn-icon-danger:hover{opacity:1;transform:scale(1.1)}@media(max-width:640px){.line-item-viewer{flex-direction:column}.line-item-details{font-size:.75rem}}.line-item-editor{background:#fff;border:2px solid #e4e4e7;border-radius:8px;padding:1.5rem;margin-bottom:1rem}.editor-header h4{margin:0 0 1rem;color:#1e293b;font-size:1rem;font-weight:600}.editor-body,.form-group{margin-bottom:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.line-total-display{display:flex;justify-content:flex-end;align-items:center;gap:.75rem;padding:.75rem;background:#f1f5f9;border-radius:6px;margin:1rem 0}.total-label{font-weight:600;color:#64748b;font-size:.875rem}.total-amount{font-size:1.25rem;font-weight:700;color:#667eea}.editor-actions{display:flex;gap:.75rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e2e8f0}.btn-primary:hover{background:#5568d3}.item-edit-action-button{max-width:25%}.btn-secondary:hover{background:#f8fafc}@media(max-width:640px){.form-row{grid-template-columns:1fr}#item-edit-action-buttons{display:block}.item-edit-action-button{margin:1rem 3rem;max-width:75%}.editor-actions{flex-direction:column}.btn{width:100%}}.line-items-container{display:flex;flex-direction:column;gap:1rem}.line-items-list{display:flex;flex-direction:column;gap:.75rem}.empty-state{text-align:center;padding:3rem 1.5rem}.empty-state p{color:#94a3b8;margin:0 0 1rem;font-size:.875rem}.line-items-total{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;margin-top:.5rem}.line-items-total .total-label{color:#fff;font-weight:600;font-size:1rem;text-transform:uppercase;letter-spacing:.5px}.line-items-total .total-amount{color:#fff;font-size:1.75rem;font-weight:700}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-sm{padding:.5rem 1rem;font-size:.8125rem}@media(max-width:640px){.line-items-total{flex-direction:column;gap:.5rem;text-align:center}.line-items-total .total-amount{font-size:1.5rem}}.bid-detail-page{width:100%;max-width:1200px;margin:0 auto;padding:0}#bid-edit-action-buttons{display:flex}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e2e8f0}.header-content h1{margin:0 0 .5rem;color:#1e293b;font-size:2rem}.rfp-title{margin:0;color:#64748b;font-size:.875rem}.back-link{color:#667eea;text-decoration:none;font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;margin-bottom:.75rem;transition:color .2s}.back-link:hover{color:#5568d3}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.bid-info-layout{display:flex;flex-direction:column;gap:2rem}.bid-primary-info{display:grid;grid-template-columns:2fr 2fr 1fr;gap:2rem;align-items:start}.bid-vendor-section,.bid-amount-section,.bid-status-section{display:flex;flex-direction:column;gap:.75rem}.bid-vendor-section label,.bid-amount-section label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#64748b}.vendor-link{font-size:1.5rem;font-weight:700;color:#667eea;text-decoration:none;transition:color .2s}.vendor-link:hover{color:#5568d3;text-decoration:underline}.vendor-name{font-size:1.5rem;font-weight:700;color:#1e293b}.bid-amount-display{font-size:2.5rem;font-weight:800;color:#10b981;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.bid-status-section{justify-content:center;align-items:flex-end}.bid-metadata-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding-top:2rem;border-top:2px solid #e2e8f0}.bid-notes{line-height:1.6}.bid-notes p{margin:0;color:#334155;white-space:pre-wrap}.bid-form{max-width:800px}select.form-input{cursor:pointer}.btn{padding:.75rem 1.5rem;border-radius:6px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;gap:.5rem}.loading{text-align:center;padding:3rem;color:#64748b;font-size:1.125rem}.error-message{background:#fef2f2;border:1px solid #e4e4e7;color:#991b1b;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.error-icon{font-size:1.25rem}.bid-analysis-content{display:flex;flex-direction:column;gap:2rem}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1.5rem}.comparison-item{display:flex;flex-direction:column;gap:.5rem}.comparison-item label{font-size:.875rem;color:#64748b;font-weight:600}.comparison-item .value-large{font-size:1.5rem;font-weight:700;color:#1e293b}.bid-range-visualization{padding:1.5rem;background:#f8fafc;border-radius:8px}.bid-range-visualization>label{display:block;font-size:.875rem;color:#64748b;font-weight:600;margin-bottom:1rem}.range-bar{position:relative}.range-labels{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.75rem;color:#64748b}.range-track{position:relative;height:40px;background:linear-gradient(to right,#10b981,#fbbf24,#ef4444);border-radius:4px;margin-top:1rem}.range-marker{position:absolute;top:-8px;transform:translate(-50%);width:2px;height:56px;background:#1e293b;cursor:pointer}.range-marker:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);width:8px;height:8px;background:#1e293b;border-radius:50%}.range-marker:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:8px;height:8px;background:#1e293b;border-radius:50%}.marker-label{position:absolute;top:-24px;left:50%;transform:translate(-50%);font-size:.625rem;font-weight:700;color:#1e293b;background:#fff;padding:.125rem .375rem;border-radius:4px;white-space:nowrap;box-shadow:0 1px 3px #0000001a}.range-marker-avg{background:#3b82f6}.range-marker-avg:before,.range-marker-avg:after{background:#3b82f6}.range-marker-current{background:#8b5cf6;z-index:2}.range-marker-current:before,.range-marker-current:after{background:#8b5cf6}.range-marker-budget{background:#f59e0b}.range-marker-budget:before,.range-marker-budget:after{background:#f59e0b}.budget-comparison{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;padding:1rem;background:#f8fafc;border-radius:8px}.comparison-stat{display:flex;flex-direction:column;gap:.5rem}.comparison-stat label{font-size:.875rem;color:#64748b;font-weight:600}.comparison-stat span{font-size:1.125rem;font-weight:600}.comparison-stat .positive{color:#10b981}.comparison-stat .negative{color:#ef4444}.danger-zone{border:2px solid #e4e4e7;background:#fef2f2;margin-top:2rem}.danger-zone-content{display:flex;justify-content:space-between;align-items:center;gap:2rem}.danger-zone-info h3{margin:0 0 .5rem;color:#991b1b;font-size:1.125rem;display:flex;align-items:center;gap:.5rem}.danger-zone-info p{margin:0;color:#7f1d1d;font-size:.875rem;line-height:1.5}.btn-danger{background:#dc2626;color:#fff;white-space:nowrap}.btn-danger:hover{background:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 6px #dc26264d}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.bid-edit-action-button{max-width:25%}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease}.modal-content h3{margin:0 0 1rem;color:#1e293b;font-size:1.5rem}@media(max-width:768px){.page-header{flex-direction:column;gap:1rem}.form-row,.info-grid{grid-template-columns:1fr}.bid-primary-info{grid-template-columns:1fr;gap:1.5rem}.bid-status-section{align-items:flex-start}.bid-amount-display{font-size:2rem}.bid-metadata-grid{grid-template-columns:1fr;gap:1rem}.comparison-grid{grid-template-columns:1fr}.range-marker{height:48px}#bid-edit-action-buttons{display:block}.bid-edit-action-button{margin:1rem 3rem;max-width:75%}.marker-label{font-size:.5rem;padding:.0625rem .25rem}.danger-zone-content{flex-direction:column;align-items:flex-start}.modal-content{padding:1.5rem;width:95%}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}.combined-bid-header{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px;overflow:hidden}.header-rfp-section{padding:24px;border-bottom:1px solid #e5e7eb}.header-rfp-title-row{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.header-rfp-title-row h1{font-size:1.75rem;font-weight:600;color:#111827;margin:0}.header-bid-section{padding:24px;background:#f9fafb}.header-bid-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:12px}.header-bid-section h2{font-size:1.25rem;font-weight:600;color:#374151;margin:0}.header-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px 24px}.header-info-item{display:flex;flex-direction:column;gap:4px}.header-info-item label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.header-info-item span{font-size:.95rem;color:#111827;font-weight:500}.header-info-item .vendor-link{font-size:.95rem;font-weight:600;color:#3b82f6;text-decoration:none;transition:color .2s}.header-info-item .vendor-link:hover{color:#2563eb;text-decoration:underline}.header-info-item .bid-amount-value{font-size:1.1rem;font-weight:600;color:#059669}.header-description{margin-top:16px}.header-description label{display:block;font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}.header-description p{font-size:.9rem;color:#374151;line-height:1.5;margin:0}.header-rfp-link{display:inline-block;margin-top:16px;color:#3b82f6;font-weight:500;font-size:.9rem;text-decoration:none;transition:color .2s}.header-rfp-link:hover{color:#2563eb;text-decoration:underline}.btn-sm{padding:.5rem 1rem;font-size:.8rem}@media(max-width:768px){.header-rfp-title-row{flex-direction:column;align-items:flex-start;gap:8px}.header-rfp-title-row h1{font-size:1.4rem}.header-info-grid{grid-template-columns:repeat(2,1fr)}.header-rfp-section,.header-bid-section{padding:16px}.header-bid-title-row{flex-direction:column;align-items:flex-start}}.qa-center{padding:0;max-width:1200px;margin:0 auto}.page-header{margin-bottom:30px}.page-header h1{margin:0 0 8px;font-size:32px;color:#333}.page-description{margin:0;color:#666;font-size:16px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:24px}.stat-card{text-align:center;padding:24px!important}.stat-value{font-size:48px;font-weight:700;margin-bottom:8px}.stat-value.warning{color:#ffc107}.stat-value.success{color:#28a745}.stat-value.primary{color:#667eea}.stat-label{font-size:14px;color:#666;font-weight:500}.tabs-card{margin-bottom:24px;padding:0!important;overflow:hidden}.tabs{display:flex;border-bottom:2px solid #e0e0e0}.tab{flex:1;padding:16px 24px;background:none;border:none;font-size:15px;font-weight:600;color:#666;cursor:pointer;transition:all .2s;position:relative;display:flex;align-items:center;justify-content:center;gap:8px}.tab:hover{background:#f8f9fa;color:#333}.tab.active{color:#667eea;background:#f8f9ff}.tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#667eea}.tab-badge{background:#ffc107;color:#fff;font-size:12px;font-weight:700;padding:3px 8px;border-radius:12px;min-width:24px;text-align:center}.loading-state,.error-state,.empty-state{text-align:center;padding:60px 20px}.empty-state h3{margin:0 0 8px;color:#666;font-size:20px}.empty-state p{margin:0;color:#999;font-size:15px}.error-state p{margin:0 0 16px;color:#dc3545}.rfp-group-card{margin-bottom:24px}.rfp-header{padding-bottom:16px;border-bottom:2px solid #e0e0e0;margin-bottom:20px}.rfp-header-content h2{margin:0 0 12px;font-size:22px;color:#333}.rfp-meta{display:flex;align-items:center;gap:16px}.question-count{font-size:14px;color:#666;padding:4px 12px;background:#f0f0f0;border-radius:12px}.view-rfp-link{font-size:14px;color:#667eea;text-decoration:none;font-weight:600;transition:all .2s}.view-rfp-link:hover{color:#5568d3;text-decoration:underline}.skills-page{width:100%;max-width:100%;padding:0}.skills-page .header-actions{display:flex;align-items:center;gap:1rem}.skills-table-view{margin-top:1.5rem}.skills-table-view .category-section{margin-bottom:2rem}.skills-table-view .category-title{font-size:1.25rem;font-weight:600;color:#1e293b;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #e2e8f0}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:1.5rem}.category-card{height:fit-content;max-width:100%;overflow:hidden}.skills-list{display:flex;flex-direction:column;gap:.75rem}.skill-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0}.skill-info{flex:1;min-width:0;overflow-wrap:break-word;word-wrap:break-word}.skill-name{font-weight:600;color:#1e293b;margin-bottom:.25rem}.skill-description{font-size:.8125rem;color:#64748b}.skill-actions{display:flex;align-items:center;gap:.5rem}.btn-icon{background:none;border:none;font-size:1.125rem;cursor:pointer;padding:.25rem;opacity:.6;transition:opacity .2s}.btn-icon:hover{opacity:1}.skill-form{max-width:800px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:#475569;font-weight:600;font-size:.875rem}.form-input{width:100%;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;color:#1e293b;transition:all .2s;font-family:inherit}.form-input:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #667eea1a}textarea.form-input{resize:vertical}.checkbox-group label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.checkbox-group input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e2e8f0}.btn{padding:.625rem 1.25rem;border-radius:6px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.btn-primary{background:#667eea;color:#fff}.btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 4px 6px #667eea4d}.btn-secondary{background:#fff;color:#64748b;border:1px solid #cbd5e1}.btn-secondary:hover{background:#f8fafc;border-color:#e4e4e7}.skill-edit-btn{max-width:25%}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999}.modal-content{background:#fff;border-radius:8px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 25px -5px #0000001a}.modal-content.modal-large{max-width:700px}.modal-content h3{margin:0 0 1rem;color:#1e293b;font-size:1.25rem}.modal-content p{margin:0 0 1.5rem;color:#64748b;line-height:1.6}@media(max-width:768px){.skills-grid{grid-template-columns:1fr}.skill-edit-btn{max-width:75%}.form-row{grid-template-columns:1fr}}.skills-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.skills-table{width:100%;border-collapse:collapse;font-size:14px}.skills-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.skills-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.skills-table td{padding:14px 16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.skills-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.skills-table tbody tr:last-child td{border-bottom:none}.skills-table .skill-name-cell .skill-name{font-weight:500;color:var(--text-primary, #1e293b)}.skills-table .category-cell{color:var(--text-secondary, #64748b)}.skills-table .description-cell{max-width:300px}.skills-table .description-text{color:var(--text-secondary, #64748b);font-size:13px;line-height:1.4}.skills-table .no-data{color:var(--text-tertiary, #94a3b8)}.skills-table .actions-cell{white-space:nowrap}.skills-table .action-buttons{display:flex;align-items:center;gap:8px}.skills-table .btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;border-radius:6px;cursor:pointer;color:var(--text-secondary, #64748b);transition:all .2s ease}.skills-table .btn-icon:hover{background:var(--bg-tertiary, #e2e8f0);color:var(--text-primary, #1e293b)}.skills-table .btn-icon.btn-danger:hover{background:var(--danger-light, #fef2f2);color:var(--danger, #ef4444)}@media(max-width:768px){.skills-table-container{border-radius:0;border-left:none;border-right:none}.skills-table .description-cell{max-width:150px}}.testing-page{display:flex;flex-direction:column;height:100%;padding:0;background:#f8f9fa}.testing-page.loading,.testing-page.error{display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#666}.testing-page.error{color:#dc3545}.testing-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #dee2e6}.testing-header h1{margin:0;color:#2c3e50;font-size:2rem}.btn-run-all{padding:.75rem 1.5rem;background:#28a745;color:#fff;border:none;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-run-all:hover{background:#218838;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.testing-content{display:flex;gap:1.5rem;flex:1;overflow:hidden}.scenarios-sidebar{width:400px;background:#fff;border-radius:8px;padding:1rem;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.scenarios-sidebar h2{margin:0 0 1rem;font-size:1.3rem;color:#2c3e50}.scenarios-list{display:flex;flex-direction:column;gap:.75rem}.test-scenario{border:1px solid #e9ecef;border-radius:6px;overflow:hidden;background:#fff}.scenario-header{display:flex;gap:.75rem;padding:.75rem;cursor:pointer;transition:background .2s}.scenario-header:hover{background:#f8f9fa}.scenario-header.selected{background:#e3f2fd;border-left:4px solid #2196f3}.scenario-info{flex:1}.scenario-info h3{margin:0 0 .25rem;font-size:1rem;color:#2c3e50}.scenario-description{margin:0 0 .5rem;font-size:.85rem;color:#6c757d;line-height:1.4}.scenario-meta{display:flex;gap:.5rem;flex-wrap:wrap}.scenario-steps{background:#f8f9fa;padding:.5rem}.test-step{margin-bottom:.25rem}.step-header{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#fff;border-radius:4px;cursor:pointer;transition:all .2s}.step-header:hover{background:#e9ecef;transform:translate(2px)}.step-header.selected{background:#e3f2fd;border-left:3px solid #e4e4e7}.expand-btn{background:none;border:none;padding:.25rem;cursor:pointer;color:#6c757d;font-size:.8rem;min-width:20px;text-align:center}.expand-btn:hover{color:#2c3e50}.step-name{flex:1;font-size:.9rem;color:#2c3e50}.step-children{margin-top:.25rem;margin-left:1rem;padding-left:.5rem;border-left:2px solid #dee2e6}.role-badge,.duration-badge,.step-type-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase}.role-badge{background:#e3f2fd;color:#1976d2}.duration-badge{background:#f3e5f5;color:#7b1fa2}.step-type-badge{background:#e0e0e0;color:#424242}.step-type-badge.authentication{background:#fff3e0;color:#e65100}.step-type-badge.create{background:#e8f5e9;color:#2e7d32}.step-type-badge.update{background:#e3f2fd;color:#1565c0}.step-type-badge.view{background:#f3e5f5;color:#6a1b9a}.step-type-badge.action{background:#fff9c4;color:#f57f17}.test-result{padding:.25rem .5rem;border-radius:50%;font-weight:700;font-size:.9rem}.test-result.passed{color:#28a745}.test-result.failed{color:#dc3545}.test-running{animation:spin 1s linear infinite;color:#ffc107;font-size:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.scenario-detail{flex:1;background:#fff;border-radius:8px;padding:1.5rem;overflow-y:auto;box-shadow:0 2px 8px #0000001a}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;font-size:.9rem}.breadcrumb{background:none;border:none;color:#007bff;cursor:pointer;padding:.25rem .5rem;border-radius:4px;transition:background .2s}.breadcrumb:hover{background:#e9ecef;text-decoration:underline}.breadcrumb-separator{color:#6c757d;margin:0 .25rem}.detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.detail-header h2{margin:0;color:#2c3e50;font-size:1.75rem}.btn-run-test{padding:.5rem 1rem;background:#007bff;color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-run-test:hover:not(:disabled){background:#0056b3;transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.btn-run-test:disabled{opacity:.6;cursor:not-allowed}.detail-description{color:#6c757d;line-height:1.6;margin-bottom:1.5rem}.detail-meta{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.meta-label{font-weight:600;color:#495057}.actions-list,.verifications-list,.child-steps,.prerequisites{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e9ecef}.actions-list h4,.verifications-list h4,.child-steps h4,.prerequisites h4{margin:0 0 1rem;color:#2c3e50;font-size:1.1rem}.actions-list ol{list-style:decimal;padding-left:1.5rem}.action-item{margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;border-left:3px solid #e4e4e7}.action-type{display:inline-block;padding:.25rem .5rem;background:#28a745;color:#fff;border-radius:4px;font-size:.75rem;font-weight:600;margin-right:.5rem}.action-target,.verification-item code{background:#f8f9fa;padding:.25rem .5rem;border-radius:4px;font-family:Courier New,monospace;font-size:.85rem;color:#d63384;border:1px solid #e9ecef}.action-value{color:#6c757d;margin-left:.5rem}.action-description,.verification-description{margin:.5rem 0 0;color:#6c757d;font-size:.9rem;font-style:italic}.verifications-list ul{list-style:none;padding:0}.verification-item{margin-bottom:1rem;padding:.75rem;background:#f8f9fa;border-radius:6px;border-left:3px solid #e4e4e7}.verification-type{display:inline-block;padding:.25rem .5rem;background:#ffc107;color:#000;border-radius:4px;font-size:.75rem;font-weight:600;margin-right:.5rem}.prerequisites ul{list-style:disc;padding-left:1.5rem}.prerequisites li{margin-bottom:.5rem;color:#6c757d}.no-selection{display:flex;align-items:center;justify-content:center;height:100%;color:#6c757d;font-size:1.1rem}@media(max-width:1024px){.testing-content{flex-direction:column}.scenarios-sidebar{width:100%;max-height:400px}}.vendor-rfps-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.vendor-rfps-table{width:100%;border-collapse:collapse;font-size:14px}.vendor-rfps-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.vendor-rfps-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.vendor-rfps-table td{padding:16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.vendor-rfps-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.vendor-rfps-table tbody tr:last-child td{border-bottom:none}.vendor-rfps-table .title-cell{max-width:280px}.vendor-rfps-table .rfp-link{color:var(--text-primary, #1e293b);font-weight:500;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-rfps-table .rfp-link:hover{color:var(--primary, #3b82f6)}.vendor-rfps-table .type-cell{color:var(--text-secondary, #64748b)}.vendor-rfps-table .location-cell{max-width:200px}.vendor-rfps-table .location-cell-content{display:flex;flex-direction:column;gap:2px}.vendor-rfps-table .location-name{color:var(--text-primary, #1e293b);font-weight:500}.vendor-rfps-table .location-address{font-size:12px;color:var(--text-tertiary, #94a3b8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.vendor-rfps-table .date-cell{white-space:nowrap;color:var(--text-secondary, #64748b)}.vendor-rfps-table .due-date-cell .due-date-content{display:flex;align-items:center;gap:8px}.vendor-rfps-table .no-data{color:var(--text-tertiary, #94a3b8)}.vendor-rfps-table .status-badge-open{display:inline-block;padding:4px 10px;background:#dcfce7;color:#166534;border-radius:12px;font-size:12px;font-weight:500}.vendor-rfps-table .status-badge-published{display:inline-block;padding:4px 10px;background:#dbeafe;color:#1e40af;border-radius:12px;font-size:12px;font-weight:500}.vendor-rfps-table .status-badge-closed{display:inline-block;padding:4px 10px;background:#f1f5f9;color:#475569;border-radius:12px;font-size:12px;font-weight:500}.vendor-rfps-table .status-badge-default{display:inline-block;padding:4px 10px;background:#f1f5f9;color:#64748b;border-radius:12px;font-size:12px;font-weight:500}.vendor-rfps-table .bid-summary{display:flex;flex-direction:column;gap:4px}.vendor-rfps-table .bid-amount{font-weight:600;color:var(--text-primary, #1e293b)}.vendor-rfps-table .bid-status{font-size:11px;font-weight:500;text-transform:uppercase}.vendor-rfps-table .bid-status.status-draft{color:#64748b}.vendor-rfps-table .bid-status.status-awarded{color:#16a34a}.vendor-rfps-table .bid-status.status-withdrawn{color:#6b7280}.vendor-rfps-table .no-bid{color:var(--text-tertiary, #94a3b8);font-style:italic}.vendor-rfps-table .view-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;font-size:13px;padding:6px 12px;border-radius:6px;transition:background .2s ease}.vendor-rfps-table .view-link:hover{background:var(--primary-light, #eff6ff)}@media(max-width:768px){.vendor-rfps-table-container{border-radius:0;border-left:none;border-right:none}}.vendor-rfps{padding:0;max-width:1280px;margin:0 auto;background:#fff}.main-content{background:#fff!important;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:24px}.filters-section{margin-bottom:0;width:100%;overflow:visible;display:block}.filter-row{display:flex!important;flex-direction:row!important;gap:20px;align-items:center;width:100%;flex-wrap:nowrap!important;overflow:visible}.filter-item{display:flex;flex-shrink:1;align-items:stretch}.filter-item.filter-search{width:320px;min-width:320px;flex-shrink:0;flex-grow:0}.filter-item:not(.filter-search){flex:1 1 0;min-width:150px;max-width:320px}.filter-input-wrapper{position:relative;display:flex;align-items:center;width:100%}.filter-input-wrapper .search-icon{position:absolute;left:12px;pointer-events:none;z-index:1}.filter-input,.filter-select{width:100%;height:40px;padding:8px 12px;border:1px solid #9ca3af!important;border-radius:6px;font-size:14px;font-family:Inter,sans-serif;font-weight:400;color:#2e2f35;background-color:#fff!important;transition:border-color .2s}.filter-input-search{padding-left:36px}.filter-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%2371717a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px;cursor:pointer;color:#2e2f35}.filter-select.placeholder{color:#71717a}.filter-select option{color:#2e2f35}.filter-select option[value=all]{color:#71717a}.filter-input::placeholder{color:#71717a}.filter-input:focus,.filter-select:focus{outline:none;border-color:#2563eb!important}.rfps-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rfp-card{display:flex;flex-direction:column;background:#fff!important;border:1px solid #e4e4e7;border-radius:12px;padding:12px;min-height:200px;text-decoration:none;color:inherit;position:relative;transition:all .2s;overflow:visible}.rfp-card:hover{border-color:#2563eb;box-shadow:0 4px 12px #2563eb26;text-decoration:none}.rfp-card:hover *{text-decoration:none}.rfp-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:0;position:relative;margin-top:0;gap:12px}.rfp-title-group{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.rfp-card-location{display:flex;align-items:center;gap:4px;flex-shrink:0}.rfp-card-location-name{font-size:13px;color:#87929b;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}.rfp-card-location-addr{font-size:12px;color:#a0aab4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rfp-title{font-size:18px;font-weight:400;color:#2e2f35;margin:0;line-height:1.2}.status-badge-open{background-color:#d4ffdd;color:#009b34;padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap;flex-shrink:0}.status-badge-published{background-color:#e0e7ff;color:#4338ca;padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap;flex-shrink:0}.status-badge-closed{background-color:#f3f4f6;color:#6b7280;padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap;flex-shrink:0}.status-badge-default{background-color:#f3f4f6;color:#6b7280;padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap;flex-shrink:0;text-transform:capitalize}.rfp-badges{display:flex;gap:8px;align-items:center;flex-shrink:0}.due-badge{padding:6px 12px;border-radius:32px;font-size:14px;font-weight:400;white-space:nowrap}.due-badge.overdue{background-color:#fee2e2;color:#dc2626}.due-badge.due-today{background-color:#fef3c7;color:#d97706}.due-badge.due-soon{background-color:#fff7ed;color:#ea580c}.rfp-description{font-size:15px;line-height:22px;color:#87929b;margin:12px 0 0;height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;flex-shrink:0}#search{padding-left:30px}.rfp-description-placeholder{margin-top:12px;height:44px;flex-shrink:0}.rfp-divider{width:100%;height:1px;background-color:#e4e4e7;margin-top:12px;margin-bottom:12px;flex-shrink:0}.rfp-details-grid{display:flex;gap:24px;margin-top:0;padding-top:0}.rfp-detail-group{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.rfp-detail-label-row{display:flex;align-items:center;gap:6px}.rfp-detail-label{font-size:14px;color:#87929b;font-weight:400}.rfp-detail-value{font-size:16px;color:#2e2f35;font-weight:400;padding-left:24px}.rfp-location-value{display:flex;flex-direction:column;gap:2px}.rfp-location-address{font-size:13px;color:#87929b}.loading-state p{color:#666;font-size:1rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.action-button{display:inline-block;padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;text-decoration:none;border:none;border-radius:.5rem;font-weight:500;font-size:.9375rem;cursor:pointer;transition:background-color .2s}@media(max-width:1024px){.rfps-grid{grid-template-columns:1fr}.filter-row{gap:20px}.filter-item.filter-search{width:320px}.filter-item:not(.filter-search){flex:1;min-width:120px}}@media(max-width:768px){.vendor-rfps{padding:0}.main-content{padding:16px}.filter-row{gap:20px;overflow-x:auto;padding-bottom:8px}.filter-row::-webkit-scrollbar{height:6px}.filter-row::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.filter-row::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.filter-item.filter-search{width:320px;flex-shrink:0}.filter-item:not(.filter-search){width:320px;flex-shrink:0}.filter-input,.filter-select{padding-left:36px}.filter-select{padding-left:12px}.rfp-card{min-height:200px}.rfp-details-grid{flex-direction:column;gap:12px;position:relative;bottom:auto;margin-top:16px}}.vendor-bid-summary{margin-top:16px;padding-top:16px;border-top:1px solid #e4e4e7;min-height:80px}.vendor-bid-header{font-size:14px;font-weight:500;color:#2e2f35;margin-bottom:8px}.vendor-bid-details{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vendor-bid-amount{font-size:16px;font-weight:600;color:#2563eb}.vendor-bid-status{padding:4px 10px;border-radius:16px;font-size:12px;font-weight:500;text-transform:capitalize}.vendor-bid-status.status-draft{background-color:#f3f4f6;color:#6b7280}.vendor-bid-status.status-awarded{background-color:#d4ffdd;color:#009b34}.vendor-bid-status.status-rejected{background-color:#fee2e2;color:#dc2626}.vendor-bid-status.status-withdrawn{background-color:#f3f4f6;color:#6b7280}.vendor-bid-submitted-by{font-size:13px;color:#87929b;display:block;margin-top:8px}.vendor-bid-summary--empty{display:flex;flex-direction:column;gap:6px}.vendor-no-bid{font-size:13px;color:#a0aab4;font-style:italic}.answer-question-modal{max-width:700px}.original-question{background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;padding:16px;margin-bottom:20px}.question-label{font-size:11px;font-weight:700;color:#999;letter-spacing:.5px;margin-bottom:8px}.question-text{font-size:16px;font-weight:500;color:#333;margin-bottom:12px;line-height:1.5}.question-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:#666;padding-top:12px;border-top:1px solid #e0e0e0}.rfp-title{font-size:12px;color:#888;margin-top:8px}.answer-textarea{width:100%;padding:12px;border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:15px;line-height:1.6;resize:vertical;transition:border-color .2s;box-sizing:border-box}.answer-textarea:focus{outline:none;border-color:#e4e4e7}.answer-textarea.error{border-color:#e4e4e7}.answer-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.ask-question-modal{max-width:650px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h3{margin:0;color:#333;font-size:22px}.modal-close{background:none;border:none;font-size:32px;color:#999;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.modal-close:hover:not(:disabled){background:#f0f0f0;color:#333}.modal-close:disabled{opacity:.5;cursor:not-allowed}.modal-body{margin-bottom:25px}.modal-description{margin:0 0 20px;color:#666;font-size:15px;line-height:1.6}.error-message{background:#fff5f5;border:1px solid #e4e4e7;border-radius:8px;padding:12px 40px 12px 15px;margin-bottom:15px;color:#dc3545;font-size:14px;position:relative}.error-close{position:absolute;top:8px;right:8px;background:none;border:none;font-size:24px;color:#dc3545;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.error-close:hover{background:#dc35451a}.question-textarea{width:100%;padding:12px;border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:15px;line-height:1.6;resize:vertical;transition:border-color .2s;box-sizing:border-box}.question-textarea:focus{outline:none;border-color:#e4e4e7}.question-textarea.error{border-color:#e4e4e7}.question-textarea:disabled{background:#f5f5f5;cursor:not-allowed}.textarea-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px;font-size:13px}.help-text{color:#999}.char-counter{color:#666;font-weight:500}.char-counter.warning{color:#ffc107}.char-counter.error{color:#dc3545}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.cancel-button,.submit-button{padding:10px 20px;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#f0f0f0;color:#666}.cancel-button:hover:not(:disabled){background:#e0e0e0}.submit-button{background:#667eea;color:#fff}.submit-button:hover:not(:disabled){background:#5568d3;transform:translateY(-1px)}.cancel-button:disabled,.submit-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.question-list{margin-top:20px}.empty-questions{text-align:center;padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:16px;opacity:.5}.empty-questions h3{margin:0 0 8px;color:#666;font-size:20px}.empty-questions p{margin:0;color:#999;font-size:15px}.questions-group{margin-bottom:32px}.questions-group:last-child{margin-bottom:0}.group-title{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:18px;color:#333}.title-icon{font-size:20px}.question-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:20px;margin-bottom:16px;transition:all .2s;display:block}.question-card:hover{box-shadow:0 4px 12px #00000014;text-decoration:none}.question-card.answered{border-color:#28a745}.question-card.unanswered{border-color:#ffc107}.question-card-link{text-decoration:none;color:inherit;cursor:pointer}.question-card-link:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000001f}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.question-header-left{display:flex;align-items:center;gap:12px}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.5px}.status-badge.answered{background:#d4edda;color:#155724}.status-badge.pending{background:#fff3cd;color:#856404}.time-ago{font-size:13px;color:#999}.question-section,.answer-section{margin-bottom:16px}.answer-section{padding-top:16px;border-top:2px solid #f0f0f0}.section-label{font-size:11px;font-weight:700;color:#999;letter-spacing:.5px;margin-bottom:8px}.question-text,.answer-text{font-size:15px;line-height:1.6;color:#333;margin-bottom:12px}.question-text{font-weight:500}.question-meta,.answer-meta{display:flex;align-items:center;gap:8px;font-size:13px;color:#666}.meta-item{display:flex;align-items:center;gap:4px}.answer-action{margin-top:16px;padding-top:16px;border-top:2px solid #f0f0f0}.answer-button{background:none;border:none;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;padding:0;transition:all .2s}.answer-button:hover{color:#5568d3;text-decoration:underline!important}.edit-answer-button{padding:8px 16px;background-color:#6c757d;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px;margin-top:12px;transition:background-color .2s}.edit-answer-button:hover{background-color:#5a6268}.meta-item.edit-indicator{color:var(--text-secondary, #666);font-style:italic;font-size:.9em}.original-answer-wrapper{margin-bottom:16px;padding:12px;background-color:#fff9f0;border-left:3px solid #e4e4e7;border-radius:4px}.original-answer-text{font-size:14px;line-height:1.6;color:#666;text-decoration:line-through;text-decoration-color:#ff5722;text-decoration-thickness:2px;margin-bottom:4px}.original-answer-label{font-size:11px;font-weight:600;color:#ff9800;letter-spacing:.3px;line-height:1.4}.bid-form-modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease;padding:20px;overflow-y:auto}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.bid-form-modal-content{background:#fff;border-radius:12px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s ease;display:flex;flex-direction:column}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.bid-form-modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:24px 32px;border-bottom:1px solid #e5e7eb}.bid-form-modal-title-section{flex:1}.bid-form-modal-title{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 4px}.bid-form-modal-subtitle{font-size:14px;color:#6b7280;margin:0}.bid-form-modal-total{display:flex;align-items:center;gap:8px}.total-amount-label{font-size:20px;font-weight:700;color:#1a1a1a}.bid-form-modal-form{padding:24px 32px 32px;display:flex;flex-direction:column;gap:24px}.bid-form-modal-loading{padding:48px;text-align:center;color:#6b7280}.bid-form-error-message{padding:12px 16px;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:8px;color:#991b1b;font-size:14px;font-weight:500}.bid-form-line-items{display:flex;flex-direction:column;gap:24px}.bid-form-line-item{border:1px solid #e5e7eb;border-radius:8px;padding:20px;background:#fafafa}.line-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px;overflow:visible;min-height:36px}.line-item-number{font-size:16px;font-weight:600;color:#1a1a1a;margin:0}.line-item-remove{background:none;border:none;cursor:pointer;padding:8px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;transition:background-color .2s;color:#dc2626;width:36px;height:36px;overflow:visible;flex-shrink:0;box-sizing:border-box}.line-item-remove:hover:not(:disabled){background-color:#fee2e2}.line-item-remove:disabled{opacity:.5;cursor:not-allowed}.line-item-remove svg{display:block;flex-shrink:0;overflow:visible;width:20px;height:20px}.line-item-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.line-item-total{grid-column:1 / -1}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#374151}.form-group input,.form-group textarea{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;color:#1a1a1a;font-family:inherit;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.form-group input:disabled,.form-group textarea:disabled{background-color:#f3f4f6;cursor:not-allowed}.form-group textarea{resize:vertical;min-height:80px}.form-help-text{font-size:12px;color:#6b7280;margin:4px 0 0;line-height:1.4}.readonly-input{background-color:#f9fafb;color:#6b7280;cursor:default}.input-with-prefix{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:6px;background:#fff;overflow:hidden;transition:border-color .2s}.input-with-prefix:focus-within{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.input-with-prefix .prefix{padding:10px 8px;background-color:#f9fafb;color:#6b7280;font-weight:500;border-right:1px solid #d1d5db;font-size:14px}.input-with-prefix input{flex:1;border:none;padding:10px 12px}.input-with-prefix input:focus{box-shadow:none}.input-with-prefix:focus-within input{outline:none}.add-line-item-button{background:#fff;color:#2563eb;border:none;padding:12px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-top:-20px}.add-line-item-button:hover:not(:disabled){background:#f0f4ff;color:#1d4ed8}.add-line-item-button:disabled{opacity:.5;cursor:not-allowed}.add-line-item-button svg{flex-shrink:0;stroke:currentColor}.bid-form-modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:24px;border-top:1px solid #e5e7eb}.cancel-button,.draft-button,.submit-button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.cancel-button{background:#fff;color:#374151;border:1px solid #d1d5db}.cancel-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.draft-button{background:#fff;color:#374151;border:1px solid #d1d5db}.draft-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.submit-button{background:#2563eb;color:#fff}.submit-button:hover:not(:disabled){background:#1d4ed8}.cancel-button:disabled,.draft-button:disabled,.submit-button:disabled{opacity:.5;cursor:not-allowed}.bid-documents-section{display:flex;flex-direction:column;gap:12px}.documents-section-label{font-size:14px;font-weight:500;color:#374151}.bid-documents-section .document-list{display:flex;flex-direction:column;gap:8px}.bid-documents-section .document-list-pending{border-top:1px dashed #e5e7eb;padding-top:12px;margin-top:4px}.bid-documents-section .document-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:6px}.bid-documents-section .document-item.document-pending{background-color:#fffbeb;border-color:#fcd34d}.bid-documents-section .document-icon{font-size:20px;flex-shrink:0}.bid-documents-section .document-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.bid-documents-section .document-name,.bid-documents-section .document-name-link{font-size:14px;font-weight:500;color:#111827;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bid-documents-section .document-name-link{color:#2563eb;text-decoration:none}.bid-documents-section .document-name-link:hover{text-decoration:underline}.bid-documents-section .document-size{font-size:12px;color:#6b7280}.bid-documents-section .document-delete-btn{background:none;border:none;padding:6px;cursor:pointer;color:#dc2626;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background-color .2s;flex-shrink:0}.bid-documents-section .document-delete-btn:hover:not(:disabled){background-color:#fee2e2}.bid-documents-section .document-delete-btn:disabled{opacity:.5;cursor:not-allowed}.document-file-input{display:none}.document-upload-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;color:#2563eb;border:1px dashed #2563eb;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;align-self:flex-start}.document-upload-btn:hover{background-color:#f0f4ff;border-style:solid}.document-upload-btn svg{flex-shrink:0}@media(max-width:768px){.bid-form-modal-overlay{padding:10px}.bid-form-modal-content{max-height:95vh}.bid-form-modal-header{flex-direction:column;gap:16px;padding:20px}.bid-form-modal-form{padding:20px}.line-item-fields{grid-template-columns:1fr}.bid-form-modal-actions{flex-direction:column}.cancel-button,.draft-button,.submit-button{width:100%}}.rfp-updates-feed{display:flex;flex-direction:column;gap:1.5rem}.rfp-updates-loading,.rfp-updates-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.rfp-updates-loading p{color:#6b7280;font-size:1rem}.rfp-updates-error p{color:#dc2626;font-size:1rem;margin-bottom:1rem}.retry-button{padding:.625rem 1.25rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .2s}.retry-button:hover{background-color:#1d4ed8}.post-update-card{margin-bottom:.5rem}.post-update-form{display:flex;flex-direction:column;gap:.75rem}.update-textarea{width:100%;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;font-family:inherit;color:#1a1a1a;background:#fff;transition:border-color .2s;resize:vertical;min-height:80px;line-height:1.5}.update-textarea:focus{outline:none;border-color:#2563eb}.update-textarea::placeholder{color:#9ca3af}.update-textarea:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.post-update-actions{display:flex;justify-content:flex-end}.post-update-button{padding:.625rem 1.5rem;background-color:#1a1a1a;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .2s;font-family:inherit}.post-update-button:hover:not(:disabled){background-color:#333}.post-update-button:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}.no-updates-card{padding:3rem 2rem}.no-updates-content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem}.no-updates-icon{font-size:3rem;margin-bottom:.5rem;opacity:.7}.no-updates-content h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0}.no-updates-content p{color:#6b7280;font-size:1rem;margin:0;line-height:1.5}.no-updates-hint{max-width:500px;font-size:.875rem!important;color:#9ca3af!important;font-style:italic;margin-top:.5rem!important}.updates-list{display:flex;flex-direction:column;gap:1rem}.update-card{padding:1.5rem}.update-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.update-author{display:flex;align-items:center;gap:.75rem}.author-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:600;flex-shrink:0}.author-info{display:flex;flex-direction:column;gap:.125rem}.author-name{font-size:.9375rem;font-weight:600;color:#1a1a1a}.update-timestamp{font-size:.8125rem;color:#6b7280}.update-content{padding-left:3.25rem}.update-text{font-size:.9375rem;line-height:1.6;color:#374151;margin:0;white-space:pre-wrap;word-wrap:break-word}.update-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.75rem;margin-top:1rem}.update-photo{width:100%;height:150px;object-fit:cover;border-radius:.375rem;border:1px solid #e5e7eb;cursor:pointer;transition:transform .2s}.update-photo:hover{transform:scale(1.02)}@media(max-width:768px){.update-content{padding-left:0;margin-top:1rem}.author-avatar{width:36px;height:36px;font-size:.875rem}.update-photos{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.update-photo{height:120px}}.rfp-quick-stats{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}.rfp-stat-item{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 14px;background-color:#f4f4f5;border-radius:8px;min-width:70px}.rfp-stat-value{font-size:14px;font-weight:700;color:#18181b;line-height:1.2}.rfp-stat-label{font-size:11px;font-weight:500;color:#71717a;text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.rfp-stat-low{background-color:#dcfce7}.rfp-stat-low .rfp-stat-value{color:#166534}.rfp-stat-low .rfp-stat-label{color:#15803d}.rfp-stat-high{background-color:#fee2e2}.rfp-stat-high .rfp-stat-value{color:#991b1b}.rfp-stat-high .rfp-stat-label{color:#b91c1c}.rfp-stat-budget{background-color:#e0e7ff}.rfp-stat-budget .rfp-stat-value{color:#3730a3}.rfp-stat-budget .rfp-stat-label{color:#4338ca}@media(max-width:768px){.rfp-quick-stats{gap:6px}.rfp-stat-item{padding:6px 10px;min-width:60px}.rfp-stat-value{font-size:13px}.rfp-stat-label{font-size:10px}}.rfp-description-preview{padding:12px 16px;background-color:#fafafa;border-radius:8px;border-left:3px solid #e0e7ff}.rfp-description-text{margin:0;font-size:14px;line-height:1.6;color:#3f3f46}.rfp-description-ellipsis{color:#71717a}.rfp-description-toggle{background:none;border:none;padding:0;margin-left:4px;color:#4338ca;font-size:14px;font-weight:500;cursor:pointer;text-decoration:none}.rfp-description-toggle:hover{text-decoration:underline}.rfp-photo-banner{display:flex;flex-direction:column;gap:6px;width:200px;flex-shrink:0}.rfp-photo-banner-loading,.rfp-photo-banner-empty{width:200px;height:140px}.rfp-photo-banner-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;background-color:#f4f4f5;border-radius:8px;color:#a1a1aa;font-size:12px}.rfp-photo-banner-cover{position:relative;width:100%;height:120px;border-radius:8px;overflow:hidden;cursor:pointer;transition:transform .15s,box-shadow .15s}.rfp-photo-banner-cover:hover{transform:scale(1.02);box-shadow:0 4px 12px #00000026}.rfp-photo-banner-cover img{width:100%;height:100%;object-fit:cover}.rfp-photo-banner-count{position:absolute;bottom:8px;right:8px;display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:#000000b3;border-radius:4px;color:#fff;font-size:12px;font-weight:500}.rfp-photo-banner-thumbs{display:flex;gap:4px}.rfp-photo-banner-thumb{flex:1;height:36px;border-radius:4px;overflow:hidden;cursor:pointer;transition:transform .15s}.rfp-photo-banner-thumb:hover{transform:scale(1.05)}.rfp-photo-banner-thumb img{width:100%;height:100%;object-fit:cover}.rfp-photo-banner-more{display:flex;align-items:center;justify-content:center;background-color:#27272a;color:#fff;font-size:11px;font-weight:600}.rfp-photo-lightbox{position:fixed;inset:0;background-color:#000000e6;z-index:9999;display:flex;align-items:center;justify-content:center}.rfp-photo-lightbox-content{position:relative;max-width:90vw;max-height:90vh}.rfp-photo-lightbox-image{max-width:100%;max-height:85vh;object-fit:contain;border-radius:4px}.rfp-photo-lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;cursor:pointer;padding:8px;opacity:.8;transition:opacity .15s}.rfp-photo-lightbox-close:hover{opacity:1}.rfp-photo-lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:none;color:#fff;cursor:pointer;padding:12px;border-radius:50%;opacity:.8;transition:opacity .15s,background-color .15s}.rfp-photo-lightbox-nav:hover{opacity:1;background:#fff3}.rfp-photo-lightbox-prev{left:-60px}.rfp-photo-lightbox-next{right:-60px}.rfp-photo-lightbox-counter{position:absolute;bottom:-32px;left:50%;transform:translate(-50%);color:#fff;font-size:14px;opacity:.8}@media(max-width:768px){.rfp-photo-banner{width:100%;max-width:300px}.rfp-photo-banner-cover{height:160px}.rfp-photo-banner-thumb{height:48px}.rfp-photo-lightbox-nav{display:none}}.rfp-header-component{display:flex;flex-direction:column;gap:12px}.rfp-header-top{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.rfp-header-title-section{display:flex;align-items:center;gap:12px;flex-wrap:wrap;flex:1;min-width:0}.rfp-header-title{font-family:Inter,sans-serif;font-size:20px;font-weight:700;color:#18181b;margin:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rfp-header-number{display:inline-flex;align-items:center;padding:4px 10px;background:#f4f4f5;color:#71717a;font-size:12px;font-weight:600;border-radius:6px;flex-shrink:0}.edit-rfp-button{padding:.625rem 1.25rem;background-color:#2563eb;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .2s;display:inline-flex;align-items:center;gap:.5rem;flex-shrink:0}.edit-rfp-button:hover{background-color:#1d4ed8;text-decoration:none}.rfp-header-info-bar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:16px 20px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a}.rfp-header-info-left{display:flex;flex-wrap:wrap;align-items:center;gap:12px;flex:1;min-width:0}.rfp-header-info-right{flex-shrink:0}.rfp-header-type-badge{display:inline-flex;align-items:center;padding:6px 12px;background-color:#f0fdf4;color:#166534;border-radius:16px;font-size:12px;font-weight:600;white-space:nowrap}.rfp-header-actions-row{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#f9fafb;border-radius:12px;border:1px solid #e5e7eb}.rfp-header-actions-left{display:flex;align-items:center;gap:12px}.header-pdf-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:6px;border:1px solid #d1d5db;background:#fff;cursor:pointer;transition:all .2s}.header-pdf-icon-btn:hover{background:#f3f4f6;border-color:#9ca3af}.header-bid-summary{display:flex;align-items:center;gap:10px}.header-bid-status-badge{font-size:11px;font-weight:600;padding:4px 10px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px}.header-bid-amount{font-size:1.125rem;font-weight:700;color:#059669}.header-submit-bid-btn{display:inline-flex;align-items:center;gap:.5rem;padding:8px 16px;background-color:#1a1a1a;color:#fff;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s}.header-submit-bid-btn:hover{background-color:#333}@media(max-width:1024px){.rfp-header-info-bar{flex-direction:column}.rfp-header-info-right{width:100%}.rfp-header-info-right .rfp-photo-banner{width:100%;max-width:100%}.rfp-header-info-right .rfp-photo-banner-cover{height:180px}}@media(max-width:768px){.rfp-header-top{flex-direction:column;align-items:stretch}.rfp-header-title{font-size:18px}.edit-rfp-button{width:100%;justify-content:center}.rfp-header-info-left{gap:8px}}.vendor-rfp-detail{padding:0;max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.rfp-detail-tabs{display:flex;overflow-y:hidden;gap:0;border-bottom:1px solid #e5e7eb;margin-bottom:1.5rem;background:#fff;border-radius:8px 8px 0 0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.rfp-detail-tabs::-webkit-scrollbar{display:none}.rfp-detail-tabs .tab-button{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#6b7280;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.rfp-detail-tabs .tab-button:hover{color:#1a1a1a;background:#f9fafb}.rfp-detail-tabs .tab-button.active{color:#2563eb;border-bottom-color:#2563eb;background:transparent}.tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#ef4444;color:#fff;font-size:.75rem;font-weight:600;border-radius:10px}.rfp-tab-content{min-height:400px}.rfp-cover-photo-banner{width:100%;max-width:1280px;margin:0 auto;height:280px;overflow:hidden;border-radius:12px;background:#f5f5f5}.rfp-cover-image{width:100%;height:100%;object-fit:cover;object-position:center}.rfp-key-details-banner{border:1px solid #e4e4e7!important;border-radius:12px!important;padding:16px!important;background:#fff;margin-bottom:0!important}.rfp-key-details-banner .card-body{padding:0!important}.action-button{display:inline-block;padding:.625rem 1.25rem;border-radius:.375rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:all .2s;border:1px solid transparent}.action-button.primary{background-color:#2563eb;color:#fff}.action-button.primary:hover{background-color:#1d4ed8}.action-button.large{padding:.875rem 2rem;font-size:1rem;font-weight:600}.my-bid-card{margin-bottom:2rem;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-left:4px solid #059669;position:relative}.my-bid-card.draft-bid-card{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-left:4px solid #e4e4e7}.my-bid-card.withdrawn-bid-card{background:linear-gradient(135deg,#fef2f2,#fee2e2);border-left:4px solid #dc2626;opacity:.8}.my-bid-card.awarded-bid-card{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-left:4px solid #f59e0b;box-shadow:0 0 0 1px #fde68a,0 4px 16px #05966933}.awarded-congrats{margin:.25rem 0 0;font-size:.875rem;color:#065f46}.my-bid-card-link{display:block;text-decoration:none;color:inherit;cursor:pointer;transition:opacity .2s}.my-bid-card-link:hover{opacity:.9;text-decoration:none}.my-bid-card-link:hover *{text-decoration:none}.my-bid-status{display:flex;align-items:center;gap:1.5rem}.my-bid-icon{font-size:2.5rem;flex-shrink:0}.my-bid-info{flex:1;text-align:left}.my-bid-info h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 .75rem;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;text-align:left;justify-content:flex-start}.editable-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;padding:.25rem .5rem;background-color:#fef3c7;color:#92400e;border-radius:.25rem;border:1px solid #e4e4e7}.my-bid-details{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.bid-amount{font-size:1.5rem;font-weight:700;color:#059669}.bid-date{font-size:.875rem;color:#666}.bid-submission-info{margin-top:.5rem}.bid-history{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem}.original-bid-info,.current-bid-info{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.875rem}.bid-history-label{font-weight:600;color:#374151;min-width:60px}.bid-history-amount{font-weight:600;color:#059669}.bid-history-details{color:#6b7280}.bid-actions-group{display:flex;flex-direction:column;gap:.75rem;align-items:flex-end}.edit-bid-button{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:#fff;color:#2563eb;text-decoration:none;border:1px solid #2563eb;border-radius:.375rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;font-family:inherit}.edit-bid-button:hover{background-color:#f0f4ff;color:#1d4ed8;transform:translateY(-1px);box-shadow:0 4px 8px #2563eb33}.edit-bid-button:hover svg{color:#1d4ed8;stroke:#1d4ed8}.edit-bid-button svg{color:#2563eb;stroke:#2563eb}.bid-status-badge{display:inline-flex;font-size:.7rem;font-weight:600;padding:.2rem .5rem;border-radius:10px;text-transform:uppercase;letter-spacing:.5px;margin-left:.5rem}.bid-description-preview{margin-top:.5rem;font-size:.875rem;color:#6b7280;line-height:1.4;font-style:italic}.withdraw-bid-button{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:#fff;color:#dc2626;text-decoration:none;border:1px solid #dc2626;border-radius:.375rem;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s;font-family:inherit}.withdraw-bid-button:hover:not(:disabled){background-color:#fef2f2;color:#b91c1c;border-color:#b91c1c}.withdraw-bid-button:disabled{opacity:.5;cursor:not-allowed}.withdraw-bid-button svg{color:#dc2626;stroke:#dc2626}.view-bid-link{font-size:.9375rem;font-weight:500;color:#2563eb;text-decoration:none;flex-shrink:0;display:inline-flex;align-items:center;padding:0;border:none;border-radius:.375rem;background:transparent;transition:all .2s}.description-card{margin-bottom:1.5rem}.description-text{margin-bottom:1.5rem;line-height:1.6;color:#4b5563}.description-text p{margin:0}.rfp-details-row{display:flex;align-items:center;gap:0;padding-top:1.5rem;border-top:1px solid #e5e7eb}.detail-field{display:flex;align-items:center;gap:.75rem;flex:1;padding:0 1.5rem}.detail-field:first-child{padding-left:0}.detail-field:last-child{padding-right:0}.detail-content{display:flex;flex-direction:column;gap:.25rem}.detail-label{font-size:.875rem;font-weight:500;color:#6b7280}.detail-value{font-size:1rem;font-weight:500;color:#1a1a1a}.detail-divider{width:1px;height:40px;background-color:#e5e7eb;flex-shrink:0}.bid-submission-card{margin-bottom:1.5rem}.bid-submission-content{display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.bid-submission-message{font-size:1rem;color:#1a1a1a;margin:0}.submit-bid-button{display:inline-block;padding:.625rem 1.25rem;background-color:#1a1a1a;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;text-decoration:none;transition:background-color .2s;flex-shrink:0;cursor:pointer;font-family:inherit}.submit-bid-button:hover{background-color:#333}.submit-bid-button:disabled{opacity:.5;cursor:not-allowed}.conversation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.conversation-container{display:flex;flex-direction:column;height:calc(100vh - 350px);min-height:500px;max-height:800px;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb}.conversation-content{flex:1;overflow-y:auto;padding:0 0 100px;position:relative;background:#fff}.conversation-empty{display:flex;align-items:center;justify-content:center;height:100%;padding:2rem;min-height:400px}.conversation-empty p{color:#6b7280;font-size:1rem;text-align:center;margin:0;line-height:1.5}.conversation-loading{display:flex;align-items:center;justify-content:center;height:100%;color:#6b7280;font-size:1rem;min-height:400px}.conversation-messages{padding:1.5rem;height:100%;overflow-y:auto}.conversation-input-area{display:flex;align-items:center;gap:.75rem;border-top:1px solid #e5e7eb;background:#fff;flex-shrink:0;position:fixed;bottom:0;left:304px;right:24px;z-index:100;padding:1rem 1.5rem 3rem}.conversation-input{flex:1;padding:.75rem 1rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;font-family:inherit;color:#1a1a1a;background:#fff;transition:border-color .2s;resize:none;height:4rem;min-height:44px;max-height:120px;line-height:1.5}.conversation-input:focus{outline:none;border-color:#e4e4e7}.conversation-input::placeholder{color:#9ca3af}.conversation-input:disabled{background-color:#f9fafb;cursor:not-allowed;opacity:.6}.conversation-send-button{padding:.75rem 1.5rem;background-color:#1a1a1a;color:#fff;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:background-color .2s;flex-shrink:0;white-space:nowrap;pointer-events:auto;position:relative;z-index:1}.conversation-send-button:hover:not(:disabled){background-color:#333}.conversation-send-button:active:not(:disabled){background-color:#000}.conversation-send-button:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6;pointer-events:none}.due-badge{font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.5px}.due-badge.overdue{background-color:#fee2e2;color:#991b1b}.due-badge.due-today,.due-badge.due-soon{background-color:#fef3c7;color:#92400e}.description-content,.scope-content{line-height:1.6;color:#4b5563}.description-content p{margin:0}.scope-content pre{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;margin:0}.contact-info{display:flex;flex-direction:column;gap:1rem}.contact-item{display:flex;align-items:center;gap:.75rem;font-size:.9375rem}.contact-item label{font-weight:500;color:#6b7280;min-width:120px}.contact-item a{color:#2563eb;text-decoration:none}.contact-item a:hover{text-decoration:underline}.bottom-actions{display:flex;justify-content:center;padding:2rem 0}.vendor-rfp-detail h2{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 1.5rem}.vendor-rfp-detail .card{margin-bottom:1.5rem}@media(max-width:768px){.vendor-rfp-detail{padding:0}.rfp-cover-photo-banner{height:200px}.rfp-details-row{flex-direction:column;align-items:flex-start;gap:1rem;padding-top:1rem}.detail-field{padding:0;width:100%}.detail-divider{display:none}.bid-submission-content{flex-direction:column;align-items:flex-start}.submit-bid-button{width:100%;text-align:center}.my-bid-status{flex-direction:column;align-items:flex-start}.my-bid-icon{font-size:2rem}.view-bid-link{align-self:flex-start}.bid-actions-group{flex-direction:column;align-items:stretch;gap:.5rem}.edit-bid-button,.withdraw-bid-button{justify-content:center;padding:.5rem 1rem}.conversation-header{flex-direction:column;align-items:flex-start;gap:1rem}.conversation-container{height:calc(100vh - 400px);min-height:400px}.conversation-input-area{padding:.875rem 1rem 3rem;left:0;right:0}.conversation-send-button{padding:.75rem 1.25rem;font-size:.875rem}}.updates-content{text-align:center;padding:2rem 1rem}.no-updates-message{color:#666;font-size:1rem;margin-bottom:.5rem}.check-back-message{color:#999;font-size:.875rem;margin-top:.5rem}.billing-content{text-align:center;padding:2rem 1rem}.billing-content.placeholder-content{padding:3rem 2rem}.placeholder-icon{font-size:3rem;margin-bottom:1rem;opacity:.7}.billing-content h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem}.no-billing-message{color:#666;font-size:1rem;margin-bottom:.75rem}.billing-instructions{color:#6b7280;font-size:.9375rem;line-height:1.6;margin:0}.no-bid-message{text-align:center;padding:2rem 1rem}.no-bid-message p{color:#666;font-size:1rem}.rfp-additional-details-card{margin-bottom:1.5rem}.rfp-additional-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.rfp-detail-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.rfp-detail-icon{font-size:1.25rem;line-height:1}.rfp-detail-info{display:flex;flex-direction:column;gap:.25rem}.rfp-detail-info label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.rfp-detail-info span{font-size:.9375rem;font-weight:500;color:#1a1a1a}.rfp-photos-card{padding:1.5rem}.rfp-photos-card h2{margin-bottom:1.5rem}@media(max-width:640px){.rfp-additional-details-grid{grid-template-columns:1fr}}.rfp-timeline-card{margin-bottom:1.5rem}.rfp-timeline-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.rfp-timeline-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:#f9fafb;border-radius:.5rem;border:1px solid #e5e7eb}.rfp-timeline-icon{font-size:1.25rem;line-height:1}.rfp-timeline-info{display:flex;flex-direction:column;gap:.25rem}.rfp-timeline-info label{font-size:.75rem;font-weight:500;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.rfp-timeline-info span{font-size:.9375rem;font-weight:500;color:#1a1a1a}@media(max-width:640px){.rfp-timeline-grid{grid-template-columns:1fr}}.submit-bid{padding:0;max-width:1280px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.header-content h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.back-link{font-size:.875rem;color:#666;text-decoration:none;transition:color .2s}.back-link:hover{color:#2563eb}.rfp-summary-card{margin-bottom:2rem;background:linear-gradient(135deg,#f0f9ff,#e0f2fe)}.rfp-summary-card h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 1rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;gap:.25rem}.summary-item label{font-size:.875rem;font-weight:500;color:#6b7280}.summary-item span{font-size:1rem;color:#1a1a1a;font-weight:500}.summary-item span.budget{color:#059669;font-weight:700}.bid-form{display:flex;flex-direction:column;gap:1.5rem}.bid-form h3{font-size:1.125rem;font-weight:600;color:#1a1a1a;margin:0 0 1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9375rem;font-weight:500;color:#1a1a1a}.required{color:#dc2626}.input-with-prefix{display:flex;align-items:center;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;overflow:hidden;transition:border-color .2s}.input-with-prefix:focus-within{border-color:#e4e4e7;box-shadow:0 0 0 3px #2563eb1a}.input-with-prefix .prefix{padding:.625rem .75rem;background-color:#f9fafb;color:#6b7280;font-weight:500;border-right:1px solid #d1d5db}.input-with-prefix input{flex:1;padding:.625rem .75rem;border:none;font-size:.9375rem;color:#1a1a1a}.input-with-prefix input:focus{outline:none}textarea{padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.9375rem;color:#1a1a1a;font-family:inherit;resize:vertical;transition:border-color .2s}textarea:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #2563eb1a}.field-hint{font-size:.8125rem;color:#6b7280;margin:0}.error-message{padding:.75rem 1rem;background-color:#fee2e2;border:1px solid #fca5a5;border-radius:.375rem;color:#991b1b;font-size:.875rem;font-weight:500;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem;border-top:1px solid #e5e7eb}.button{padding:.625rem 1.5rem;border:none;border-radius:.375rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-block}.button:disabled{opacity:.5;cursor:not-allowed}.button.primary{background-color:#2563eb;color:#fff}.button.primary:hover:not(:disabled){background-color:#1d4ed8}.button.secondary{background-color:#fff;color:#1a1a1a;border:1px solid #d1d5db}.button.secondary:hover:not(:disabled){background-color:#f9fafb;border-color:#e4e4e7}.bid-summary{padding:0}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 0}.summary-row.total-row{border-top:2px solid #d1d5db;padding-top:1.5rem;margin-top:.5rem}.summary-row label{font-size:1.125rem;font-weight:600;color:#1a1a1a}.summary-row .total-amount{font-size:1.5rem;font-weight:700;color:#059669}.edit-notice-card{background:#dbeafe;border-left:4px solid #e4e4e7;margin-bottom:2rem}.edit-notice{display:flex;align-items:flex-start;gap:1rem}.notice-icon{font-size:1.5rem;line-height:1}.notice-content strong{display:block;font-size:1rem;font-weight:600;color:#1a1a1a;margin-bottom:.25rem}.notice-content p{font-size:.875rem;color:#4b5563;margin:0}.info-card{background:#fef3c7;border-left:4px solid #e4e4e7}.info-card h4{font-size:1rem;font-weight:600;color:#1a1a1a;margin:0 0 .75rem}.info-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.info-list li{font-size:.875rem;color:#4b5563;padding-left:1.5rem;position:relative}.info-list li:before{content:"→";position:absolute;left:0;color:#f59e0b;font-weight:700}.empty-state p{color:#666;font-size:1rem;margin:0 0 1.5rem}.action-button{display:inline-block;padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;text-decoration:none;border-radius:.5rem;font-weight:500;font-size:.9375rem;transition:background-color .2s}.action-button:hover{background-color:#1d4ed8}@media(max-width:768px){.submit-bid{padding:0}.page-header{flex-direction:column;gap:1rem}.header-content h1{font-size:1.5rem}.summary-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions .button{width:100%}.input-with-prefix .prefix{display:none}.input-with-prefix input{padding-left:.75rem}}.vendor-bids-table-container{overflow-x:auto;background:var(--bg-primary, #ffffff);border-radius:12px;border:1px solid var(--border-color, #e2e8f0)}.vendor-bids-table{width:100%;border-collapse:collapse;font-size:14px}.vendor-bids-table thead{background:var(--bg-secondary, #f8fafc);border-bottom:2px solid var(--border-color, #e2e8f0)}.vendor-bids-table th{padding:12px 16px;text-align:left;font-weight:600;color:var(--text-secondary, #64748b);font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.vendor-bids-table td{padding:16px;border-bottom:1px solid var(--border-color, #e2e8f0);vertical-align:middle}.vendor-bids-table tbody tr:hover{background:var(--bg-tertiary, #f1f5f9)}.vendor-bids-table tbody tr:last-child td{border-bottom:none}.vendor-bids-table .title-cell{max-width:280px}.vendor-bids-table .bid-link{color:var(--text-primary, #1e293b);font-weight:500;text-decoration:none;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vendor-bids-table .bid-link:hover{color:var(--primary, #3b82f6)}.vendor-bids-table .amount-cell .bid-amount{font-weight:600;color:var(--text-primary, #1e293b);font-size:15px}.vendor-bids-table .date-cell{white-space:nowrap;color:var(--text-secondary, #64748b)}.vendor-bids-table .status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.vendor-bids-table .status-badge.status-draft{background:#f1f5f9;color:#64748b}.vendor-bids-table .status-badge.status-awarded,.vendor-bids-table .status-badge.status-won{background:#dcfce7;color:#166534}.vendor-bids-table .status-badge.status-rejected{background:#fef2f2;color:#991b1b}.vendor-bids-table .action-buttons{display:flex;align-items:center;gap:12px}.vendor-bids-table .action-btn{color:var(--text-secondary, #64748b);text-decoration:none;font-weight:500;font-size:13px;padding:6px 12px;border-radius:6px;transition:all .2s ease;border:1px solid var(--border-color, #e2e8f0)}.vendor-bids-table .action-btn:hover{background:var(--bg-tertiary, #f1f5f9);color:var(--text-primary, #1e293b)}.vendor-bids-table .view-link{color:var(--primary, #3b82f6);text-decoration:none;font-weight:500;font-size:13px;padding:6px 12px;border-radius:6px;transition:background .2s ease}.vendor-bids-table .view-link:hover{background:var(--primary-light, #eff6ff)}@media(max-width:768px){.vendor-bids-table-container{border-radius:0;border-left:none;border-right:none}}.vendor-bids{padding:0;max-width:1280px;margin:0 auto}.page-header h1{font-size:2rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.page-subtitle{font-size:1rem;color:var(--color-text-secondary);margin:0}.stats-summary{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.stats-summary .stat-item{flex:1;min-width:120px;padding:1rem;background:#fff;border:2px solid var(--color-border);border-radius:.5rem;text-align:center;transition:all .2s;cursor:pointer}.stats-summary .stat-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a;border-color:var(--color-primary)}.stats-summary .stat-item.active{background:var(--color-primary, #667eea);border-color:var(--color-primary, #667eea);box-shadow:0 4px 12px #667eea4d}.stats-summary .stat-item.active .stat-label{color:#ffffffe6!important}.stats-summary .stat-item.active .stat-value{color:#fff!important}.stats-summary .stat-label{display:block;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.stats-summary .stat-value{display:block;font-size:1.75rem;font-weight:700;color:var(--color-primary)}.quick-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:2px solid var(--color-border);border-radius:.75rem;transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px #0000001a;border-color:var(--color-primary)}.stat-card-success{background:linear-gradient(135deg,rgba(var(--color-success-rgb),.05),#fff);border-color:var(--color-success)}.stat-card-success:hover{border-color:var(--color-success);box-shadow:0 8px 16px rgba(var(--color-success-rgb),.2)}.stat-card .stat-icon{font-size:2.5rem;flex-shrink:0}.stat-info{display:flex;flex-direction:column;gap:.25rem}.stat-info .stat-value{font-size:2rem;font-weight:700;color:var(--color-text);line-height:1}.stat-card-success .stat-value{color:var(--color-success)}.stat-info .stat-label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.filters-card{margin-bottom:1.5rem}.filters-container{width:100%}.filter-row{display:grid;grid-template-columns:2fr 1fr auto;gap:1rem;align-items:end}.filter-item{display:flex;flex-direction:column;gap:.5rem}.filter-item label{font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.filter-input,.filter-select{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.375rem;font-size:.875rem;color:var(--color-text);background-color:var(--color-surface);transition:border-color .2s,box-shadow .2s}.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1)}.clear-filters-btn{padding:.5rem 1rem;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary);cursor:pointer;transition:all .2s}.clear-filters-btn:hover{background-color:var(--color-background);border-color:var(--color-primary);color:var(--color-text)}.results-header{margin-bottom:1rem}.results-count{font-size:.875rem;color:var(--color-text-secondary);margin:0;font-weight:500}.bids-list{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.bid-card-figma{position:relative;background:#fff;border:1px solid #e4e4e7;border-radius:12px;height:202px;padding:15px;overflow:hidden;display:flex;flex-direction:column;text-decoration:none;color:inherit;transition:all .2s ease}.bid-card-link{cursor:pointer}.bid-card-link:hover{border-color:#2563eb;box-shadow:0 2px 8px #2563eb1a;transform:translateY(-2px)}.bid-card-top-left{position:absolute;left:15px;top:15px;right:150px;display:flex;flex-direction:column;gap:12px}.bid-amount-badge-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.bid-amount-badge{background:#d4ffdd;color:#009b34;font-size:20px;font-weight:600;font-family:Inter,sans-serif;padding:6px 12px;border-radius:32px;display:inline-flex;align-items:center;justify-content:center;width:fit-content;white-space:nowrap}.bid-amount-badge--awarded{background:#fff8e1;color:#b45309}.bid-amount-badge--outbid{background:#f3f4f6;color:#6b7280}.bid-amount-badge--withdrawn{background:#fef2f2;color:#b91c1c}.bid-amount-badge--draft{background:#eff6ff;color:#2563eb}.bid-status-chip{display:inline-flex;align-items:center;font-size:12px;font-weight:600;font-family:Inter,sans-serif;padding:3px 10px;border-radius:32px;white-space:nowrap}.bid-status-chip--awarded{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.bid-status-chip--outbid{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db}.bid-status-chip--draft{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.bid-status-chip--withdrawn{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.bid-title-figma{font-size:18px;font-weight:400;color:#2e2f35;font-family:Inter,sans-serif;margin:0;line-height:1.3;width:100%;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bid-card-top-right{position:absolute;right:15px;top:15px;display:flex;gap:20px;align-items:center}.bid-action-btn{border:1px solid #2563eb;border-radius:6px;padding:8px 10px;font-size:14px;font-weight:400;color:#2563eb;text-decoration:none;font-family:Inter,sans-serif;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:#fff;transition:all .2s;position:relative;z-index:10}.bid-action-btn:hover{background:#f0f4ff;border-color:#2563eb;color:#1d4ed8}.bid-notes-figma{position:absolute;left:15px;right:15px;top:115px;font-size:14px;font-weight:400;color:#87929b;font-family:Inter,sans-serif;margin:0;line-height:20px}.bid-card-dates{position:absolute;left:15px;right:15px;top:153px;border-top:1px solid rgba(106,120,135,.24);padding:10px 8px;display:flex;justify-content:space-between;align-items:center}.bid-date-item{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-shrink:0}.bid-date-label-group{display:flex;gap:6px;align-items:center;flex-shrink:0}.bid-date-label{font-size:14px;font-weight:400;color:#87929b;font-family:Inter,sans-serif;white-space:nowrap}.bid-date-value{font-size:16px;font-weight:400;color:#2e2f35;font-family:Inter,sans-serif;white-space:nowrap;display:flex;align-items:center;justify-content:center;flex-shrink:0}.bid-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border)}.bid-title-section{flex:1;display:flex;flex-direction:column;gap:.5rem}.bid-title-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.bid-title{font-size:1.25rem;font-weight:700;color:var(--color-text);margin:0}.winning-badge{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;padding:.375rem .75rem;background:linear-gradient(135deg,var(--color-success),var(--color-success-light));color:#fff;border-radius:.375rem;box-shadow:0 2px 8px rgba(var(--color-success-rgb),.3);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 2px 8px rgba(var(--color-success-rgb),.3)}50%{box-shadow:0 4px 16px rgba(var(--color-success-rgb),.5)}}.bid-meta-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.bid-id{font-size:.75rem;color:var(--color-text-tertiary);font-weight:500;font-family:Courier New,monospace}.late-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;background-color:rgba(var(--color-warning-rgb),.1);color:var(--color-warning);border:1px solid var(--color-warning);border-radius:.25rem}.bid-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-box{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;transition:all .2s;position:relative;overflow:hidden}.stat-box:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:var(--color-primary);opacity:0;transition:opacity .2s ease}.stat-box:hover{background:var(--color-background);transform:translateY(-2px);box-shadow:0 6px 12px #0000001a}.stat-box:hover:after{opacity:1}.stat-box.primary{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.1),rgba(var(--color-primary-rgb),.05));border-color:var(--color-primary);border-width:2px}.stat-box.primary:after{background:var(--color-primary);height:4px;opacity:.5}.stat-box.primary:hover:after{opacity:1}.stat-icon{font-size:1.75rem;flex-shrink:0}.stat-content{display:flex;flex-direction:column;gap:.25rem;flex:1}.stat-label{font-size:.75rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.stat-value{font-size:1.125rem;font-weight:700;color:var(--color-text)}.stat-box.primary .stat-value{font-size:1.5rem;color:var(--color-primary)}.bid-notes{padding:1rem;background:rgba(var(--color-primary-rgb),.03);border-left:4px solid var(--color-primary);border-radius:.375rem;margin-bottom:1rem}.notes-label{font-size:.875rem;font-weight:600;color:var(--color-text-secondary);display:block;margin-bottom:.5rem}.notes-content{margin:0;font-size:.875rem;color:var(--color-text);line-height:1.6}.bid-footer{display:flex;justify-content:flex-end;padding-top:1rem;border-top:1px solid var(--color-border)}.view-details-link{border:1px solid #2563eb;border-radius:6px;padding:8px 10px;font-size:14px;font-weight:400;color:#2563eb;text-decoration:none;font-family:Inter,sans-serif;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:#fff;transition:all .2s;position:relative;z-index:10;pointer-events:none}.bid-actions{margin-top:1rem;padding-top:1rem;border-top:2px dashed var(--color-border);display:flex;justify-content:flex-end;gap:.75rem}.btn-edit{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:var(--color-primary);color:#fff;text-decoration:none;border:none;border-radius:.375rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-edit:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3)}.skeleton-card{pointer-events:none;animation:skeleton-pulse 1.5s ease-in-out infinite}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.6}}.skeleton-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid var(--color-border)}.skeleton-title{height:24px;width:60%;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface) 50%,var(--color-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}.skeleton-badge{height:28px;width:100px;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface) 50%,var(--color-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:6px}.skeleton-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1rem}.skeleton-stat{height:80px;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface) 50%,var(--color-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:8px}.skeleton-footer{height:20px;width:150px;margin-left:auto;background:linear-gradient(90deg,var(--color-border) 25%,var(--color-surface) 50%,var(--color-border) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite;border-radius:4px}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.loading-state p{color:var(--color-text-secondary);font-size:1rem}.empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.5rem;font-weight:600;color:var(--color-text);margin:0 0 .5rem}.empty-state p{color:var(--color-text-secondary);font-size:1rem;margin:0 0 1.5rem;line-height:1.6}.action-button{display:inline-block;padding:.75rem 1.5rem;background-color:var(--color-primary);color:#fff;text-decoration:none;border:none;border-radius:.5rem;font-weight:600;font-size:.9375rem;cursor:pointer;transition:all .2s}.action-button:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3)}@media(max-width:1024px){.bid-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.bids-list{grid-template-columns:1fr}}@media(max-width:768px){.vendor-bids{padding:0}.page-header h1{font-size:1.5rem}.quick-stats{grid-template-columns:repeat(2,1fr);gap:.75rem}.stat-card{padding:1rem}.stat-card .stat-icon{font-size:2rem}.stat-info .stat-value{font-size:1.5rem}.filter-row{grid-template-columns:1fr}.clear-filters-btn{width:100%}.bids-list{grid-template-columns:1fr;gap:24px}.bid-card-figma{height:auto;min-height:202px}.bid-card-top-left{right:100px}.bid-card-top-right{flex-direction:column;gap:8px;align-items:flex-end}.bid-action-btn{font-size:12px;padding:6px 8px}.bid-card-dates{flex-direction:column;align-items:flex-start;gap:8px}.bid-date-item{width:100%;justify-content:space-between}}.address-card{background:var(--card-bg, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1rem;margin-bottom:.75rem;transition:all .2s ease}.address-card:hover{box-shadow:0 2px 4px #0000000d;border-color:var(--primary-color, #3b82f6)}.address-card.primary{border-left:4px solid var(--primary-color, #3b82f6);background:linear-gradient(to right,rgba(59,130,246,.03),transparent)}.address-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.address-type-section{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.address-type-badge{display:inline-block;padding:.25rem .75rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.address-type-badge.blue{background-color:#3b82f61a;color:#3b82f6;border:1px solid rgba(59,130,246,.3)}.address-type-badge.orange{background-color:#f973161a;color:#f97316;border:1px solid rgba(249,115,22,.3)}.address-type-badge.green{background-color:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.address-type-badge.gray{background-color:#6b72801a;color:#6b7280;border:1px solid rgba(107,114,128,.3)}.primary-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.65rem;font-weight:700;background-color:#3b82f626;color:#2563eb;border:1px solid rgba(59,130,246,.4)}.address-actions{display:flex;gap:.5rem;align-items:center}.btn-set-primary{padding:.375rem .75rem;border:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, #fff);border-radius:4px;font-size:.75rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.btn-set-primary:hover{background:var(--primary-color, #3b82f6);color:#fff;border-color:var(--primary-color, #3b82f6)}.btn-icon{background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.25rem;opacity:.7;transition:all .2s ease;line-height:1}.btn-icon:hover{opacity:1;transform:scale(1.1)}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.btn-delete:hover{transform:scale(1.15)}.address-details{display:flex;flex-direction:column;gap:.5rem}.address-line,.address-notes{display:flex;align-items:flex-start;gap:.5rem;font-size:.9375rem}.address-icon,.notes-icon{font-size:1rem;line-height:1.4;flex-shrink:0}.address-text{color:var(--text-primary, #111827);line-height:1.5;flex:1}.notes-text{color:var(--text-secondary, #6b7280);font-size:.875rem;line-height:1.5;font-style:italic;flex:1}@media(max-width:768px){.address-card-header{flex-direction:column;gap:.75rem}.address-actions{width:100%;justify-content:flex-end}.btn-set-primary{flex:1}}.address-manager{margin-top:1.5rem}.address-manager-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border-color, #e5e7eb)}.header-content h3{margin:0 0 .25rem;font-size:1.25rem;font-weight:600;color:var(--text-primary, #111827)}.header-description{margin:0;font-size:.875rem;color:var(--text-secondary, #6b7280)}.btn-add-address{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background-color:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-add-address:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 4px 6px #3b82f633}.btn-icon{font-size:1rem;line-height:1}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center}.spinner{width:40px;height:40px;border:3px solid var(--border-color, #e5e7eb);border-top-color:var(--primary-color, #3b82f6);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p{margin:0;color:var(--text-secondary, #6b7280);font-size:.9375rem}.error-banner{display:flex;align-items:center;gap:.75rem;padding:1rem;background-color:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:6px;margin-bottom:1rem;color:#dc2626}.error-icon{font-size:1.25rem;flex-shrink:0}.error-banner span{flex:1;font-size:.9375rem}.btn-retry{padding:.375rem .75rem;background-color:#fff;border:1px solid rgba(239,68,68,.3);border-radius:4px;color:#dc2626;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-retry:hover{background-color:#ef44441a}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;text-align:center;background:#f9fafb;border:2px dashed var(--border-color, #e5e7eb);border-radius:8px}.empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state h4{margin:0 0 .5rem;font-size:1.125rem;font-weight:600;color:var(--text-primary, #111827)}.empty-state p{margin:0 0 1.5rem;color:var(--text-secondary, #6b7280);font-size:.9375rem}.btn-empty-state{padding:.625rem 1.25rem;background-color:var(--primary-color, #3b82f6);color:#fff;border:none;border-radius:6px;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-empty-state:hover{background-color:#2563eb;transform:translateY(-1px)}@media(max-width:768px){.address-manager-header{flex-direction:column;gap:1rem}.btn-add-address{width:100%;justify-content:center}}.vendor-profile{padding:0;max-width:1280px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.company-overview-card{margin-bottom:2rem}.company-overview{display:flex;align-items:center;gap:1.5rem}.company-icon{font-size:3rem;flex-shrink:0}.company-info{flex:1}.company-info h2{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 .75rem}.company-meta{display:flex;flex-wrap:wrap;gap:1.5rem;font-size:.875rem;color:#666}.meta-item{display:flex;align-items:center;gap:.5rem}.company-status{flex-shrink:0}.status-badge{padding:.5rem 1rem;border-radius:9999px;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:.5px;text-align:center}.status-badge.green{background-color:#dcfce7;color:#166534}.status-badge.yellow{background-color:#fef3c7;color:#92400e}.status-badge.red{background-color:#fee2e2;color:#991b1b}.status-badge.gray{background-color:#f3f4f6;color:#4b5563}.tab-content{margin-top:1.5rem}.tab-content h3{font-size:1.25rem;font-weight:600;color:#1a1a1a;margin:0 0 1.5rem}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:2rem}.info-item{display:flex;flex-direction:column;gap:.5rem}.info-item.full-width{grid-column:1 / -1}.info-item label{font-size:.875rem;font-weight:400;color:#18181b;margin-bottom:.5rem;display:block;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43}.info-value{font-size:.875rem;color:#18181b;padding:.5rem .75rem;background-color:#fff;border:1px solid #e4e4e7;border-radius:.375rem;height:2.5rem;display:flex;align-items:center;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.43}.info-value a{color:#2563eb;text-decoration:none;transition:color .2s}.info-value a:hover{color:#1d4ed8;text-decoration:underline}.info-actions{padding-top:1.5rem;border-top:1px solid #e5e7eb}.info-note{font-size:.875rem;color:#666;font-style:italic;margin:0}.compliance-list{display:flex;flex-direction:column;gap:1rem}.compliance-item{padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.compliance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.compliance-type{font-weight:600;color:#1a1a1a}.compliance-status{padding:.25rem .75rem;border-radius:9999px;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px}.compliance-status.green{background-color:#dcfce7;color:#166534}.compliance-status.yellow{background-color:#fef3c7;color:#92400e}.compliance-status.red{background-color:#fee2e2;color:#991b1b}.compliance-status.gray{background-color:#f3f4f6;color:#4b5563}.compliance-detail{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#666}.detail-label{font-weight:500}.detail-value{color:#1a1a1a}.detail-hint{color:#999;font-size:.8125rem}.empty-content{padding:3rem;text-align:center;color:#666}.empty-content p{margin:0 0 .5rem;font-size:1rem}.empty-hint{font-size:.875rem;color:#999}.loading-state,.empty-state{padding:3rem;text-align:center}.loading-state{color:#666;font-size:1rem}.empty-state h3{font-size:1.5rem;font-weight:600;color:#1a1a1a;margin:0 0 .5rem}.empty-state p{color:#666;font-size:1rem;margin:0}@media(max-width:768px){.vendor-profile{padding:0}.page-header h1{font-size:1.5rem}.company-overview{flex-direction:column;align-items:flex-start}.company-icon{font-size:2.5rem}.company-info h2{font-size:1.25rem}.company-meta{flex-direction:column;gap:.5rem}.info-grid{grid-template-columns:1fr}.org-general-info{flex-direction:column}.org-logo-container{width:100%;display:flex;justify-content:center}.org-logo-placeholder{width:150px;height:150px}.org-fields-grid{grid-template-columns:1fr;height:auto}.org-fields-grid .org-field{height:auto}.org-fields-grid .org-field .org-input,.org-fields-grid .org-field .org-value{height:2.5rem}.org-address-grid{grid-template-columns:1fr}.section-header{flex-direction:column;align-items:flex-start;gap:1rem}.section-header .edit-btn,.section-header .add-btn,.section-header .upload-btn{width:100%}.skills-grid{grid-template-columns:1fr}.document-item{flex-direction:column;align-items:flex-start;grid-template-columns:1fr}.document-item .document-actions{grid-column:1;grid-row:auto;width:100%;margin-top:.75rem}.document-actions{width:100%;flex-direction:row;flex-wrap:wrap}.action-btn{flex:1;min-width:80px}.info-actions{flex-direction:column}.info-actions button{width:100%}.compliance-summary{grid-template-columns:1fr}.compliance-actions{width:100%}.action-link{width:100%;text-align:center}.org-section-header{flex-direction:column;align-items:flex-start;gap:.75rem}.org-section-header h3{font-size:1.125rem}.org-edit-btn{width:100%;justify-content:center}.org-form-actions{flex-direction:column;gap:.75rem}.org-form-actions button{width:100%}.org-cancel-btn,.org-save-btn{width:100%;padding:.75rem 1rem}.org-section-title{font-size:.9375rem}.org-payment-grid{grid-template-columns:1fr}}@media(max-width:480px){.org-logo-placeholder{width:120px;height:120px}.org-section-header h3{font-size:1rem}.org-label{font-size:.8125rem}.org-value,.org-input{font-size:.8125rem;padding:.375rem .625rem}.document-item{padding:1rem}.document-title-row h4{font-size:.9375rem}.document-meta{font-size:.75rem;gap:.5rem}.action-btn{padding:.375rem .625rem;font-size:.8125rem}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a1a1a}.org-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.org-section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a1a1a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.org-edit-btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.5rem;background-color:#2563eb;color:#fff;text-decoration:none}.org-edit-btn:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d;text-decoration:none}.org-form-container{display:flex;flex-direction:column;gap:1.5rem}.org-form-section{display:flex;flex-direction:column;gap:1rem}.org-section-title{font-size:1rem;font-weight:500;color:#18181b;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.org-general-info{display:flex;gap:1.5rem;align-items:flex-start}.org-logo-container{flex-shrink:0}.org-logo-placeholder{width:199px;height:199px;background-color:#f3f4f6;border:1px solid #e4e4e7;border-radius:.375rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;cursor:pointer;transition:all .2s;position:relative;overflow:hidden}.org-logo-placeholder:hover{background-color:#e5e7eb;border-color:#d1d5db}.org-logo-upload-overlay{position:absolute;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;border-radius:.375rem;opacity:0;transition:opacity .2s;z-index:1}.org-logo-placeholder:hover .org-logo-upload-overlay{opacity:1}.org-logo-icon{font-size:2rem;opacity:.5}.org-logo-text{font-size:.75rem;color:#71717a;font-weight:400;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.org-fields-container{flex:1;display:flex;flex-direction:column;gap:1rem;min-width:0}.org-fields-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:.5rem 1rem;align-items:start}.org-field{display:flex;flex-direction:column;justify-content:flex-start}.org-field-full{width:100%}.org-label{font-size:.875rem;font-weight:400;color:#18181b;margin-bottom:.375rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.2;flex-shrink:0}.org-fields-grid .org-field .org-label{margin-bottom:.25rem}.org-input{width:100%;padding:.5rem .75rem;font-size:.875rem;font-weight:400;color:#18181b;background-color:#fff;border:1px solid #e4e4e7;border-radius:.375rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;height:40px}.org-fields-grid .org-field .org-input,.org-field-full .org-input{height:40px}.org-input:focus{outline:none;border-color:#18181b;box-shadow:0 0 0 2px #18181b1a}.org-input::placeholder{color:#71717a}.org-input-disabled,.org-input:disabled{background-color:#f4f4f5;color:#71717a;cursor:not-allowed}.org-field-hint{display:block;font-size:.75rem;color:#71717a;margin-top:.25rem;font-style:italic}.org-input select,select.org-input{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='%2318181B' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem;cursor:pointer}.org-value{width:100%;padding:.5rem .75rem;font-size:.875rem;font-weight:400;color:#18181b;background-color:#fff;border:1px solid #e4e4e7;border-radius:.375rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43;box-sizing:border-box;display:flex;align-items:center;height:40px}.org-fields-grid .org-field .org-value,.org-field-full .org-value{height:40px}.org-value a{color:#2563eb;text-decoration:none}.org-value a:hover{text-decoration:underline}.org-address-grid{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr;gap:1rem}.org-address-grid .org-field .org-input,.org-address-grid .org-field .org-value{height:40px}.org-form-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.org-cancel-btn{padding:.5rem 1rem;background-color:#fff;color:#18181b;border:1px solid #e4e4e7;border-radius:.375rem;font-size:.875rem;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;cursor:pointer;transition:all .2s}.org-cancel-btn:hover{background-color:#fafafa;border-color:#d4d4d8}.org-save-btn{padding:.5rem 1rem;background-color:#18181b;color:#fafafa;border:none;border-radius:.375rem;font-size:.875rem;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;cursor:pointer;transition:background-color .2s}.org-save-btn:hover{background-color:#27272a}.form-section{margin-bottom:1.5rem}.form-section:last-of-type{margin-bottom:0}.section-title{font-size:1rem;font-weight:500;color:#18181b;margin:0 0 1rem;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.general-info-container{display:flex;gap:1.5rem;align-items:flex-start}.general-info-container .company-logo-placeholder{align-self:flex-start}.company-logo-placeholder{flex-shrink:0;width:100px}.logo-upload-area{width:100px;height:100px;background-color:#f3f4f6;border:1px solid #e4e4e7;border-radius:.375rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;cursor:pointer;transition:all .2s}.logo-upload-area:hover{background-color:#e5e7eb;border-color:#d1d5db}.logo-icon{font-size:2rem;opacity:.5}.logo-text{font-size:.75rem;color:#71717a;font-weight:400}.general-info-fields{flex:1;display:flex;flex-direction:column;gap:1rem;min-width:0}.info-grid-two-col{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,1fr);gap:.5rem 1rem;height:100px;align-items:stretch}.info-grid-two-col .info-item{display:flex;flex-direction:column;justify-content:flex-start;min-height:0;height:100%;overflow:hidden}.info-grid-two-col .info-item label{margin-bottom:.25rem;flex-shrink:0;font-size:.875rem;font-weight:400;color:#18181b;line-height:1.2;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;height:auto;display:block}.info-grid-two-col .info-item .info-input,.info-grid-two-col .info-item .info-value{flex:1 1 0;min-height:0;width:100%;font-size:.875rem;line-height:1.43;padding:.5rem .75rem;box-sizing:border-box;display:flex;align-items:center}.info-grid-two-col .info-item .info-input{display:block}.address-info-grid{display:grid;grid-template-columns:2fr 1.5fr 1fr 1fr;gap:1rem}.edit-btn,.add-btn,.save-btn,.cancel-btn,.upload-btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.5rem}.edit-btn{background-color:#18181b;color:#fafafa;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.edit-btn:hover{background-color:#27272a}.add-btn,.upload-btn{background-color:#2563eb;color:#fff}.add-btn:hover,.upload-btn:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.save-btn{background-color:#18181b;color:#fafafa;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.save-btn:hover{background-color:#27272a}.cancel-btn{background-color:#fff;color:#18181b;border:1px solid #e4e4e7;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.cancel-btn:hover{background-color:#fafafa;border-color:#d4d4d8}.info-input{width:100%;padding:.5rem .75rem;font-size:.875rem;border:1px solid #e4e4e7;border-radius:.375rem;transition:all .2s;background-color:#fff;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.43;color:#18181b}.general-info-fields>.info-item.full-width .info-input,.general-info-fields>.info-item.full-width .info-value{height:2.5rem}.address-info-grid .info-input,.address-info-grid .info-value{height:2.5rem}.info-input:focus{outline:none;border-color:#18181b;box-shadow:0 0 0 2px #18181b1a}.info-input::placeholder{color:#71717a}.info-actions{display:flex;justify-content:flex-end;gap:1rem;margin-top:2.5rem;padding-top:2rem;border-top:1px solid #e5e7eb}.skills-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.skills-section-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.skills-add-btn{padding:.625rem 1.25rem;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:inline-flex;align-items:center;gap:.5rem;background-color:#2563eb;color:#fff;text-decoration:none}.skills-add-btn:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d;text-decoration:none}.skills-add-btn .add-icon{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border:1px solid #fafafa;border-radius:50%;font-size:12px;line-height:1}.skills-empty-state{text-align:center;padding:3rem 1rem;color:#71717a}.skills-empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.skills-empty-state p{margin:.5rem 0;font-size:.875rem;color:#71717a}.skills-empty-state .empty-hint{font-size:.8125rem;color:#9ca3af;margin-top:.5rem}.skills-add-first-btn{margin-top:1rem;padding:.5rem 1rem;background-color:#f3f4f6;border:2px dashed #d1d5db;color:#374151;border-radius:.5rem;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s}.skills-add-first-btn:hover{background-color:#e5e7eb;border-color:#9ca3af}.skills-grid{display:flex;flex-direction:row;gap:1rem;width:100%;flex-wrap:wrap;margin:0;padding:0}.skill-card{background:#fff!important;border:1px solid #e4e4e7;border-radius:.5rem;padding:1rem;display:flex;flex-direction:column;flex:1;min-width:0;transition:all .2s;position:relative;box-shadow:none}.skill-card:hover{border-color:#d4d4d8;box-shadow:0 2px 8px #0000001a}.skill-card-content{display:flex;flex-direction:column;flex:1;min-height:0}.skill-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.skill-name{margin:0;font-size:1rem;font-weight:600;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;flex:1}.skill-main-info{display:flex;flex-direction:column;gap:.5rem;flex:1}.skill-experience{margin:0;font-size:.875rem;font-weight:400;color:#18181b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.43}.skill-experience strong{font-weight:600;color:#18181b}.proficiency-badge{padding:.375rem .875rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.proficiency-badge.green{background-color:#dcfce7;color:#166534}.proficiency-badge.blue{background-color:#dbeafe;color:#1e40af}.proficiency-badge.yellow{background-color:#fef3c7;color:#854d0e}.proficiency-badge.gray{background-color:#f3f4f6;color:#4b5563}@media(max-width:1024px)and (min-width:769px){.skills-grid{display:flex;flex-wrap:wrap}.skills-grid .skill-card{flex:1 1 calc(50% - .5rem);min-width:0;max-width:none}}.compliance-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.summary-stat{display:flex;flex-direction:column;align-items:center;padding:1rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem}.stat-value{font-size:2rem;font-weight:700;color:#1a1a1a;margin-bottom:.5rem}.stat-value.green{color:#10b981}.stat-value.yellow{color:#f59e0b}.stat-value.red{color:#ef4444}.stat-label{font-size:.875rem;color:#6b7280;text-align:center}.compliance-icon{width:48px;height:48px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background-color:#f3f4f6;border-radius:50%}.compliance-content{flex:1;min-width:0}.compliance-content h4{margin:0 0 .75rem;font-size:1.125rem;font-weight:600;color:#1a1a1a}.compliance-details{display:flex;flex-direction:column;gap:.5rem}.detail-hint.warning{color:#f59e0b;font-weight:500}.compliance-actions{display:flex;flex-direction:column;gap:.5rem}.action-link{padding:.5rem 1rem;background-color:transparent;color:#2563eb;border:1px solid #2563eb;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.action-link:hover{background-color:#2563eb;color:#fff}.org-payment-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.org-form-container .org-form-section:not(:last-of-type){padding-bottom:2.5rem;border-bottom:1px solid #e5e7eb;margin-bottom:0}.org-value-masked{font-family:Courier New,Monaco,monospace;font-size:.9375rem;letter-spacing:.1em}.org-status-indicator{padding:.375rem .875rem;border-radius:9999px;font-size:.875rem;font-weight:500;background-color:#dcfce7;color:#166534;display:inline-flex;align-items:center;gap:.25rem}.org-info-note{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.org-info-note p{margin:0;font-size:.875rem;color:#71717a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}.org-info-note strong{font-weight:600;color:#18181b}.info-value.masked{font-family:Courier New,Monaco,monospace;font-size:.9375rem;letter-spacing:.1em}.status-indicator{padding:.375rem .875rem;border-radius:9999px;font-size:.875rem;font-weight:500}.status-indicator.green{background-color:#dcfce7;color:#166534}.documents-list{display:flex;flex-direction:column;gap:1rem}.document-item{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:.75rem;padding:1.25rem;background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;transition:all .2s;position:relative}.document-item .document-title-row{grid-column:1;grid-row:1}.document-item .document-info{grid-column:1;grid-row:2}.document-item .document-actions{grid-column:2;grid-row:1 / 3;align-self:center}.document-item:hover{border-color:#2563eb;box-shadow:0 2px 8px #2563eb1a}.document-action-icons{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.5rem;z-index:1}.icon-btn{background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:.4rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;min-width:32px;min-height:32px}.icon-btn:hover{background:#f5f5f5;box-shadow:0 1px 4px #0000001a}.icon-btn.edit-icon:hover,.icon-btn.download-icon:hover{background:#e3f2fd;border-color:#1976d2}.icon-btn.delete-icon:hover{background:#ffebee;border-color:#d32f2f}.document-title-row{display:flex;align-items:center;gap:.75rem}.document-title-row h4{margin:0;font-size:1.1rem;font-weight:600;color:#1a1a1a}.document-icon{flex-shrink:0;display:flex;align-items:center}.document-info{flex:1;min-width:0}.document-info h4{margin:0 0 .5rem;font-size:1rem;font-weight:600;color:#1a1a1a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.875rem;color:#6b7280}.meta-item{display:flex;align-items:center;gap:.25rem}.document-actions{display:flex;gap:.5rem;flex-shrink:0}.document-compliance-actions{grid-column:1 / -1;margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e5e7eb}.document-compliance-actions .action-btn{width:auto;min-width:auto;flex:none;display:inline-flex;align-items:center;gap:.375rem}.action-btn{padding:.5rem .875rem;background-color:transparent;border:1px solid #d1d5db;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s;white-space:nowrap}.action-btn.view{color:#2563eb;border-color:#2563eb}.action-btn.view:hover{background-color:#2563eb;color:#fff}.action-btn.download{color:#10b981;border-color:#10b981}.action-btn.download:hover{background-color:#10b981;color:#fff}.action-btn.delete{color:#ef4444;border-color:#ef4444}.action-btn.delete:hover:not(:disabled){background-color:#ef4444;color:#fff}.action-btn.delete:disabled{color:#9ca3af;border-color:#d1d5db;cursor:not-allowed;opacity:.6}.empty-icon{font-size:3rem;margin-bottom:1rem;text-align:center}.debug-info{margin:1rem 0;padding:1rem;background-color:#fef3c7;border:1px solid #fde047;border-radius:.375rem;font-size:.875rem;color:#854d0e}.debug-info code{background-color:#0000001a;padding:.25rem .5rem;border-radius:.25rem;font-family:Courier New,Monaco,monospace;font-weight:600}.empty-hint-list{text-align:left;margin:1rem auto;max-width:600px;padding-left:2rem;font-size:.875rem;color:#666}.empty-hint-list li{margin:.5rem 0}.modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.75rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{margin:0;font-size:1.5rem;font-weight:600;color:#1a1a1a}.modal-close{background:none;border:none;font-size:2rem;color:#6b7280;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s}.modal-close:hover{background-color:#f3f4f6;color:#1a1a1a}.modal-body{padding:1.5rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:#374151;margin-bottom:.5rem}.form-group label strong{color:#2563eb}.form-hint{font-size:.8125rem;color:#6b7280;margin-top:.5rem;line-height:1.4}.modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.5rem;border-top:1px solid #e5e7eb;background-color:#f9fafb}.experience-slider{width:100%;height:8px;border-radius:4px;background:linear-gradient(to right,#fbbf24,#3b82f6,#10b981);outline:none;-webkit-appearance:none;appearance:none;cursor:pointer}.experience-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid #2563eb;cursor:pointer;box-shadow:0 2px 8px #0003;transition:all .2s}.experience-slider::-webkit-slider-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #2563eb66}.experience-slider::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:#fff;border:3px solid #2563eb;cursor:pointer;box-shadow:0 2px 8px #0003;transition:all .2s}.experience-slider::-moz-range-thumb:hover{transform:scale(1.2);box-shadow:0 4px 12px #2563eb66}.slider-labels{display:flex;justify-content:space-between;margin-top:.5rem;font-size:.75rem;color:#6b7280;padding:0 .25rem}.skill-actions{display:flex;gap:.25rem;justify-content:flex-end;flex-shrink:0;margin-left:.5rem}.skill-actions button{background:none;border:none;padding:.25rem;cursor:pointer;border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:background .2s;width:28px;height:28px}.skill-edit-btn:hover{background:#f4f4f5}.skill-delete-btn:hover{background:#fee2e2}.skill-delete-btn svg{width:22px;height:22px}.skills-info-note{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}.skills-info-note p{margin:0;font-size:.875rem;color:#71717a;font-style:italic;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.skills-info-note strong{font-weight:600;color:#18181b}.action-button{padding:.75rem 1.5rem;background-color:#2563eb;color:#fff;border:none;border-radius:.5rem;font-size:.9375rem;font-weight:500;cursor:pointer;transition:all .2s}.action-button:hover{background-color:#1d4ed8;transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.upload-modal{max-width:600px}.file-input{width:100%;padding:.75rem;border:2px dashed #cbd5e0;border-radius:.5rem;background-color:#f7fafc;cursor:pointer;transition:all .2s}.file-input:hover{border-color:#2563eb;background-color:#eff6ff}.selected-file{margin-top:.5rem;padding:.75rem;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:.5rem;color:#1e40af;font-size:.875rem}.radio-group{display:flex;gap:1rem;margin-top:.5rem}.radio-option{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:2px solid #e2e8f0;border-radius:.5rem;cursor:pointer;transition:all .2s;flex:1}.radio-option:hover{border-color:#2563eb;background-color:#f8fafc}.radio-option input[type=radio]{cursor:pointer}.radio-option input[type=radio]:checked+span{color:#2563eb;font-weight:600}.radio-option:has(input:checked){border-color:#2563eb;background-color:#eff6ff}.compliance-fields{margin-top:1.5rem;padding:1.5rem;background-color:#f8fafc;border-radius:.5rem;border:1px solid #e2e8f0}.form-hint{display:block;margin-top:.25rem;font-size:.75rem;color:#64748b}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;margin-bottom:.75rem}.checkbox-label input[type=checkbox]{width:1.125rem;height:1.125rem;cursor:pointer}.checkbox-label span{-webkit-user-select:none;user-select:none}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;white-space:nowrap}.status-badge.compliant{background-color:#d1fae5;color:#065f46;border:1px solid #10b981}.status-badge.grace-period{background-color:#fef3c7;color:#92400e;border:1px solid #f59e0b}.status-badge.expired{background-color:#fee2e2;color:#991b1b;border:1px solid #ef4444}.status-badge.no-expiration{background-color:#e0e7ff;color:#3730a3;border:1px solid #6366f1}.document-item-with-status{display:flex;align-items:center;justify-content:space-between;gap:1rem}.document-info{display:flex;align-items:center;gap:.75rem;flex:1}.document-status-container{display:flex;align-items:center;gap:.5rem}@media(max-width:768px){.modal-content{max-width:100%;border-radius:0;max-height:100vh}.skills-section-header{flex-direction:column;align-items:flex-start;gap:1rem}.skills-add-btn{width:100%;justify-content:center}.skills-grid{flex-direction:column;gap:1rem}.skill-card{width:100%;min-width:0}.skill-header-row{flex-wrap:wrap;gap:.5rem}.skill-name{font-size:.9375rem;flex:1;min-width:0}.skill-actions{gap:.25rem}.skill-actions button{width:32px;height:32px}.skill-experience{font-size:.8125rem}.radio-group{flex-direction:column}.radio-option{width:100%}.skills-section-header h3{font-size:1rem}.skills-add-btn{font-size:.8125rem;padding:.5rem .875rem}.skill-card{padding:.875rem}.skill-name{font-size:.875rem}.skill-experience{font-size:.75rem}.skill-actions button{width:28px;height:28px}}.rejection-banner{display:flex;gap:1rem;padding:1.25rem;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:.5rem;margin-bottom:1.5rem}.rejection-banner-icon{font-size:1.5rem;flex-shrink:0}.rejection-banner-content{flex:1}.rejection-banner-content h3{margin:0 0 .5rem;font-size:1.1rem;font-weight:600;color:#b91c1c}.rejection-banner-content p{margin:0 0 1rem;font-size:.95rem;color:#7f1d1d;line-height:1.5}.rejection-reason,.rejection-notes{padding:.75rem 1rem;background:#ffffffb3;border-radius:.375rem;margin-top:.75rem;font-size:.9rem;color:#374151;line-height:1.5}.rejection-reason strong,.rejection-notes strong{color:#991b1b}.vendor-locations{max-width:1400px;margin:0 auto;padding:2rem}.vendor-locations-loading{display:flex;justify-content:center;align-items:center;min-height:400px;font-size:1.1rem;color:#666}.locations-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e0e0e0}.locations-header h2{margin:0 0 .5rem;color:#333;font-size:1.75rem}.header-description{margin:0;color:#666;font-size:.95rem;max-width:600px;line-height:1.5}.add-rep-button{white-space:nowrap;padding:.75rem 1.5rem;font-size:1rem;font-weight:500}.error-banner{background-color:#fee;border:1px solid #fcc;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;color:#c33}.error-dismiss{background:none;border:none;font-size:1.5rem;color:#c33;cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px}.error-dismiss:hover{background-color:#fcc}.location-group{margin-bottom:2.5rem}.location-group-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:8px 8px 0 0;border-bottom:2px solid #dee2e6}.location-info{display:flex;align-items:center;gap:1rem}.location-group-header h3{margin:0;color:#2c3e50;font-size:1.25rem}.site-code{background-color:#6c757d;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.region{background-color:#0d6efd;color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.contact-count{color:#6c757d;font-size:.9rem;font-weight:500}.contacts-list{border:1px solid #dee2e6;border-top:none;border-radius:0 0 8px 8px;overflow:hidden}.contact-card{padding:1.5rem;background:#fff;border-bottom:1px solid #e9ecef;transition:background-color .2s}.contact-card:last-child{border-bottom:none}.contact-card:hover{background-color:#f8f9fa}.contact-card.primary-contact{background-color:#fffbeb;border-left:3px solid #f59e0b}.contact-card.primary-contact:hover{background-color:#fef3c7}.primary-star{color:#f59e0b;font-size:1rem;margin-right:.25rem}.contact-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.contact-info h4{margin:0 0 .25rem;color:#2c3e50;font-size:1.15rem;display:flex;align-items:center;gap:.75rem}.job-title{margin:0;color:#6c757d;font-size:.9rem;font-style:italic}.contact-actions{display:flex;gap:.5rem}.assign-location-button{font-size:.9rem;padding:.5rem 1rem}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-badge.status-approved,.status-badge.status-active{background-color:#d4edda;color:#155724}.status-badge.status-requested{background-color:#fff3cd;color:#856404}.status-badge.status-rejected{background-color:#f8d7da;color:#721c24}.status-badge.status-inactive{background-color:#e2e3e5;color:#383d41}.contact-details{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:.75rem}.contact-detail{display:flex;align-items:center;gap:.5rem;font-size:.95rem}.detail-label{font-weight:500;color:#6c757d}.contact-detail a{color:#0d6efd;text-decoration:none}.contact-detail a:hover{text-decoration:underline}.contact-notes,.assignment-notes{margin-top:1rem;padding:.75rem;background-color:#f8f9fa;border-left:3px solid #0d6efd;border-radius:4px;font-size:.9rem;color:#495057}.assignment-notes{border-left-color:#6c757d}.no-contacts{text-align:center;padding:4rem 2rem;color:#6c757d}.no-contacts p{margin:.5rem 0;font-size:1.1rem}.hint-text{color:#adb5bd;font-size:.95rem}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:600px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.modal-content h3{margin:0 0 1.5rem;color:#2c3e50;font-size:1.5rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group.full-width{grid-column:1 / -1}.form-group label{margin-bottom:.5rem;font-weight:500;color:#495057;font-size:.95rem}.form-group input,.form-group select,.form-group textarea{padding:.625rem .875rem;border:1px solid #ced4da;border-radius:6px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#0d6efd;box-shadow:0 0 0 .2rem #0d6efd40}.form-group textarea{resize:vertical;font-family:inherit}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e9ecef}.btn-primary,.btn-secondary,.btn-danger{padding:.625rem 1.25rem;border:none;border-radius:6px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-primary{background-color:#0d6efd;color:#fff}.btn-primary:hover:not(:disabled){background-color:#0b5ed7;transform:translateY(-1px);box-shadow:0 4px 8px #0d6efd4d}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover:not(:disabled){background-color:#5c636a;transform:translateY(-1px);box-shadow:0 4px 8px #6c757d4d}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover:not(:disabled){background-color:#bb2d3b;transform:translateY(-1px);box-shadow:0 4px 8px #dc35454d}.btn-primary:disabled,.btn-secondary:disabled,.btn-danger:disabled{opacity:.6;cursor:not-allowed;transform:none}@media(max-width:768px){.vendor-locations{padding:1rem}.locations-header{flex-direction:column;gap:1rem}.add-rep-button{width:100%}.location-group-header{flex-direction:column;align-items:flex-start;gap:.5rem}.location-info{flex-wrap:wrap}.contact-header{flex-direction:column;gap:1rem}.contact-actions{width:100%;flex-direction:column}.contact-actions button{width:100%}.form-grid{grid-template-columns:1fr}.modal-content{padding:1.5rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.vendor-location-detail{max-width:800px;margin:0 auto;padding:2rem}.loading-state,.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:1rem;color:#666}.error-state p{color:#dc3545}.back-button{display:inline-flex;align-items:center;gap:.5rem;background:none;border:none;color:#6c757d;font-size:.95rem;cursor:pointer;padding:.5rem 0;margin-bottom:1rem;transition:color .2s}.back-button:hover{color:#495057}.location-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #e0e0e0}.location-title-row{display:flex;align-items:center;gap:.75rem}.location-header h1{margin:0;font-size:1.75rem;color:#2c3e50}.store-number-badge{background-color:#6c757d;color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:1rem;font-weight:600}.location-info-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.info-section{padding:1rem 0;border-bottom:1px solid #f0f0f0}.info-section:first-child{padding-top:0}.info-section:last-child{padding-bottom:0;border-bottom:none}.info-section h3{margin:0 0 .75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;color:#6c757d;font-weight:600}.info-row{display:flex;align-items:center;gap:.75rem;padding:.375rem 0;color:#495057;font-size:.95rem}.info-link{color:#0d6efd;text-decoration:none;transition:color .2s}.info-link:hover{color:#0b5ed7;text-decoration:underline}.hierarchy-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.hierarchy-item{display:flex;flex-direction:column;gap:.25rem}.hierarchy-label{font-size:.8rem;color:#6c757d;text-transform:uppercase;letter-spacing:.3px}.hierarchy-value{font-size:.95rem;color:#2c3e50;font-weight:500}.location-actions{display:flex;justify-content:center;padding-top:1rem}.view-rfps-button{display:inline-flex;align-items:center;justify-content:center;padding:.875rem 2rem;font-size:1rem;font-weight:600;text-decoration:none}.btn-primary{background-color:#0d6efd;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.btn-primary:hover{background-color:#0b5ed7;transform:translateY(-1px);box-shadow:0 4px 8px #0d6efd4d}.btn-secondary{background-color:#6c757d;color:#fff;border:none;border-radius:8px;padding:.625rem 1.25rem;cursor:pointer;transition:all .2s}.btn-secondary:hover{background-color:#5c636a}@media(max-width:768px){.vendor-location-detail{padding:1rem}.location-header{flex-direction:column;align-items:flex-start;gap:1rem}.location-header h1{font-size:1.5rem}.hierarchy-grid{grid-template-columns:1fr 1fr}}.users-list-page{padding:0;max-width:1280px;margin:0 auto}.page-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.page-header h1{font-family:Inter,sans-serif;font-size:30px;font-weight:700;line-height:36px;color:#18181b;margin:0 0 8px}.page-subtitle{font-size:1rem;color:#666;margin:0}.filters{display:flex;gap:16px;margin-bottom:24px;align-items:center}.filters input[type=text]{flex:1;max-width:400px;padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px}.filters input[type=text]:focus{outline:none;border-color:#e4e4e7;box-shadow:0 0 0 3px #2563eb1a}.filters label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.filters input[type=checkbox]{cursor:pointer}.users-table{width:100%;border-collapse:collapse;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.users-table thead{background:#f9fafb}.users-table th{padding:12px 16px;text-align:left;font-weight:600;font-size:14px;color:#374151;border-bottom:1px solid #e5e7eb}.users-table td{padding:12px 16px;border-bottom:1px solid #e5e7eb;font-size:14px;color:#111827}.users-table tbody tr:hover{background:#f9fafb}.users-table select{padding:6px 10px;border:1px solid #d1d5db;border-radius:4px;font-size:14px;min-width:200px}.users-table button{padding:6px 16px;border-radius:4px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.users-table button:not(:disabled){background:#2563eb;color:#fff;border:none}.users-table button:not(:disabled):hover{background:#1d4ed8}.users-table button:disabled{background:#e5e7eb;color:#9ca3af;border:none;cursor:not-allowed}.error{background:#fee2e2;color:#991b1b;padding:12px;border-radius:6px;margin-bottom:16px}.contacts-admin-list-container{padding:2rem;max-width:1400px;margin:0 auto}.contacts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.create-button{background-color:#007bff;color:#fff;padding:.75rem 1.5rem;border-radius:6px;text-decoration:none;font-weight:500;transition:background-color .2s}.create-button:hover{background-color:#0056b3}.contacts-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.search-box{flex:2;min-width:250px}.search-input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem}.filter-box{flex:1;min-width:150px}.filter-select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;background-color:#fff}.checkbox-filter{display:flex;align-items:center}.checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}.contacts-stats{display:flex;gap:1.5rem;margin-bottom:2rem}.stat-item{display:flex;flex-direction:column;padding:1rem;background-color:#f8f9fa;border-radius:6px;min-width:120px}.stat-value{font-size:2rem;font-weight:700;color:#007bff}.stat-label{font-size:.85rem;color:#666;margin-top:.25rem}.contacts-table-container{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;overflow-x:auto}.contacts-table{width:100%;border-collapse:collapse}.contacts-table thead{background-color:#f8f9fa}.contacts-table th{padding:1rem;text-align:left;font-weight:600;color:#495057;border-bottom:2px solid #dee2e6;white-space:nowrap}.contacts-table td{padding:1rem;border-bottom:1px solid #dee2e6}.contacts-table tbody tr:hover{background-color:#f8f9fa}.contacts-table tbody tr.deleted-row{opacity:.6;background-color:#fff3cd}.contact-name-link{color:#007bff;text-decoration:none;font-weight:500}.contact-name-link:hover{text-decoration:underline}.contact-type-badge{display:inline-block;padding:.25rem .75rem;background-color:#e7f3ff;color:#0056b3;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:500}.status-badge.active{background-color:#d4edda;color:#155724}.status-badge.deleted{background-color:#f8d7da;color:#721c24}.actions-cell{display:flex;gap:.5rem;white-space:nowrap}.action-button{padding:.4rem .75rem;border-radius:4px;border:none;cursor:pointer;font-size:.85rem;font-weight:500;transition:all .2s}.action-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 2px 4px #0000001a}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-button.change-type{background-color:#007bff;color:#fff}.action-button.change-type:hover:not(:disabled){background-color:#0056b3}.action-button.reactivate{background-color:#28a745;color:#fff}.action-button.reactivate:hover{background-color:#218838}.action-button.delete{background-color:#dc3545;color:#fff}.action-button.delete:hover{background-color:#c82333}.empty-state p{color:#666;font-size:1.1rem;margin-bottom:1rem}.clear-search{background-color:#007bff;color:#fff;padding:.5rem 1rem;border-radius:4px;border:none;cursor:pointer;font-size:.9rem}.clear-search:hover{background-color:#0056b3}.modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background-color:#fff;padding:2rem;border-radius:8px;box-shadow:0 4px 6px #0000001a;max-width:500px;width:90%}.modal-content h3{margin:0 0 1rem;color:#1a1a1a}.modal-content p{margin:0 0 1.5rem;color:#666}.form-field{margin-bottom:1.5rem}.form-field label{display:block;margin-bottom:.5rem;font-weight:500;color:#495057}.contact-type-select{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;font-size:.95rem;background-color:#fff}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.cancel-button,.confirm-button{padding:.75rem 1.5rem;border-radius:6px;border:none;cursor:pointer;font-size:.95rem;font-weight:500;transition:background-color .2s}.cancel-button{background-color:#6c757d;color:#fff}.cancel-button:hover:not(:disabled){background-color:#5a6268}.confirm-button{background-color:#007bff;color:#fff}.confirm-button:hover:not(:disabled){background-color:#0056b3}.confirm-button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:768px){.contacts-header{flex-direction:column;align-items:flex-start;gap:1rem}.contacts-filters{flex-direction:column}.contacts-stats{flex-wrap:wrap}.contacts-table-container{overflow-x:auto}.actions-cell{flex-direction:column}}.contact-types-list-container{padding:2rem;max-width:1200px;margin:0 auto}.contact-types-header{margin-bottom:2rem}.header-content h1{margin:0 0 .5rem;color:#1a1a1a}.subtitle{margin:0;color:#666;font-size:.95rem}.contact-types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.contact-type-card{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.contact-type-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #00000026}.card-header{background-color:#007bff;color:#fff;padding:1.5rem}.card-header h3{margin:0;font-size:1.25rem}.card-body{padding:1.5rem}.permissions-list{display:flex;flex-direction:column;gap:.75rem}.permission-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #e9ecef}.permission-item:last-child{border-bottom:none}.permission-label{font-weight:500;color:#495057}.permission-value{font-weight:600;padding:.25rem .75rem;border-radius:12px;font-size:.9rem}.permission-value.yes{background-color:#d4edda;color:#155724}.permission-value.no{background-color:#f8d7da;color:#721c24}.card-footer{padding:1rem 1.5rem;background-color:#f8f9fa;border-top:1px solid #dee2e6}.view-contacts-link{color:#007bff;text-decoration:none;font-weight:500;font-size:.9rem}.view-contacts-link:hover{text-decoration:underline}.empty-state{text-align:center;padding:3rem;background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.empty-state p{color:#666;font-size:1.1rem}.info-box{background-color:#e7f3ff;border-left:4px solid #007bff;padding:1.5rem;border-radius:4px;margin-top:2rem}.info-box h3{margin:0 0 1rem;color:#0056b3;font-size:1.1rem}.info-box p{margin:0 0 .75rem;color:#495057;line-height:1.6}.info-box p:last-child{margin-bottom:0}.info-box a{color:#007bff;font-weight:500}.info-box a:hover{text-decoration:underline}.loading,.error-container{text-align:center;padding:3rem}.error{color:#dc3545;margin-bottom:1rem}.retry-button{background-color:#007bff;color:#fff;padding:.75rem 1.5rem;border-radius:6px;border:none;cursor:pointer;font-size:.95rem}.retry-button:hover{background-color:#0056b3}@media(max-width:768px){.contact-types-grid{grid-template-columns:1fr}}.districts-manager{padding:24px}.districts-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.districts-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.districts-manager .subtitle{margin:0;color:#71717a;font-size:14px}.districts-manager .header-actions{display:flex;align-items:center;gap:1rem}.districts-table-container{overflow-x:auto;background:#fff;border-radius:12px;border:1px solid #e4e4e7;margin-top:24px}.districts-table{width:100%;border-collapse:collapse;font-size:14px}.districts-table thead{background:#f4f4f5;border-bottom:2px solid #e4e4e7}.districts-table th{padding:12px 16px;text-align:left;font-weight:600;color:#71717a;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.districts-table td{padding:14px 16px;border-bottom:1px solid #e4e4e7;vertical-align:middle}.districts-table tbody tr:hover{background:#f4f4f5}.districts-table .name-cell{font-weight:500;color:#18181b}.districts-table .location-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#f0fdf4;color:#166534;border-radius:6px;font-size:13px;font-weight:500}.districts-table .notes-cell{color:#71717a;max-width:200px}.districts-table .action-buttons{display:flex;gap:8px}.district-stats{display:flex;gap:16px;margin-bottom:24px}.districts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.district-card{background:#fff;border:1px solid #e4e4e7;border-radius:8px;overflow:hidden;transition:box-shadow .15s}.district-card:hover{box-shadow:0 2px 8px #00000014}.district-card.expanded{border-color:#3b82f6}.district-card-header{display:flex;align-items:center;gap:12px;padding:16px;cursor:pointer}.district-card-header:hover{background:#f9fafb}.district-info{flex:1;min-width:0}.district-info h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#18181b}.location-count{display:flex;align-items:center;gap:4px;font-size:13px;color:#71717a}.district-actions{display:flex;gap:4px}.district-notes{padding:0 16px 12px 44px;font-size:13px;color:#71717a}.district-locations{padding:16px;background:#f9fafb;border-top:1px solid #e4e4e7}.district-locations h5{margin:0 0 12px;font-size:13px;font-weight:600;color:#18181b}.district-locations ul{list-style:none;padding:0;margin:0}.district-locations li{padding:6px 0;border-bottom:1px solid #e4e4e7}.district-locations li:last-child{border-bottom:none}.district-locations a{color:#3b82f6;text-decoration:none;font-size:14px}.district-locations a:hover{text-decoration:underline}.district-locations .view-all{padding-top:8px}.district-locations .view-all a{font-weight:500}.district-form .form-group{margin-bottom:16px}.district-form .form-group label{display:block;font-size:13px;font-weight:500;color:#18181b;margin-bottom:6px}.district-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;font-family:inherit;box-sizing:border-box}.district-form .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.district-form textarea.form-input{resize:vertical;min-height:80px}.regions-manager{padding:24px}.regions-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.regions-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.regions-manager .subtitle{margin:0;color:#71717a;font-size:14px}.region-stats{display:flex;gap:16px;margin-bottom:24px}.regions-section{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.regions-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h3{margin:0}.inactive-section{background:#fafafa}.regions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.region-card{background:#f9fafb;border:2px solid #e4e4e7;border-radius:8px;padding:12px;cursor:pointer;transition:all .15s}.region-card:hover{border-color:#3b82f6;transform:translateY(-1px)}.region-card.selected{border-color:#3b82f6;background:#eff6ff}.region-card.has-locations{background:#fff}.region-card.inactive{opacity:.6}.region-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.region-abbrev{font-size:18px;font-weight:700;color:#18181b}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.active{background:#22c55e}.status-dot.inactive{background:#9ca3af}.region-name{font-size:13px;color:#374151;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.region-locations{font-size:12px;color:#71717a;display:flex;align-items:center;gap:4px}.region-details-panel{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.details-header h3{margin:0;display:flex;align-items:center;gap:12px}.region-badge{font-size:16px;font-weight:600;color:#18181b}.active-badge,.inactive-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.active-badge{background:#dcfce7;color:#166534}.inactive-badge{background:#f3f4f6;color:#374151}.locations-list{border-left:1px solid #e4e4e7;padding-left:24px}.locations-list h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.locations-list ul{list-style:none;padding:0;margin:0}.locations-list li{padding:6px 0;border-bottom:1px solid #f4f4f5}.locations-list li:last-child{border-bottom:none}.locations-list a{color:#3b82f6;text-decoration:none;font-size:14px}.locations-list a:hover{text-decoration:underline}.locations-list .view-all{padding-top:8px}.locations-list .view-all a{font-weight:500}.no-locations{color:#71717a;font-size:14px;font-style:italic}.region-form .form-row{display:flex;gap:16px;margin-bottom:16px}.region-form .flex-1{flex:1}.region-form .flex-2{flex:2}.region-form .form-group{margin-bottom:16px}.region-form .form-group label{display:block;font-size:13px;font-weight:500;color:#18181b;margin-bottom:6px}.region-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .15s;box-sizing:border-box}.region-form .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.region-form textarea.form-input{resize:vertical;min-height:80px}@media(max-width:768px){.region-stats{flex-direction:column}.regions-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.details-content{grid-template-columns:1fr}.locations-list{border-left:none;border-top:1px solid #e4e4e7;padding-left:0;padding-top:24px}.region-form .form-row{flex-direction:column}}.areas-manager{padding:24px}.areas-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.areas-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.areas-manager .subtitle{margin:0;color:#71717a;font-size:14px}.areas-manager .header-actions{display:flex;align-items:center;gap:1rem}.areas-table-container{overflow-x:auto;background:#fff;border-radius:12px;border:1px solid #e4e4e7;margin-top:24px}.areas-table{width:100%;border-collapse:collapse;font-size:14px}.areas-table thead{background:#f4f4f5;border-bottom:2px solid #e4e4e7}.areas-table th{padding:12px 16px;text-align:left;font-weight:600;color:#71717a;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.areas-table td{padding:14px 16px;border-bottom:1px solid #e4e4e7;vertical-align:middle}.areas-table tbody tr:hover{background:#f4f4f5}.areas-table .name-cell{font-weight:500;color:#18181b}.areas-table .location-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#f0fdf4;color:#166534;border-radius:6px;font-size:13px;font-weight:500}.areas-table .coverage-cell{display:flex;align-items:center;gap:8px}.areas-table .coverage-bar-inline{width:60px;height:6px;background:#e4e4e7;border-radius:3px;overflow:hidden}.areas-table .coverage-bar-inline .coverage-fill{height:100%;background:#3b82f6;border-radius:3px}.areas-table .notes-cell{color:#71717a;max-width:150px}.areas-table .action-buttons{display:flex;gap:8px}.area-stats{display:flex;gap:16px;margin-bottom:24px}.areas-tree{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.areas-tree h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.tree-container{display:flex;flex-direction:column;gap:2px}.tree-item{border:1px solid #e4e4e7;border-radius:6px;overflow:hidden}.tree-item.expanded{border-color:#3b82f6}.tree-item.unassigned{background:#fef3c7}.tree-item-header{display:flex;align-items:center;gap:12px;padding:12px 16px;cursor:pointer;transition:background-color .15s}.tree-item-header:hover{background:#f9fafb}.expand-icon{color:#71717a;flex-shrink:0}.tree-item-info{display:flex;align-items:center;gap:12px;min-width:160px}.area-name{font-weight:600;font-size:14px;color:#18181b}.area-count{display:flex;align-items:center;gap:4px;font-size:13px;color:#71717a}.coverage-bar-container{flex:1;display:flex;align-items:center;gap:12px;max-width:300px}.coverage-bar{flex:1;height:8px;background:#e4e4e7;border-radius:4px;overflow:hidden}.coverage-fill{height:100%;background:#3b82f6;border-radius:4px;transition:width .3s ease}.coverage-percent{font-size:13px;font-weight:600;color:#18181b;min-width:40px;text-align:right}.tree-item-actions{display:flex;gap:4px}.tree-item-details{padding:16px;background:#f9fafb;border-top:1px solid #e4e4e7}.area-notes{font-size:13px;color:#71717a;margin-bottom:16px}.area-notes label{font-weight:500;color:#18181b}.area-locations h5{margin:0 0 12px;font-size:13px;font-weight:600;color:#18181b}.area-locations ul{list-style:none;padding:0;margin:0}.area-locations li{padding:6px 0;border-bottom:1px solid #e4e4e7}.area-locations li:last-child{border-bottom:none}.area-locations a{color:#3b82f6;text-decoration:none;font-size:14px}.area-locations a:hover{text-decoration:underline}.location-city{color:#71717a;font-size:13px}.area-locations .view-all{padding-top:8px}.area-locations .view-all a{font-weight:500}.no-locations{color:#71717a;font-size:14px;font-style:italic;margin:0}.empty-state{text-align:center;padding:48px 24px;background:#fff;border:1px solid #e4e4e7;border-radius:8px}.area-form .form-group{margin-bottom:16px}.area-form .form-group label{display:block;font-size:13px;font-weight:500;color:#18181b;margin-bottom:6px}.area-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;font-family:inherit;box-sizing:border-box}.area-form .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.area-form textarea.form-input{resize:vertical;min-height:80px}.btn{padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:6px}.btn-icon{padding:8px;background:transparent;border:none;cursor:pointer;border-radius:4px;color:#71717a;display:inline-flex}@media(max-width:768px){.tree-item-header{flex-wrap:wrap}.coverage-bar-container{width:100%;max-width:none;margin-top:8px}}.vendor-statuses-manager{padding:24px}.vendor-statuses-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.vendor-statuses-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.vendor-statuses-manager .subtitle{margin:0;color:#71717a;font-size:14px}.pipeline-funnel{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.funnel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.funnel-header h3{margin:0;font-size:16px;font-weight:600;color:#18181b}.total-count{font-size:13px;color:#71717a}.funnel-flow{display:flex;align-items:center;gap:8px;padding:16px 0}.funnel-stage{display:flex;align-items:center;gap:8px;flex:1}.funnel-card{flex:1;padding:16px;border-radius:8px;border:2px solid;cursor:pointer;transition:transform .15s,box-shadow .15s}.funnel-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.funnel-card.expanded{box-shadow:0 0 0 3px #3b82f64d}.funnel-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.funnel-name{font-weight:600;font-size:14px}.funnel-count{font-size:20px;font-weight:700}.funnel-bar{height:8px;background:#0000001a;border-radius:4px;overflow:hidden;margin-bottom:6px}.funnel-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.funnel-percentage{font-size:12px;text-align:right}.funnel-arrow{color:#71717a;flex-shrink:0}.terminal-states{margin-top:20px;padding-top:20px;border-top:1px dashed #e4e4e7}.terminal-label{display:flex;align-items:center;gap:6px;font-size:13px;color:#71717a;margin-bottom:12px}.terminal-cards{display:flex;gap:12px}.terminal-card{padding:12px 16px;border-radius:6px;border:2px solid;cursor:pointer;display:flex;align-items:center;gap:12px;transition:transform .15s,box-shadow .15s}.terminal-card:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.terminal-card.expanded{box-shadow:0 0 0 3px #3b82f64d}.terminal-name{font-weight:500;font-size:13px}.terminal-count{font-weight:700;font-size:16px}.vendors-list{border-left:1px solid #e4e4e7;padding-left:24px}.vendors-list h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.vendors-list ul{list-style:none;padding:0;margin:0}.vendors-list li{padding:6px 0;border-bottom:1px solid #f4f4f5}.vendors-list li:last-child{border-bottom:none}.vendors-list a{color:#3b82f6;text-decoration:none;font-size:14px}.vendors-list a:hover{text-decoration:underline}.vendors-list .view-all{padding-top:8px}.vendors-list .view-all a{font-weight:500}.no-vendors{color:#71717a;font-size:14px;font-style:italic}.notes-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:13px;font-weight:500;border:1px solid}.status-form .form-group{margin-bottom:16px}.status-form .form-group label{display:block;font-size:13px;font-weight:500;color:#18181b;margin-bottom:6px}.status-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;font-family:inherit;transition:border-color .15s;box-sizing:border-box}.status-form textarea.form-input{resize:vertical;min-height:80px}@media(max-width:768px){.funnel-flow{flex-direction:column}.funnel-stage{flex-direction:column;width:100%}.funnel-card{width:100%}.funnel-arrow{transform:rotate(90deg)}.terminal-cards{flex-direction:column}.details-content{grid-template-columns:1fr}.vendors-list{border-left:none;border-top:1px solid #e4e4e7;padding-left:0;padding-top:24px}}.notification-types-manager{padding:24px}.notification-types-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.notification-types-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.notification-types-manager .subtitle{margin:0;color:#71717a;font-size:14px}.notification-stats{display:flex;gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:16px 20px;display:flex;align-items:center;gap:16px;flex:1}.stat-icon{width:48px;height:48px;border-radius:12px;background:#f4f4f5;display:flex;align-items:center;justify-content:center;color:#71717a}.stat-info{display:flex;flex-direction:column;gap:2px}.analytics-section{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.analytics-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.volume-chart{display:flex;flex-direction:column;gap:12px}.no-data{color:#71717a;font-size:14px;text-align:center;padding:24px}.volume-item{padding:12px 16px;border:1px solid #e4e4e7;border-radius:8px;cursor:pointer;transition:all .15s}.volume-item:hover{border-color:#3b82f6;background:#fafafa}.volume-item.selected{border-color:#3b82f6;background:#eff6ff}.volume-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.type-info{display:flex;align-items:center;gap:12px}.type-icon{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center}.type-name{font-weight:600;font-size:14px;color:#18181b}.volume-actions{display:flex;align-items:center;gap:8px}.volume-count{font-size:18px;font-weight:700;color:#18181b;margin-right:8px}.volume-bar-container{display:flex;align-items:center;gap:12px}.volume-bar{flex:1;height:8px;background:#e4e4e7;border-radius:4px;overflow:hidden}.volume-fill{height:100%;border-radius:4px;transition:width .3s ease}.volume-percent{font-size:13px;font-weight:600;min-width:40px;text-align:right}.detail-info{display:flex;flex-direction:column;gap:16px}.recent-notifications{border-left:1px solid #e4e4e7;padding-left:24px}.recent-notifications h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.recent-notifications ul{list-style:none;padding:0;margin:0}.recent-notifications li{padding:8px 0;border-bottom:1px solid #f4f4f5}.recent-notifications li:last-child{border-bottom:none}.notification-item{display:flex;justify-content:space-between;align-items:center}.notification-message{font-size:14px;color:#18181b}.notification-date{font-size:12px;color:#71717a}.no-notifications{color:#71717a;font-size:14px;font-style:italic}.recent-notifications .view-all{padding-top:8px}.recent-notifications .view-all a{color:#3b82f6;text-decoration:none;font-weight:500;font-size:14px}.recent-notifications .view-all a:hover{text-decoration:underline}.type-form .form-help{margin:4px 0 0;font-size:12px;color:#71717a}@media(max-width:768px){.notification-stats{flex-direction:column}.details-content{grid-template-columns:1fr}.recent-notifications{border-left:none;border-top:1px solid #e4e4e7;padding-left:0;padding-top:24px}}.rfp-statuses-manager{padding:24px}.rfp-statuses-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.rfp-statuses-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.rfp-statuses-manager .subtitle{margin:0;color:#71717a;font-size:14px}.workflow-pipeline{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.workflow-pipeline h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.pipeline-container{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:8px 0}.pipeline-item{display:flex;align-items:center;gap:8px}.status-card{padding:16px;border-radius:8px;border:2px solid;min-width:140px;cursor:pointer;transition:transform .15s,box-shadow .15s}.status-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.status-card.selected{box-shadow:0 0 0 3px #3b82f6}.status-name{font-weight:600;font-size:14px;margin-bottom:4px}.status-rfp-btn{margin-top:8px;padding:6px 12px;font-size:12px;font-weight:500;border:none;border-radius:4px;background:#fffffff2;color:#1d4ed8;cursor:pointer;transition:background-color .15s,color .15s}.status-rfp-btn:hover:not(:disabled){background:#fff;color:#1e40af}.status-rfp-btn:disabled{background:#ffffffb3;color:#9ca3af;cursor:default}.pipeline-arrow{display:flex;flex-direction:column;align-items:center;color:#71717a;padding:0 4px}.arrow-label{font-size:10px;white-space:nowrap;max-width:80px;overflow:hidden;text-overflow:ellipsis}.status-details-panel{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.rfps-list{border-left:1px solid #e4e4e7;padding-left:24px}.rfps-list h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.rfps-list ul{list-style:none;padding:0;margin:0}.rfps-list li{padding:6px 0;border-bottom:1px solid #f4f4f5}.rfps-list li:last-child{border-bottom:none}.rfps-list a{color:#3b82f6;text-decoration:none;font-size:14px}.rfps-list a:hover{text-decoration:underline}.rfps-list .view-all{padding-top:8px}.rfps-list .view-all a{font-weight:500}.rfps-list .view-all-link{margin-top:12px;padding-top:12px;border-top:1px solid #e4e4e7}.rfps-list .view-all-link a{font-weight:500;color:#3b82f6}.no-rfps{color:#71717a;font-size:14px;font-style:italic}.status-table-section{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px}.status-table-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.status-table{width:100%;border-collapse:collapse}.status-table th,.status-table td{padding:12px;text-align:left;border-bottom:1px solid #e4e4e7}.status-table th{font-size:12px;font-weight:600;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.status-table td{font-size:14px;color:#18181b}.status-table tr:hover{background:#f9fafb}.status-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:13px;font-weight:500}.text-success{color:#22c55e}.text-muted{color:#a1a1aa}.status-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.status-form .form-group{display:flex;flex-direction:column;gap:6px}.status-form .form-group label{font-size:13px;font-weight:500;color:#18181b}.status-form .form-input{padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;transition:border-color .15s}.status-form .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.status-form .checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.status-form .checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.status-form .form-help{margin:0;font-size:12px;color:#71717a}.color-input-group{display:flex;gap:8px}.form-color-input{width:48px;height:38px;padding:2px;border:1px solid #e4e4e7;border-radius:6px;cursor:pointer}.form-preview{display:flex;align-items:center;gap:12px;padding:16px;background:#f9fafb;border-radius:6px;margin-bottom:16px}.form-preview label{font-size:13px;font-weight:500;color:#71717a}.modal-content.modal-large{max-width:640px}@media(max-width:768px){.pipeline-container{flex-direction:column;align-items:stretch}.pipeline-item{flex-direction:column}.pipeline-arrow{transform:rotate(90deg);padding:8px 0}.details-content{grid-template-columns:1fr}.rfps-list{border-left:none;border-top:1px solid #e4e4e7;padding-left:0;padding-top:24px}.status-form .form-row{grid-template-columns:1fr}}.contact-types-manager{padding:24px}.contact-types-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.contact-types-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.contact-types-manager .subtitle{margin:0;color:#71717a;font-size:14px}.permission-matrix{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.matrix-legend{display:flex;gap:20px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#71717a}.permission-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%}.permission-icon.allowed{background:#dcfce7;color:#16a34a}.permission-icon.denied{background:#fef2f2;color:#dc2626}.permission-toggle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;border:2px solid #d1d5db;cursor:pointer;transition:all .15s ease;background:#fff}.permission-toggle.allowed{background:#16a34a;border-color:#16a34a;color:#fff}.permission-toggle.allowed:hover{background:#15803d;border-color:#15803d}.permission-toggle.denied{background:#fff;border-color:#d1d5db;color:#d1d5db}.permission-toggle.denied:hover{border-color:#9ca3af;color:#9ca3af}.permission-toggle.flashing{animation:permissionFlash .6s ease-out}@keyframes permissionFlash{0%{transform:scale(1);box-shadow:0 0 #3b82f6b3}30%{transform:scale(1.2);box-shadow:0 0 0 8px #3b82f600}to{transform:scale(1);box-shadow:0 0 #3b82f600}}.contact-count-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:transparent;border:1px solid #e4e4e7;border-radius:4px;color:#3b82f6;font-size:14px;cursor:pointer;transition:all .15s ease}.contact-count-btn:hover{background:#eff6ff;border-color:#3b82f6}.matrix-section{margin-bottom:24px}.matrix-section:last-child{margin-bottom:0}.matrix-section h3{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.matrix-table{width:100%;border-collapse:collapse}.matrix-table th,.matrix-table td{padding:12px;text-align:left;border-bottom:1px solid #e4e4e7}.matrix-table th{font-size:12px;font-weight:600;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.matrix-table tbody tr{transition:background-color .15s}.matrix-table tbody tr:hover{background:#f9fafb}.permission-col{text-align:center!important;width:100px}.count-col{width:100px}.actions-col{width:100px;text-align:right!important}.type-name{font-weight:500}.type-badge{display:inline-block;padding:4px 10px;border-radius:4px;font-size:13px;font-weight:500}.type-badge.ccw{background:#dbeafe;color:#1d4ed8}.type-badge.external{background:#f3f4f6;color:#374151}.contact-count{display:inline-flex;align-items:center;gap:4px;color:#3b82f6;text-decoration:none;font-size:14px}.contact-count:hover{text-decoration:underline}.details-content{display:grid;grid-template-columns:1fr 1fr;gap:24px}.permissions-summary h4,.contacts-list h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.permission-list{display:flex;flex-direction:column;gap:8px}.permission-item{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;font-size:14px}.permission-item.allowed{background:#f0fdf4;color:#166534}.permission-item.denied{background:#fef2f2;color:#991b1b}.contacts-list{border-left:1px solid #e4e4e7;padding-left:24px}.contacts-list ul{list-style:none;padding:0;margin:0}.contacts-list li{padding:8px 0;border-bottom:1px solid #f4f4f5}.contacts-list li:last-child{border-bottom:none}.contacts-list a{color:#3b82f6;text-decoration:none;font-size:14px}.contacts-list a:hover{text-decoration:underline}.company-name{color:#71717a;font-size:13px}.contacts-list .view-all{padding-top:8px}.contacts-list .view-all a{font-weight:500}.no-contacts{color:#71717a;font-size:14px;font-style:italic}.type-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;transition:border-color .15s;box-sizing:border-box}.form-section{margin-bottom:20px;padding:16px;background:#f9fafb;border-radius:8px}.form-section h4{margin:0 0 12px;font-size:13px;font-weight:600;color:#18181b;text-transform:uppercase;letter-spacing:.05em}.checkbox-group{margin-bottom:12px}.checkbox-group:last-child{margin-bottom:0}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#18181b}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.form-help{margin:4px 0 0 26px;font-size:12px;color:#71717a}.btn-icon:hover{background:#f4f4f5;color:#18181b}.btn-icon.btn-danger:hover{background:#fef2f2;color:#ef4444}.contacts-modal h3{display:flex;align-items:center;gap:10px}.contacts-modal .contact-total{font-size:14px;font-weight:400;color:#71717a}.contacts-list-modal{max-height:400px;overflow-y:auto}.contacts-list-modal ul{list-style:none;padding:0;margin:0}.contacts-list-modal li{padding:10px 12px;border-bottom:1px solid #f4f4f5;display:flex;align-items:center;gap:8px}.contacts-list-modal li:last-child{border-bottom:none}.contacts-list-modal li:hover{background:#f9fafb}.contacts-list-modal a{color:#3b82f6;text-decoration:none;font-size:14px;font-weight:500}.contacts-list-modal a:hover{text-decoration:underline}.contacts-list-modal .company-name{color:#71717a;font-size:13px}.contacts-list-modal .contact-info{display:flex;flex-direction:column;gap:2px;flex:1}.contacts-list-modal .contact-name{font-size:14px;font-weight:500;color:#18181b}.contacts-list-modal .contact-phone{font-size:13px;color:#71717a}.contacts-list-modal .loading-contacts{text-align:center;color:#71717a;padding:20px}.contact-count-btn:disabled{opacity:.5;cursor:not-allowed}.toast-notification{position:fixed;bottom:24px;right:24px;display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 12px #00000026;animation:toastSlideIn .3s ease-out;z-index:1100}.toast-notification.success{background:#16a34a;color:#fff}.toast-notification.error{background:#ef4444;color:#fff}@keyframes toastSlideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:768px){.details-content{grid-template-columns:1fr}.contacts-list{border-left:none;border-top:1px solid #e4e4e7;padding-left:0;padding-top:24px}.matrix-table{font-size:13px}.permission-col{width:60px}}.address-types-manager{padding:24px}.address-types-manager .page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.address-types-manager .header-content h1{margin:0 0 4px;font-size:24px;font-weight:600;color:#18181b}.address-types-manager .subtitle{margin:0;color:#71717a;font-size:14px}.address-type-stats{display:flex;gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:16px 20px;display:flex;flex-direction:column;gap:4px}.stat-value{font-size:28px;font-weight:700;color:#18181b}.stat-label{font-size:13px;color:#71717a}.types-section{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.types-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#18181b}.types-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px}.type-card{background:var(--type-bg);border:2px solid var(--type-border);border-radius:12px;padding:16px;cursor:pointer;transition:all .15s}.type-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.type-card.selected{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.type-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.type-icon{width:48px;height:48px;border-radius:12px;background:#fffc;display:flex;align-items:center;justify-content:center;color:var(--type-text)}.type-actions{display:flex;gap:4px}.type-card-body h4{margin:0 0 4px;font-size:16px;font-weight:600;color:var(--type-text)}.type-notes{margin:0;font-size:13px;color:#71717a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.type-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;border-top:1px solid rgba(0,0,0,.1)}.usage-count{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--type-text);font-weight:500}.usage-percent{font-size:14px;font-weight:700;color:var(--type-text)}.type-details-panel{background:#fff;border:1px solid #e4e4e7;border-radius:8px;padding:20px;margin-bottom:24px}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.details-header h3{margin:0}.type-badge{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:#18181b}.details-actions{display:flex;gap:8px}.details-content{display:flex;flex-direction:column;gap:20px}.detail-info-row{display:flex;flex-wrap:wrap;gap:24px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.detail-info-row .detail-item-notes{flex-basis:100%}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-item label{font-size:12px;color:#71717a;font-weight:500}.detail-item span{font-size:14px;color:#18181b}.detail-item .mono{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;font-size:13px;background:#f4f4f5;padding:4px 8px;border-radius:4px}.count-highlight{font-size:24px!important;font-weight:700;color:#3b82f6!important}.addresses-list{width:100%}.addresses-list h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#18181b}.addresses-list ul{list-style:none;padding:0;margin:0}.addresses-list li{padding:6px 0;border-bottom:1px solid #f4f4f5}.addresses-list li:last-child{border-bottom:none}.addresses-list a{display:flex;align-items:center;gap:8px;color:#18181b;text-decoration:none;font-size:14px;padding:8px 10px;border-radius:6px;margin:-8px -10px;transition:background-color .15s}.addresses-list a:hover{text-decoration:none;background-color:#f4f4f5;color:#18181b}.address-link-content{display:flex;flex-direction:column;gap:2px}.addresses-list .location-id-small{font-size:.75rem;color:#71717a;font-family:monospace}.no-addresses{color:#71717a;font-size:14px;font-style:italic}.addresses-list .view-all{padding-top:8px}.addresses-list .view-all a{font-weight:500}.empty-state{text-align:center;padding:48px 24px}.empty-state p{margin:0 0 16px;color:#71717a}.type-form .form-group{margin-bottom:16px}.type-form .form-group label{display:block;font-size:13px;font-weight:500;color:#18181b;margin-bottom:6px}.type-form .form-input{width:100%;padding:10px 12px;border:1px solid #e4e4e7;border-radius:6px;font-size:14px;font-family:inherit;box-sizing:border-box}.type-form .form-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.type-form textarea.form-input{resize:vertical;min-height:80px}.warning{color:#f59e0b;font-weight:500}.btn{padding:10px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:none;display:inline-flex;align-items:center;gap:6px;transition:background-color .15s}.btn-primary{background:#18181b;color:#fff}.btn-primary:hover{background:#27272a}.btn-secondary{background:#f4f4f5;color:#18181b}.btn-secondary:hover{background:#e4e4e7}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{padding:6px 12px;font-size:13px}.btn-icon{padding:8px;background:transparent;border:none;cursor:pointer;border-radius:4px;color:#71717a;display:inline-flex;align-items:center;justify-content:center}.btn-icon:hover{background:#ffffff80;color:#18181b}.btn-icon.btn-danger:hover{background:#ef44441a;color:#ef4444}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:480px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h3{margin:0 0 20px;font-size:18px;font-weight:600;color:#18181b}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #e4e4e7}.loading,.error{padding:40px;text-align:center;color:#71717a}.error{color:#ef4444}@media(max-width:768px){.address-type-stats{flex-direction:column}.types-grid{grid-template-columns:1fr}.detail-info-row{flex-direction:column;gap:16px}}.consolidated-settings-page{padding:0}.settings-page-header{margin-bottom:24px}.settings-page-header h1{font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0 0 4px}.settings-page-header .subtitle{font-size:.875rem;color:var(--text-secondary);margin:0}.settings-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border-color, #e5e7eb);margin-bottom:24px;padding-bottom:0}.settings-tab{padding:12px 20px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:.875rem;font-weight:500;color:var(--text-secondary);transition:all .15s ease;margin-bottom:-1px}.settings-tab:hover{color:var(--text-primary);background-color:var(--hover-bg, #f9fafb)}.settings-tab.active{color:var(--primary-color, #3b82f6);border-bottom-color:var(--primary-color, #3b82f6)}.settings-content{min-height:400px}.settings-content .page-header{display:none}.settings-content .skills-page,.settings-content .rfp-statuses-manager,.settings-content .contact-types-manager,.settings-content .areas-manager,.settings-content .districts-manager,.settings-content .regions-manager,.settings-content .address-types-manager,.settings-content .vendor-statuses-manager,.settings-content .notification-types-manager,.settings-content .users-list-page{padding:0}.settings-content .skills-list{overflow:hidden}.settings-content .skill-item{max-width:100%;overflow:hidden}.sidebar{width:256px;background:#fff;color:#3f3f46;display:flex;flex-direction:column;height:calc(100vh - 48px);position:fixed;left:24px;top:24px;overflow:hidden;box-shadow:none;border-right:none;border-radius:12px}.sidebar-header{padding:8px;border-bottom:none;background:#fff}.sidebar-header-content{display:flex;gap:8px;align-items:center;padding:8px;border-radius:6px}.sidebar-avatar{width:32px;height:32px;border-radius:8px;overflow:hidden;box-shadow:0 0 4px #71717a70;flex-shrink:0}.sidebar-avatar img{width:100%;height:100%;object-fit:cover}.sidebar-header-text{display:flex;flex-direction:column;gap:0;flex:1;min-width:0}.sidebar-org-name{margin:0;font-family:Inter,sans-serif;font-size:14px;font-weight:600;line-height:1;color:#3f3f46;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-role-label{margin:0;font-family:Inter,sans-serif;font-size:12px;font-weight:400;line-height:1;color:#3f3f46;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-content{flex:1;display:flex;flex-direction:column;gap:8px;padding:0 8px;min-height:0;overflow-y:auto;background:#fff}.sidebar-nav{display:flex;flex-direction:column;gap:12px;padding:0}.menu-item-group{margin-bottom:0}.menu-item{display:flex;align-items:center;padding:8px;height:40px;color:#3f3f46;text-decoration:none;transition:all .2s;cursor:pointer;border-radius:6px;background:transparent;gap:8px}.menu-item:hover{background:transparent}.menu-item.active{background:#f4f4f5;color:#18181b}.menu-item.expanded{background:transparent}.menu-icon{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;margin:0 0 6px}.menu-label{flex:1;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-item.active .menu-label{font-weight:500;color:#18181b}.menu-arrow{font-size:.625rem;color:#3f3f46;margin-left:.5rem}.submenu{background:transparent;padding:0;margin-left:24px}.submenu-item{display:flex;align-items:center;gap:8px;padding:.625rem 1rem;color:#3f3f46;text-decoration:none;font-size:.8125rem;transition:all .2s;border-radius:6px}.submenu-item:hover{text-decoration:none}.submenu-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.submenu-item:hover{background:#f4f4f5;color:#18181b}.submenu-item.active{background:#f4f4f5;color:#18181b;font-weight:500}.sidebar-footer{padding:8px;border-top:none;display:flex;flex-direction:column;gap:12px;margin-top:auto;background:#fff}.sidebar-footer-link{display:flex;align-items:center;gap:8px;padding:8px;height:40px;color:#3f3f46;text-decoration:none;font-family:Inter,sans-serif;font-size:14px;font-weight:400;line-height:1;border-radius:6px;transition:all .2s;position:relative}.sidebar-footer-link:hover{background:transparent;color:#18181b}.sidebar-footer-link.active{background:#f4f4f5;color:#18181b;font-weight:500}.sidebar-footer-link.active span:not(.notification-badge){color:#18181b;font-weight:500}.sidebar-footer-link svg{color:inherit}.sidebar-footer-link span:not(.notification-badge){flex:1}.notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;background:#ef4444;color:#fff;border-radius:10px;font-size:.75rem;font-weight:600;margin-left:auto}.sidebar::-webkit-scrollbar,.sidebar-content::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track,.sidebar-content::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb,.sidebar-content::-webkit-scrollbar-thumb{background:#3f3f4633;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover,.sidebar-content::-webkit-scrollbar-thumb:hover{background:#3f3f464d}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:998}.sidebar-overlay.active{display:block}.sidebar-close-btn{display:none;position:absolute;top:1rem;right:1rem;background:transparent;border:none;color:#3f3f46;font-size:1.5rem;cursor:pointer;padding:.5rem;z-index:1000}.sidebar-close-btn:hover{background:#f4f4f5;border-radius:6px}@media(max-width:768px){.sidebar{left:0;top:0;height:100vh;transform:translate(-100%);transition:transform .3s ease;z-index:999;border-top-left-radius:0;border-bottom-left-radius:0}.sidebar.mobile-open{transform:translate(0)}.sidebar-close-btn{display:block}.menu-icon{width:16px;height:16px}.menu-label{font-size:14px}}.layout-container{display:flex;min-height:100vh;width:100%;background:#fafafa}.layout-main{flex:1;margin-left:304px;padding-right:24px;display:flex;flex-direction:column;min-height:100vh;max-width:calc(100% - 304px);overflow-x:hidden}.mt-10{margin-top:10px}.mb-20{margin-bottom:20px}.page-header{background:transparent;padding:20px 0;border-bottom:none;position:sticky;top:0;z-index:10;margin-bottom:0}.page-header-container{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:0 24px}.page-header-search-wrapper{flex:1;max-width:500px;position:relative}.page-header-search{width:100%;display:flex;align-items:center;gap:12px;padding:8px 16px;background:#fff;border:1px solid #e4e4e7;border-radius:8px;transition:all .2s}.page-header-search:focus-within{border-color:#e4e4e7;box-shadow:0 0 0 3px #3b82f61a}.page-header-search .search-input{flex:1;border:none;outline:none;border-radius:0;font-family:Inter,sans-serif;font-size:16px;font-weight:400;color:#18181b;background:transparent;padding:0}.page-header-search .search-input:focus,.page-header-search .search-input:active,.page-header-search .search-input:focus-visible{outline:none!important;border:none!important;box-shadow:none!important}.page-header-search .search-input::placeholder{color:#a1a1aa}.page-header-search .search-input::-webkit-search-cancel-button{cursor:pointer}.search-dropdown{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #e4e4e7;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:400px;overflow-y:auto;z-index:1000;margin-top:4px}.search-dropdown-item{display:flex;align-items:center;gap:12px;padding:12px 16px;text-decoration:none;color:#18181b;border-bottom:1px solid #f4f4f5;transition:background .2s;cursor:pointer}.search-dropdown-item:last-child{border-bottom:none}.search-dropdown-item:hover{background:#fafafa}.search-dropdown-item.search-dropdown-view-all{background:#f4f4f5;font-weight:600;color:#3b82f6;justify-content:center}.search-dropdown-item.search-dropdown-view-all:hover{background:#e4e4e7}.search-result-content{flex:1;min-width:0}.search-result-title{font-family:Inter,sans-serif;font-size:14px;font-weight:500;color:#18181b;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-subtitle{font-family:Inter,sans-serif;font-size:12px;font-weight:400;color:#71717a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-type{font-family:Inter,sans-serif;font-size:11px;font-weight:600;color:#71717a;background:#f4f4f5;padding:4px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.page-header-left{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;margin-right:auto}.page-title{margin:0;font-family:Inter,sans-serif;font-size:30px;font-weight:700;line-height:36px;color:#18181b}.page-description{margin:0;font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:24px;color:#71717a}.page-header-right{display:flex;gap:10px;align-items:center;height:40px;flex:0 0 auto;margin-left:auto}.notification-button,.home-button{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#fff;border:1px solid #e4e4e7;border-radius:6px;cursor:pointer;transition:all .2s;text-decoration:none}.notification-button:hover{background:#fafafa;border-color:#e4e4e7}.notification-dot{position:absolute;top:8px;right:8px;width:8px;height:8px;background:#22c55e;border-radius:50%;border:2px solid white}.user-profile-dropdown{position:relative;display:flex;align-items:center;gap:8px;padding:8px;background:#fff;border:1px solid #dbdfe2;border-radius:6px;cursor:pointer;transition:all .2s;width:180px}.user-profile-dropdown:hover{background:#fafafa;border-color:#e4e4e7}.user-profile-avatar{width:24px;height:24px;border-radius:8px;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:12px}.user-profile-avatar img{width:100%;height:100%;object-fit:cover}.user-profile-info{flex:1;display:flex;flex-direction:column;gap:2px;overflow:hidden;min-width:0}.user-profile-name{font-family:Inter,sans-serif;font-size:14px;font-weight:600;line-height:1;color:#3f3f46;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#user-profile-role{font-family:Inter,sans-serif;font-size:11px;font-weight:400;line-height:1;color:#71717a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-profile-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid #e4e4e7;border-radius:6px;box-shadow:0 4px 12px #0000001a;min-width:180px;z-index:1000;overflow:hidden}.user-menu-item{display:block;padding:12px 16px;color:#3f3f46;text-decoration:none;font-family:Inter,sans-serif;font-size:14px;font-weight:400;transition:background .2s}.user-menu-item:hover{background:#fafafa;color:#18181b}.user-menu-item:first-child{border-top-left-radius:6px;border-top-right-radius:6px}.user-menu-item:last-child{border-bottom-left-radius:6px;border-bottom-right-radius:6px}.main-content{flex:1;padding:0;overflow-y:auto;overflow-x:hidden;width:100%;max-width:calc(100vw - 328px);box-sizing:border-box;position:relative;z-index:1}.main-content-wrapper{background:#fff;border-radius:12px;min-height:calc(100vh - 200px);padding:24px;max-width:1280px;width:100%;height:100%;box-sizing:border-box;margin:0 auto 24px}.page-content-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e4e4e7}.height-100{height:100%}.page-content-header .page-title{margin:0 0 8px;font-family:Inter,sans-serif;font-size:30px;font-weight:700;line-height:36px;color:#18181b}.page-content-header .page-description{margin:0;font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:24px;color:#71717a}.hamburger-btn{display:none;background:#fff;border:1px solid #e4e4e7;color:#18181b;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:6px;width:40px;height:40px;align-items:center;justify-content:center;flex-shrink:0}.hamburger-btn:hover{background:#fafafa;border-color:#d4d4d8}@media(max-width:768px){.hamburger-btn{display:flex}.layout-main{margin-left:0;width:100%;max-width:100%}.page-header{padding:16px}.page-header-container{flex-wrap:wrap;gap:12px}.page-header-search-wrapper{flex:1;max-width:calc(100% - 270px);order:0}.page-header-search{width:100%}.search-dropdown{max-height:300px}.page-header-right{flex:0 0 auto;justify-content:flex-end;order:1;margin-left:auto}.user-profile-name,#user-profile-role{display:none}.user-profile-dropdown{width:auto;min-width:40px;padding:8px}.main-content{padding:0 16px 16px;max-width:100%}.page-content-header .page-title{font-size:24px;line-height:30px}.page-content-header .page-description{font-size:14px;line-height:20px}}@media(max-width:480px){.page-header{padding:12px}.page-header-container{gap:8px}.page-header-search-wrapper{max-width:100%;width:100%;order:2}.page-header-right{order:1}.main-content{padding:0 12px 12px}.main-content-wrapper{padding:16px}.page-content-header .page-title{font-size:20px;line-height:26px}}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:18px;color:#666}.error{display:flex;justify-content:center;align-items:center;min-height:100vh;font-size:18px;color:#c33}:root{--primary-color: #667eea;--primary-dark: #5568d3;--primary-light: #7c8ff5;--primary-pale: rgba(102, 126, 234, .1);--secondary-color: #764ba2;--accent-color: #f093fb;--sidebar-bg: #1e293b;--sidebar-text: #cbd5e1;--sidebar-text-hover: #ffffff;--sidebar-active-bg: rgba(102, 126, 234, .2);--sidebar-hover-bg: rgba(255, 255, 255, .05);--content-bg: #f8f9fa;--card-bg: #ffffff;--border-color: #e2e8f0;--text-primary: #2c3e50;--text-secondary: #6c757d;--button-primary-bg: #667eea;--button-primary-hover: #5568d3;--button-secondary-bg: #e2e8f0;--button-secondary-hover: #cbd5e1;--status-success: #10b981;--status-warning: #f59e0b;--status-danger: #ef4444;--status-info: #3b82f6}body[data-role=manager],body[data-role=Manager],body[data-role=admin],body[data-role=Admin]{--primary-color: #1e40af;--primary-dark: #1e3a8a;--primary-light: #3b82f6;--primary-pale: rgba(30, 64, 175, .1);--secondary-color: #64748b;--accent-color: #0ea5e9;--sidebar-bg: #f8fafc;--sidebar-text: #475569;--sidebar-text-hover: #1e293b;--sidebar-active-bg: rgba(30, 64, 175, .15);--sidebar-hover-bg: rgba(30, 64, 175, .05);--sidebar-border: rgba(30, 64, 175, .2);--content-bg: #f1f5f9;--card-bg: #ffffff;--border-color: #e4e4e7;--text-primary: #0f172a;--text-secondary: #475569;--button-primary-bg: #1e40af;--button-primary-hover: #1e3a8a;--button-secondary-bg: #e2e8f0;--button-secondary-hover: #cbd5e1;--status-success: #059669;--status-warning: #d97706;--status-danger: #dc2626;--status-info: #0284c7;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .1);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .1)}body[data-role=vendor],body[data-role=Vendor]{--primary-color: #0284c7;--primary-dark: #0369a1;--primary-light: #0ea5e9;--primary-pale: rgba(2, 132, 199, .1);--secondary-color: #0891b2;--accent-color: #06b6d4;--sidebar-bg: #f8fafc;--sidebar-text: #475569;--sidebar-text-hover: #1e293b;--sidebar-active-bg: rgba(2, 132, 199, .15);--sidebar-hover-bg: rgba(2, 132, 199, .05);--sidebar-border: rgba(2, 132, 199, .2);--content-bg: #f0f9ff;--card-bg: #ffffff;--border-color: #e0f2fe;--text-primary: #0c4a6e;--text-secondary: #475569;--button-primary-bg: #0284c7;--button-primary-hover: #0369a1;--button-secondary-bg: #e0f2fe;--button-secondary-hover: #bae6fd;--status-success: #16a34a;--status-warning: #f59e0b;--status-danger: #dc2626;--status-info: #0891b2;--shadow-sm: 0 1px 2px 0 rgba(12, 74, 110, .05);--shadow-md: 0 4px 6px -1px rgba(12, 74, 110, .1);--shadow-lg: 0 10px 15px -3px rgba(12, 74, 110, .1)}body[data-role=executive],body[data-role=Executive]{--primary-color: #7c3aed;--primary-dark: #6d28d9;--primary-light: #8b5cf6;--primary-pale: rgba(124, 58, 237, .1);--secondary-color: #db2777;--accent-color: #ec4899;--sidebar-bg: #1e1b4b;--sidebar-text: #ddd6fe;--sidebar-text-hover: #ffffff;--sidebar-active-bg: rgba(124, 58, 237, .3);--sidebar-hover-bg: rgba(139, 92, 246, .1);--sidebar-border: rgba(139, 92, 246, .3);--content-bg: #faf5ff;--card-bg: #ffffff;--border-color: #e9d5ff;--text-primary: #1e1b4b;--text-secondary: #6b21a8;--button-primary-bg: #7c3aed;--button-primary-hover: #6d28d9;--button-secondary-bg: #f3e8ff;--button-secondary-hover: #e9d5ff;--status-success: #059669;--status-warning: #d97706;--status-danger: #dc2626;--status-info: #0284c7;--shadow-sm: 0 1px 2px 0 rgba(30, 27, 75, .05);--shadow-md: 0 4px 6px -1px rgba(30, 27, 75, .1);--shadow-lg: 0 10px 15px -3px rgba(30, 27, 75, .1)}.sidebar{background:var(--sidebar-bg);box-shadow:var(--shadow-md)}.sidebar-header{border-bottom:1px solid rgba(255,255,255,.1)}.role-badge{background:var(--primary-pale);border:1px solid var(--primary-color);color:var(--primary-color)}.menu-item{color:var(--sidebar-text)}.menu-item:hover{background:var(--sidebar-hover-bg);color:var(--sidebar-text-hover)}.menu-item.active,.submenu-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-text-hover);border-left-color:var(--primary-color)}.main-content{background:var(--content-bg)}.card{background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.card-header{border-bottom:1px solid var(--border-color)}.btn-primary,button.primary{background-color:var(--button-primary-bg);border-color:var(--button-primary-bg)}.btn-primary:hover,button.primary:hover{background-color:var(--button-primary-hover);border-color:var(--button-primary-hover)}.btn-secondary{background-color:var(--button-secondary-bg);color:var(--text-primary)}.btn-secondary:hover{background-color:var(--button-secondary-hover)}.tabs .tab.active{border-bottom-color:var(--primary-color);color:var(--primary-color)}.status-badge{background:var(--border-color);color:var(--text-secondary)}input:focus,textarea:focus,select:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px var(--primary-pale)}a{color:var(--primary-color)}a:hover{color:var(--primary-dark)}h1,h2,h3,h4,h5,h6,.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}*{transition:background-color .2s ease,border-color .2s ease,color .2s ease}body.theme-transition-disabled *{transition:none!important}
