:root{--primary:#4d6c83;--primary-dark:#3a5263;--accent:#6f8698;--secondary:#e6e6e4;--secondary-btn:#8a939b;--secondary-hover:#6f777e;--muted:#8a939b;--neutral-bg:#f9f9f8;--panel-bg:#f3efea;--card-bg:#e6e6e4;--card-border:#4d6c8329;--divider:#4d6c8359;--sidebar:#f3efeae6;--sidebar-active:#4d6c83;--sidebar-border:#8a939b73;--content-shadow:0 18px 48px #4d6c8329,0 4px 12px #8a939b1a;--radius:18px;--font:"Inter","Montserrat",Arial,sans-serif;--header-dark:#3b3c3d;--text-primary:#3b3c3d;--text-secondary:#5e6366;--icon-color:#3b3c3d;--btn:#4d6c83;--btn-hover:#3a5263;--btn-text:#f9f9f8;--input-border:#8a939bb3;--warm-highlight:#f3efea;--primary-rgb:77,108,131;--primary-dark-rgb:58,82,99;--secondary-btn-rgb:138,147,155;--charcoal-rgb:59,60,61;--warm-highlight-rgb:243,239,234;--neutral-bg-rgb:249,249,248}body{background:linear-gradient(135deg,#f9f9f8,#f3efead9) fixed;background:linear-gradient(135deg,rgba(var(--neutral-bg-rgb),1) 0,rgba(var(--warm-highlight-rgb),.85) 100%) fixed;color:#3b3c3d;color:var(--text-primary);font-family:Inter,Montserrat,Arial,sans-serif;font-family:var(--font);margin:0;padding:0}.partition-app-bg{background:linear-gradient(135deg,#f9f9f8,#8a939b14);background:linear-gradient(135deg,rgba(var(--neutral-bg-rgb),1) 0,rgba(var(--secondary-btn-rgb),.08) 100%);min-height:100vh}.partition-sidebar{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(160deg,#f3efeaeb,#f9f9f8e6);background:linear-gradient(160deg,rgba(var(--warm-highlight-rgb),.92) 0,rgba(var(--neutral-bg-rgb),.9) 100%);border-right:1px solid #8a939b73;border-right:1px solid var(--sidebar-border);box-shadow:2px 0 22px #4d6c8314;box-shadow:2px 0 22px rgba(var(--primary-rgb),.08);color:#3b3c3d;color:var(--text-primary);padding-top:28px}.partition-sidebar h2,.sidebar h2{color:#3b3c3d!important;color:var(--text-primary)!important;font-family:Inter,Montserrat,Arial,sans-serif;font-family:var(--font);font-size:1.15rem;font-weight:800;letter-spacing:2px;margin-bottom:32px}.partition-sidebar button,.sidebar button{background:none;border:none;border-radius:14px;color:#3b3c3d;color:var(--text-primary);font-family:Inter,Montserrat,Arial,sans-serif;font-family:var(--font);font-size:.95rem;padding:12px 16px;position:relative;transition:all .2s ease}.partition-sidebar button.active,.sidebar button.active{background:linear-gradient(135deg,#4d6c83,#6f8698);background:linear-gradient(135deg,var(--primary) 0,var(--accent) 100%);box-shadow:0 8px 20px #4d6c8347;box-shadow:0 8px 20px rgba(var(--primary-rgb),.28);color:#f9f9f8!important;color:var(--btn-text)!important;font-weight:700}.partition-sidebar button.active span,.sidebar button.active span{text-shadow:0 1px 2px #00000026}.partition-sidebar button:hover:not(.active),.sidebar button:hover:not(.active){background:#8a939b2e;background:rgba(var(--secondary-btn-rgb),.18);transform:translateX(4px)}.partition-content{background:#f3efea;background:var(--panel-bg);border:1px solid #4d6c8329;border:1px solid var(--card-border);border-radius:18px;border-radius:var(--radius);box-shadow:0 18px 48px #4d6c8329,0 4px 12px #8a939b1a;box-shadow:var(--content-shadow);margin:36px 36px 38px;padding:44px 46px 20px 42px}.file-list-card,.stagepanel-card,.upload-card{background:#e6e6e4;background:var(--card-bg);border:1px solid #4d6c8329;border:1px solid var(--card-border);border-radius:17px;box-shadow:0 10px 30px #8a939b2e;box-shadow:0 10px 30px rgba(var(--secondary-btn-rgb),.18);margin-bottom:24px;padding:16px 24px}.cl-avatarImage,.cl-userButtonBox{border:none;border-radius:12px!important;box-shadow:none}.cl-userButton-root{margin:0!important;padding:0!important}.cl-userButton-root button{margin:0!important;padding:2px!important}.cl-rootBox{margin:0!important;padding:0!important}.cl-userButtonPopoverActionButton,.cl-userButtonPopoverActionButton__manageAccount,.cl-userButtonPopoverActionButton__signOut,.cl-userButtonPopoverActions button,.cl-userButtonPopoverFooter button,.cl-userButtonTrigger+div button,div[data-localization-key*=userButton] button{background:#fff!important;border:1px solid #8a939bb3!important;border:1px solid var(--input-border)!important;box-shadow:0 2px 4px #00000014!important;color:#3b3c3d!important;color:var(--text-primary)!important}.cl-userButtonPopoverActionButton:hover,.cl-userButtonPopoverActionButton__manageAccount:hover,.cl-userButtonPopoverActionButton__signOut:hover,.cl-userButtonPopoverActions button:hover,.cl-userButtonPopoverFooter button:hover,.cl-userButtonTrigger+div button:hover,div[data-localization-key*=userButton] button:hover{background:#8a939b1a!important;background:rgba(var(--secondary-btn-rgb),.1)!important;border-color:#4d6c83!important;border-color:var(--primary)!important;transform:translateY(-1px)}.cl-userButtonPopoverCard{border:1px solid #4d6c8329!important;border:1px solid var(--card-border)!important;box-shadow:0 10px 30px #8a939b33!important;box-shadow:0 10px 30px rgba(var(--secondary-btn-rgb),.2)!important}.cl-card button,.cl-internal-b3fm6y button,.cl-modalContent button,div[class*=cl-card] button,div[class*=cl-modal] button{background:#fff!important;border:1px solid #8a939bb3!important;border:1px solid var(--input-border)!important;box-shadow:0 2px 4px #00000014!important;color:#3b3c3d!important;color:var(--text-primary)!important}.cl-card button:hover,.cl-internal-b3fm6y button:hover,.cl-modalContent button:hover,div[class*=cl-card] button:hover,div[class*=cl-modal] button:hover{background:#8a939b1a!important;background:rgba(var(--secondary-btn-rgb),.1)!important;border-color:#4d6c83!important;border-color:var(--primary)!important;transform:translateY(-1px)}.cl-internal-1ta1tu9,.cl-internal-b3fm6y,.cl-socialButtonsBlockButton,.cl-socialButtonsIconButton,button[class*=socialButton],button[data-id*=social],div[class*=socialButtons] button{background:#fff!important;border:1px solid #8a939bb3!important;border:1px solid var(--input-border)!important;box-shadow:0 2px 4px #00000014!important;color:#3b3c3d!important;color:var(--text-primary)!important}.cl-internal-1ta1tu9:hover,.cl-internal-b3fm6y:hover,.cl-socialButtonsBlockButton:hover,.cl-socialButtonsIconButton:hover,button[class*=socialButton]:hover,button[data-id*=social]:hover,div[class*=socialButtons] button:hover{background:#8a939b1a!important;background:rgba(var(--secondary-btn-rgb),.1)!important;border-color:#4d6c83!important;border-color:var(--primary)!important;transform:translateY(-1px)}.cl-button,.cl-cardButton,.cl-footerActionButton,.cl-formButtonPrimary,button[type=submit],div[class*=signIn] button,div[class*=signUp] button,form button[class*=cl-]{background:#fff!important;border:1px solid #8a939bb3!important;border:1px solid var(--input-border)!important;box-shadow:0 2px 4px #00000014!important;color:#3b3c3d!important;color:var(--text-primary)!important}.cl-button:hover,.cl-cardButton:hover,.cl-footerActionButton:hover,.cl-formButtonPrimary:hover,button[type=submit]:hover,div[class*=signIn] button:hover,div[class*=signUp] button:hover,form button[class*=cl-]:hover{background:#8a939b1a!important;background:rgba(var(--secondary-btn-rgb),.1)!important;border-color:#4d6c83!important;border-color:var(--primary)!important;transform:translateY(-1px)}button,input{background:#f9f9f8fa;background:rgba(var(--neutral-bg-rgb),.98);border:1.5px solid #8a939bb3;border:1.5px solid var(--input-border);border-radius:12px;color:#3b3c3d;color:var(--text-primary);font-family:Inter,Montserrat,Arial,sans-serif;font-family:var(--font);font-size:.95rem;padding:11px 13px!important}button{background:linear-gradient(135deg,#4d6c83,#6f8698);background:linear-gradient(135deg,var(--primary) 0,var(--accent) 100%);border:none;color:#f9f9f8;color:var(--btn-text);cursor:pointer;font-weight:700;letter-spacing:.3px;margin-top:4px;transition:all .2s ease}button:hover{box-shadow:0 10px 18px #4d6c8347;box-shadow:0 10px 18px rgba(var(--primary-rgb),.28);transform:translateY(-1px)}.btn-secondary,button.secondary{background:#8a939b;background:var(--secondary-btn);border:none;color:#f9f9f8;color:var(--btn-text)}.btn-secondary:hover,button.secondary:hover{background:#6f777e;background:var(--secondary-hover);box-shadow:0 6px 15px #8a939b52;box-shadow:0 6px 15px rgba(var(--secondary-btn-rgb),.32)}input:focus{background:#f9f9f8;background:rgba(var(--neutral-bg-rgb),1);border-color:#4d6c83;border-color:var(--primary);outline:none}li,ul{list-style:none;margin:0;padding:0}[contentEditable=true] ol,[contentEditable=true] ul{list-style:inherit;margin:1em 0;padding-left:2em}[contentEditable=true] ul{list-style-type:disc}[contentEditable=true] ol{list-style-type:decimal}[contentEditable=true] li{display:list-item;list-style:inherit;margin:.25em 0;padding:0}[contentEditable=true] ul ul{list-style-type:circle}[contentEditable=true] ul ul ul{list-style-type:square}[contentEditable=true] ol ol{list-style-type:lower-alpha}[contentEditable=true] ol ol ol{list-style-type:lower-roman}h2,h3,h4{color:#3b3c3d;color:var(--header-dark);font-family:Inter,Montserrat,Arial,sans-serif;font-family:var(--font);letter-spacing:.5px}::-webkit-scrollbar{height:4px;width:4px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#8a939b40;background:rgba(var(--secondary-btn-rgb),.25);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#8a939b66;background:rgba(var(--secondary-btn-rgb),.4)}html{scrollbar-color:#8a939b4d #0000;scrollbar-color:rgba(var(--secondary-btn-rgb),.3) #0000;scrollbar-width:thin}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@keyframes fade-in-up{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes glow{0%,to{opacity:.6}50%{opacity:1}}@keyframes morph{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}50%{border-radius:70% 30% 30% 70%/70% 70% 30% 30%}}@keyframes sparkle{0%,to{filter:brightness(1)}50%{filter:brightness(1.3)}}@keyframes borderGlow{0%,to{border-color:#4d6c8333;box-shadow:0 0 0 #4d6c8300}50%{border-color:#4d6c8366;box-shadow:0 0 20px #4d6c8333}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.fade-in-section{opacity:0;transform:translateY(50px);transition:opacity .8s ease-out,transform .8s ease-out}.fade-in-section.visible{opacity:1;transform:translateY(0)}.fade-in-up{animation:fade-in-up .8s ease-out forwards;opacity:0}.card-entrance{animation:fade-in-up .6s ease-out forwards}.icon-float{animation:float 3s ease-in-out infinite}.gradient-text{animation:gradient-shift 3s ease infinite;background-size:200% auto}@keyframes gradient-shift{0%,to{background-position:0}50%{background-position:100%}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes float-rotate{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-15px) rotate(5deg)}}@keyframes scale-pulse{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}.logo-animate{transition:transform .3s ease}.logo-animate:hover{transform:scale(1.05) rotate(2deg)}.advanced-hover{overflow:hidden;position:relative}.advanced-hover:before{background:#ffffff1a;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.advanced-hover:hover:before{height:300px;width:300px}.modal-content{animation:fadeIn .3s ease-out,slideIn .3s ease-out}.icon-float{animation:icon-float 2s ease-in-out infinite;transition:all .3s ease}@keyframes icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.icon-pulse{animation:icon-pulse 2s ease-in-out infinite;transition:all .3s ease}@keyframes icon-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.icon-rotate{animation:icon-rotate 3s ease-in-out infinite;transition:all .3s ease}@keyframes icon-rotate{0%,to{transform:rotate(0deg)}50%{transform:rotate(10deg)}}.icon-glow{animation:icon-glow 2s ease-in-out infinite;filter:drop-shadow(0 0 8px rgba(77,108,131,.5));transition:all .3s ease}@keyframes icon-glow{0%,to{filter:drop-shadow(0 0 8px rgba(77,108,131,.3))}50%{filter:drop-shadow(0 0 12px rgba(77,108,131,.8))}}.icon-bounce{animation:icon-bounce 2s ease-in-out infinite;transition:all .3s ease}@keyframes icon-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.icon-hover{cursor:pointer;transition:all .3s ease}.icon-hover:hover{filter:drop-shadow(0 4px 12px rgba(77,108,131,.4));transform:scale(1.15) translateY(-2px)}svg{transition:all .3s ease}svg:hover{transform:scale(1.05)}.will-change-transform{will-change:transform}.will-change-opacity{will-change:opacity}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.floating-shapes .shape{animation:none!important}}@media (max-width:900px){.partition-content{border-radius:11px;margin:8px;padding:14px}.partition-sidebar{min-width:140px;width:65vw}.workflow-container{grid-template-columns:1fr!important}.floating-shapes .shape{display:none}.hero-background{background-attachment:scroll!important}}.vendor-manager{margin:0 auto;max-width:1400px;padding:20px}.vendor-manager-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.vendor-manager-header h1{color:#3b3c3d;color:var(--text-primary,#3b3c3d);font-size:32px;margin:0}.current-project-badge{background:linear-gradient(135deg,#4d6c83,#7a95ac);border-radius:20px;color:#fff;font-size:14px;font-weight:500;padding:10px 20px}.vendor-tabs{border-bottom:2px solid #e6e6e4;border-bottom:2px solid var(--grey-light,#e6e6e4);display:flex;gap:10px;margin-bottom:30px}.vendor-tabs button{background:#0000;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:16px;font-weight:500;padding:12px 24px;transition:all .3s ease}.vendor-tabs button:hover{color:#4d6c83}.vendor-tabs button.active{border-bottom-color:#4d6c83;color:#4d6c83}.vendor-list-container{width:100%}.vendor-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.vendor-list-header h2{color:#2c3e50;margin:0}.vendor-filters{display:flex;flex-wrap:wrap;gap:15px;margin-bottom:25px}.vendor-filters input[type=text]{border:2px solid #e0e0e0;border-radius:8px;flex:1 1;font-size:14px;min-width:250px;padding:10px 15px;transition:border-color .3s ease}.vendor-filters input[type=text]:focus{border-color:#4d6c83;outline:none}.vendor-filters select{background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 15px}.vendor-filters label{align-items:center;color:#555;display:flex;font-size:14px;gap:8px;padding:10px 15px}.vendor-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.vendor-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;padding:20px;transition:all .3s ease}.vendor-card:focus-visible{outline:3px solid #4d6c8359;outline-offset:3px}.vendor-card.recent{border-color:#4d6c83a6;box-shadow:0 6px 18px #4d6c8326}.vendor-card:hover{border-color:#4d6c83;box-shadow:0 4px 12px #4d6c831a;transform:translateY(-2px)}.vendor-card-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:10px}.vendor-card-header h3{color:#2c3e50;font-size:18px;margin:0}.vendor-card-actions{align-items:center;display:flex;gap:8px}.new-badge{background:#22c55e26;border-radius:999px;color:#15803d;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.favorite-btn{align-items:center;background:#4d6c8314;border:1px solid #4d6c8340;border-radius:999px;color:#4d6c83;cursor:pointer;display:inline-flex;height:38px;justify-content:center;transition:background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease;width:38px}.favorite-btn:hover{background:#4d6c8326;transform:translateY(-1px)}.favorite-btn.favorited{background:#facc1533;border-color:#facc15e6;color:#c47205}.favorite-btn.favorited:hover{background:#facc154d}.favorite-btn:focus-visible{outline:2px solid #4d6c83;outline-offset:2px}.favorite-btn svg{display:block}.vendor-type{color:#666;font-size:14px;margin:5px 0;text-transform:capitalize}.vendor-categories{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.category-tag{background:#f0f0f0;border-radius:12px;color:#555;font-size:12px;padding:4px 12px;text-transform:capitalize}.vendor-stats{border-bottom:1px solid #e0e0e0;border-top:1px solid #e0e0e0;margin:15px 0;padding:15px 0}.vendor-stats div{color:#555;font-size:13px;margin:5px 0}.vendor-stats strong{color:#333}.vendor-detail-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.vendor-detail-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px;padding-bottom:20px}.vendor-detail-header h1{color:#2c3e50;margin:0}.favorite-btn-large{background:#fff;border:2px solid #e0e0e0;border-radius:8px;color:#2c3e50;cursor:pointer;font-size:16px;padding:12px 24px;transition:all .3s ease}.favorite-btn-large:hover{border-color:gold;color:gold}.favorite-btn-large.favorited{background:gold;border-color:gold;color:#2c3e50}.vendor-detail-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:30px}.vendor-detail-section{background:#f8f9fa;border-radius:8px;padding:20px}.vendor-detail-section h3{color:#2c3e50;font-size:18px;margin:0 0 15px}.vendor-detail-section p{color:#555;font-size:14px;margin:8px 0}.vendor-actions{gap:15px;margin:20px 0}.rfq-list-container{width:100%}.rfq-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.rfq-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.rfq-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;padding:20px;transition:all .3s ease}.rfq-card:hover{border-color:#4d6c83;box-shadow:0 4px 12px #4d6c831a}.rfq-card-header{align-items:center;margin-bottom:15px}.rfq-card-header h3{color:#2c3e50;margin:0}.status-badge{border-radius:12px}.status-badge.draft{background:#f0f0f0;color:#666}.status-badge.awaiting_quotes,.status-badge.sent{background:#fff3cd;color:#856404}.status-badge.quotes_received,.status-badge.under_review{background:#d1ecf1;color:#0c5460}.status-badge.selected{background:#d4edda;color:#155724}.rfq-card p{color:#555;font-size:14px;margin:8px 0}.rfq-detail-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.rfq-detail-header{align-items:center;border-bottom:2px solid #e0e0e0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:20px}.rfq-info{background:#f8f9fa;border-radius:8px;margin-bottom:30px;padding:20px}.rfq-info p{font-size:14px;margin:8px 0}.rfq-section{margin:30px 0}.rfq-section h3{color:#2c3e50;margin-bottom:15px}.rfq-item{background:#f8f9fa;border-radius:8px;margin-bottom:15px;padding:15px}.rfq-item h4{color:#2c3e50;margin:0 0 10px}.rfq-item p{color:#555;font-size:14px;margin:5px 0}.vendor-status-list{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.vendor-status-card{background:#f8f9fa;border-left:4px solid #4d6c83;border-radius:8px;padding:15px}.vendor-status-card h4{color:#2c3e50;margin:0 0 10px}.vendor-status-card p{color:#555;font-size:13px;margin:5px 0}.vendor-status-card .success{color:#28a745;font-weight:600}.quote-comparison-cards{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin-top:20px}.quote-card{background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-shadow:0 2px 8px #0000000d;overflow:hidden;padding:0;transition:all .3s ease}.quote-card:hover{box-shadow:0 4px 16px #4d6c8326;transform:translateY(-2px)}.quote-card.lowest-price{border-color:#28a745;box-shadow:0 2px 12px #28a74533}.quote-card.fastest{border-color:#4d6c83}.quote-card-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-bottom:1px solid #e0e0e0;padding:20px}.quote-card-header h4{color:#2c3e50;font-size:18px;margin:0 0 10px}.quote-badges{display:flex;flex-wrap:wrap;gap:8px}.badge{align-items:center;border-radius:12px;display:inline-flex;font-size:11px;font-weight:600;gap:4px;padding:4px 10px}.badge-price{background:#d4edda;color:#155724}.badge-time{background:#cfe2ff;color:#084298}.badge-req{background:#fff3cd;color:#856404}.quote-card-body{padding:20px}.quote-stat{border-bottom:1px solid #e0e0e0;margin-bottom:20px;padding-bottom:20px;text-align:center}.quote-label{color:#666;display:block;font-size:12px;font-weight:600;letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.quote-value-large{color:#4d6c83;display:block;font-size:32px;font-weight:700}.quote-stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:20px}.quote-stat-small{background:#f8f9fa;border-radius:8px;padding:12px;text-align:center}.quote-stat-small .quote-label{font-size:11px;margin-bottom:5px}.quote-stat-small .quote-value{color:#2c3e50;display:block;font-size:16px;font-weight:600}.quote-items-summary{background:#f8f9fa;border-radius:8px;font-size:13px;padding:15px}.quote-items-summary strong{color:#2c3e50;display:block;margin-bottom:10px}.quote-item-line{border-bottom:1px solid #e0e0e0;color:#555;padding:5px 0}.quote-item-line:last-child{border-bottom:none}.quote-card-footer{background:#f8f9fa;border-top:1px solid #e0e0e0;display:flex;gap:10px;padding:15px 20px}.quote-card-footer button{flex:1 1}.quote-comparison-table{overflow-x:auto}.quote-comparison-table table{border-collapse:collapse;margin-top:15px;width:100%}.quote-comparison-table td,.quote-comparison-table th{border-bottom:1px solid #e0e0e0;padding:12px;text-align:left}.quote-comparison-table th{background:#f8f9fa;color:#2c3e50;font-weight:600}.quote-comparison-table tr:hover{background:#f8f9fa}.ai-result-box{background:linear-gradient(135deg,#4d6c831a,#7a95ac1a);border:2px solid #4d6c83;border-radius:12px;margin:25px 0;padding:25px}.ai-result-box h3{align-items:center;color:#4d6c83;display:flex;gap:10px;margin:0 0 20px}.ai-result-box h3:before{content:"AI";font-size:24px}.ai-metrics{grid-gap:15px;border-bottom:1px solid #4d6c8333;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:20px;padding-bottom:20px}.ai-metrics div{color:#555;font-size:14px}.ai-comparison-content,.ai-report-content,.rfq-draft-content{color:#333;font-size:14px;line-height:1.6;white-space:pre-wrap}.btn-primary{border-radius:8px;font-size:16px;font-weight:600;padding:12px 24px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 4px 12px #4d6c834d}.btn-primary:disabled{opacity:.6;transform:none}.btn-secondary{background:#fff;border:2px solid #4d6c83;border-radius:8px;font-size:14px;font-weight:600;padding:10px 20px}.btn-secondary:hover{background:#4d6c83;color:#fff}.btn-danger{background-color:#dc3545;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:600;padding:10px 20px}.btn-danger:hover{background-color:#c82333;box-shadow:0 4px 12px #dc35454d}.btn-back{border:none;border-radius:8px;color:#2c3e50;font-size:14px;margin-bottom:20px;padding:8px 16px;transition:all .3s ease}.btn-back:hover{background:#4d6c832e;color:#1f2d3d}.view-details-btn{align-items:center;display:inline-flex;gap:8px;justify-content:center;margin-top:12px;width:100%}.btn-small{background:#fff;border:1px solid #4d6c83;border-radius:6px;color:#4d6c83;cursor:pointer;font-size:12px;padding:6px 12px;transition:all .3s ease}.btn-small:hover{background:#4d6c83;color:#fff}.loading{color:#4d6c83;padding:40px}.rfq-form-container,.vendor-form-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:30px}.rfq-form-container h2,.vendor-form-container h2{color:#2c3e50;margin-bottom:30px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.form-section{border-bottom:1px solid #e0e0e0;margin-bottom:30px;padding-bottom:30px}.form-section:last-of-type{border-bottom:none}.form-section h3{color:#2c3e50;margin-bottom:20px}.form-group label{color:#555}.form-group input,.form-group select,.form-group textarea{border:2px solid #e0e0e0;border-radius:8px;padding:10px 15px;transition:border-color .3s ease}.form-group input:disabled{background:#f8f9fa;color:#666;cursor:not-allowed}.form-group textarea{min-height:80px}.form-actions{gap:15px;margin-top:30px}.item-card{background:#f8f9fa;border-left:4px solid #4d6c83;border-radius:8px;margin-bottom:20px}.item-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.item-card-header h4{color:#2c3e50;margin:0}.btn-remove{background:#f44;border:none;border-radius:6px;color:#fff;font-size:12px;transition:background .3s ease}.btn-remove:hover{background:#c00}.vendor-suggestions{grid-gap:20px;display:grid;gap:20px;margin-top:15px}.suggestion-category h4{color:#4d6c83;font-size:16px;margin-bottom:15px;text-transform:capitalize}.suggestion-card{background:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:10px;padding:15px}.suggestion-card strong{color:#2c3e50;display:block;font-size:15px;margin-bottom:8px}.suggestion-card p{color:#555;font-size:13px;line-height:1.5;margin:8px 0}.confidence-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:600;margin-top:8px;padding:4px 12px;text-transform:uppercase}.confidence-badge.high{background:#d4edda;color:#155724}.confidence-badge.medium{background:#fff3cd;color:#856404}.confidence-badge.low{background:#f8d7da;color:#721c24}@media (max-width:768px){.vendor-manager{padding:10px}.rfq-list,.vendor-detail-grid,.vendor-grid{grid-template-columns:1fr}.vendor-filters{flex-direction:column}.vendor-filters input[type=text]{width:100%}}.vendor-search-container{margin:0 auto;max-width:1400px;padding:30px}.vendor-search-container h2{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:8px}.search-type-selector{border-bottom:2px solid #e5e7eb;display:flex;gap:10px;margin-bottom:30px}.type-btn{background:none;border:none;border-bottom:3px solid #0000;color:#6b7280;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:all .2s}.type-btn:hover{color:#4d6c83}.type-btn.active{border-bottom-color:#4d6c83;color:#4d6c83}.search-form{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;margin-bottom:30px;padding:30px}.form-row{display:flex;gap:15px;margin-bottom:15px}.location-input,.radius-input,.search-input{border:2px solid #e5e7eb;border-radius:8px;flex:1 1;font-size:15px;padding:12px 16px;transition:border-color .2s}.location-input:focus,.radius-input:focus,.search-input:focus{border-color:#4d6c83;outline:none}.radius-input{max-width:150px}.btn-search{background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:transform .2s;width:100%}.btn-search:hover:not(:disabled){box-shadow:0 4px 12px #4d6c8366;transform:translateY(-2px)}.btn-search:disabled{cursor:not-allowed;opacity:.6}.search-results{margin-top:30px}.results-header{margin-bottom:25px}.results-header h3{color:#1f2937;font-weight:700;margin-bottom:5px}.search-meta{color:#6b7280;font-size:14px}.ai-summary{background:#f3f4f6;border-left:4px solid #4d6c83;border-radius:12px;margin-bottom:30px;padding:20px}.ai-summary h4{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:10px}.ai-summary p{color:#374151;line-height:1.6;white-space:pre-line}.vendor-results-grid{grid-gap:20px;gap:20px;margin-bottom:30px}.vendor-result-card{border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .2s}.vendor-result-card:hover{border-color:#4d6c83;box-shadow:0 4px 12px #4d6c8326}.vendor-result-header{align-items:start;display:flex;justify-content:space-between}.vendor-result-header h4{color:#1f2937;flex:1 1}.source-badge{background:#f3f4f6;border-radius:20px;color:#6b7280}.source-badge.google,.source-badge.google_search{background:#dbeafe;color:#1e40af}.source-badge.perplexity{background:#e0e7ff;color:#4f46e5}.vendor-description{color:#374151;line-height:1.5;margin-bottom:15px}.vendor-url{color:#4d6c83;display:block;font-size:13px;margin-bottom:12px;text-decoration:none;word-break:break-all}.vendor-url:hover{text-decoration:underline}.vendor-meta{margin-bottom:12px}.price-badge{border-radius:6px;font-size:12px;font-weight:600;padding:6px 12px;text-transform:uppercase}.price-badge.budget{background:#d1fae5;color:#065f46}.price-badge.mid-range{background:#dbeafe;color:#1e40af}.price-badge.high-end,.price-badge.luxury{background:#fce7f3;color:#9f1239}.vendor-contact{color:#6b7280;display:flex;flex-direction:column;font-size:13px;gap:6px;margin-bottom:15px}.btn-add-vendor,.btn-view-details{border-radius:8px;padding:10px;transition:all .2s}.btn-view-details{background:#f3f4f6;color:#374151}.btn-view-details:hover{background:#e5e7eb}.citations-section h4{color:#1f2937;font-size:18px;font-weight:600;margin-bottom:20px}.vendor-citations{border-top:1px solid #e5e7eb;margin-top:15px;padding-top:15px}.citations-label{color:#6b7280;font-size:12px;font-weight:600;margin-bottom:8px}.vendor-citations-list{display:flex;flex-direction:column;gap:6px}.vendor-citation-link{color:#4d6c83;font-size:12px;overflow:hidden;text-decoration:none;text-overflow:ellipsis;white-space:nowrap}.vendor-citation-link:hover{color:#3a5263;text-decoration:underline}.results-limit-notice{margin-bottom:20px}.related-questions{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:20px}.related-questions h4{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:15px}.related-questions ul{list-style:none;padding:0}.related-questions li{background:#f9fafb;border-radius:8px;color:#374151;font-size:14px;margin-bottom:8px;padding:10px}.vendor-modal-overlay{background:#00000080;z-index:1000}.vendor-modal{background:#fff;border-radius:16px;max-height:80vh;max-width:600px;overflow-y:auto;padding:30px;position:relative;width:90%}.vendor-modal h3{color:#1f2937;font-size:24px;font-weight:700}.modal-section,.vendor-modal h3{margin-bottom:20px}.modal-section h4{color:#374151;font-size:16px;margin-bottom:10px}.modal-section p{color:#6b7280;font-size:14px;line-height:1.5}.vendor-modal .btn-primary{background:#4d6c83;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:background .2s;width:100%}.vendor-modal .btn-primary:hover{background:#3a5263}@media (max-width:768px){.vendor-search-container{padding:20px}.search-type-selector{flex-direction:column}.type-btn{text-align:left;width:100%}.vendor-results-grid{grid-template-columns:1fr}.form-row{flex-direction:column}.radius-input{max-width:none}}.unified-vendor-search{animation:fadeIn .3s ease-in;margin:0 auto;max-width:1400px;padding:30px}.search-header{margin-bottom:30px;text-align:center}.search-header h2{color:#1a1a1a;font-size:32px;font-weight:700;margin-bottom:10px}.search-subtitle{color:#666;font-size:16px;margin:0 auto;max-width:700px}.quick-categories{align-items:center;background:linear-gradient(135deg,#f0f3ff,#e8eaff);border:2px solid #e0e4ff;border-radius:15px;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:30px;padding:25px}.quick-label{color:#495057;flex-basis:100%;font-size:15px;font-weight:700;margin-bottom:8px;margin-right:8px;text-align:center}.quick-category-btn{background:#fff;border:2px solid #4d6c83;border-radius:25px;box-shadow:0 2px 8px #00000014;color:#495057;cursor:pointer;font-size:15px;font-weight:600;padding:10px 18px;transition:all .2s ease;white-space:nowrap}.quick-category-btn:hover{background:#4d6c83;border-color:#4d6c83;box-shadow:0 6px 16px #4d6c8366;color:#fff;transform:translateY(-2px)}.unified-search-form{background:#fff;border-radius:20px;box-shadow:0 8px 30px #00000014;margin-bottom:40px;padding:30px}.search-input-group{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr;margin-bottom:20px}@media (max-width:992px){.search-input-group{gap:25px;grid-template-columns:1fr}}.input-wrapper{display:flex;flex-direction:column;min-width:0;position:relative}.input-label{align-items:center;color:#2d3748;display:flex;font-size:15px;font-weight:700;gap:10px;margin-bottom:12px;padding-bottom:4px}.label-icon{align-items:center;background:linear-gradient(135deg,#f0f3ff,#e8eaff);border-radius:8px;display:inline-flex;font-size:22px;height:28px;justify-content:center;line-height:1;padding:4px;width:28px}.search-input{background:#fff;border:2px solid #e0e0e0;border-radius:12px;box-sizing:border-box;font-family:inherit;font-size:15px;min-width:0;padding:16px 20px;transition:all .2s ease;width:100%}.search-input:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.search-input::placeholder{color:#adb5bd}.suggestions-dropdown{background:#fff;border:2px solid #e0e0e0;border-radius:0 0 12px 12px;border-top:none;box-shadow:0 8px 20px #0000001a;left:0;max-height:250px;overflow-y:auto;position:absolute;right:0;top:calc(100% - 10px);z-index:10000}.suggestion-item{align-items:center;cursor:pointer;display:flex;gap:10px;padding:12px 18px;transition:background .2s ease}.suggestion-item:hover{background:#f8f9fa}.suggestion-icon{font-size:16px}.btn-unified-search{align-items:center;background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:12px;box-shadow:0 4px 15px #4d6c8366;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:16px 32px;transition:all .3s ease;width:100%}.btn-unified-search:hover:not(:disabled){box-shadow:0 6px 20px #4d6c8380;transform:translateY(-2px)}.btn-unified-search:disabled{cursor:not-allowed;opacity:.6;transform:none}.search-icon{font-size:20px}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;height:18px;width:18px}.spinner,.spinner-small{animation:spin .6s linear infinite}.spinner-small{border:2px solid #4d6c834d;border-radius:50%;border-top-color:#4d6c83;display:inline-block;height:14px;width:14px}.search-tips{background:linear-gradient(135deg,#fff3cd,#fff9e6);border-left:4px solid #ffc107;border-radius:15px;margin-bottom:30px;padding:25px}.search-tips h4{color:#856404;font-size:18px;margin-bottom:15px;margin-top:0}.search-tips ul{margin:0;padding-left:25px}.search-tips li{color:#856404;line-height:1.6;margin-bottom:8px}.unified-search-results{animation:slideUp .4s ease-out}.results-header{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:15px;margin-bottom:30px;padding:25px}.results-header h3{color:#1a1a1a;font-size:24px;margin:0 0 15px}.results-count{color:#4d6c83;font-weight:700}.results-meta{display:flex;flex-wrap:wrap;font-size:14px;gap:20px}.meta-item{color:#495057}.meta-item strong{color:#212529;margin-right:5px}.sources{align-items:center;display:flex;gap:10px}.source-badge{border-radius:12px}.source-badge.places{background:#d1f4e0;color:#1e7e34}.source-badge.web{background:#d1ecf1;color:#0c5460}.toggle-map-btn{background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:8px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;position:absolute;right:25px;top:25px;transition:all .3s ease}.toggle-map-btn:hover{box-shadow:0 6px 16px #667eea66;transform:translateY(-2px)}.toggle-map-btn:active{transform:translateY(0)}.no-results{border-radius:15px;box-shadow:0 4px 20px #0000000d;padding:60px 30px}.no-results-icon{font-size:64px;margin-bottom:20px;opacity:.3}.no-results h4{color:#495057;font-size:20px;margin-bottom:10px}.no-results p{color:#6c757d;font-size:14px}.vendor-results-grid{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-top:30px}@media (max-width:768px){.vendor-results-grid{grid-template-columns:1fr}}.vendor-result-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;overflow:hidden;position:relative;transition:all .3s ease}.vendor-result-card:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-5px)}.vendor-result-card.verified{border:2px solid #4d6c83}.vendor-result-card.highlighted{border:2px solid #e74c3c;box-shadow:0 8px 30px #e74c3c4d;transform:translateY(-5px)}.verified-badge{align-items:center;background:#4d6c83;border-radius:20px;box-shadow:0 2px 8px #4d6c8366;color:#fff;display:flex;font-size:12px;font-weight:600;gap:5px;padding:6px 12px;position:absolute;right:12px;top:12px;z-index:10}.badge-icon{font-size:14px}.vendor-photo{background:#f8f9fa;height:200px;overflow:hidden;width:100%}.vendor-photo img{height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.vendor-result-card:hover .vendor-photo img{transform:scale(1.05)}.vendor-result-content{flex:1 1;padding:20px}.vendor-result-header{margin-bottom:12px}.vendor-result-header h4{color:#1a1a1a;font-size:18px;font-weight:600;margin:0 0 8px}.vendor-rating{align-items:center;display:flex;font-size:14px;gap:6px}.rating-stars{color:#ffc107;font-size:16px}.rating-value{color:#495057;font-weight:600}.rating-count,.vendor-address{color:#6c757d;font-size:13px}.vendor-address{align-items:flex-start;display:flex;gap:8px;line-height:1.5;margin-bottom:12px}.address-icon{flex-shrink:0;font-size:16px;margin-top:2px}.vendor-description{color:#495057;font-size:14px;line-height:1.6;margin-bottom:12px}.vendor-price-level{align-items:center;display:flex;font-size:14px;gap:8px;margin-bottom:10px}.price-label{color:#6c757d;font-weight:500}.price-indicators{color:#28a745;font-size:16px;font-weight:600}.vendor-status{align-items:center;border-radius:12px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;margin-bottom:12px;padding:6px 12px}.vendor-status.open{background:#d1f4e0;color:#1e7e34}.vendor-status.closed{background:#f8d7da;color:#721c24}.status-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:8px;width:8px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.vendor-types{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.type-tag{background:#e9ecef;border-radius:10px;color:#495057;font-size:12px;padding:4px 10px;text-transform:capitalize}.vendor-actions{background:#f8f9fa;border-top:1px solid #e9ecef;display:flex;gap:10px;padding:15px 20px}.btn-add-vendor,.btn-view-details{align-items:center;border:none;border-radius:10px;cursor:pointer;display:flex;flex:1 1;font-size:14px;font-weight:600;gap:6px;justify-content:center;padding:10px 16px;transition:all .2s ease}.btn-view-details{background:#fff;border:2px solid #dee2e6;color:#495057}.btn-view-details:hover:not(:disabled){background:#f8f9fa;border-color:#adb5bd;transform:translateY(-1px)}.btn-add-vendor{background:#4d6c83;color:#fff}.btn-add-vendor:hover{background:#3a5263;box-shadow:0 4px 12px #4d6c834d;transform:translateY(-1px)}.btn-view-details:disabled{cursor:not-allowed;opacity:.6}.vendor-modal-overlay{align-items:center;animation:fadeIn .2s ease;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:20px;position:fixed;right:0;top:0;z-index:10000}.vendor-modal.unified-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:20px;max-height:90vh;max-width:800px;overflow-y:auto;position:relative;width:100%}.modal-close{align-items:center;background:#fff;border:2px solid #dee2e6;color:#495057;display:flex;font-size:24px;height:40px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .2s ease;width:40px;z-index:10}.modal-close:hover{background:#f8f9fa;border-color:#adb5bd;transform:rotate(90deg)}.modal-header{border-bottom:2px solid #f8f9fa;padding:30px 30px 20px}.modal-header h3{color:#1a1a1a;font-size:28px;margin:0 0 15px;padding-right:40px}.modal-rating{align-items:center;display:flex;gap:12px}.rating-stars-large{color:#ffc107;font-size:20px}.rating-text{color:#495057;font-size:16px;font-weight:600}.rating-count-large{color:#6c757d;font-weight:400;margin-left:5px}.modal-photos{background:#f8f9fa;padding:20px}.photos-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.photos-grid img{border-radius:10px;cursor:pointer;height:150px;object-fit:cover;transition:transform .2s ease;width:100%}.photos-grid img:hover{transform:scale(1.05)}.modal-body{padding:30px}.modal-section{margin-bottom:30px}.modal-section:last-child{margin-bottom:0}.modal-section h4{color:#495057;font-size:18px;font-weight:600;margin:0 0 15px}.modal-section p{color:#495057;line-height:1.6;margin:8px 0}.modal-section a{color:#4d6c83;font-weight:500;text-decoration:none}.modal-section a:hover{text-decoration:underline}.maps-link{align-items:center;background:#4d6c83;border-radius:10px;color:#fff!important;display:inline-flex;font-weight:600;gap:6px;margin-top:10px;padding:8px 16px;text-decoration:none!important;transition:all .2s ease}.maps-link:hover{background:#3a5263;transform:translateX(3px)}.hours-text{color:#6c757d;font-size:14px;margin:5px 0}.reviews-list{display:flex;flex-direction:column;gap:15px}.review-item{background:#f8f9fa;border-left:3px solid #4d6c83;border-radius:10px;padding:15px}.review-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.review-header strong{color:#495057;font-size:14px}.review-rating{color:#ffc107;font-size:14px}.review-text{color:#6c757d;font-size:14px;line-height:1.6;margin:0}.modal-footer{border-top:2px solid #f8f9fa;padding:20px 30px 30px}.btn-primary-large{background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:12px;box-shadow:0 4px 15px #4d6c8366;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:16px 32px;transition:all .3s ease;width:100%}.btn-primary-large:hover{box-shadow:0 6px 20px #4d6c8380;transform:translateY(-2px)}@media (max-width:768px){.unified-vendor-search{padding:20px 15px}.search-header h2{font-size:24px}.quick-categories{padding:20px 15px}.quick-label{margin-bottom:12px;text-align:left}.quick-category-btn{font-size:14px;padding:9px 15px}.unified-search-form{padding:20px}.vendor-actions{flex-direction:column}.vendor-modal.unified-modal{margin:20px}.modal-body,.modal-footer,.modal-header{padding:20px}}.vendor-map-container{border-radius:12px;box-shadow:0 4px 6px #0000001a;height:500px;margin-bottom:30px;overflow:hidden;position:relative;width:100%}.vendor-map{height:100%;width:100%}.vendor-map-error,.vendor-map-loading{align-items:center;background:linear-gradient(135deg,#4d6c83,#7a95ac);color:#fff;display:flex;flex-direction:column;height:100%;justify-content:center}.vendor-map-loading .spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:50px;margin-bottom:15px;width:50px}.vendor-map-error{background:linear-gradient(135deg,#f5576c,#e74c3c)}.vendor-map-error p{font-size:16px;margin:0}.map-legend{background:#fff;border-radius:8px;bottom:20px;box-shadow:0 2px 6px #0000004d;font-size:13px;gap:20px;left:20px;padding:12px 18px;position:absolute;z-index:1}.legend-item,.map-legend{align-items:center;display:flex}.legend-item{gap:6px}.legend-icon{font-size:16px}.legend-icon.blue{filter:hue-rotate(200deg)}.legend-icon.red{filter:hue-rotate(0deg)}.legend-count{border-left:2px solid #e0e0e0;color:#666;font-weight:500;margin-left:auto;padding-left:20px}.map-info-window{max-width:250px;padding:10px}.map-info-window h3{color:#2c3e50;font-size:16px;margin:0 0 10px}.info-rating{align-items:center;display:flex;font-size:13px;gap:6px;margin-bottom:8px}.info-rating .stars{font-size:14px}.info-address,.info-price{color:#555;font-size:13px;margin:5px 0}.info-status{border-radius:4px;display:inline-block;font-size:12px;font-weight:600;margin:8px 0;padding:4px 8px}.info-status.open{background:#d4edda;color:#155724}.info-status.closed{background:#f8d7da;color:#721c24}.info-view-details{background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;margin-top:10px;padding:8px 16px;transition:transform .2s;width:100%}.info-view-details:hover{box-shadow:0 4px 8px #667eea4d;transform:translateY(-2px)}@media (max-width:768px){.vendor-map-container{height:400px;margin-bottom:20px}.map-legend{align-items:flex-start;flex-direction:column;font-size:12px;gap:8px;padding:10px 14px}.legend-count{border-left:none;border-top:1px solid #e0e0e0;margin-left:0;padding-left:0;padding-top:8px;width:100%}}.visual-product-search-container{margin:0 auto;max-width:1400px;padding:30px}.visual-product-search-container h2{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:8px}.subtitle{color:#6b7280;font-size:14px;margin-bottom:30px}.image-upload-area{background:#fff;border:3px dashed #d1d5db;border-radius:16px;cursor:pointer;margin-bottom:30px;padding:60px 40px;text-align:center;transition:all .3s}.image-upload-area:hover{background:#faf5ff;border-color:#4d6c83}.upload-placeholder{align-items:center;display:flex;flex-direction:column;gap:12px}.upload-icon{font-size:64px}.upload-placeholder p{color:#374151;font-size:18px;font-weight:600;margin:0}.upload-placeholder span{color:#9ca3af;font-size:14px}.image-preview{margin:0 auto;max-width:600px;position:relative}.image-preview img{border-radius:12px;box-shadow:0 4px 12px #0000001a;height:auto;width:100%}.btn-remove-image{background:#000000b3;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;position:absolute;right:10px;top:10px;transition:background .2s}.btn-remove-image:hover{background:#000000e6}.search-options{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;flex-direction:column;margin-bottom:30px;padding:25px}.search-options,.search-options>div:first-child{display:flex;gap:15px}.search-note{color:#6b7280;font-size:13px;margin:0;text-align:center}.search-options .location-input{border:2px solid #e5e7eb;border-radius:8px;flex:1 1;font-size:15px;padding:12px 16px}.search-options .location-input:focus{border-color:#4d6c83;outline:none}.btn-visual-search{background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:12px 32px;transition:transform .2s;white-space:nowrap}.btn-visual-search:hover:not(:disabled){box-shadow:0 4px 12px #4d6c8366;transform:translateY(-2px)}.btn-visual-search:disabled{cursor:not-allowed;opacity:.6}.visual-search-results{display:flex;flex-direction:column;gap:30px}.search-sources-info{background:linear-gradient(135deg,#faf5ff,#f3e8ff);border:2px solid #e9d5ff;border-radius:12px;padding:20px}.search-sources-info p{color:#6b7280;font-size:14px;margin:8px 0}.source-badge{border-radius:16px;display:inline-block;font-size:12px;font-weight:600;margin-bottom:4px;margin-right:8px;padding:4px 12px}.source-badge.google{background:#dbeafe;color:#1e40af}.source-badge.perplexity{background:#dcfce7;color:#166534}.results-note{color:#9ca3af!important;font-style:italic;margin-top:12px!important}.image-analysis-card{background:#fff;border-left:4px solid #4d6c83;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:25px}.image-analysis-card h3{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:20px}.analysis-section{margin-bottom:20px}.analysis-section:last-child{margin-bottom:0}.analysis-section h4{color:#6b7280;font-size:14px;font-weight:600;margin-bottom:10px;text-transform:uppercase}.best-guess{color:#4d6c83;font-size:18px;font-weight:600;margin:0}.best-guess-link{align-items:center;background:linear-gradient(135deg,#4d6c83,#3a5263);border-radius:6px;color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:4px;margin-left:8px;padding:6px 12px;text-decoration:none;transition:all .2s}.best-guess-link:hover{box-shadow:0 4px 12px #4d6c8366;text-decoration:none;transform:translateY(-2px)}.entities-list,.labels-list{display:flex;flex-wrap:wrap;gap:8px}.entity-tag,.label-tag{background:#f3f4f6;border-radius:20px;color:#374151;font-size:13px;font-weight:500;padding:6px 14px}.entity-tag{background:#e0e7ff;color:#4f46e5}.colors-list{display:flex;flex-wrap:wrap;gap:10px}.color-swatch{align-items:flex-end;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;height:80px;justify-content:center;overflow:hidden;position:relative;width:80px}.color-label{background:#000000b3;color:#fff;font-size:9px;padding:4px 6px;text-align:center;width:100%}.citations-section{background:#fff;border:2px solid #e5e7eb;border-radius:12px;margin-bottom:30px;padding:25px}.citations-section h3{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:20px}.citations-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.citation-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;gap:12px;padding:15px;text-decoration:none;transition:all .2s}.citation-card:hover{background:#fff;border-color:#4d6c83;box-shadow:0 2px 8px #4d6c8326}.citation-preview{align-items:center;background:linear-gradient(135deg,#4d6c83,#3a5263);border-radius:8px;display:flex;flex-shrink:0;height:60px;justify-content:center;width:60px}.citation-placeholder{font-size:24px}.citation-info{flex:1 1;min-width:0}.citation-title{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 4px}.citation-title,.citation-url{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.citation-url{color:#6b7280;font-size:12px;margin:0}.results-limit-notice{background:#fef3c7;border-radius:8px;margin-top:20px;padding:15px;text-align:center}.results-limit-notice p{color:#92400e;font-size:14px;font-weight:500;margin:0}.products-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:25px}.products-section h3{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:8px}.section-subtitle{color:#6b7280;font-size:14px;margin-bottom:20px}.products-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.product-card{border:2px solid #e5e7eb;border-radius:12px;overflow:hidden;position:relative;transition:all .2s}.product-card.google{border-color:#bfdbfe}.product-card.perplexity{border-color:#bbf7d0}.product-card:hover{border-color:#4d6c83;box-shadow:0 4px 12px #4d6c8326;transform:translateY(-2px)}.product-rank{align-items:center;background:#000c;border-radius:50%;box-shadow:0 2px 8px #0000004d;color:#fff;display:flex;font-size:14px;font-weight:700;height:32px;justify-content:center;left:10px;width:32px}.product-rank,.product-source-badge{position:absolute;top:10px;z-index:10}.product-source-badge{border-radius:16px;box-shadow:0 2px 8px #0000001a;font-size:11px;font-weight:600;padding:4px 10px;right:10px}.product-source-badge.google{background:#3b82f6;color:#fff}.product-source-badge.perplexity{background:#10b981;color:#fff}.product-image{background:#f3f4f6;height:200px;overflow:hidden;width:100%}.product-image img{height:100%;object-fit:cover;width:100%}.product-info{padding:16px}.product-info h4{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:6px}.product-vendor{align-items:center;color:#6b7280;display:flex;font-size:13px;gap:6px;margin-bottom:12px}.vendor-icon{font-size:16px}.product-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.product-price{color:#4d6c83;font-size:18px;font-weight:700}.product-location,.product-price{align-items:center;display:flex;gap:6px;margin:0}.product-location{color:#059669;font-size:13px;font-weight:600}.location-icon,.price-icon{font-size:14px}.product-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#6b7280;display:-webkit-box;font-size:13px;line-height:1.5;margin-bottom:15px;overflow:hidden}.btn-view-product{background:#4d6c83;border-radius:8px;color:#fff;display:inline-block;font-size:14px;font-weight:600;padding:10px;text-align:center;text-decoration:none;transition:background .2s;width:100%}.btn-view-product:hover{background:#3a5263}.similar-images-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:25px}.similar-images-section h3{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:20px}.similar-images-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.similar-image{aspect-ratio:1;background:#f3f4f6;border-radius:8px;display:block;overflow:hidden}.similar-image img{height:100%;object-fit:cover;transition:transform .2s;width:100%}.similar-image:hover img{transform:scale(1.05)}.matching-pages-section{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;padding:25px}.matching-pages-section h3{color:#1f2937;font-size:20px;font-weight:700;margin-bottom:20px}.matching-pages-list{display:flex;flex-direction:column;gap:10px}.matching-page{align-items:center;background:#f9fafb;border-radius:8px;color:#374151;display:flex;gap:12px;padding:14px;text-decoration:none;transition:background .2s}.matching-page:hover{background:#f3f4f6}.page-icon{flex-shrink:0;font-size:20px}.page-title{flex:1 1;font-size:14px}.no-results{background:#fff;border-radius:12px;padding:60px;text-align:center}.no-results p{color:#6b7280;font-size:16px}@media (max-width:768px){.visual-product-search-container{padding:20px}.image-upload-area{padding:40px 20px}.search-options>div:first-child{flex-direction:column}.products-grid{grid-template-columns:1fr}.similar-images-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.communication-logs-container{margin:0 auto;max-width:1200px;padding:30px}.logs-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:30px}.logs-header h2{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:5px}.project-name{color:#6b7280;font-size:14px;margin:0}.btn-add-comm{background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:transform .2s}.btn-add-comm:hover{box-shadow:0 4px 12px #4d6c8366;transform:translateY(-2px)}.add-comm-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.add-comm-modal{background:#fff;border-radius:16px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:700px;overflow-y:auto;padding:0;width:90%}.modal-header{padding:25px 30px}.modal-header h3{color:#1f2937;font-size:20px}.modal-close{background:#f3f4f6;border:none;border-radius:50%;cursor:pointer;font-size:18px;height:32px;transition:background .2s;width:32px}.modal-close:hover{background:#e5e7eb}.add-comm-modal form{padding:30px}.form-grid{grid-gap:20px;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:25px}.form-group label{color:#374151;margin-bottom:8px}.form-group input[type=text],.form-group select,.form-group textarea{border:2px solid #e5e7eb;border-radius:8px;font-size:14px;padding:10px 14px;transition:border-color .2s}.form-group.checkbox-group{align-items:center;flex-direction:row;gap:8px}.form-group.checkbox-group label{align-items:center;cursor:pointer;display:flex;font-weight:400;gap:8px;margin:0}.form-group.checkbox-group input[type=checkbox]{cursor:pointer;height:18px;width:18px}.btn-submit{background:#4d6c83;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:16px;font-weight:600;padding:14px;transition:background .2s}.btn-submit:hover{background:#3a5263}.btn-cancel{background:#f3f4f6;border:none;border-radius:8px;color:#374151;cursor:pointer;font-size:16px;font-weight:600;padding:14px 24px;transition:background .2s}.btn-cancel:hover{background:#e5e7eb}.communications-list{display:flex;flex-direction:column;gap:30px}.vendor-comm-group{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.vendor-group-header{align-items:center;background:linear-gradient(135deg,#f9fafb,#f3f4f6);border-bottom:2px solid #e5e7eb;color:#1f2937;display:flex;font-size:18px;font-weight:700;justify-content:space-between;margin:0;padding:20px 25px}.comm-count{color:#6b7280;font-size:14px;font-weight:500}.timeline{padding:25px}.timeline-item{display:flex;gap:20px;margin-bottom:25px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-item:not(:last-child):before{background:#e5e7eb;bottom:-25px;content:"";left:15px;position:absolute;top:40px;width:2px}.timeline-marker{align-items:center;border-radius:50%;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:32px;justify-content:center;width:32px;z-index:1}.timeline-item.outbound .timeline-marker{background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1e40af}.timeline-item.inbound .timeline-marker{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#065f46}.timeline-content{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;flex:1 1;padding:18px}.comm-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:10px}.comm-meta{display:flex;flex-direction:column;gap:4px}.comm-type{align-items:center;background:#fff;border-radius:6px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px;text-transform:uppercase;width:-webkit-fit-content;width:fit-content}.comm-type.email{color:#1e40af}.comm-type.phone{color:#065f46}.comm-type.meeting{color:#7c2d12}.comm-type.text{color:#4f46e5}.comm-date,.comm-type.other{color:#6b7280}.comm-date{font-size:12px}.btn-delete{background:#fee2e2;border:none;border-radius:6px;cursor:pointer;font-size:16px;height:32px;transition:background .2s;width:32px}.btn-delete:hover{background:#fecaca}.comm-subject{color:#1f2937;font-size:16px;font-weight:600;margin:0 0 10px}.comm-notes{color:#374151;font-size:14px;line-height:1.6;margin:0 0 12px;white-space:pre-line}.response-status{border-top:1px solid #e5e7eb;margin-top:12px;padding-top:12px}.status-received{align-items:center;background:#d1fae5;border-radius:6px;color:#065f46;display:inline-flex;font-size:13px;font-weight:600;padding:6px 12px}.status-awaiting{align-items:center;display:flex;justify-content:space-between}.status-awaiting span{color:#f59e0b;font-size:13px;font-weight:600}.btn-mark-received{background:#4d6c83;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:background .2s}.btn-mark-received:hover{background:#3a5263}.empty-state{background:#fff;border-radius:12px}.empty-icon{font-size:64px;margin-bottom:20px}.empty-state p{color:#6b7280;margin-bottom:25px}.empty-state .btn-primary{background:#4d6c83;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:15px;font-weight:600;padding:12px 24px;transition:background .2s}.empty-state .btn-primary:hover{background:#3a5263}.loading{color:#6b7280;font-size:16px}@media (max-width:768px){.communication-logs-container{padding:20px}.logs-header{flex-direction:column;gap:15px}.btn-add-comm{width:100%}.form-grid{grid-template-columns:1fr}.timeline-item{gap:12px}.timeline-marker{font-size:14px;height:28px;width:28px}.comm-header,.status-awaiting{flex-direction:column;gap:10px}.status-awaiting{align-items:start}.btn-mark-received{width:100%}}.rfq-manager{background:linear-gradient(135deg,#f9f9f8,#e6e6e4);background:linear-gradient(135deg,var(--neutral-bg,#f9f9f8) 0,var(--grey-light,#e6e6e4) 100%);min-height:100vh;padding:32px;position:relative;width:100%}.btn-close-overlay{background:#fffffff2;border:1px solid #4d6c834d;border-radius:12px;box-shadow:0 4px 12px #4d6c8333;color:#4d6c83;cursor:pointer;font-size:1.4rem;font-weight:700;padding:10px 16px;position:absolute;right:20px;top:20px;transition:all .3s ease;z-index:100}.btn-close-overlay:hover{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#0000;color:#fff;transform:scale(1.05)}.rfq-list-view{margin:0 auto;max-width:1400px}.rfq-header{align-items:flex-start;display:flex;gap:20px;justify-content:space-between;margin-bottom:40px}.rfq-header h1{color:#3b3c3d;color:var(--text-primary,#3b3c3d);font-family:Montserrat,Inter,sans-serif;font-size:2.5rem;font-weight:800;margin:0 0 8px}.rfq-subtitle{color:#998396;font-size:1.1rem;line-height:1.5;margin:0}.rfq-grid{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));margin-top:32px}.rfq-card{background:linear-gradient(145deg,#fff,#fefeff);border:2px solid #4d6c8326;border-radius:20px;box-shadow:0 4px 16px #4d6c831f,inset 0 1px 0 #ffffffe6;overflow:hidden;padding:28px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.rfq-card:before{background:linear-gradient(90deg,#4d6c83,#7a95ac 50%,#3a5263);content:"";height:5px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s ease}.rfq-card:hover{border-color:#4d6c8366;box-shadow:0 12px 32px #4d6c8340,inset 0 1px 0 #ffffffe6;transform:translateY(-6px) scale(1.02)}.rfq-card:hover:before{opacity:1}.rfq-card-header{align-items:flex-start;border-bottom:2px solid #4d6c831f;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:20px}.rfq-card-header h3{color:#5d4e7a;font-size:1.3rem;font-weight:800;line-height:1.3;margin:0 0 8px}.rfq-ref{background:#4d6c831a;border-radius:8px;color:#3a5263;display:inline-block;font-size:.9rem;font-weight:700;margin-top:4px;padding:4px 12px}.rfq-status{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border:2px solid #6b728033;border-radius:20px;box-shadow:0 2px 8px #0000001a;color:#4b5563;font-size:.75rem;font-weight:800;letter-spacing:.8px;padding:8px 16px;text-transform:uppercase}.rfq-card-body{margin-bottom:24px}.rfq-info{align-items:center;background:#4d6c8308;border-radius:10px;display:flex;justify-content:space-between;margin-bottom:14px;padding:8px 12px;transition:all .2s ease}.rfq-info:hover{background:#4d6c8314;transform:translateX(4px)}.rfq-info .label{color:#3a5263;font-size:.9rem;font-weight:700}.rfq-info .value{color:#5d4e7a;font-size:.95rem;font-weight:700;text-align:right}.rfq-card-actions{border-top:2px solid #4d6c8314;display:flex;gap:12px;padding-top:20px}.empty-state{background:linear-gradient(145deg,#fff,#fefeff);border:2px solid #4d6c831a;border-radius:24px;box-shadow:0 8px 28px #4d6c8326;margin:80px auto;max-width:650px;padding:100px 40px}.empty-icon{animation:bounce 2s infinite;font-size:6rem;margin-bottom:32px}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.empty-state h3{color:#5d4e7a;font-size:2rem;font-weight:800;margin:0 0 12px}.empty-state p{color:#998396;font-size:1.2rem;line-height:1.6;margin:0 0 40px}.loading-spinner{padding:100px 40px;text-align:center}.spinner{animation:spin 1s linear infinite;border:5px solid #4d6c8333;border-radius:50%;border-top-color:#4d6c83;display:inline-block;height:50px;margin-bottom:20px;width:50px}.loading-spinner p{color:#3a5263;font-size:1.2rem;font-weight:700}.rfq-form-view,.rfq-preview-view{background:#fff;border-radius:20px;box-shadow:0 4px 20px #4d6c831f;margin:0 auto;max-width:1200px;padding:40px}.form-header,.preview-header{align-items:center;border-bottom:2px solid #4d6c8326;display:flex;justify-content:space-between;margin-bottom:32px;padding-bottom:24px}.form-header h2,.preview-header h2{color:#5d4e7a;font-family:Montserrat,Inter,sans-serif;font-size:2rem;font-weight:800;margin:0}.form-container{margin-top:24px}.form-section{background:#4d6c8308;border:1px solid #4d6c8314;border-radius:12px;margin-bottom:32px}.form-section h3{font-size:1.2rem}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.form-row{grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.form-field{display:flex;flex-direction:column}.form-field.full-width{grid-column:1/-1}.form-field label{color:#5d4e7a;font-size:.9rem;font-weight:600;margin-bottom:8px}.form-field input,.form-field select,.form-field textarea{background:#fff;border:1.5px solid #4d6c8333;border-radius:10px;color:#5d4e7a;font-family:Inter,sans-serif;font-size:.95rem;padding:12px 14px;transition:all .2s ease}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.form-field textarea{min-height:80px;resize:vertical}.item-card{background:#fff;border:1px solid #4d6c8333;border-radius:12px;box-shadow:0 2px 8px #4d6c8314;margin-bottom:16px;padding:20px}.item-header{align-items:center;border-bottom:1px solid #4d6c831a;display:flex;justify-content:space-between;margin-bottom:16px;padding-bottom:12px}.item-header h4{color:#4d6c83;font-size:1rem;font-weight:700;margin:0}.btn-primary{background:linear-gradient(135deg,#3a5263,#4d6c83 50%,#7a95ac);border:none;border-radius:14px;box-shadow:0 4px 14px #4d6c834d,inset 0 1px 0 #fff3;cursor:pointer;font-size:1rem;font-weight:800;overflow:hidden;padding:14px 28px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:before{background:#fff3;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s;width:0}.btn-primary:hover:before{height:300px;width:300px}.btn-primary:hover:not(:disabled){box-shadow:0 8px 20px #4d6c8366,inset 0 1px 0 #ffffff4d;transform:translateY(-3px) scale(1.02)}.btn-primary:active:not(:disabled){transform:translateY(-1px) scale(.98)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:#4d6c831a;border:2px solid #4d6c8333;border-radius:14px;color:#3a5263;cursor:pointer;font-size:.95rem;font-weight:700;padding:12px 24px;transition:all .3s ease}.btn-secondary:hover{background:#4d6c8326;border-color:#4d6c834d;box-shadow:0 4px 12px #4d6c8326;transform:translateY(-2px)}.btn-tertiary{background:#e5e7eb;border:none;border-radius:12px;color:#5d4e7a;cursor:pointer;font-size:1rem;font-weight:700;padding:14px 28px;transition:all .2s ease}.btn-tertiary:hover{background:#d1d5db}.btn-danger{background:#ef44440d;border:2px solid #ef444440;border-radius:12px;color:#dc2626;cursor:pointer;font-size:.95rem;font-weight:700;padding:12px 24px;transition:all .3s ease}.btn-danger:hover{background:linear-gradient(135deg,#ef4444,#dc2626);border-color:#dc2626;box-shadow:0 4px 12px #ef444459;color:#fff;transform:translateY(-2px)}.btn-back{border:1px solid #4d6c8333;font-size:.95rem;padding:10px 18px}.btn-back:hover{background:#4d6c8326;transform:translateX(-4px)}.btn-add{background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:10px;box-shadow:0 2px 8px #4d6c834d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 18px;transition:all .2s ease}.btn-add:hover{box-shadow:0 4px 12px #4d6c8366;transform:translateY(-2px)}.btn-remove{border:1px solid #ef444433;font-size:.85rem;font-weight:600;padding:6px 12px}.btn-remove:hover{background:#ef4444;border-color:#ef4444;color:#fff}.form-actions{border-top:2px solid #4d6c8326;margin-top:32px;padding-top:24px}.preview-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px}.preview-metadata{grid-gap:16px;background:#4d6c830d;border:1px solid #4d6c831a;border-radius:12px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px;padding:20px}.metadata-item{display:flex;flex-direction:column;gap:6px}.metadata-item strong{color:#4d6c83;font-size:.9rem;font-weight:700}.metadata-item span{color:#5d4e7a;font-size:.95rem;font-weight:600}.preview-success{background:#10b9811a;border:2px solid #10b98133;border-radius:12px;margin-bottom:24px;padding:16px 20px}.preview-success p{color:#047857;font-size:.95rem;font-weight:600;margin:0}.preview-document{background:#fff;border:1px solid #4d6c8333;border-radius:12px;box-shadow:inset 0 2px 8px #4d6c830d;max-height:600px;overflow-y:auto;padding:32px}.preview-document pre{word-wrap:break-word;color:#5d4e7a;font-family:Courier New,monospace;font-size:.9rem;line-height:1.8;margin:0;white-space:pre-wrap}@media (max-width:768px){.rfq-manager{padding:16px}.rfq-header{flex-direction:column;gap:20px}.rfq-header h1{font-size:2rem}.form-row,.rfq-grid{grid-template-columns:1fr}.form-actions,.preview-actions{flex-direction:column}.form-actions button,.preview-actions button{width:100%}.rfq-card-actions{flex-direction:column}.rfq-card-actions button{width:100%}.rfq-form-view,.rfq-preview-view{padding:24px}.form-header,.preview-header{align-items:flex-start;flex-direction:column;gap:16px}}.rfq-card,.rfq-manager{animation:fadeIn .3s ease-out}.purchase-order-manager{background:linear-gradient(135deg,#f9f9f8,#e6e6e4);background:linear-gradient(135deg,var(--neutral-bg,#f9f9f8) 0,var(--grey-light,#e6e6e4) 100%);min-height:100vh;padding:32px 40px}.po-manager-header{margin-bottom:32px}.po-manager-header h1{align-items:center;color:#3b3c3d;color:var(--text-primary,#3b3c3d);display:flex;font-family:Montserrat,Inter,sans-serif;font-size:2rem;font-weight:900;gap:16px;letter-spacing:.5px;margin:0}.po-content{background:#f3efea;background:var(--panel-bg,#f3efea);border:1px solid #8a939b33;border-radius:20px;box-shadow:0 4px 24px #4d6c831a;padding:32px}.po-list-container{width:100%}.po-list-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.po-list-header h2{font-size:1.5rem;font-weight:800;margin:0}.po-list-header h2,.project-badge{color:#3b3c3d;color:var(--text-primary,#3b3c3d)}.project-badge{background:linear-gradient(135deg,#e6e6e4,#f9f9f8);background:linear-gradient(135deg,var(--grey-light,#e6e6e4) 0,var(--neutral-bg,#f9f9f8) 100%);border:1px solid #4d6c8333;border-radius:12px;font-size:.9rem;font-weight:600;padding:6px 16px}.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,#4d6c83,#7a95ac);box-shadow:0 4px 12px #4d6c834d;color:#fff}.btn-primary:hover{box-shadow:0 6px 16px #4d6c8366;transform:translateY(-2px)}.btn-secondary{background:#4d6c8326;border:1px solid #4d6c834d;color:#4d6c83}.btn-secondary:hover{background:#4d6c8340;transform:translateY(-1px)}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.5;transform:none}.view-filters{background:#4d6c831a;border-radius:12px;display:flex;gap:8px;margin-bottom:20px;padding:8px}.view-filters button{background:#0000;border:none;border-radius:8px;color:#5d4e7a;cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:all .2s ease}.view-filters button:hover{background:#4d6c831a}.view-filters button.active{background:linear-gradient(135deg,#4d6c83,#7a95ac);box-shadow:0 2px 8px #4d6c834d;color:#fff}.po-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px}.search-box{border:1.5px solid #7a95ac;gap:10px;min-width:250px;padding:10px 16px;transition:all .2s ease}.search-box input{background:#0000;font-size:.95rem;padding:0!important}.po-filters select{background:#fff;border:1.5px solid #7a95ac;border-radius:12px;color:#5d4e7a;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 16px;transition:all .2s ease}.po-filters select:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.ai-insight-box{animation:fadeInUp .5s ease;background:linear-gradient(135deg,#e8edf2,#f5f7f9);border:2px solid #4d6c8333;border-radius:16px;margin-bottom:24px;padding:24px}.ai-insight-box h3{align-items:center;color:#5d4e7a;display:flex;font-size:1.1rem;font-weight:700;gap:10px;margin-bottom:16px}.budget-summary{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:20px}.budget-stat{background:#ffffffb3;border:1px solid #4d6c8326;border-radius:12px;display:flex;flex-direction:column;gap:6px;padding:16px}.budget-stat.over-budget{background:#ef44441a;border-color:#ef44444d}.budget-stat .label{color:#999;font-size:.85rem;font-weight:500}.budget-stat .value{color:#5d4e7a;font-size:1.4rem;font-weight:700}.budget-stat.over-budget .value{color:#ef4444}.ai-analysis{background:#ffffffe6;border-radius:12px;color:#5d4e7a;font-size:.95rem;line-height:1.6;padding:16px;white-space:pre-wrap}.ai-alert-box{animation:fadeInUp .5s ease;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:2px solid #ef44444d;border-radius:16px;margin-bottom:24px;padding:24px}.ai-alert-box h3{align-items:center;color:#dc2626;display:flex;font-size:1.1rem;font-weight:700;gap:10px;margin-bottom:16px}.duplicate-warning{background:#ffffffe6;border-left:4px solid #f59e0b;border-radius:12px;margin-bottom:12px;padding:16px}.duplicate-warning.high{border-left-color:#ef4444}.duplicate-warning strong{color:#5d4e7a;display:block;font-size:1rem;margin-bottom:8px}.duplicate-warning p{color:#666;font-size:.9rem;margin:6px 0}.duplicate-warning .recommendation{color:#4d6c83;font-style:italic;font-weight:600}.po-grid{grid-gap:20px;animation:fadeIn .5s ease;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.po-card{background:linear-gradient(135deg,#fff,#fefffe);border:2px solid #7a95ac59;border-radius:16px;box-shadow:0 2px 12px #4d6c8314;cursor:pointer;overflow:hidden;padding:20px;position:relative;transition:all .3s ease}.po-card:hover{box-shadow:0 8px 24px #4d6c8326;transform:translateY(-4px)}.po-card-identity{align-items:flex-start;display:flex;gap:12px}.po-card-color-dot{border:2px solid #ffffffb3;border-radius:999px;box-shadow:0 0 0 6px #ffffff59;flex-shrink:0;height:16px;width:16px}.po-card-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.po-card-header h3{color:#5d4e7a;font-size:1.2rem;font-weight:700;margin:0 0 6px}.po-card-header .vendor-name{color:#999;font-size:.9rem;margin:0}.status-badge{border-radius:20px;color:#fff}.po-card-body{grid-gap:12px;border-bottom:1px solid #7a95ac80;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:16px;padding-bottom:16px}.po-stat{display:flex;flex-direction:column;gap:4px}.po-stat .label{color:#999;font-size:.8rem;font-weight:500}.po-stat .value{color:#5d4e7a;font-size:1.1rem;font-weight:700}.po-card-footer{display:flex;flex-wrap:wrap;gap:8px}.payment-badge,.warning-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.8rem;font-weight:600;gap:6px;padding:6px 12px}.payment-badge.paid{background:#10b9811a;border:1px solid #10b9814d;color:#10b981}.payment-badge.pending{background:#f59e0b1a;border:1px solid #f59e0b4d;color:#f59e0b}.warning-badge{background:#ef44441a;border:1px solid #ef44444d;color:#ef4444}.empty-state{padding:80px 40px}.empty-state p{margin:0 0 24px}.empty-state p,.loading{color:#999;font-size:1.1rem}.loading{padding:60px;text-align:center}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.po-detail-container{animation:fadeIn .3s ease}.po-detail-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px}.btn-back{align-items:center;background:#4d6c831a;border:1px solid #4d6c834d;border-radius:10px;color:#4d6c83;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:10px 16px;transition:all .2s ease}.btn-back:hover{background:#4d6c8333;transform:translateX(-2px)}.po-detail-title{align-items:center;display:flex;flex:1 1;gap:16px}.po-detail-title h2{color:#5d4e7a;font-size:1.5rem;font-weight:800;margin:0}.po-detail-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:24px}.po-detail-card{background:linear-gradient(135deg,#fff,#fefffe);border:2px solid #7a95ac4d;border-radius:16px;padding:24px;transition:all .3s ease}.po-detail-card:hover{border-color:#4d6c8366;box-shadow:0 4px 16px #4d6c831a}.po-detail-card.full-width{grid-column:1/-1}.po-detail-card h3{align-items:center;color:#5d4e7a;display:flex;font-size:1.1rem;font-weight:700;gap:10px;margin:0 0 20px}.detail-field{align-items:center;border-bottom:1px solid #7a95ac33;display:flex;justify-content:space-between;padding:12px 0}.detail-field:last-child{border-bottom:none}.detail-field.total{border-top:2px solid #4d6c834d;margin-top:12px;padding-top:16px}.field-label{color:#666;font-size:.95rem;font-weight:500}.field-value{align-items:center;color:#5d4e7a;display:flex;font-size:1rem;font-weight:700;gap:10px}.payment-status{border-radius:12px;font-size:.8rem;font-weight:600;margin-left:10px;padding:4px 12px}.payment-status.paid{background:#10b9811a;color:#10b981}.payment-status.pending{background:#f59e0b1a;color:#f59e0b}.btn-pay{background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.8rem;font-weight:600;padding:6px 12px;transition:all .2s ease}.btn-pay:hover{box-shadow:0 4px 8px #4d6c834d;transform:translateY(-1px)}.line-items-table{margin-top:16px;overflow-x:auto}.line-items-table table{border-collapse:collapse;width:100%}.line-items-table th{background:#4d6c831a;border-bottom:2px solid #4d6c834d;color:#5d4e7a;font-weight:700;padding:12px;text-align:left}.line-items-table td{border-bottom:1px solid #7a95ac33;color:#666;padding:12px}.line-items-table td strong{color:#5d4e7a}.item-status{border-radius:12px;color:#fff;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 10px}.compliance-checks{margin-bottom:20px}.completeness-score{display:flex;flex-direction:column;gap:8px}.completeness-score>span{color:#5d4e7a;font-weight:600}.score-bar{background:#7a95ac33;border-radius:16px;height:32px;overflow:hidden;position:relative;width:100%}.score-fill{border-radius:16px;height:100%;transition:width .5s ease}.score-value{color:#5d4e7a;font-size:.9rem;font-weight:700;position:absolute;right:16px;top:50%;transform:translateY(-50%)}.ai-suggestions,.ai-warnings{margin-top:16px}.ai-suggestions h4,.ai-warnings h4{color:#5d4e7a;font-weight:600;margin-bottom:12px}.warning-item{background:#ef44441a;border-left:4px solid #ef4444;color:#dc2626}.suggestion-item,.warning-item{border-radius:8px;margin-bottom:8px;padding:12px}.suggestion-item{background:#4d6c831a;border-left:4px solid #4d6c83;color:#5d4e7a}.generated-document{background:#f8f8f8;border:1px solid #e0e0e0;border-radius:12px;color:#333;font-family:Courier New,monospace;font-size:.9rem;line-height:1.6;margin-bottom:16px;max-height:500px;overflow-y:auto;padding:20px;white-space:pre-wrap}.po-create-container{animation:fadeIn .3s ease}.po-create-header{align-items:center;display:flex;gap:16px;margin-bottom:24px}.po-create-header h2{color:#5d4e7a;font-size:1.5rem;font-weight:800;margin:0}.po-form{max-width:900px}.form-section{background:linear-gradient(135deg,#fff,#fefffe);border:2px solid #7a95ac4d;border-radius:16px;margin-bottom:24px;padding:24px}.form-section h3{color:#5d4e7a;font-size:1.1rem;font-weight:700;margin:0 0 20px}.form-row{margin-bottom:16px}.form-row label{color:#5d4e7a;display:flex;flex-direction:column;font-size:.95rem;font-weight:600;gap:8px}.form-row input[type=number],.form-row input[type=text],.form-row select,.form-row textarea{background:#fff;border:1.5px solid #7a95ac;border-radius:10px;font-family:Inter,sans-serif;font-size:.95rem;padding:12px;transition:all .2s ease}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.form-row input[type=checkbox]{height:20px;margin-right:8px;width:20px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-grid label.full-width{grid-column:1/-1}.line-item-form{background:#4d6c830d;border:1px solid #7a95ac4d;border-radius:12px;margin-bottom:16px;padding:20px}.line-item-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.line-item-header h4{color:#5d4e7a;font-weight:700;margin:0}.btn-remove{align-items:center;background:#ef44441a;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;padding:8px;transition:all .2s ease}.btn-remove:hover{background:#ef444433}.financial-summary{background:#4d6c830d;border:1px solid #7a95ac4d;border-radius:12px;padding:20px}.summary-row{align-items:center;color:#666;display:flex;font-size:.95rem;justify-content:space-between;padding:10px 0}.summary-row.total{border-top:2px solid #4d6c834d;color:#5d4e7a;font-size:1.2rem;font-weight:700;margin-top:12px;padding-top:16px}.form-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.po-analytics-container{animation:fadeIn .3s ease}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.analytics-header h2{align-items:center;color:#5d4e7a;display:flex;font-size:1.5rem;font-weight:800;gap:12px;margin:0}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:32px}.analytics-card{align-items:center;background:linear-gradient(135deg,#fff,#fefffe);border:2px solid #7a95ac4d;border-radius:16px;display:flex;gap:16px;padding:24px;transition:all .3s ease}.analytics-card:hover{border-color:#4d6c8366;box-shadow:0 8px 24px #4d6c8326;transform:translateY(-4px)}.card-icon{border-radius:12px;height:56px;width:56px}.card-label{color:#999;font-size:.85rem;font-weight:500}.card-value{font-size:1.8rem;font-weight:800}.analytics-section{background:linear-gradient(135deg,#fff,#fefffe);border:2px solid #7a95ac4d;border-radius:16px;margin-bottom:24px;padding:24px}.analytics-section h3{color:#5d4e7a;font-size:1.2rem;font-weight:700;margin:0 0 20px}.status-chart{gap:16px}.status-bar,.status-chart{display:flex;flex-direction:column}.status-bar{gap:8px}.status-info{align-items:center;display:flex;justify-content:space-between}.status-name{color:#5d4e7a;font-weight:600;text-transform:capitalize}.status-count{color:#999;font-weight:600}.bar-container{background:#7a95ac33;border-radius:12px;height:24px;overflow:hidden}.bar-fill{border-radius:12px;height:100%;transition:width .5s ease}.vendor-table{overflow-x:auto}.vendor-table table{border-collapse:collapse;width:100%}.vendor-table th{background:#4d6c831a;border-bottom:2px solid #4d6c834d;color:#5d4e7a;font-weight:700;padding:12px;text-align:left}.vendor-table td{border-bottom:1px solid #7a95ac33;color:#666;padding:12px}.vendor-table td strong{color:#5d4e7a}.recent-pos{display:flex;flex-direction:column;gap:12px}.recent-po-card{align-items:center;background:#4d6c830d;border:1px solid #7a95ac4d;border-radius:12px;display:flex;justify-content:space-between;padding:16px;transition:all .2s ease}.recent-po-card:hover{background:#4d6c831a;border-color:#4d6c8366}.recent-po-card strong{color:#5d4e7a;font-weight:700}.recent-po-card p{color:#999;font-size:.9rem;margin:4px 0 0}.po-amount{color:#5d4e7a;font-size:1.2rem;font-weight:700;margin-right:12px}.po-status{border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;padding:6px 12px;text-transform:capitalize}@media (max-width:768px){.purchase-order-manager{padding:16px}.po-content{padding:20px}.po-grid{grid-template-columns:1fr}.po-list-header{align-items:flex-start;flex-direction:column}.budget-summary,.po-detail-grid{grid-template-columns:1fr}.po-detail-header{align-items:flex-start;flex-direction:column}.analytics-grid{grid-template-columns:1fr}.line-items-table{font-size:.85rem}.form-grid{grid-template-columns:1fr}}.po-draft-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.po-draft-modal{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;display:flex;flex-direction:column;max-height:90vh;max-width:900px;width:90%}.po-draft-modal-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:24px}.po-draft-modal-title{align-items:center;display:flex;gap:12px}.po-draft-modal-title h2{color:#1f2937;font-size:24px;font-weight:600;margin:0}.po-draft-close-btn{background:none;border:none;border-radius:6px;color:#6b7280;cursor:pointer;padding:8px;transition:all .2s}.po-draft-close-btn:hover{background-color:#f3f4f6;color:#1f2937}.po-draft-modal-body{flex:1 1;overflow-y:auto;padding:24px}.po-draft-empty-state{align-items:center;display:flex;justify-content:center;min-height:400px}.po-draft-info-card{max-width:500px;text-align:center}.po-draft-info-card h3{color:#1f2937;font-size:20px;font-weight:600;margin:0 0 12px}.po-draft-info-card p{color:#6b7280;line-height:1.6;margin:0 0 24px}.po-draft-features{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;text-align:left}.po-draft-feature{align-items:center;background-color:#f9fafb;border-radius:8px;display:flex;gap:12px;padding:12px}.po-draft-feature span{color:#374151;font-size:14px}.po-draft-summary{grid-gap:12px;background-color:#f9fafb;border-radius:8px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:24px;padding:16px;text-align:left}.po-draft-summary-item{display:flex;flex-direction:column;gap:4px}.po-draft-summary-item .label{color:#6b7280;font-size:12px;font-weight:500}.po-draft-summary-item .value{color:#1f2937;font-size:16px;font-weight:600}.po-draft-generate-btn{align-items:center;background:linear-gradient(135deg,#4d6c83,#3a5263);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 28px;transition:all .2s;width:100%}.po-draft-generate-btn:hover:not(:disabled){box-shadow:0 8px 16px #4d6c834d;transform:translateY(-1px)}.po-draft-generate-btn:disabled{cursor:not-allowed;opacity:.6}.po-draft-content{display:flex;flex-direction:column;gap:16px}.po-draft-toolbar{background-color:#f9fafb;border-radius:8px;justify-content:space-between;padding:16px}.po-draft-meta,.po-draft-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.po-draft-meta-label{color:#6b7280;font-size:13px}.po-draft-badge{align-items:center;border-radius:6px;display:flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px}.po-draft-badge.warning{background-color:#fef3c7;color:#92400e}.po-draft-actions{display:flex;gap:8px}.po-draft-action-btn{align-items:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .2s}.po-draft-action-btn:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.po-draft-action-btn:disabled{cursor:not-allowed;opacity:.5}.po-draft-action-btn.secondary{background-color:initial;border-color:#0000;color:#6b7280}.po-draft-action-btn.secondary:hover:not(:disabled){background-color:#f3f4f6}.po-draft-viewer{background-color:#fff;border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 2px 8px #0000000d;overflow:hidden}.po-draft-preview{word-wrap:break-word;margin:0;overflow-x:auto;white-space:pre-wrap}.po-draft-editor,.po-draft-preview{background:linear-gradient(180deg,#fff 0,#fafafa);color:#1f2937;font-family:Courier New,Courier,monospace;font-size:14px;letter-spacing:.3px;line-height:1.9;padding:32px}.po-draft-editor{border:none;min-height:500px;outline:none;resize:vertical;width:100%}.po-draft-help{align-items:center;background-color:#fffbeb;border:1px solid #fef3c7;border-radius:8px;color:#92400e;display:flex;font-size:13px;gap:12px;padding:12px 16px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media print{.po-draft-modal-overlay{background:none;position:static}.po-draft-modal{box-shadow:none;max-width:100%}.po-draft-help,.po-draft-modal-header,.po-draft-toolbar{display:none}.po-draft-preview{background:#fff;font-size:12pt;line-height:1.6;padding:0}}@media (max-width:768px){.po-draft-modal{max-height:95vh;width:95%}.po-draft-modal-header{padding:16px}.po-draft-modal-title h2{font-size:20px}.po-draft-modal-body{padding:16px}.po-draft-toolbar{align-items:flex-start;flex-direction:column}.po-draft-actions{overflow-x:auto;width:100%}.po-draft-action-btn{flex-shrink:0}.po-draft-summary{grid-template-columns:1fr}.po-draft-editor,.po-draft-preview{font-size:13px;line-height:1.7;padding:20px}}.receiving-empty-state{align-items:center;background:linear-gradient(135deg,#f8f5ffe6,#ece4ffcc);border:1px dashed #4d6c8373;border-radius:18px;color:#5d4e7a;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:32px;text-align:center}.receiving-storage-manager{display:flex;flex-direction:column;gap:28px}.receiving-dashboard-cards{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.dashboard-card{background:#fff;border:1px solid #4d6c8340;border-radius:18px;box-shadow:0 10px 30px #5d4e7a26;display:flex;flex-direction:column;gap:16px;padding:20px 22px;transition:transform .2s ease,box-shadow .2s ease}.dashboard-card.clickable{cursor:pointer}.dashboard-card.clickable:hover{box-shadow:0 16px 40px #5d4e7a2e;transform:translateY(-4px)}.card-icon{align-items:center;border-radius:14px;color:#fff;display:flex;height:46px;justify-content:center;width:46px}.card-content{display:flex;flex-direction:column;gap:6px}.card-value{color:#5d4e7a;font-size:1.6rem;font-weight:700}.card-label{color:#7a6c8e;font-size:.92rem;font-weight:600}.card-detail{color:#8f7ca8;font-size:.85rem;line-height:1.4}.insights-panel{background:linear-gradient(135deg,#fffffff2,#e7e0ffe6);border:1px solid #4d6c8359;border-radius:20px;box-shadow:0 14px 40px #5d4e7a2e;display:flex;flex-direction:column;gap:18px;padding:22px 24px}.insights-header{align-items:center;display:flex;gap:16px;justify-content:space-between}.insights-header h3{color:#5d4e7a;font-size:1.1rem;margin:0}.icon-button{background:#4d6c832e;border-radius:12px;color:#5d4e7a;height:36px;transition:background .2s ease,transform .2s ease;width:36px}.icon-button:hover{background:#4d6c834d;transform:translateY(-1px)}.insights-content{grid-gap:16px;display:grid;gap:16px}.insights-section{background:#fffc;border:1px solid #4d6c8340;border-radius:16px;display:flex;flex-direction:column;gap:8px;padding:16px 18px}.insights-section.alert{background:#f871711f;border-color:#f8717173;color:#b91c1c}.receiving-tabs{background:#f8f5ffcc;border-radius:14px;display:flex;flex-wrap:wrap;gap:12px;padding:10px}.tab-button{background:#0000;border:none;border-radius:12px;color:#7a6c8e;cursor:pointer;font-weight:600;padding:10px 18px;transition:background .2s ease,color .2s ease}.tab-button.active{background:linear-gradient(135deg,#4d6c83,#7a95ac);box-shadow:0 8px 20px #4d6c8359;color:#fff}.tab-content{background:#fff;border:1px solid #4d6c834d;border-radius:20px;box-shadow:0 12px 38px #5d4e7a29;display:flex;flex-direction:column;gap:22px;padding:26px 28px}.tab-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between}.primary-button,.secondary-button{border:none;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 18px;transition:transform .2s ease,box-shadow .2s ease}.primary-button{background:linear-gradient(135deg,#5fc8c8,#8de1d8);box-shadow:0 12px 30px #5fc8c859;color:#1d2b2b}.primary-button:hover{box-shadow:0 16px 36px #5fc8c866}.secondary-button{background:#4d6c832e;box-shadow:0 8px 20px #4d6c8333;color:#5d4e7a}.secondary-button:hover{box-shadow:0 12px 28px #4d6c8340;transform:translateY(-1px)}.empty-state{background:#f8f5ffcc;border:1px dashed #4d6c8373;border-radius:16px;color:#7a6c8e;padding:24px;text-align:center}.logs-list{grid-gap:18px;display:grid;gap:18px}.log-card{background:#fffffff2;border:1px solid #4d6c8340;border-radius:18px;box-shadow:0 12px 32px #5d4e7a29;display:flex;flex-direction:column;gap:16px;padding:20px 22px}.log-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.log-info{display:flex;flex-direction:column;gap:6px}.log-vendor{color:#5d4e7a;font-size:1.05rem;font-weight:700;margin:0}.status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:.8rem;gap:6px;padding:6px 12px}.status-badge.received{background:#34d39933;color:#047857}.status-badge.damaged,.status-badge.issue{background:#f871712e;color:#b91c1c}.status-badge.pending,.status-badge[class*=awaiting],.status-badge[class*=hold]{background:#facc1533;color:#92400e}.status-badge.in_transit{background:#60a5fa2e;color:#1d4ed8}.status-badge.installed{background:#818cf833;color:#4338ca}.log-details{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.log-detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#7a6c8e;font-size:.78rem}.log-alert{background:#f871711f;border-radius:12px;color:#b91c1c;font-size:.88rem;padding:10px 14px}.log-actions{display:flex;flex-wrap:wrap;gap:10px}.claim-badge{background:#60a5fa2e;border-radius:999px;color:#1d4ed8;font-size:.75rem;font-weight:600;padding:6px 12px}.inventory-tab .filters{display:flex;flex-wrap:wrap;gap:12px}.filter-select,.search-input{background:#fffffff2;border:1px solid #4d6c8359;border-radius:12px;color:#5d4e7a;font-size:.92rem;min-width:180px;padding:10px 14px}.inventory-table{border-radius:16px;box-shadow:0 12px 34px #5d4e7a2e;overflow:hidden}.inventory-table td,.inventory-table th{font-size:.9rem;padding:14px 16px;text-align:left}.inventory-table thead{background:#ece4ffcc;color:#5d4e7a;font-weight:700}.inventory-table tbody tr:nth-child(2n){background:#f8f5ff99}.sku-cell{font-family:Source Code Pro,monospace}.item-name-cell{color:#5d4e7a;font-weight:600}.storage-tab .locations-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.location-card{background:#fffffff2;border:1px solid #4d6c8340;border-radius:18px;box-shadow:0 12px 32px #5d4e7a29;display:flex;flex-direction:column;gap:14px;padding:20px 22px}.location-header{align-items:center;gap:12px;justify-content:space-between}.location-title{color:#5d4e7a;font-size:1.05rem;font-weight:700}.location-status{align-items:center;display:flex;gap:8px}.location-details{color:#7a6c8e;display:flex;flex-direction:column;font-size:.9rem;gap:6px}.location-type{color:#5d4e7a;font-weight:600}.location-address{color:#7a6c8e;margin:0}.location-capacity{display:flex;flex-direction:column;gap:6px}.capacity-bar{background:#ece4ffcc;border-radius:999px;height:10px;width:100%}.capacity-fill{background:linear-gradient(135deg,#34d399,#6ee7b7);border-radius:999px;height:100%}.capacity-text{color:#5d4e7a;font-size:.82rem;font-weight:600}.location-notes{color:#7a6c8e;font-size:.85rem;margin:0}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#16112359}.modal-content{border:1px solid #4d6c8359;box-shadow:0 18px 48px #16112340;display:flex;flex-direction:column;gap:18px;padding:26px 28px;width:min(640px,92%)}.modal-content.large{width:min(820px,94%)}.modal-header h3{color:#5d4e7a}.modal-form{display:flex;flex-direction:column;gap:16px}.form-group label{color:#7a6c8e;font-size:.85rem}.form-group input,.form-group select,.form-group textarea{background:#fffffff2;border:1px solid #4d6c8359;border-radius:12px;color:#5d4e7a;font-size:.92rem;padding:10px 14px}.form-group textarea{min-height:110px;resize:vertical}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.item-info{background:#f8f5ffcc;border-radius:14px;display:flex;flex-direction:column;gap:6px;padding:12px 16px}.item-sku{color:#5d4e7a;font-family:Source Code Pro,monospace;font-size:.95rem;font-weight:700;margin:0}.claim-content{background:#ece4ffcc;border-radius:16px;color:#5d4e7a;font-size:.92rem;line-height:1.6;padding:18px 20px;white-space:pre-wrap}@media (max-width:768px){.tab-content{padding:20px}.receiving-dashboard-cards{grid-template-columns:1fr}.inventory-table,.storage-tab .locations-grid{overflow-x:auto}}.item-logging-manager{margin:20px 0}.log-item-button{align-items:center;background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:12px;box-shadow:0 4px 12px #4d6c834d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.log-item-button:hover{box-shadow:0 6px 16px #4d6c8366;transform:translateY(-2px)}.modal-overlay{bottom:0;left:0;right:0;top:0}.modal-content{max-width:900px}.modal-content.large{max-width:1100px}.modal-header{align-items:start;background:#fff;border-bottom:1px solid #e5e7eb;border-radius:20px 20px 0 0;gap:16px;padding:24px 32px 20px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.modal-header h2{color:#1e293b;font-size:24px;line-height:1.2;margin:0 0 4px}.modal-header p{color:#64748b;font-size:14px;line-height:1.4;margin:0}.icon-button{background:none}.icon-button:hover{background:#f1f5f9}.item-logging-form{gap:32px;padding:32px}.form-section,.item-logging-form{display:flex;flex-direction:column}.form-section{gap:16px}.form-section h3{align-items:center;color:#1e293b;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0}.section-description{color:#64748b;font-size:14px;margin:0}.form-group label{font-size:14px}.condition-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}.condition-button{align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:10px;color:#000;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 16px;transition:all .2s}.condition-button:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.condition-indicator{border-radius:50%;height:12px;width:12px}.upload-button{align-items:center;background:#4d6c830d;border:2px dashed #4d6c83;border-radius:12px;color:#4d6c83;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:16px;transition:all .2s}.upload-button:hover:not(:disabled){background:#4d6c831a;border-color:#4d6c83}.upload-button:disabled{cursor:not-allowed;opacity:.5}.photo-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-top:16px}.photo-item{aspect-ratio:1;border:2px solid #e5e7eb;border-radius:10px;overflow:hidden;position:relative}.photo-item img{height:100%;object-fit:cover;width:100%}.remove-photo{background:#0009;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:4px;position:absolute;right:4px;top:4px;transition:all .2s}.remove-photo:hover{background:#000c}.ai-section{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b4d;border-radius:12px;padding:20px}.generate-claim-button{align-items:center;background:linear-gradient(135deg,#f59e0b,#fbbf24);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;padding:12px 24px;transition:all .2s}.generate-claim-button:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.generate-claim-button:disabled{cursor:not-allowed;opacity:.6}.claim-draft{background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-top:16px;padding:16px}.claim-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.claim-header h4{color:#1e293b;font-size:16px;margin:0}.claim-header button{background:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px}.claim-draft pre{color:#1e293b;font-family:inherit;font-size:13px;line-height:1.6;margin:0;white-space:pre-wrap}@media (max-width:768px){.condition-grid,.form-grid{grid-template-columns:1fr}.modal-content{max-height:95vh}.item-logging-form{padding:20px}}.inventory-dashboard{margin:0 auto;max-width:1600px;padding:24px}.dashboard-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:24px}.header-title h2{color:#3b3c3d;color:var(--text-primary,#3b3c3d);font-size:28px;font-weight:700;margin:0}.header-title p{color:#64748b;font-size:14px;margin:4px 0 0}.icon-btn:hover{background:#e6e6e4;background:var(--card-bg,#e6e6e4);border-color:var(--primary,#4d6c83);color:var(--primary,#4d6c83)}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;box-shadow:0 2px 8px #0000000a;gap:16px;padding:20px}.stat-card,.stat-icon{align-items:center;display:flex}.stat-icon{border-radius:14px;color:#fff;height:56px;justify-content:center;width:56px}.stat-content{flex:1 1}.stat-value{color:#1e293b;font-size:28px;font-weight:700;line-height:1;margin-bottom:4px}.stat-label{color:#64748b;font-size:13px;font-weight:500}.search-filter-bar{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.search-box{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;display:flex;flex:1 1;gap:12px;min-width:300px;padding:12px 16px;transition:all .2s}.search-box:focus-within{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a}.search-box input{border:none;flex:1 1;font-family:inherit;font-size:14px;outline:none}.filter-toggle{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;color:#64748b;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 20px;transition:all .2s}.filter-toggle.active,.filter-toggle:hover{background:#4d6c83;border-color:#4d6c83;color:#fff}.view-modes{background:#fff;border:1.5px solid #e5e7eb;border-radius:12px;display:flex;gap:0;overflow:hidden}.view-modes button{align-items:center;background:#fff;border:none;color:#64748b;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:12px 20px;transition:all .2s}.view-modes button:not(:last-child){border-right:1px solid #e5e7eb}.view-modes button.active{background:#4d6c83;color:#fff}.view-modes button:hover:not(.active){background:#f8fafc}.filters-panel{background:#fff;border:1.5px solid #e5e7eb;border-radius:16px;margin-bottom:16px;padding:20px}.filters-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group label{color:#1e293b;font-size:13px;font-weight:600}.filter-group select{background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;cursor:pointer;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s}.filter-group select:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.clear-filters-btn{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:13px;font-weight:600;gap:6px;padding:8px 16px;transition:all .2s}.clear-filters-btn:hover{background:#e2e8f0;color:#1e293b}.results-info{background:#fff;border:1px solid #e5e7eb;border-radius:10px;color:#64748b;font-size:14px;margin-bottom:16px;padding:12px 16px}.empty-state,.loading-state{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:80px 20px;text-align:center}.empty-state p{color:#64748b;font-size:16px;margin-top:16px}.inventory-table-container{background:#fff;border:1px solid #e5e7eb;border-radius:16px;overflow:hidden}.inventory-table{border-collapse:collapse;width:100%}.inventory-table thead{background:#f8fafc;border-bottom:2px solid #e5e7eb}.inventory-table th{color:#1e293b;font-size:13px;font-weight:700;letter-spacing:.5px;padding:16px;text-align:left;text-transform:uppercase}.inventory-table tbody tr{border-bottom:1px solid #f1f5f9;transition:all .2s}.inventory-table tbody tr:hover{background:#f8fafc}.inventory-table td{color:#475569;font-size:14px;padding:16px}.sku-cell{color:#6366f1;font-family:Courier New,monospace;font-weight:600}.item-name{color:#1e293b;font-weight:600}.status-badge{border-radius:6px;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px;text-transform:capitalize}.location-cell{align-items:center;color:#64748b;display:flex;gap:6px}.view-btn{background:#f1f5f9;border:none;border-radius:6px;color:#64748b;cursor:pointer;padding:6px 12px;transition:all .2s}.view-btn:hover{background:#4d6c83;color:#fff}.inventory-map-view{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:24px}.map-locations{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.location-card{border:2px solid #e5e7eb;border-radius:16px;cursor:pointer;padding:20px;transition:all .2s}.location-card:hover{border-color:#4d6c83;box-shadow:0 4px 12px #4d6c8326}.location-card.selected{background:#faf5ff;border-color:#4d6c83}.location-header{align-items:start;display:flex;gap:16px}.location-icon{align-items:center;background:linear-gradient(135deg,#4d6c83,#7a95ac);border-radius:12px;color:#fff;display:flex;height:48px;justify-content:center;width:48px}.location-info{flex:1 1}.location-info h4{color:#1e293b;font-size:18px;font-weight:600;margin:0 0 4px}.location-info p{color:#64748b;font-size:14px;margin:0}.location-info .address{color:#94a3b8;font-size:13px;margin-top:8px}.location-count{align-items:center;background:#4d6c83;border-radius:10px;color:#fff;display:flex;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.location-items{border-top:1px solid #e5e7eb;display:flex;flex-direction:column;gap:8px;margin-top:16px;padding-top:16px}.map-item{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;padding:12px;transition:all .2s}.map-item:hover{background:#faf5ff;border-color:#4d6c83}.map-item .item-name{color:#1e293b;font-size:14px;font-weight:600}.map-item .item-sku{color:#64748b;font-family:Courier New,monospace;font-size:12px}.no-items{color:#94a3b8;font-size:14px;padding:12px;text-align:center}.location-map-embed{margin-top:12px}.item-details{padding:24px}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h4{color:#1e293b;font-size:16px;font-weight:600;margin:0 0 12px}.detail-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.detail-item{display:flex;flex-direction:column;gap:4px}.detail-label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.detail-value{color:#1e293b;font-size:14px}.item-photos{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.item-photos img{aspect-ratio:1;border:1px solid #e5e7eb;border-radius:10px;object-fit:cover;width:100%}@media (max-width:768px){.search-filter-bar{flex-direction:column}.search-box{min-width:100%}.detail-grid,.filters-grid,.stats-grid{grid-template-columns:1fr}.inventory-table-container{overflow-x:auto}.inventory-table{min-width:800px}.map-locations{grid-template-columns:1fr}}.gantt-scheduler{margin:0 auto;max-width:2200px;padding:24px;width:100%}.gantt-empty-state{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:80px 20px;text-align:center}.gantt-empty-state h3{color:#1e293b;font-size:24px;margin:0 0 8px}.gantt-empty-state p{color:#64748b;font-size:16px;margin:0 0 24px}.generate-schedule-btn{align-items:center;background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:12px;box-shadow:0 4px 12px #4d6c834d;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:14px 28px;transition:all .2s}.generate-schedule-btn:hover:not(:disabled){box-shadow:0 6px 16px #4d6c8366;transform:translateY(-2px)}.generate-schedule-btn:disabled{cursor:not-allowed;opacity:.6}.gantt-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px;min-height:60px;width:100%}.header-left{flex:1 1 280px;min-width:240px}.header-left h2{color:#1e293b;font-size:28px;font-weight:700;margin:0}.header-left p{color:#64748b;font-size:14px;margin:4px 0 0}.header-actions{display:flex;flex:0 1 auto;flex-wrap:nowrap;gap:8px;justify-content:flex-end;min-width:0}.icon-btn{background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;color:#64748b;cursor:pointer;padding:10px;transition:all .2s}.icon-btn:hover{background:#f8fafc;border-color:#4d6c83;color:#4d6c83}.add-task-btn{align-items:center;background:linear-gradient(135deg,#4d6c83,#7a95ac);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;padding:10px 20px;transition:all .2s}.add-task-btn:hover{box-shadow:0 4px 12px #4d6c834d;transform:translateY(-2px)}.conflicts-alert{align-items:center;background:#fef2f2;border:1px solid #ef44444d;border-radius:12px;color:#991b1b;display:flex;gap:12px;margin-bottom:20px;padding:16px 20px}.conflicts-alert strong{display:block;font-size:15px;margin-bottom:4px}.conflicts-alert p{color:#dc2626;font-size:13px;margin:0}.view-controls{background:#fff;border:1px solid #e5e7eb;border-radius:12px;gap:12px;justify-content:space-between;margin-bottom:16px;padding:16px 20px}.date-navigator,.view-controls{align-items:center;display:flex;flex-wrap:wrap}.date-navigator{gap:8px}.date-navigator button{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#64748b;cursor:pointer;padding:8px;transition:all .2s}.date-navigator button:hover{background:#f8fafc;border-color:#4d6c83;color:#4d6c83}.current-date{color:#1e293b;font-size:15px;font-weight:600;min-width:200px;text-align:center}.today-btn{font-size:13px;font-weight:600;padding:8px 16px!important}.view-mode-selector{background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;display:flex;gap:0;overflow:hidden}.view-mode-selector button{background:#fff;border:none;color:#64748b;cursor:pointer;font-size:13px;font-weight:600;padding:8px 20px;text-transform:capitalize;transition:all .2s}.view-mode-selector button:not(:last-child){border-right:1px solid #e5e7eb}.view-mode-selector button.active{background:#4d6c83;color:#fff}.view-mode-selector button:hover:not(.active){background:#f8fafc}.gantt-chart{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:24px;overflow-x:auto;overflow-y:visible;width:100%}.gantt-timeline-header{background:#f8fafc;border-bottom:2px solid #e5e7eb;display:grid;grid-template-columns:280px 1fr;position:-webkit-sticky;position:sticky;top:0;z-index:10}.gantt-date-columns{border-left:1px solid #e5e7eb;display:grid}.gantt-date-cell{align-items:center;background:#f8fafc;border-right:1px solid #e5e7eb;display:flex;justify-content:center;min-height:60px;padding:12px 8px;transition:background .2s}.gantt-date-cell.is-today{background:#4d6c831f;border-left:2px solid #4d6c83;border-right:2px solid #4d6c83;font-weight:700}.date-content{align-items:center;display:flex;flex-direction:column;gap:4px;width:100%}.date-number{color:#1e293b;font-size:14px;font-weight:600}.date-weekday{color:#64748b;font-size:13px;font-weight:700;letter-spacing:.3px;text-transform:uppercase}.date-monthday{color:#64748b;font-size:11px}.date-full{color:#64748b;font-size:12px}.gantt-date-cell.is-today .date-full,.gantt-date-cell.is-today .date-monthday,.gantt-date-cell.is-today .date-number,.gantt-date-cell.is-today .date-weekday{color:#4d6c83}.gantt-cell-label{align-items:center;background:inherit;border-right:1px solid #e5e7eb;display:flex;min-width:280px;padding:12px 16px;width:280px}.gantt-timeline-header .gantt-cell-label{background:#f8fafc}.label-text{color:#1e293b;font-size:14px;font-weight:600}.gantt-task-rows{min-height:200px}.gantt-task-row{border-bottom:1px solid #f1f5f9;display:grid;grid-template-columns:280px 1fr;min-height:64px;transition:background .2s}.gantt-task-row:hover{background:#f8fafc}.task-label-content{align-items:center;display:flex;gap:12px;justify-content:space-between;width:100%}.task-info-text{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.task-name-text{color:#1e293b;font-size:14px;font-weight:600}.task-name-text,.task-vendor-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-vendor-text{color:#64748b;font-size:12px}.task-actions-buttons{display:flex;flex-shrink:0;gap:4px;opacity:0;transition:opacity .2s}.gantt-task-row:hover .task-actions-buttons{opacity:1}.task-action-button{align-items:center;background:#f1f5f9;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:all .2s}.task-action-button:hover{background:#e2e8f0;color:#1e293b}.task-action-button.delete:hover{background:#fee2e2;color:#dc2626}.gantt-timeline-grid{align-items:center;border-left:1px solid #e5e7eb;display:grid;min-height:64px;position:relative}.gantt-grid-cell{border-right:1px solid #f1f5f9;min-height:64px}.gantt-grid-cell.is-today{background:#4d6c830f;border-left:2px solid #4d6c83;border-right:2px solid #4d6c83}.gantt-task-bar{align-items:center;border-radius:8px;box-shadow:0 2px 6px #0000001f;cursor:move;display:flex;gap:8px;height:36px;justify-content:space-between;margin:0 4px;padding:0 12px;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s;z-index:2}.gantt-task-bar:hover{box-shadow:0 4px 12px #0000002e;transform:translateY(-50%) scale(1.02);z-index:3}.gantt-task-bar.has-conflict{border:2px solid #ef4444;box-shadow:0 0 0 4px #ef444426}.task-bar-label{color:#fff;flex:1 1;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conflict-indicator{color:#fff;flex-shrink:0}.gantt-empty-message{color:#94a3b8;font-size:16px;grid-column:1/-1;padding:60px 20px;text-align:center}.conflicts-section{background:#fff;border:1px solid #e5e7eb;border-radius:16px;margin-bottom:24px;padding:24px}.conflicts-section h3{color:#1e293b;font-size:20px;font-weight:600;margin:0 0 16px}.conflicts-list{display:flex;flex-direction:column;gap:12px}.conflict-card{background:#fef2f2;border:1px solid #ef444433;border-radius:12px;padding:16px}.conflict-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.conflict-severity{border-radius:6px;color:#fff;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 12px;text-transform:uppercase}.conflict-type{color:#991b1b;font-size:13px;font-weight:600;text-transform:capitalize}.conflict-description{color:#7f1d1d;font-size:14px;line-height:1.5;margin:0 0 12px}.conflict-suggestion{align-items:start;background:#fff;border:1px solid #4d6c834d;border-radius:8px;display:flex;gap:8px;padding:12px}.conflict-suggestion span{color:#1e293b;font-size:13px;line-height:1.5}.conflict-suggestion strong{color:#4d6c83}.modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal-content{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;max-height:90vh;max-width:700px;overflow-y:auto;width:100%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px;padding:24px 24px 0}.modal-header h3{color:#1e293b;font-size:24px;font-weight:700;margin:0}.icon-button{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.icon-button:hover{background:#e2e8f0;color:#1e293b}.task-form{padding:24px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);margin-bottom:24px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group.full-width{grid-column:1/-1}.form-group label{color:#1e293b;font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1.5px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4d6c83;box-shadow:0 0 0 3px #4d6c831a;outline:none}.modal-actions{border-top:1px solid #e5e7eb;display:flex;gap:12px;justify-content:flex-end;padding-top:24px}.primary-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s}.primary-button:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-2px)}.secondary-button{background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;color:#64748b;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .2s}.secondary-button:hover{background:#f8fafc;border-color:#cbd5e1}@media (max-width:1400px){.gantt-header{align-items:center}.header-left{flex:1 1 200px}.header-actions{flex:0 0 auto}.add-task-btn span{display:none}.add-task-btn{padding:10px}}@media (max-width:1200px){.view-controls{gap:8px}.date-navigator{flex:1 1 auto}.view-mode-selector{flex:0 0 auto}.current-date{font-size:13px;min-width:150px}}@media (max-width:768px){.gantt-scheduler{padding:16px}.gantt-header{flex-direction:column;gap:12px}.header-actions{justify-content:flex-start;width:100%}.view-controls{flex-direction:column;gap:12px}.date-navigator{justify-content:space-between;width:100%}.view-mode-selector{width:100%}.view-mode-selector button{flex:1 1}.form-grid{grid-template-columns:1fr}.gantt-task-row,.gantt-timeline-header{grid-template-columns:200px 1fr}.gantt-cell-label{min-width:200px;width:200px}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.calendar-day-cell:hover{background:#4d6c830d;transform:scale(1.02);transition:all .2s ease}@keyframes eventPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.9;transform:scale(1.05)}}.event-badge-urgent{animation:eventPulse 2s infinite}.calendar-scroll::-webkit-scrollbar{width:8px}.calendar-scroll::-webkit-scrollbar-track{background:#4d6c830d;border-radius:10px}.calendar-scroll::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#4d6c83,#7a95ac);border-radius:10px;-webkit-transition:background .2s ease;transition:background .2s ease}.calendar-scroll::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#3a5263,#4d6c83)}@media print{.calendar-close-btn,.calendar-controls,.calendar-header-actions{display:none!important}.calendar-container{box-shadow:none!important;height:auto!important;width:100%!important}}@media (max-width:768px){.calendar-container{max-width:100%!important;width:100%!important}.calendar-grid{gap:2px!important}.calendar-event{font-size:.6rem!important;padding:1px 4px!important}}.calendar-btn:focus{outline:2px solid #4d6c83;outline-offset:2px}@keyframes calendarLoading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.calendar-loading{animation:calendarLoading 1.2s ease-in-out infinite;background:linear-gradient(90deg,#4d6c831a,#7a95ac33 50%,#4d6c831a);background-size:200px 100%}
/*# sourceMappingURL=main.aef25b22.css.map*/