.tariff-modal-overlay{width:100%;height:100%;z-index:9999;transition:all .3s ease}.tariff-modal-container{width:90%;max-width:800px;height:80vh;max-height:600px;background:#1e293b;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.5);border:1px solid rgba(59,130,246,.3);transform:scale(.9) translateY(20px);transition:all .3s ease}.tariff-modal-overlay.open .tariff-modal-container{transform:scale(1) translateY(0)}.tariff-modal-container.maximized{width:95%;height:90vh;max-width:none;max-height:none}.tariff-modal-container.minimized{height:60px;overflow:hidden}.tariff-modal-header{padding:1rem 1.5rem;flex-shrink:0}.tariff-modal-title{gap:.75rem;color:#fff;font-weight:600;font-size:1.125rem}.sparkle-icon{animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{transform:rotate(0deg) scale(1)}50%{transform:rotate(180deg) scale(1.1)}}.tariff-badge{border-radius:12px;font-weight:500}.tariff-close-btn,.tariff-control-btn{background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3);color:#3b82f6;width:32px;height:32px;border-radius:6px}.tariff-close-btn:hover,.tariff-control-btn:hover{background:rgba(59,130,246,.2);transform:scale(1.05)}.tariff-close-btn{border-color:rgba(239,68,68,.3);color:#ef4444;background:rgba(239,68,68,.1)}.tariff-close-btn:hover{background:rgba(239,68,68,.2)}.tariff-modal-body{min-height:0}.tariff-chatbot,.tariff-modal-body .chat-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.tariff-chatbot{background:linear-gradient(135deg,#0f172a,#1e293b 50%,#334155);color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;position:relative}.tariff-chatbot:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(59,130,246,.1) 0,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.1) 0,transparent 50%),radial-gradient(circle at 40% 60%,rgba(16,185,129,.05) 0,transparent 50%);pointer-events:none}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:rgba(15,23,42,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(59,130,246,.2);position:relative;z-index:10}.history-button,.new-chat-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s ease;box-shadow:0 2px 8px rgba(59,130,246,.3)}.history-button:hover,.new-chat-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(59,130,246,.4)}.history-button{background:linear-gradient(135deg,#6b7280,#4b5563);box-shadow:0 2px 8px hsla(220,9%,46%,.3)}.history-button:hover{box-shadow:0 4px 16px hsla(220,9%,46%,.4)}.session-history-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.7);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;align-items:center;justify-content:center}.session-history-panel{background:#1e293b;border-radius:12px;width:90%;max-width:500px;max-height:80vh;overflow:hidden;box-shadow:0 20px 60px rgba(0,0,0,.5);border:1px solid rgba(59,130,246,.2)}.session-history-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(59,130,246,.2)}.session-history-header h3{margin:0;color:#fff;font-size:1.25rem;font-weight:600}.session-history-header button{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease}.session-history-header button:hover{background:hsla(0,0%,100%,.1);color:#fff}.session-history-list{padding:1rem;max-height:60vh;overflow-y:auto}.no-sessions{text-align:center;color:#94a3b8;padding:2rem;font-style:italic}.session-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:rgba(15,23,42,.5);border:1px solid rgba(59,130,246,.2);border-radius:8px;margin-bottom:.75rem;cursor:pointer;transition:all .2s ease}.session-item:hover{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.4);transform:translateX(4px)}.session-info h4{margin:0 0 .25rem;color:#fff;font-size:1rem;font-weight:500}.session-info p{margin:0;color:#94a3b8;font-size:.875rem}.delete-session-btn{background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.3);color:#f87171;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .2s ease}.delete-session-btn:hover{background:rgba(239,68,68,.3);color:#ef4444}.chat-container{display:flex;flex-direction:column;height:100%;overflow:hidden}.messages-container{flex:1;overflow-y:auto;padding:1.5rem;position:relative;z-index:5;min-height:0;scroll-behavior:smooth}.messages-container::-webkit-scrollbar{width:6px}.messages-container::-webkit-scrollbar-track{background:rgba(15,23,42,.3);border-radius:3px}.messages-container::-webkit-scrollbar-thumb{background:rgba(59,130,246,.5);border-radius:3px}.messages-container::-webkit-scrollbar-thumb:hover{background:rgba(59,130,246,.7)}.message{display:flex;gap:1rem;margin-bottom:1.5rem;animation:messageSlideIn .3s ease-out}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.bot-message{flex-direction:row}.user-message{flex-direction:row-reverse}.avatar{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0;position:relative}.bot-avatar{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;box-shadow:0 4px 16px rgba(59,130,246,.3)}.user-avatar{background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:.625rem;box-shadow:0 4px 16px rgba(16,185,129,.3)}.message-bubble{max-width:70%;position:relative;border-radius:16px;padding:1rem 1.25rem;line-height:1.6;word-wrap:break-word;box-shadow:0 4px 16px rgba(0,0,0,.1)}.bot-bubble{background:linear-gradient(135deg,rgba(59,130,246,.1),rgba(139,92,246,.1));border:1px solid rgba(59,130,246,.2);margin-right:auto}.user-bubble{background:linear-gradient(135deg,rgba(16,185,129,.2),rgba(5,150,105,.2));border:1px solid rgba(16,185,129,.3);margin-left:auto}.message-text{margin:0;color:#fff;font-size:.95rem}.message-time{font-size:.75rem;color:#94a3b8;margin-top:.5rem;text-align:right}.user-message .message-time{text-align:left}.typing-cursor{display:inline-block;width:2px;height:1.2em;background:#3b82f6;margin-left:2px;animation:blink 1s infinite;vertical-align:text-bottom}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.loading-message .typing-indicator{display:flex;gap:4px;align-items:center}.loading-message .dot{width:8px;height:8px;border-radius:50%;background:#3b82f6;animation:typing 1.4s ease-in-out infinite}.loading-message .dot:first-child{animation-delay:-.32s}.loading-message .dot:nth-child(2){animation-delay:-.16s}.loading-message .dot:nth-child(3){animation-delay:0s}@keyframes typing{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.industry-cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-top:1rem;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.industry-card{padding:1.5rem;border-radius:12px;border:2px solid transparent;cursor:pointer;text-align:center;transition:all .3s ease;position:relative;overflow:hidden}.industry-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:inherit;opacity:.1;z-index:-1}.industry-card:hover{transform:translateY(-4px);border-color:hsla(0,0%,100%,.3);box-shadow:0 12px 32px rgba(0,0,0,.2)}.industry-icon{margin-bottom:.75rem;color:#fff;filter:drop-shadow(0 2px 8px rgba(0,0,0,.3))}.industry-name{font-weight:600;color:#fff;font-size:.95rem;line-height:1.4}.analytics-options-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-top:1rem;animation:fadeInUp .5s ease-out}.analytics-option-card{position:relative;padding:1.5rem 1rem;background:rgba(15,23,42,.7);border:2px solid transparent;border-radius:12px;cursor:pointer;text-align:center;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.analytics-option-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,currentColor,currentColor);opacity:.05;z-index:-1;transition:opacity .3s ease}.analytics-option-card:hover{transform:translateY(-4px);border-color:currentColor;box-shadow:0 12px 32px rgba(0,0,0,.2)}.analytics-option-card:hover:before{opacity:.1}.analytics-icon{position:relative;width:60px;height:60px;margin:0 auto 1rem;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.analytics-option-card:hover .analytics-icon{transform:scale(1.1)}.analytics-label{display:block;font-weight:600;font-size:.875rem;color:#fff;line-height:1.3}.scope-options-container{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem;animation:fadeInUp .5s ease-out}.scope-option-button{padding:1rem 1.25rem;background:rgba(15,23,42,.7);border:2px solid rgba(59,130,246,.3);border-radius:10px;color:#fff;cursor:pointer;font-weight:500;text-align:left;transition:all .3s ease;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:.5rem}.scope-option-button:hover{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.5);transform:translateX(4px)}.scope-option-button.recommended{background:linear-gradient(135deg,rgba(59,130,246,.2),rgba(139,92,246,.2));border-color:rgba(59,130,246,.5);box-shadow:0 4px 16px rgba(59,130,246,.2)}.scope-option-button.recommended:hover{box-shadow:0 8px 24px rgba(59,130,246,.3)}.recommended-badge{background:linear-gradient(135deg,#3b82f6,#8b5cf6);padding:.25rem .5rem;border-radius:6px;font-weight:600;margin-left:auto}.data-preview{background:rgba(15,23,42,.9);border:2px solid rgba(59,130,246,.3);border-radius:16px;margin:1.5rem 0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 32px rgba(0,0,0,.3);animation:fadeInUp .5s ease-out}.data-preview.editing{border-color:rgba(245,158,11,.5)}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(59,130,246,.2)}.preview-header h3{margin:0;color:#fff;font-size:1.25rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.cancel-button,.edit-button,.save-button{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.875rem;transition:all .2s ease}.edit-button{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;box-shadow:0 2px 8px rgba(245,158,11,.3)}.edit-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(245,158,11,.4)}.save-button{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px rgba(16,185,129,.3)}.save-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px rgba(16,185,129,.4)}.cancel-button{background:linear-gradient(135deg,#6b7280,#4b5563);color:#fff;box-shadow:0 2px 8px hsla(220,9%,46%,.3)}.cancel-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px hsla(220,9%,46%,.4)}.edit-controls{display:flex;gap:.5rem}.preview-content{padding:1.5rem}.preview-section{margin-bottom:2rem}.preview-section:last-child{margin-bottom:0}.preview-section h4{margin:0 0 1rem;color:#fff;font-size:1.1rem;font-weight:600;display:flex;align-items:center;gap:.5rem}.preview-list{display:grid;gap:.75rem;max-height:200px;overflow-y:auto}.products-edit-list{display:grid;gap:1rem;max-height:300px;overflow-y:auto}.editable-item{display:grid;grid-template-columns:2fr 1fr 1fr;gap:1rem;padding:1rem;background:rgba(59,130,246,.05);border:1px solid rgba(59,130,246,.2);border-radius:8px;align-items:center}.product-cost,.product-name,.product-volume{color:#fff;font-size:.875rem}.product-name{font-weight:500}.product-cost,.product-volume{font-family:SF Mono,Monaco,Cascadia Code,monospace;text-align:right}.input-label{font-size:.75rem;color:#94a3b8;margin-bottom:.25rem;font-weight:500}.edit-input{width:100%;padding:.5rem;background:rgba(15,23,42,.7);border:1px solid rgba(59,130,246,.3);border-radius:6px;color:#fff;font-size:.875rem;font-family:inherit}.edit-input:focus{outline:none;border-color:rgba(59,130,246,.5);box-shadow:0 0 0 2px rgba(59,130,246,.2)}.edit-input::-moz-placeholder{color:#64748b}.edit-input::placeholder{color:#64748b}.source-mix-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.source-mix-edit-grid,.source-mix-grid{display:grid;gap:1rem}.source-mix-item{gap:.75rem}.source-mix-edit-item,.source-mix-item{display:flex;align-items:center;padding:1rem;background:rgba(59,130,246,.05);border:1px solid rgba(59,130,246,.2);border-radius:8px}.source-mix-edit-item{justify-content:space-between}.country-flag{font-size:1.5rem;flex-shrink:0}.country-name{color:#fff;font-weight:500;flex:1}.country-percentage{color:#3b82f6;font-weight:600;font-family:SF Mono,Monaco,Cascadia Code,monospace}.country-edit-header{display:flex;align-items:center;gap:.75rem}.percentage-input-wrapper{display:flex;align-items:center;gap:.5rem}.percentage-input{width:80px;text-align:center}.percentage-symbol{color:#94a3b8;font-weight:600}.preview-summary{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.preview-summary,.summary-edit-grid{display:grid;gap:1rem}.summary-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:rgba(139,92,246,.05);border:1px solid rgba(139,92,246,.2);border-radius:8px}.summary-label{color:#94a3b8;font-size:.875rem;font-weight:500}.summary-value{color:#fff;font-weight:600;font-family:SF Mono,Monaco,Cascadia Code,monospace}.preview-actions{padding:1.5rem;border-top:1px solid rgba(59,130,246,.2);text-align:center}.load-data-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:12px;cursor:pointer;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 16px rgba(16,185,129,.3)}.load-data-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(16,185,129,.4)}.input-area{padding:1.5rem;background:rgba(15,23,42,.9);border-top:1px solid rgba(59,130,246,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:10}.input-container{max-width:800px;margin:0 auto}.input-wrapper{display:flex;gap:1rem;align-items:flex-end}.message-input{flex:1;padding:1rem 1.25rem;background:rgba(30,41,59,.8);border:2px solid rgba(59,130,246,.3);border-radius:12px;color:#fff;font-size:.95rem;line-height:1.5;resize:none;font-family:inherit;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s ease;min-height:56px;max-height:120px}.message-input:focus{outline:none;border-color:rgba(59,130,246,.6);box-shadow:0 0 0 4px rgba(59,130,246,.1);background:rgba(30,41,59,.9)}.message-input::-moz-placeholder{color:#64748b}.message-input::placeholder{color:#64748b}.message-input:disabled{opacity:.6;cursor:not-allowed}.send-button{width:56px;height:56px;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;box-shadow:0 4px 16px rgba(59,130,246,.3);flex-shrink:0}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px rgba(59,130,246,.4)}.send-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:0 4px 16px rgba(59,130,246,.2)}.tariff-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.tariff-modal-overlay.open{opacity:1;visibility:visible}.tariff-modal-container{width:95%;max-width:1300px;height:90vh;background:#0f172a;border-radius:20px;box-shadow:0 25px 80px rgba(0,0,0,.5);display:flex;flex-direction:column;transform:scale(.9);opacity:0;transition:transform .3s ease,opacity .3s ease;overflow:hidden;border:1px solid rgba(59,130,246,.2)}.tariff-modal-overlay.open .tariff-modal-container{transform:scale(1);opacity:1}.tariff-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 2rem;background:rgba(15,23,42,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(59,130,246,.2)}.tariff-modal-title{display:flex;align-items:center;gap:1rem}.tariff-modal-title h2{margin:0;font-size:1.5rem;font-weight:700;background:linear-gradient(90deg,#3b82f6,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.sparkle-icon{color:#3b82f6;animation:sparkle-rotate 3s linear infinite}@keyframes sparkle-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.tariff-badge{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;padding:.25rem .75rem;border-radius:1rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tariff-modal-controls{display:flex;gap:.5rem}.tariff-close-btn,.tariff-control-btn{width:40px;height:40px;border:none;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;background:hsla(0,0%,100%,.1);color:#e5e7eb}.tariff-close-btn:hover,.tariff-control-btn:hover{background:hsla(0,0%,100%,.2);transform:translateY(-1px)}.tariff-modal-body{flex:1;overflow:hidden;display:flex;flex-direction:column}@media (max-width:768px){.tariff-modal-container{width:100%;height:100vh;border-radius:0;max-width:none}.tariff-modal-header{padding:1rem 1.5rem}.tariff-modal-title h2{font-size:1.25rem}.tariff-badge{display:none}.industry-cards-container{grid-template-columns:1fr}.analytics-options-container{grid-template-columns:repeat(2,1fr)}.preview-summary,.source-mix-grid{grid-template-columns:1fr}.input-area,.messages-container{padding:1rem}.message-bubble{max-width:85%}.editable-item{grid-template-columns:1fr;gap:.75rem}}@media (max-width:480px){.analytics-options-container{grid-template-columns:1fr}.input-wrapper{flex-direction:column;gap:.75rem}.send-button{width:100%;height:48px}}.scale-options-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem;padding:.5rem}.scale-option-button{background:rgba(30,41,59,.6);border:2px solid rgba(59,130,246,.3);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .3s ease;color:#fff;text-align:left;position:relative;overflow:hidden}.scale-option-button:hover{background:rgba(59,130,246,.1);border-color:rgba(59,130,246,.6);transform:translateY(-2px);box-shadow:0 8px 32px rgba(59,130,246,.2)}.scale-option-button.recommended{border-color:rgba(34,197,94,.6);background:rgba(34,197,94,.05)}.scale-option-button.recommended:hover{border-color:rgba(34,197,94,.8);background:rgba(34,197,94,.1);box-shadow:0 8px 32px rgba(34,197,94,.2)}.scale-icon{font-size:2rem;margin-bottom:.75rem;display:block}.scale-title{font-weight:600;font-size:1rem;margin-bottom:.5rem;color:#fff}.scale-description{font-size:.875rem;color:#94a3b8;margin-bottom:.5rem;line-height:1.4}.scale-subtitle{font-size:.8rem;color:#64748b;font-style:italic}.recommended-badge{position:absolute;top:.75rem;right:.75rem;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:500;box-shadow:0 2px 8px rgba(34,197,94,.3)}@media (max-width:768px){.scale-options-container{grid-template-columns:1fr;gap:.75rem}.scale-option-button{padding:1rem}.scale-title{font-size:.9rem}.scale-description{font-size:.8rem}}.action-card-container{background-color:rgba(43,56,93,.5);border:1px solid rgba(75,93,140,.6);border-radius:12px;padding:1rem;display:flex;align-items:center;cursor:pointer;transition:background-color .2s ease,border-color .2s ease;margin-top:8px}.action-card-container:hover{background-color:rgba(53,69,112,.7);border-color:rgba(94,115,172,.8)}.action-card-icon{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#00a9ff,#007aff);display:flex;align-items:center;justify-content:center;margin-right:1rem;flex-shrink:0}.action-card-text{flex-grow:1}.action-card-title{color:#e0e6f4;font-weight:600;font-size:1rem;margin-bottom:2px}.action-card-subtitle{color:#a3b2d9;font-size:.85rem}.action-card-arrow{color:#8a9ccc;margin-left:1rem;transition:transform .2s ease}.action-card-container:hover .action-card-arrow{transform:translateX(4px)}