@import"https://fonts.googleapis.com/css2?family=Exo+2:wght@300;400;600;700&display=swap";:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.user-profile-section{padding:15px;margin-bottom:20px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.user-info{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;border:2px solid #4285f4}.user-details{display:flex;flex-direction:column;gap:4px;flex:1}.user-name-row{display:flex;align-items:center;justify-content:space-between;width:100%;gap:8px}.user-name{font-weight:600;font-size:.95rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.user-plan-row{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:4px}.upgrade-btn-small{background:linear-gradient(90deg,#4285f4,#00c6ff);border:none;color:#fff;padding:2px 8px;border-radius:4px;font-size:.65rem;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase}.upgrade-btn-small:hover{transform:scale(1.05);box-shadow:0 0 8px #4285f466}.auth-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s;border:none;font-size:.9rem}.auth-button.login{background:#fff;color:#757575;width:100%}.auth-button.login:hover{background:#f1f1f1;box-shadow:0 2px 4px #0003}.auth-button.login img{width:18px;height:18px}.auth-button.logout{background:transparent;color:#ff4d4d;padding:0;justify-content:flex-start;font-size:.8rem;text-decoration:underline}.auth-button.logout:hover{color:#f33}.loading-auth{font-size:.8rem;color:#aaa;text-align:center}.pricing-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px}.pricing-modal{background:#161625fa;border:1px solid rgba(255,255,255,.15);border-radius:24px;max-width:1000px;width:100%;max-height:90vh;padding:40px;position:relative;box-shadow:0 25px 60px #0009;color:#fff;overflow-y:auto;display:flex;flex-direction:column}.pricing-close{position:absolute;top:20px;right:20px;width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;background:#ffffff1a!important;border:none!important;color:#fff!important;cursor:pointer;opacity:.7;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:50%!important;padding:0!important;transition:all .2s ease;box-sizing:border-box!important}.pricing-close:hover{opacity:1;background:#fff3}@media(max-width:1024px){.pricing-modal{max-width:800px}}@media(max-width:768px){.pricing-modal{padding:30px 20px;border-radius:16px;width:95%}.pricing-header h2{font-size:1.8rem}.pricing-grid{grid-template-columns:1fr;gap:15px}.pricing-card{padding:20px}}.pricing-header{text-align:center;margin-bottom:40px}.pricing-header h2{font-size:2.5rem;margin:0 0 10px;background:linear-gradient(90deg,#fff,#00c6ff);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:25px}.pricing-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:30px;display:flex;flex-direction:column;transition:transform .3s ease}.pricing-card:hover{transform:translateY(-5px);border-color:#4285f4}.card-plan{font-size:1.1rem;color:#4285f4;font-weight:600;margin-bottom:5px}.card-price{font-size:2.5rem;font-weight:700;margin-bottom:20px}.card-price span{font-size:1rem;opacity:.6}.card-features{list-style:none;padding:0;margin:0 0 30px;flex-grow:1}.card-features li{margin-bottom:12px;display:flex;align-items:center;font-size:.9rem}.card-features li:before{content:"✓";color:#00c6ff;margin-right:10px;font-weight:700}.pricing-button{background:#4285f4;color:#fff;border:none;padding:12px;border-radius:10px;font-weight:600;cursor:pointer}.pricing-button:hover:not(:disabled){background:#3367d6}.pricing-card.current{border:2px solid #00c6ff;background:#00c6ff0d}.current-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:#00c6ff;color:#fff;padding:6px 16px;border-radius:30px;font-size:.75rem;font-weight:900;letter-spacing:1.5px;box-shadow:0 4px 15px #00c6ff66}.pricing-button.current-btn{background:#ffffff1a;color:#00c6ff;border:1px solid #00c6ff;cursor:default}.upgrade-btn{background:linear-gradient(90deg,#4285f4,#00c6ff);border:none;color:#fff;padding:8px 12px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;margin-top:10px}:root{--sidebar-bg: rgba(22, 22, 37, .9);--accent-blue: #4285f4;--text-main: #e0e0f0;--glass-border: rgba(255, 255, 255, .1);--sidebar-width-left: 280px;--sidebar-width-right: 380px}#root{max-width:none;margin:0;padding:0;width:100vw;height:100vh}.app-container{display:flex;height:100vh;width:100vw;font-family:"Exo 2",sans-serif;background-color:#05050a;color:var(--text-main);overflow:hidden;position:relative}.sidebar{height:100%;background:var(--sidebar-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;flex-direction:column;z-index:100;transition:transform .4s cubic-bezier(.4,0,.2,1),width .4s ease;overflow-y:auto;padding:20px;box-sizing:border-box}.left-sidebar{width:var(--sidebar-width-left);border-right:1px solid var(--glass-border);display:flex;flex-direction:column}.sidebar-footer{margin-top:auto;padding:20px 0;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;gap:10px}.footer-links{display:flex;gap:15px;justify-content:center}.footer-links a{color:#b0b0cf;font-size:.85rem;text-decoration:none;transition:all .2s ease;font-weight:500}.footer-links a:hover{color:#4285f4;text-shadow:0 0 10px rgba(66,133,244,.4)}.footer-copyright{color:#7a7a8f;font-size:.75rem;text-align:center;letter-spacing:.5px;margin-top:5px}.right-sidebar{width:var(--sidebar-width-right);border-left:1px solid var(--glass-border)}.sidebar.closed{position:absolute;pointer-events:none;visibility:hidden}.left-sidebar.closed{transform:translate(-100%)}.right-sidebar.closed{transform:translate(100%);right:0}@media(max-width:1024px){.sidebar{position:fixed;top:0;bottom:0;width:85%!important;max-width:400px;background:#161625;box-shadow:10px 0 30px #000c;z-index:2000}.left-sidebar{left:0;border-right:1px solid var(--accent-blue)}.right-sidebar{right:0;border-left:1px solid var(--accent-blue)}.left-sidebar.closed{transform:translate(-100%)}.right-sidebar.closed{transform:translate(100%)}.sidebar.closed{position:fixed}}.floating-toggle{position:fixed;top:20px;width:45px;height:45px;border-radius:50%;background:#4285f433;border:1px solid rgba(66,133,244,.4);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:3000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:all .3s ease;font-size:1.2rem;box-shadow:0 4px 15px #0000004d}@media(min-width:1025px){.app-container:not(.left-closed) .left-toggle{left:calc(var(--sidebar-width-left) + 20px)}.app-container:not(.right-closed) .right-toggle{right:calc(var(--sidebar-width-right) + 20px)}}@media(max-width:1024px){.floating-toggle{background:#161625cc;border:1px solid var(--accent-blue);box-shadow:0 4px 15px #00000080}}.floating-toggle:hover{background:var(--accent-blue);transform:scale(1.1)}.left-toggle{left:20px}.right-toggle{right:20px}.main-content{flex-grow:1;display:flex;flex-direction:column;position:relative;z-index:10;transition:all .4s ease;min-width:0}.main-content h1{position:absolute;top:15px;left:50%;transform:translate(-50%);z-index:5;color:#fff;font-weight:700;font-size:clamp(1.2rem,4vw,2.2rem);text-align:center;width:100%;pointer-events:none;text-shadow:0 0 10px rgba(0,198,255,.8)}#map-container{width:100%;height:100%;background-color:#000;overflow:hidden}#map-container canvas{width:100%!important;height:100%!important;display:block}.logo,.read-the-docs,.card{display:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}.poi-upgrade-hint{margin-top:20px;padding:15px;background:#ffc1070d;border:1px dashed rgba(255,193,7,.3);border-radius:8px;text-align:center}.poi-upgrade-hint p{font-size:.85rem;color:#ffc107;margin-bottom:10px}.upgrade-inline-btn{background:#ffc107;color:#000;border:none;padding:6px 12px;border-radius:4px;font-weight:700;font-size:.8rem;cursor:pointer;transition:all .2s ease;width:100%}.user-profile-skeleton{display:flex;align-items:center;gap:12px;width:100%}.skeleton-avatar{width:40px;height:40px;border-radius:50%;background:#ffffff0d;position:relative;overflow:hidden}.skeleton-details{flex:1;display:flex;flex-direction:column;gap:8px}.skeleton-line{height:12px;background:#ffffff0d;border-radius:4px;position:relative;overflow:hidden}.skeleton-line.name{width:70%}.skeleton-line.plan{width:40%;height:10px}.skeleton-avatar:after,.skeleton-line:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.05) 50%,transparent 100%);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pricing-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999}.pricing-modal{background:radial-gradient(circle at top left,#1a1a2e,#0d0d1a);border-radius:24px;width:95%;max-width:1000px;max-height:90vh;padding:50px;position:relative;overflow-y:auto;border:1px solid rgba(255,255,255,.1);box-shadow:0 0 60px #000,0 0 20px #4285f41a;color:#fff}.pricing-header{text-align:center;margin-bottom:50px}.pricing-header h2{font-size:3.2rem;font-weight:900;margin-bottom:12px;letter-spacing:-1px;background:linear-gradient(to bottom,#fff 30%,#4285f4);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.pricing-header p{color:#8a8a9e;font-size:1.1rem;max-width:600px;margin:0 auto}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:30px;margin-bottom:80px}.pricing-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:35px;display:flex;flex-direction:column;position:relative;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.pricing-card:hover{transform:translateY(-10px);background:#ffffff0a;border-color:#4285f44d}.pricing-card.featured{background:#4285f40d;border:2px solid #4285f4;box-shadow:0 10px 40px #4285f433}.pricing-card.featured:before{content:"";position:absolute;inset:-2px;border-radius:20px;background:linear-gradient(45deg,transparent,rgba(66,133,244,.3),transparent);z-index:-1;filter:blur(10px)}.featured-badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:#4285f4;color:#fff;padding:6px 16px;border-radius:30px;font-size:.75rem;font-weight:900;letter-spacing:1.5px;box-shadow:0 4px 15px #4285f466}.card-plan{font-size:1.4rem;font-weight:800;margin-bottom:20px;color:#a0a0ff}.card-price{font-size:3rem;font-weight:900;margin-bottom:30px;display:flex;align-items:baseline}.card-price span{font-size:1.1rem;color:#6a6a7e;font-weight:500;margin-left:4px}.card-features{list-style:none;padding:0;margin:0 0 35px;flex:1}.card-features li{margin-bottom:15px;color:#c0c0d0;font-size:.95rem;display:flex;align-items:center;gap:12px}.card-features li:before{content:"✦";color:#4285f4;font-size:.8rem}.pricing-button{width:100%;padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:#ffffff0d;color:#fff;font-size:1rem;font-weight:700;cursor:pointer;transition:all .3s}.pricing-button:hover:not(:disabled){background:#ffffff1a;border-color:#fff}.pricing-button.primary{background:#fff;color:#0d0d1a;border:none;box-shadow:0 4px 20px #fff3}.pricing-button.primary:hover:not(:disabled){transform:scale(1.03);background:#f0f0f0}.comparison-section{margin-top:60px;border-top:1px solid rgba(255,255,255,.08);padding-top:60px}.comparison-section h3{text-align:center;margin-bottom:45px;font-size:2rem;font-weight:800;color:#fff}.comparison-table-wrapper{background:#0003;border-radius:16px;padding:20px;border:1px solid rgba(255,255,255,.04)}.comparison-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left}.comparison-table th{padding:20px;font-weight:700;color:#4285f4;font-size:.85rem;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid rgba(66,133,244,.2)}.comparison-table td{padding:20px;font-size:1rem;color:#b0b0c0;border-bottom:1px solid rgba(255,255,255,.03);transition:all .2s}.comparison-table tr:last-child td{border-bottom:none}.comparison-table tr:hover td{color:#fff;background:#ffffff05}.comparison-table td:first-child{font-weight:600;color:#e0e0f0}.user-name{font-weight:600;font-size:1.1rem}.user-plan-badge{font-size:.65rem;font-weight:800;padding:2px 8px;border-radius:10px;text-transform:uppercase;width:fit-content;letter-spacing:.5px}.plan-free{background:#6c757d;color:#fff}.plan-student{background:#17a2b8;color:#fff}.plan-explorer{background:#007bff;color:#fff}.plan-stem{background:linear-gradient(135deg,#ffc107,#ff8f00);color:#000;box-shadow:0 0 10px #ffc10766}.user-plan-row{display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:4px}.logout-btn{cursor:pointer;background:transparent;border:none;color:#a0a0b0;font-size:.75rem;padding:0;text-decoration:underline;transition:color .2s ease;width:fit-content;text-align:left;line-height:1}.logout-btn:hover{color:#ff4d4d}.upgrade-inline-btn:hover{background:#ffca2c;transform:translateY(-2px);box-shadow:0 4px 10px #ffc1074d}.chat-placeholder{flex-grow:1;display:flex;flex-direction:column;background-color:#2a2a40;border-radius:8px;padding:15px;box-shadow:inset 0 0 8px #0000004d;overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;flex-shrink:0}.chat-controls{display:flex;gap:8px;align-items:center}.chat-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:#a0a0ff;opacity:.7}.export-log-btn{background:none;border:none;color:#a0a0ff;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;opacity:.5}.export-container{position:relative;display:flex;gap:5px;align-items:center}.export-dropdown{position:absolute;top:100%;right:0;background-color:#1a1a2e;border:1px solid rgba(160,160,255,.2);border-radius:8px;padding:5px;z-index:100;min-width:150px;box-shadow:0 4px 15px #00000080;margin-top:5px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.export-dropdown button{display:block;width:100%;padding:8px 12px;background:none;border:none;color:#e0e0f0;text-align:left;cursor:pointer;border-radius:4px;font-size:.85rem;transition:background .2s}.export-dropdown button:hover{background-color:#a0a0ff1a;color:#fff}.export-log-btn:hover{opacity:1;background-color:#a0a0ff1a}.chat-mode-button,.speech-toggle-button{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#a0a0b0;cursor:pointer;padding:6px;width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.chat-mode-button:hover,.speech-toggle-button:hover{background-color:#ffffff1a;color:#e0e0f0}.chat-mode-button.active{color:#007bff;background-color:#007bff26;border-color:#007bff}.chat-messages{flex-grow:1;overflow-y:auto;margin-bottom:10px;padding-right:5px;min-height:0}.message-row{display:flex;margin-bottom:10px}.message-row.user-row{justify-content:flex-end}.message-row.agent-row{justify-content:flex-start}.message-bubble{padding:10px 15px;border-radius:18px;max-width:80%;white-space:pre-wrap;overflow-wrap:break-word;position:relative}.message-info{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:5px}.copy-bubble-btn{background:none;border:none;color:#a0a0ff;cursor:pointer;padding:2px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease;opacity:0}.message-bubble:hover .copy-bubble-btn{opacity:.6}.copy-bubble-btn:hover{opacity:1!important;background-color:#a0a0ff1a}.message-bubble.agent-bubble{background-color:#3b3b55;border-bottom-left-radius:4px}.message-bubble.user-bubble{background-color:#007bff;color:#fff;border-bottom-right-radius:4px}.message-bubble p{margin:0}.chat-suggestions-container{border-top:1px solid rgba(255,255,255,.05);padding:5px 0;transition:all .3s ease}.suggestions-header{display:flex;justify-content:space-between;align-items:center;padding:5px 10px;cursor:pointer;opacity:.7;transition:opacity .2s}.suggestions-header:hover{opacity:1}.suggestions-title{font-size:.75rem;text-transform:uppercase;letter-spacing:1px;color:#a0a0ff;font-weight:600}.suggestions-toggle{background:none;border:none;color:#a0a0ff;cursor:pointer;padding:0;display:flex;align-items:center}.chevron-icon{transition:transform .3s ease}.chevron-icon.rotated{transform:rotate(-90deg)}.chat-suggestions{display:flex;flex-wrap:wrap;gap:8px;padding:5px 10px 10px;margin-bottom:5px;flex-shrink:0}.suggestion-chip{background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#a0a0ff;padding:6px 12px;border-radius:15px;font-size:.85rem;white-space:nowrap;cursor:pointer;transition:all .2s ease;flex-shrink:0}.suggestion-chip:hover:not(:disabled){background:#4285f426;border-color:#4285f4;color:#fff;transform:translateY(-2px)}.suggestion-chip:disabled{opacity:.5;cursor:not-allowed}.chat-input-container{position:relative;display:flex;align-items:flex-end;margin-top:auto;flex-shrink:0;gap:8px;background-color:#1a1a2e;border:1px solid #555;border-radius:20px;padding:8px 12px;transition:border-color .3s ease}.chat-input-container:focus-within{border-color:#007bff}.chat-input{width:100%;max-height:150px;min-height:24px;padding:4px 40px 4px 4px;border:none;background:transparent;color:#e0e0f0;font-size:1rem;font-family:inherit;line-height:1.5;resize:none;outline:none;overflow-y:auto}.chat-input:focus{outline:none;border-color:#007bff}.chat-send-button{position:absolute;right:8px;bottom:8px;width:32px;height:32px;padding:0;background-color:#007bff;color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #007bff4d}.chat-send-button:hover:not(:disabled){background-color:#0056b3;transform:scale(1.05);box-shadow:0 0 15px #007bff80}.chat-send-button:active:not(:disabled){transform:scale(.95)}.chat-send-button:disabled{background-color:#333;color:#666;cursor:not-allowed;box-shadow:none}.chat-send-button svg{width:20px;height:20px}.chat-input-hint{font-size:.65rem;color:#666;text-align:center;margin-top:4px;opacity:.8;pointer-events:none}.chat-input-hint strong{color:#888}.typing-indicator{display:flex;align-items:center;padding:8px 0}.typing-indicator span{height:8px;width:8px;background-color:#9e9e9e;border-radius:50%;display:inline-block;margin:0 2px;animation:bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-auth-prompt{flex:1;display:flex;align-items:center;justify-content:center;background:#4285f41a;border:1px dashed rgba(66,133,244,.3);border-radius:12px;padding:12px;cursor:pointer;color:#a0a0ff;font-size:.9rem;transition:all .2s ease;margin-top:10px}.chat-auth-prompt:hover{background:#4285f433;border-color:#4285f4;transform:translateY(-2px)}.chat-auth-prompt strong{color:#fff;margin:0 4px;text-decoration:underline}.limit-error-bubble{border:1px solid #ff6b6b;background-color:#dc35451a!important}.chat-upgrade-btn{margin-top:10px;background-color:#ffc107;color:#000;border:none;padding:8px 16px;border-radius:6px;font-weight:700;font-size:.85rem;cursor:pointer;transition:transform .2s;width:100%}.chat-upgrade-btn:hover{transform:scale(1.02);background-color:#ffca2c}.map-toggle-buttons button{display:block;margin:8px 0;padding:8px 12px;background-color:#222;color:#fff;border:none;border-radius:6px;cursor:pointer;transition:.2s}.map-toggle-buttons button.active{background-color:#07f}.map-toggle-buttons button:hover{opacity:.85}.info-box{background:#000014b3;border:1px solid #444;border-radius:10px;padding:10px;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);color:#fff;min-width:150px;display:flex;justify-content:center;align-items:center}.land-button{background:linear-gradient(45deg,#007bff,#00c6ff);color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #007bff66;display:flex;align-items:center;justify-content:center;gap:8px}.land-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #007bff99}.land-button:active{transform:translateY(0);box-shadow:0 4px 15px #007bff66}.tavus-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#2a2a40;border-radius:8px;padding:15px;margin-top:10px}.tavus-start-screen,.tavus-loading-screen{text-align:center;color:#e0e0f0}.tavus-avatar-circle{width:140px;height:140px;border-radius:50%;overflow:hidden;margin:0 auto 20px;border:3px solid #007bff;box-shadow:0 0 20px #007bff66;background-color:#1a1a2e;position:relative;display:flex;align-items:center;justify-content:center}.tavus-replica-video{width:100%;height:100%;object-fit:cover}.tavus-avatar-placeholder{width:100%;height:100%;background-color:#3b3b55;animation:pulse 2s infinite}.tavus-start-screen h3{font-size:1.2rem;margin-bottom:8px}.tavus-start-screen p{color:#a0a0b0;margin-bottom:20px}.tavus-start-button{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-weight:700;cursor:pointer;transition:background-color .3s}.tavus-start-button:hover{background-color:#0056b3}.tavus-spinner{width:48px;height:48px;border:5px solid #3b3b55;border-top-color:#007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.tavus-iframe{width:100%;height:100%;border:none;border-radius:8px}@keyframes pulse{50%{opacity:.5}}.tavus-modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2147483647!important;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.tavus-modal-content{background-color:#1e1e30;border-radius:12px;box-shadow:0 10px 30px #00000080;width:90%;max-width:800px;height:80%;max-height:600px;position:relative;overflow:hidden}.tavus-modal-close-button{position:absolute;top:20px;right:20px;background:transparent;border:none;color:#fff;width:40px;height:40px;min-width:40px;min-height:40px;aspect-ratio:1 / 1;box-sizing:border-box;padding:0;display:flex;align-items:center;justify-content:center;line-height:0;cursor:pointer;z-index:10;opacity:.5;transition:all .2s ease;outline:none;border-radius:50%}.tavus-modal-close-button:hover{opacity:1;background-color:#ffffff26;transform:rotate(90deg)}.tavus-modal-content .tavus-container{margin-top:0;padding:0;height:100%}.tavus-error-message{background-color:#dc354526;color:#ff6b6b;padding:12px;border-radius:8px;margin-bottom:20px;font-size:.9rem;display:flex;flex-direction:column;gap:10px;border:1px solid rgba(220,53,69,.3);max-width:300px;margin-left:auto;margin-right:auto}.upgrade-link-btn{background-color:#ffc107;color:#000;border:none;padding:6px 12px;border-radius:4px;font-weight:700;font-size:.8rem;cursor:pointer;transition:transform .2s}.upgrade-link-btn:hover{transform:scale(1.05)}.tavus-start-button.disabled{background-color:#444;cursor:not-allowed;opacity:.6}.replica-selector{margin-bottom:25px;display:flex;flex-direction:column;gap:12px}.replica-selector span{font-size:.9rem;color:#a0a0b0}.replica-buttons{display:flex;gap:15px;justify-content:center}.replica-btn{padding:8px 16px;background-color:#3b3b55;border:2px solid transparent;border-radius:20px;color:#fff;cursor:pointer;transition:all .2s ease;font-size:.9rem}.replica-btn:hover{background-color:#4b4b65}.replica-btn.active{border-color:#007bff;background-color:#007bff26}.tavus-thumbnail-loader{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#ffffff0d}.spinner-mini{width:30px;height:30px;border:3px solid rgba(255,255,255,.1);border-top-color:#007bff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.remaining-time-badge{display:flex;align-items:center;gap:10px;background:#ffffff12;padding:8px 20px;border-radius:20px;margin-bottom:10px;border:1px solid rgba(255,255,255,.1);font-size:.9rem;width:fit-content;margin-left:auto;margin-right:auto}.remaining-time-badge span{opacity:.7}.remaining-time-badge strong{color:#00d4ff;font-family:Courier New,Courier,monospace;font-size:1.1rem;letter-spacing:1px}.remaining-time-badge strong.critical{color:#ff4d4d;text-shadow:0 0 10px rgba(255,77,77,.5);animation:pulse-red 2s infinite}.tiny-loader{width:14px;height:14px;border:2px solid rgba(255,255,255,.1);border-top-color:#00d4ff;border-radius:50%;animation:spin 1s linear infinite}.tavus-auth-prompt{background:#4285f41a;border:1px dashed rgba(66,133,244,.4);border-radius:20px;padding:30px 20px;margin-top:20px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center;width:100%}.tavus-auth-prompt:hover{background:#4285f426;border-color:#4285f4;transform:translateY(-3px)}.auth-icon{font-size:2.5rem;margin-bottom:15px}.tavus-auth-prompt h3{margin-bottom:10px;color:#fff;font-size:1.3rem}.tavus-auth-prompt p{color:#a0a0b0;font-size:.95rem;margin-bottom:20px}.tavus-login-btn{background:#4285f4;color:#fff;border:none;padding:10px 25px;border-radius:30px;font-weight:600;cursor:pointer;transition:background .2s}.tavus-login-btn:hover{background:#3367d6}.tavus-error-message{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.2);color:#ff8b8b;padding:15px;border-radius:12px;margin-bottom:20px;font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:10px;width:100%}@keyframes pulse-red{0%{opacity:1}50%{opacity:.6}to{opacity:1}}.galactic-navigator{margin-top:20px;color:#fff}.galactic-navigator h3{margin-bottom:8px;font-size:1.1rem;color:#a0a0b0}.galactic-navigator ul{list-style:none;padding:0;margin:0}.galactic-navigator li{padding:8px 12px;margin:4px -12px;border-radius:6px;cursor:pointer;transition:background-color .2s ease,color .2s ease;font-size:.95rem}.galactic-navigator li:hover{background-color:#007bff26}.galactic-navigator li.active{background-color:#007bff;color:#fff;font-weight:700}.galactic-navigator .free-roam{margin-top:15px;color:#aaa;font-style:italic;font-size:.9rem}.poi-pin{font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;z-index:10;position:relative}.support-modal-backdrop{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:5000;animation:fadeIn .3s ease}.support-modal-content{background:#161625;border:1px solid rgba(255,255,255,.1);border-radius:24px;width:90%;max-width:450px;padding:40px;position:relative;box-shadow:0 20px 50px #00000080;color:#fff}.support-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#8a8a9e;font-size:2rem;cursor:pointer;line-height:1}.support-modal-content h2{margin-bottom:10px;font-size:1.8rem;color:#fff}.support-modal-content p{color:#a0a0b0;margin-bottom:30px}.form-group{margin-bottom:20px;text-align:left}.form-group label{display:block;font-size:.9rem;color:#8a8a9e;margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;box-sizing:border-box;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 18px;color:#fff;font-family:inherit;font-size:1rem;transition:all .2s ease;display:block}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url(data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpolyline%20points%3D%226%209%2012%2015%2018%209%22%3E%3C%2Fpolyline%3E%3C%2Fsvg%3E);background-repeat:no-repeat;background-position:right 15px center;background-size:16px;padding-right:45px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#4285f4;background-color:#ffffff14}.form-group option{background:#161625;color:#fff}.support-submit-btn{width:100%;background:#4285f4;color:#fff;border:none;border-radius:12px;padding:15px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:10px}.support-submit-btn:hover{background:#3367d6;transform:translateY(-2px)}.support-submit-btn.loading{opacity:.7;cursor:not-allowed}.support-success{text-align:center;padding:20px 0}.success-icon{font-size:4rem;margin-bottom:20px;animation:launch .5s ease forwards}.support-error{color:#ff6b6b;font-size:.9rem;margin-top:15px;text-align:center}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes launch{0%{transform:translateY(0);opacity:0}50%{transform:translateY(-20px);opacity:1}to{transform:translateY(0)}}.legal-modal-backdrop{position:fixed;inset:0;background:#000000e6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:6000;animation:fadeIn .3s ease}.legal-modal-content{background:#0f0f1a;border:1px solid rgba(255,255,255,.1);border-radius:24px;width:95%;max-width:650px;max-height:85vh;padding:40px;position:relative;box-shadow:0 30px 60px #0009;display:flex;flex-direction:column}.legal-modal-close{position:absolute;top:20px;right:20px;background:none;border:none;color:#8a8a9e;font-size:2rem;cursor:pointer;z-index:10}.legal-text-container{overflow-y:auto;padding-right:20px;margin-bottom:30px;text-align:left;color:#e0e0e0}.legal-text-container h1{font-size:2rem;color:#fff;margin-bottom:5px}.last-updated{color:#556;font-size:.9rem;margin-bottom:30px}.legal-text-container h2{font-size:1.2rem;color:#4285f4;margin-top:25px;margin-bottom:12px}.legal-text-container p{line-height:1.6;margin-bottom:15px;font-size:.95rem;color:#b0b0cf}.legal-text-container ul{padding-left:20px;margin-bottom:15px}.legal-text-container li{margin-bottom:10px;line-height:1.5;font-size:.95rem;color:#b0b0cf}.legal-modal-button{background:#4285f4;color:#fff;border:none;border-radius:12px;padding:15px 30px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;align-self:center}.legal-modal-button:hover{background:#3367d6;transform:translateY(-2px);box-shadow:0 5px 15px #4285f44d}.legal-page-container{min-height:100vh;background:#0f0f1a;color:#fff;display:flex;flex-direction:column;align-items:center;padding:60px 20px}.legal-page-header{width:100%;max-width:800px;margin-bottom:40px}.back-to-app{color:#4285f4;text-decoration:none;font-weight:500;transition:opacity .2s}.back-to-app:hover{opacity:.8}.legal-page-content{background:#161625;border:1px solid rgba(255,255,255,.1);border-radius:24px;width:100%;max-width:800px;padding:60px;box-shadow:0 30px 60px #0006}.legal-page-footer{margin-top:60px;color:#556;font-size:.9rem}.legal-text-container::-webkit-scrollbar{width:6px}.legal-text-container::-webkit-scrollbar-track{background:#ffffff05}.legal-text-container::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}
