.chat-item-wrapper{display:flex;align-items:center;width:100%;position:relative}.delete-chat-btn{background:none;border:none;color:#ff6b6b;padding:0 8px;min-width:32px;cursor:pointer;font-size:1.2rem;opacity:0;transition:opacity .2s;position:absolute;right:0;top:50%;transform:translateY(-50%);z-index:2}.chat-item-wrapper:hover .delete-chat-btn{opacity:1}.modal-content{background:#111827f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;max-width:400px;width:100%;position:relative;pointer-events:all;animation:slideUp .3s ease-out;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:#fff;font-size:1.2rem;cursor:pointer;z-index:10}.modal-header{text-align:center;margin-bottom:24px}.modal-header h2{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:8px}.modal-header p{color:#b8b8b8;font-size:1rem}.legal-page{min-height:100vh;background:#0f172a;padding:40px 20px;overflow-y:auto}.legal-container{max-width:800px;margin:0 auto}.legal-title{font-size:2rem;font-weight:700;color:#fff;margin-bottom:32px;padding-bottom:16px;border-bottom:1px solid #334155}.legal-content{color:#e2e8f0;line-height:1.8}.legal-content h2{font-size:1.5rem;font-weight:600;color:#fff;margin:0 0 16px}.legal-content h3{font-size:1.2rem;font-weight:600;color:#fff;margin:32px 0 12px}.legal-content p{color:#cbd5e1;margin-bottom:16px}.legal-content ul{margin:12px 0 20px 24px;color:#cbd5e1}.legal-content li{margin-bottom:8px}.login-features{display:flex;justify-content:space-between;margin-bottom:24px}.login-feature{display:flex;flex-direction:column;align-items:center;gap:6px;color:#d1d1d1;font-size:.95rem}.feature-icon-wrapper{font-size:1.5rem;background:linear-gradient(45deg,#4ecdc4,#feca57,#ff6b6b);border-radius:50%;padding:8px;margin-bottom:4px;color:#fff;box-shadow:0 2px 8px #4ecdc41f}.login-buttons{display:flex;flex-direction:column;align-items:center;margin-bottom:16px}.google-login-btn{display:flex;align-items:center;gap:10px;background:#fff;color:#222;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #4ecdc41f;transition:background .2s,box-shadow .2s}.google-login-btn:disabled{opacity:.7;cursor:not-allowed}.google-login-btn:hover{background:#feca57;color:#222;box-shadow:0 4px 16px #4ecdc440}.google-icon{width:24px;height:24px}.login-terms{color:#b8b8b8;font-size:.9rem;text-align:center;margin-top:12px}.sidebar-title-rizzgpt{font-size:2rem;font-weight:900;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#feca57);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:24px;text-align:center}*{margin:0;padding:0;box-sizing:border-box}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff05;border-radius:10px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px;border:2px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:#ffffff26;background-clip:content-box}::-webkit-scrollbar-thumb:active{background:#ff6b6b4d;background-clip:content-box}*{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.1) rgba(255,255,255,.02)}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-thumb{background:#4ecdc433}.chat-messages::-webkit-scrollbar-thumb:hover{background:#4ecdc44d}.staged-images-container::-webkit-scrollbar{height:4px}.staged-images-container::-webkit-scrollbar-thumb{background:#ff6b6b4d}html,body{margin:0;padding:0;width:100%;height:100%;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:16px}#root{width:100%;min-height:100vh}.rizz-gpt{min-height:100vh;background:linear-gradient(135deg,#0a0a0a,#1a1a2e,#16213e);color:#fff;position:relative;display:flex}.background-container{position:fixed;inset:0;pointer-events:none;z-index:0}.bg-blob{position:absolute;border-radius:50%;filter:blur(80px);animation:float 6s ease-in-out infinite;opacity:.7}.bg-blob-1{width:300px;height:300px;background:linear-gradient(45deg,#ff6b6b,#ff8e8e);top:10%;left:10%;animation-delay:0s}.bg-blob-2{width:400px;height:400px;background:linear-gradient(45deg,#4ecdc4,#45b7aa);top:60%;right:10%;animation-delay:2s}.bg-blob-3{width:250px;height:250px;background:linear-gradient(45deg,#feca57,#ff9ff3);bottom:20%;left:60%;animation-delay:4s}.particles-container{position:fixed;inset:0;pointer-events:none}.particle{position:absolute;width:4px;height:4px;background:#fffc;border-radius:50%;animation:particleFloat 10s linear infinite}.mouse-follower{position:fixed;width:20px;height:20px;background:radial-gradient(circle,rgba(255,107,107,.6),transparent);border-radius:50%;pointer-events:none;z-index:9999;transition:transform .1s ease}.main-content{flex:1;width:calc(100% - 300px);height:100vh;margin-left:300px;padding:0;position:relative;overflow:hidden;z-index:10}.content-container{height:100vh;display:flex;flex-direction:column;gap:0}.header:not(.sidebar-header){display:none}.chat-interface{flex:1;height:100vh;display:flex;flex-direction:column;background:#ffffff05;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:none;border-radius:0;transition:all .3s;overflow:hidden}.chat-interface.dragging{border-color:#ff6b6b;background:#ff6b6b0d;box-shadow:inset 0 0 50px #ff6b6b1a}.chat-header{padding:20px 32px;border-bottom:1px solid rgba(255,255,255,.08);background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;flex-shrink:0}.chat-header-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.mobile-menu-button{background:#4ecdc41a;border:1px solid rgba(78,205,196,.3);color:#4ecdc4;padding:8px;border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;margin-right:12px}.mobile-menu-button:hover{background:#4ecdc433;border-color:#4ecdc480;transform:scale(1.05)}.chat-title{font-size:20px;font-weight:700;display:flex;align-items:center;gap:8px}.chat-icon{width:24px;height:24px;color:#4ecdc4}.reset-button{background:linear-gradient(45deg,#ff6b6b,#ff8e8e);color:#fff;border:none;padding:12px 24px;border-radius:50px;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 5px 15px #ff6b6b66;position:relative;overflow:hidden}.reset-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s ease}.reset-button:hover:before{left:100%}.reset-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66;background:linear-gradient(45deg,#ff5252,#ff7979)}.reset-button:active{transform:translateY(0);box-shadow:0 2px 8px #ff6b6b4d}.feature-pills{display:flex;flex-wrap:wrap;gap:12px}.feature-pill{display:flex;align-items:center;gap:8px;font-size:14px;background:#ffffff0d;padding:4px 12px;border-radius:20px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.feature-icon{width:16px;height:16px}.feature-icon-purple{color:#4ecdc4}.feature-icon-pink{color:#ff6b6b}.feature-icon-yellow{color:#feca57}.feature-text{color:#d1d1d1}.chat-header-attraction-meter{margin:16px 0;padding:16px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.1);animation:attractionMeterGlow 4s ease-in-out infinite;position:relative;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:800px}.chat-header-attraction-meter:before{content:"";position:absolute;inset:-2px;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#feca57,#ff6b6b);border-radius:14px;z-index:-1;opacity:.3}@keyframes attractionMeterGlow{0%,to{box-shadow:0 0 #ff6b6b4d}50%{box-shadow:0 0 20px #ff6b6b80,0 0 30px #4ecdc44d}}.attraction-meter-compact{width:100%}.attraction-meter-compact-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.attraction-meter-compact-title{font-size:16px;font-weight:600;color:#fff;display:flex;align-items:center;gap:8px}.attraction-meter-compact-title .icon-heart{width:18px;height:18px;color:#ff6b6b;animation:heartPulse 2s ease-in-out infinite}@keyframes heartPulse{0%,to{transform:scale(1);color:#ff6b6b}50%{transform:scale(1.1);color:#ff8e8e}}.refresh-button-compact{display:flex;align-items:center;gap:6px;background:#4ecdc41a;color:#4ecdc4;border:1px solid #4ecdc4;padding:6px 8px;border-radius:8px;font-size:12px;transition:all .3s}.refresh-button-compact:hover{background:#4ecdc433;color:#fff}.refresh-button-compact:disabled{opacity:.5;cursor:not-allowed}.refresh-button-compact .refresh-icon{width:14px;height:14px}.refresh-button-compact .refresh-icon.spinning{animation:spin 1s linear infinite}.meter-container-compact{position:relative;height:20px;background:#ffffff1a;border-radius:12px;overflow:hidden;margin-bottom:8px;border:1px solid rgba(255,107,107,.3);animation:containerGlow 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes containerGlow{0%,to{border-color:#ff6b6b4d;box-shadow:0 0 #ff6b6b33}50%{border-color:#ff6b6b99;box-shadow:0 0 15px #ff6b6b66}}.meter-fill-compact{height:100%;background:linear-gradient(to right,#feca57,#ff6b6b,#4ecdc4);border-radius:12px;transition:width 1s ease-in-out;position:relative;box-shadow:0 0 20px #ff6b6b80;animation:meterGlow 2s ease-in-out infinite alternate}.meter-fill-demo{animation:meterPulse 2s ease-in-out infinite,meterSlide 4s ease-in-out infinite;background:linear-gradient(45deg,#feca57,#ff6b6b,#4ecdc4,#ff9ff3,#feca57);background-size:200% 200%}@keyframes meterGlow{0%{box-shadow:0 0 20px #ff6b6b80}to{box-shadow:0 0 30px #ff6b6bcc,0 0 40px #4ecdc44d}}@keyframes meterPulse{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.1)}}@keyframes meterSlide{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.meter-indicator-compact{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:4px}.meter-score-compact{font-size:12px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.8)}.meter-status-compact{text-align:center}.status-text-compact{font-size:14px;font-weight:500;color:#d1d1d1}.chat-messages{flex:1;overflow-y:auto;padding:32px;position:relative;background:transparent}.empty-state-placeholder{display:flex;align-items:center;justify-content:center;height:calc(100% - 40px);min-height:500px;margin:20px;border:2px dashed rgba(255,255,255,.2);border-radius:16px;background:#ffffff08;transition:all .3s ease;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.empty-state-placeholder:hover{border-color:#4ecdc4;background:#4ecdc41a;transform:scale(1.01)}.placeholder-content{text-align:center;padding:40px 20px;max-width:400px}.placeholder-icon-wrapper{position:relative;display:inline-block;margin-bottom:24px}.placeholder-main-icon{width:80px;height:80px;color:#6b7280}.placeholder-upload-badge{position:absolute;bottom:-8px;right:-8px;background:linear-gradient(45deg,#ff6b6b,#4ecdc4);border-radius:50%;padding:8px;border:3px solid #1a1a2e}.placeholder-upload-icon{width:20px;height:20px;color:#fff}.placeholder-title{font-size:24px;font-weight:700;color:#fff;margin-bottom:8px}.placeholder-subtitle{color:#b8b8b8;font-size:16px;line-height:1.5;margin-bottom:32px}.placeholder-features{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.placeholder-feature{display:flex;flex-direction:column;align-items:center;gap:8px;color:#d1d1d1;font-size:14px;font-weight:500}.placeholder-feature-icon{width:24px;height:24px;color:#4ecdc4}.drag-overlay{position:absolute;inset:0;background:#ff6b6b33;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;display:flex;align-items:center;justify-content:center;border-radius:0}.drag-content{text-align:center}.drag-icon{width:64px;height:64px;margin:0 auto 16px;color:#ff6b6b;animation:bounce 1s infinite}.drag-text{font-size:20px;font-weight:700}.message{margin-bottom:16px;display:flex;justify-content:center}.message.user{text-align:right}.message.system{text-align:center}.system-message{font-size:12px;color:#6b7280;font-weight:600;margin:16px 0}.message-content{display:inline-flex;align-items:flex-start;gap:8px;max-width:900px;width:100%}.message-content.user{flex-direction:row-reverse;justify-content:flex-start}.avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar.user{background:#ff6b6b}.avatar.ai{background:#4ecdc4}.avatar-icon{width:20px;height:20px}.message-bubble{border-radius:16px;padding:12px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-width:70%}.message-bubble.user{background:#ff6b6b33;border:1px solid rgba(255,107,107,.5);margin-left:auto}.message-bubble.ai{background:#4ecdc433;border:1px solid rgba(78,205,196,.5);margin-right:auto}.message-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:17px;line-height:1.6;color:#f8fafc;font-weight:400}.message-text p{margin:0 0 16px;line-height:1.6;color:#f8fafc}.message-text p:last-child{margin-bottom:0}.message-text strong{font-weight:600;color:#fff}.message-text em{font-style:italic;color:#cbd5e0}.message-text ul,.message-text ol{margin:12px 0 16px;padding-left:24px}.message-text li{margin:6px 0;line-height:1.6}.message-text h1,.message-text h2,.message-text h3{margin:20px 0 12px;font-weight:600;color:#fff;line-height:1.4}.message-text h1{font-size:1.3em}.message-text h2{font-size:1.2em}.message-text h3{font-size:1.1em}.message-text code{background:#ffffff1a;color:#fbbf24;padding:3px 6px;border-radius:4px;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-size:15px}.message-text blockquote{border-left:4px solid rgba(78,205,196,.5);margin:12px 0;color:#cbd5e0;font-style:italic;background:#ffffff0d;padding:12px 16px;border-radius:6px}.markdown-content{color:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:17px;line-height:1.6}.markdown-content p{margin:0 0 16px;line-height:1.6;color:#f8fafc}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong{color:#fff;font-weight:600}.markdown-content em{font-style:italic;color:#d1d5db}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{color:#fff;font-weight:600;margin:16px 0 8px;line-height:1.3}.markdown-content h1:first-child,.markdown-content h2:first-child,.markdown-content h3:first-child,.markdown-content h4:first-child{margin-top:0}.markdown-content h1{font-size:1.4em}.markdown-content h2{font-size:1.25em}.markdown-content h3{font-size:1.1em}.markdown-content h4{font-size:1em}.markdown-content ul,.markdown-content ol{margin:12px 0 16px;padding-left:24px;color:#f8fafc}.markdown-content li{margin-bottom:8px;line-height:1.6;color:#f8fafc}line-height: 1.5; } .markdown-content li:last-child{margin-bottom:0}.markdown-content code{background:#0000004d;padding:2px 6px;border-radius:4px;font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9em;color:#4ecdc4}.markdown-content pre{background:#0006;padding:12px 16px;border-radius:8px;overflow-x:auto;margin:12px 0}.markdown-content pre code{background:none;padding:0}.markdown-content blockquote{border-left:3px solid #4ecdc4;margin:12px 0;padding:8px 16px;background:#4ecdc41a;border-radius:0 8px 8px 0;color:#d1d5db}.markdown-content a{color:#4ecdc4;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content hr{border:none;border-top:1px solid rgba(255,255,255,.1);margin:16px 0}.message-line{margin:0 0 8px;line-height:1.4}.message-line:last-child{margin-bottom:0}.message-line:empty{margin-bottom:4px}.message-images{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.message-image{max-width:200px;max-height:200px;border-radius:8px;cursor:pointer;transition:transform .2s ease}.message-image:hover{transform:scale(1.05)}.typing-indicator{display:flex;align-items:center;justify-content:center;margin-bottom:16px;opacity:0;animation:fadeIn .3s ease-in-out forwards}.typing-indicator .message-content{max-width:900px}.typing-indicator .message-bubble{background:#4ecdc433;border:1px solid rgba(78,205,196,.3);padding:16px 20px;border-radius:20px;box-shadow:0 2px 8px #4ecdc41a}.typing-dots{display:flex;gap:4px;align-items:center;height:20px}.typing-dot{width:8px;height:8px;background:#4ecdc4;border-radius:50%;animation:typingBounce 1.4s infinite ease-in-out}.typing-dot:nth-child(1){animation-delay:-.32s}.typing-dot:nth-child(2){animation-delay:-.16s}.typing-dot:nth-child(3){animation-delay:0s}@keyframes typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.conversation-loading-overlay{position:absolute;inset:0;background:#111827d9;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.conversation-loading-content{display:flex;flex-direction:column;align-items:center;gap:16px}.conversation-loading-spinner{width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#4ecdc433,#ff6b6b33);display:flex;align-items:center;justify-content:center;animation:pulse-glow 1.5s ease-in-out infinite;box-shadow:0 0 30px #4ecdc44d}.conversation-loading-icon{width:32px;height:32px;color:#4ecdc4;animation:bounce-subtle 1s ease-in-out infinite}.conversation-loading-text{color:#fffc;font-size:14px;font-weight:500;letter-spacing:.5px}@keyframes pulse-glow{0%,to{transform:scale(1);box-shadow:0 0 20px #4ecdc44d}50%{transform:scale(1.05);box-shadow:0 0 40px #4ecdc480}}@keyframes bounce-subtle{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.analyzing-indicator{text-align:center;padding:16px 0}.spinner-container{display:inline-block;position:relative}.spinner{width:48px;height:48px;border:3px solid rgba(78,205,196,.2);border-top:3px solid #4ecdc4;border-radius:50%;animation:spin 1s linear infinite}.spinner-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.sparkles-icon{width:24px;height:24px;color:#4ecdc4;animation:pulse 1s infinite}.chat-input-area{padding:20px 32px;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;flex-shrink:0}.staged-images-container{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px;max-height:150px;overflow-y:auto;max-width:1200px;margin-left:auto;margin-right:auto}.staged-image-preview{position:relative;display:inline-block}.staged-image{max-width:150px;max-height:100px;border-radius:8px;border:2px solid #4ecdc4;object-fit:cover}.remove-staged-button{position:absolute;top:-8px;right:-8px;background:#ef4444;padding:6px;border-radius:50%;transition:background-color .3s;box-shadow:0 2px 4px #0000004d}.remove-staged-button:hover{background:#dc2626;transform:scale(1.1)}.remove-staged-icon{width:14px;height:14px;color:#fff}.input-container{display:flex;gap:8px;max-width:1200px;margin:0 auto}.file-input{display:none}.upload-button{background:#ffffff0d;padding:12px;border-radius:50%;transition:all .3s;box-shadow:0 2px 8px #4ecdc41f;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.upload-button:hover{background:linear-gradient(135deg,#4ecdc4,#45b7aa);box-shadow:0 4px 16px #4ecdc440;transform:scale(1.12) rotate(8deg)}.upload-icon{width:20px;height:20px;transition:color .3s,transform .3s;color:#4ecdc4}.upload-button:hover .upload-icon{color:#fff;transform:translateY(-2px) scale(1.15)}.text-input{flex:1;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:25px;padding:12px 20px;color:#fff;outline:none;transition:border-color .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.text-input::placeholder{color:#b8b8b8}.text-input:focus{border-color:#4ecdc4}.send-button{background:linear-gradient(45deg,#ff6b6b,#ff8e8e);padding:12px;border-radius:50%;transition:all .3s;box-shadow:0 5px 15px #ff6b6b66;cursor:pointer;display:flex;align-items:center;justify-content:center;border:none}.send-button:hover{transform:scale(1.12) rotate(-8deg);box-shadow:0 6px 20px #ff6b6b80;background:linear-gradient(45deg,#ff5252,#ff7979)}.send-icon{width:20px;height:20px;transition:color .3s,transform .3s;color:#fff}.send-button:hover .send-icon{transform:translate(2px) scale(1.15)}.user-sidebar{position:fixed;top:0;left:0;width:300px;height:100vh;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-right:1px solid rgba(255,255,255,.1);z-index:1000;transform:translate(0);transition:transform .3s ease;display:flex;flex-direction:column}.user-sidebar.open{transform:translate(0)}.sidebar-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:999;display:none}.sidebar-main{flex:1;overflow-y:auto;padding:12px}.new-chat-section{margin-bottom:20px}.new-chat-btn{width:100%;display:flex;align-items:center;gap:8px;padding:10px 14px;background:#ffffff1a;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s ease}.new-chat-btn:hover{background:#ffffff26;border-color:#fff3}.recent-chats-section{flex:1}.section-header{padding:8px 12px;margin-bottom:8px}.section-title{font-size:12px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px}.chat-list{display:flex;flex-direction:column;gap:2px}.chat-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:#e5e7eb;cursor:pointer;transition:all .2s ease;text-align:left}.chat-item:hover{background:#ffffff0d}.chat-info{flex:1;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.chat-title{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:100%}.chat-timestamp{font-size:11px;color:#6b7280}.sidebar-footer{border-top:1px solid rgba(255,255,255,.1);padding:12px}.user-section{display:flex;flex-direction:column;gap:8px}.upgrade-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.upgrade-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.user-menu{display:flex;flex-direction:column;gap:2px}.user-menu-item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;background:transparent;border:none;border-radius:8px;color:#e5e7eb;font-size:14px;cursor:pointer;transition:all .2s ease;text-align:left}.user-menu-item:hover{background:#ffffff0d}.user-info{display:flex;align-items:center;gap:12px;width:100%}.user-avatar{width:36px;height:36px;border-radius:8px;background:#ffffff1a;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-details{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.user-email{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-status{font-size:12px;color:#9ca3af}.settings-menu-toggle{justify-content:space-between!important}.settings-dropdown{margin-left:24px;margin-top:8px;border-left:2px solid rgba(255,255,255,.1);padding:8px 0 8px 12px}.settings-section{margin-bottom:16px}.settings-section:last-child{margin-bottom:0}.settings-section-title{font-size:12px;font-weight:600;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding:0 4px}.settings-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px 12px;background:transparent;border:none;border-radius:6px;color:#e5e7eb;font-size:13px;cursor:pointer;transition:all .2s ease;text-align:left;margin-bottom:2px}.settings-item:hover{background:#ffffff0d;color:#fff}.settings-item-danger{color:#fca5a5}.settings-item-danger:hover{background:#ef44441a;color:#ff6b6b}.settings-item:disabled{opacity:.5;cursor:not-allowed}.settings-item:disabled:hover{background:transparent;color:#9ca3af}.no-user-section{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.no-user-section p{color:#9ca3af;font-size:14px;margin:0}.sidebar-action.sign-in-btn{width:100%;padding:10px 14px;background:#ffffff1a;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s ease}.sidebar-action.sign-in-btn:hover{background:#ffffff26;border-color:#fff3}.sidebar-main::-webkit-scrollbar{width:6px}.sidebar-main::-webkit-scrollbar-track{background:transparent}.sidebar-main::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.sidebar-main::-webkit-scrollbar-thumb:hover{background:#fff3}.attraction-meter,.quick-tips,.footer{display:none}@keyframes float{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.1)}}@keyframes particleFloat{0%{transform:translateY(100vh) rotate(0);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100px) rotate(360deg);opacity:0}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes bounce{0%,20%,53%,80%,to{transform:translateY(0)}40%,43%{transform:translateY(-15px)}70%{transform:translateY(-8px)}90%{transform:translateY(-2px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 1024px){.main-content{width:calc(100% - 300px)}.chat-messages{padding:24px}.message-content{max-width:100%}.message-bubble{max-width:80%}}@media (max-width: 768px){.main-content{width:100%;margin-left:0}.user-sidebar{width:80vw;max-width:320px;z-index:1001;position:fixed;top:0;left:0;height:100vh;height:100dvh;background:#111827fa;box-shadow:2px 0 16px #0003;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;overflow:hidden}.user-sidebar .sidebar-main{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;min-height:0;padding-bottom:20px}.user-sidebar .sidebar-footer,.user-sidebar .header.sidebar-header{flex-shrink:0}.user-sidebar.open{transform:translate(0)}.sidebar-backdrop{display:block;z-index:1000}.sidebar-backdrop.show{display:block}.chat-header{padding:8px 12px;flex-shrink:0}.feature-pills{display:none}.chat-header-top{margin-bottom:8px}.chat-header-attraction-meter{margin:4px 0}.attraction-meter-compact{padding:4px 8px}.attraction-meter-compact-title{font-size:12px}.meter-container-compact{height:16px}.meter-status-compact{margin-top:2px}.status-text-compact{font-size:10px}.chat-title{font-size:14px}.chat-icon{width:18px;height:18px}.mobile-menu-button{padding:6px;margin-right:8px}.chat-interface{height:100vh;height:100dvh}.chat-input-area{position:fixed!important;bottom:env(safe-area-inset-bottom,20px);left:0;right:0;width:100%;z-index:1000;padding:16px;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:1px solid rgba(255,255,255,.08)}.chat-interface{height:100vh;height:100dvh;height:100svh;min-height:0;overflow:hidden;padding-bottom:100px}.chat-messages{padding:8px 12px 120px;flex:0 1 auto;min-height:0;overflow-y:auto}.message-content{max-width:90%}.preview-image{max-width:280px}.empty-state-placeholder{min-height:200px;margin:10px;height:auto}.placeholder-content{padding:20px 15px}.placeholder-main-icon{width:40px;height:40px}.placeholder-title{font-size:18px;margin-bottom:8px}.placeholder-subtitle{font-size:13px;margin-bottom:15px}.placeholder-features,.placeholder-upload-badge{display:none}.text-input{font-size:16px;-webkit-text-size-adjust:100%;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}.text-input:focus{transform:none;zoom:1}.user-menu{width:100%}.user-menu-item{padding:12px 8px;font-size:14px}.settings-dropdown{margin-left:16px;margin-top:4px;padding-left:8px;width:calc(100% - 20px)}.settings-menu-item{padding:10px 4px;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cancel-subscription-btn{padding:8px 12px;font-size:12px;width:100%;box-sizing:border-box}}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;animation:fadeIn .2s ease-out}.modal-container{position:fixed;inset:0;z-index:2001;display:flex;align-items:center;justify-content:center;padding:20px;pointer-events:none}.modal-content{background:#111827f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;max-width:480px;width:100%;position:relative;pointer-events:all;animation:slideUp .3s ease-out;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.subscription-modal .modal-content{max-width:480px;background:linear-gradient(135deg,#111827fa,#1a1a2ef2);border:1px solid rgba(255,255,255,.15);box-shadow:0 25px 50px -12px #00000040,0 0 50px #4ecdc41a}.subscription-header{text-align:center;margin-bottom:32px;position:relative}.subscription-header h2{font-size:2rem;font-weight:800;background:linear-gradient(45deg,#ff6b6b,#4ecdc4,#feca57);background-size:200% 200%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:16px;animation:gradientShift 3s ease infinite}.price-badge{display:inline-flex;align-items:baseline;gap:4px;padding:12px 24px;background:linear-gradient(135deg,#ff6b6b33,#4ecdc433);border:2px solid rgba(255,107,107,.5);border-radius:50px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #ff6b6b4d;animation:pricePulse 2s ease-in-out infinite}@keyframes pricePulse{0%,to{transform:scale(1);box-shadow:0 4px 20px #ff6b6b4d}50%{transform:scale(1.05);box-shadow:0 6px 30px #ff6b6b80}}.price-badge .price{font-size:2.5rem;font-weight:700;color:#fff;text-shadow:0 2px 10px rgba(255,107,107,.5)}.price-badge .period{font-size:1.2rem;color:#feca57;font-weight:500}.subscription-features{margin-bottom:32px}.subscription-features h3{font-size:1.1rem;color:#e5e7eb;margin-bottom:20px;text-align:center;font-weight:600;letter-spacing:.5px}.features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}.features-list li{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#ffffff08;border-radius:12px;border:1px solid rgba(255,255,255,.08);transition:all .3s ease;color:#e5e7eb;font-size:15px}.features-list li:hover{background:#4ecdc41a;border-color:#4ecdc44d;transform:translate(4px)}.check-icon{width:20px;height:20px;color:#4ecdc4;flex-shrink:0;animation:checkBounce 2s ease-in-out infinite}@keyframes checkBounce{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.payment-form{display:flex;flex-direction:column;gap:20px}.payment-form h3{display:flex;align-items:center;gap:10px;font-size:1.1rem;color:#e5e7eb;margin:0;font-weight:600}.payment-form h3 .icon{width:24px;height:24px;color:#feca57}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;color:#9ca3af;font-weight:500;letter-spacing:.3px}.StripeElement{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);border-radius:8px;padding:14px 16px;transition:all .3s ease;min-height:44px}.StripeElement--focus{background:#ffffff14;border-color:#4ecdc4;box-shadow:0 0 0 3px #4ecdc41a}.StripeElement--invalid{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.StripeElement--complete{border-color:#10b981}.subscribe-btn{width:100%;padding:16px 24px;background:linear-gradient(135deg,#ff6b6b,#ff8e8e,#feca57);background-size:200% 200%;border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 10px 30px #ff6b6b4d;text-transform:uppercase;letter-spacing:.5px;position:relative;overflow:hidden}.subscribe-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .6s ease}.subscribe-btn:hover:not(:disabled):before{left:100%}.subscribe-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 40px #ff6b6b66;background-position:100% 50%}.subscribe-btn:active:not(:disabled){transform:translateY(0);box-shadow:0 5px 20px #ff6b6b4d}.subscribe-btn:disabled{opacity:.6;cursor:not-allowed;background:linear-gradient(135deg,#6b7280,#9ca3af);box-shadow:none}.subscribe-btn .spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.subscription-terms{text-align:center;font-size:12px;color:#9ca3af;margin:0;line-height:1.5;opacity:.8}.error-message{color:#ef4444;background:#ef44441a;border:1px solid rgba(239,68,68,.3);padding:10px 14px;border-radius:8px;margin-bottom:16px;font-size:14px;display:flex;align-items:center;gap:8px;animation:errorShake .5s ease-in-out}@keyframes errorShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}.error-message:before{content:"⚠️";font-size:16px}.payment-success{text-align:center;padding:32px}.success-icon{width:64px;height:64px;color:#10b981;margin:0 auto 16px;animation:successPop .5s ease-out}@keyframes successPop{0%{transform:scale(0);opacity:0}50%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.success-message{font-size:1.25rem;font-weight:600;color:#fff;margin-bottom:8px}.success-submessage{color:#9ca3af;font-size:14px}@media (max-width: 640px){.subscription-modal .modal-content{max-width:100%;padding:24px}.subscription-header h2{font-size:1.5rem}.price-badge .price{font-size:2rem}.features-list li{font-size:14px;padding:10px 12px}.subscribe-btn{font-size:14px;padding:14px 20px}}.cancel-modal-overlay{position:fixed;inset:0;background:#000c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:3000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .2s ease-out}.cancel-modal{background:linear-gradient(145deg,#1a1a2e,#16213e);border-radius:24px;padding:32px;max-width:480px;width:100%;max-height:90vh;overflow-y:auto;position:relative;border:1px solid rgba(255,255,255,.1);box-shadow:0 25px 50px -12px #00000080;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.cancel-modal-close{position:absolute;top:16px;right:16px;background:#ffffff1a;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#a0a0a0;transition:all .2s ease}.cancel-modal-close:hover{background:#fff3;color:#fff}.cancel-modal-header{text-align:center;margin-bottom:24px}.cancel-modal-emoji{font-size:64px;margin-bottom:16px}.cancel-modal-header h2{font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 8px}.cancel-modal-header p{color:#a0a0a0;font-size:1rem;margin:0}.cancel-modal-benefits{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:16px;padding:20px;margin-bottom:24px}.cancel-modal-benefits h3{color:#ff6b6b;font-size:.9rem;font-weight:600;margin:0 0 16px;text-transform:uppercase;letter-spacing:.5px}.benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.benefit-item{display:flex;align-items:center;gap:10px;color:#e0e0e0;font-size:.9rem}.benefit-icon{color:#ff6b6b;width:18px;height:18px;flex-shrink:0}.cancel-modal-reasons{margin-bottom:24px}.cancel-modal-reasons h3{color:#fff;font-size:1rem;font-weight:600;margin:0 0 16px}.reasons-list{display:flex;flex-direction:column;gap:10px}.reason-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .2s ease}.reason-option:hover{background:#ffffff1a;border-color:#4ecdc44d}.reason-option input[type=radio]{width:18px;height:18px;accent-color:#4ecdc4;cursor:pointer}.reason-label{color:#e0e0e0;font-size:.95rem}.cancel-modal-actions{display:flex;gap:12px;margin-top:24px}.cancel-modal-btn{flex:1;padding:14px 20px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.stay-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;box-shadow:0 4px 15px #4ecdc44d}.stay-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4ecdc466}.continue-btn{background:#ffffff1a;color:#a0a0a0;border:1px solid rgba(255,255,255,.2)}.continue-btn:hover:not(:disabled){background:#ffffff26;color:#fff}.continue-btn:disabled{opacity:.5;cursor:not-allowed}.confirm-header{padding-top:20px}.cancel-modal-warning{width:80px;height:80px;background:#ffc10726;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:#ffc107}.cancel-modal-offer{background:linear-gradient(135deg,#4ecdc426,#44a08d26);border:1px solid rgba(78,205,196,.3);border-radius:16px;padding:24px;text-align:center;margin-bottom:20px}.offer-badge{display:inline-block;background:linear-gradient(135deg,#ff6b6b,#feca57);color:#fff;padding:6px 14px;border-radius:20px;font-size:.8rem;font-weight:700;margin-bottom:12px}.cancel-modal-offer h3{color:#fff;font-size:1.25rem;font-weight:700;margin:0 0 8px}.cancel-modal-offer p{color:#a0a0a0;font-size:.9rem;margin:0 0 16px}.claim-offer-btn{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;padding:14px 28px;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 15px #4ecdc44d}.claim-offer-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4ecdc466}.cancel-modal-divider{display:flex;align-items:center;gap:16px;margin:20px 0}.cancel-modal-divider:before,.cancel-modal-divider:after{content:"";flex:1;height:1px;background:#ffffff1a}.cancel-modal-divider span{color:#666;font-size:.85rem}.final-actions{margin-top:0}.back-btn{background:#ffffff1a;color:#a0a0a0;border:1px solid rgba(255,255,255,.2)}.back-btn:hover:not(:disabled){background:#ffffff26;color:#fff}.confirm-cancel-btn{background:#ff6b6b33;color:#ff6b6b;border:1px solid rgba(255,107,107,.3)}.confirm-cancel-btn:hover:not(:disabled){background:#ff6b6b4d}.confirm-cancel-btn:disabled,.back-btn:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 500px){.cancel-modal{padding:24px 20px;margin:10px}.cancel-modal-emoji{font-size:48px}.cancel-modal-header h2{font-size:1.4rem}.benefits-grid{grid-template-columns:1fr}.cancel-modal-actions{flex-direction:column}.cancel-modal-btn{width:100%}}
