@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap";.input-field--select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1.25rem center;background-size:16px;padding-right:3.5rem;cursor:pointer}.upn-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 20px center;background-size:16px;padding-right:56px}: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}}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.countdown-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.countdown-modal{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;padding:40px;max-width:400px;width:90%;text-align:center;box-shadow:0 20px 40px #0000004d;animation:countdownSlideIn .3s ease-out}@keyframes countdownSlideIn{0%{opacity:0;transform:scale(.8) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.countdown-content{color:#fff}.countdown-spinner{margin-bottom:30px}.spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;margin:0 auto;animation:spin 1s linear infinite}.countdown-title{font-size:24px;font-weight:600;margin:0 0 10px;color:#fff}.countdown-subtitle{font-size:16px;opacity:.9;margin:0 0 30px;line-height:1.4}.countdown-timer{margin-bottom:30px}.countdown-time{font-size:48px;font-weight:700;font-family:Courier New,monospace;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3);margin-bottom:5px}.countdown-label{font-size:14px;opacity:.8;text-transform:uppercase;letter-spacing:1px}.countdown-progress{margin-top:20px}.countdown-progress-bar{width:100%;height:8px;background-color:#ffffff4d;border-radius:4px;overflow:hidden;margin-bottom:10px}.countdown-progress-fill{height:100%;background:linear-gradient(90deg,#4facfe,#00f2fe);border-radius:4px;transition:width .3s ease;animation:progressPulse 2s ease-in-out infinite}@keyframes progressPulse{0%,to{opacity:1}50%{opacity:.8}}.countdown-progress-text{font-size:13px;opacity:.8}@media (max-width: 480px){.countdown-modal{padding:30px 20px;margin:20px}.countdown-time{font-size:36px}.countdown-title{font-size:20px}.countdown-subtitle{font-size:14px}}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;margin:0;padding:0;overflow-x:hidden}body.hide-chatbot #chat-init,body.hide-chatbot [id*=lebavard],body.hide-chatbot [class*=lebavard],body.hide-chatbot [id*=bavard],body.hide-chatbot [class*=bavard],body.hide-chatbot script[src*=lebavard],body.hide-chatbot script[src*=bavard]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:scale(0)!important;height:0!important;width:0!important;overflow:hidden!important;position:absolute!important;left:-9999px!important;top:-9999px!important}body.hide-chatbot iframe[src*=lebavard],body.hide-chatbot iframe[src*=bavard],body.hide-chatbot iframe[src*="appli.lebavard.fr"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:scale(0)!important;height:0!important;width:0!important}body.hide-chatbot div[style*="position: fixed"][style*=bottom][style*=right],body.hide-chatbot div[style*="position: fixed"][style*=z-index]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}body.hide-chatbot #lebavard-widget,body.hide-chatbot #lebavard-launcher,body.hide-chatbot #lebavard-chat,body.hide-chatbot #lebavard-button,body.hide-chatbot .lebavard-widget,body.hide-chatbot .lebavard-launcher,body.hide-chatbot .lebavard-chat,body.hide-chatbot .lebavard-button,body.hide-chatbot [data-lebavard],body.hide-chatbot [data-bavard],body.hide-chatbot div[id^=lebavard],body.hide-chatbot div[class^=lebavard],body.hide-chatbot div[id*=chat-widget],body.hide-chatbot div[class*=chat-widget]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transform:scale(0)!important;height:0!important;width:0!important;overflow:hidden!important;position:absolute!important;left:-9999px!important;top:-9999px!important}body.hide-chatbot>div[style*="position: fixed"][style*=bottom][style*=right],body.hide-chatbot div[style*="position: fixed"][style*="bottom: 20px"],body.hide-chatbot div[style*="position: fixed"][style*="right: 20px"],body.hide-chatbot div[style*="position: fixed"][style*="bottom: 30px"],body.hide-chatbot div[style*="position: fixed"][style*="right: 30px"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important}body.hide-chatbot script#chat-init~*,body.hide-chatbot script[src*=lebavard]~*{display:none!important}body{font-family:Poppins,sans-serif;font-weight:400;background-color:#2d1b69;color:#1e293b;line-height:1.6}#root{width:100%;min-height:100vh}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);color:#fff}.loading--inline{min-height:200px;background:transparent}.loading--calculating{justify-content:center;text-align:center}.loading__spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.loading__dots{display:flex;justify-content:center;align-items:center;margin:60px 0;position:relative;height:120px}.loading__dot{width:12px;height:12px;border-radius:50%;position:absolute;animation:dotPulse 2s infinite ease-in-out}.loading__dot--1{background:#e879f9;top:20px;left:50%;transform:translate(-50%);animation-delay:0s}.loading__dot--2{background:#c084fc;top:40px;right:30px;animation-delay:.3s}.loading__dot--3{background:#a855f7;bottom:40px;right:20px;animation-delay:.6s}.loading__dot--4{background:#9333ea;bottom:20px;left:50%;transform:translate(-50%);animation-delay:.9s}.loading__dot--5{background:#7c3aed;bottom:40px;left:20px;animation-delay:1.2s}.loading__dot--6{background:#6366f1;top:40px;left:30px;animation-delay:1.5s}.loading__text{margin-top:40px}.loading__text p{font-family:Poppins,sans-serif;font-weight:400;font-size:16px;color:#fffc;margin:0}@keyframes dotPulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.5);opacity:1}}@media (max-width: 767px){.loading__dots{margin:40px 0;height:100px}.loading__dot{width:10px;height:10px}.loading__text p{font-size:14px}}.language-switcher{position:relative;display:inline-block}.language-button{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;font-family:Poppins,sans-serif;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.language-button:hover{background:#ffffff26;border-color:#ffffff4d}.language-flag{font-size:1rem;line-height:1}.language-code{font-weight:600;letter-spacing:.5px}.language-arrow{transition:transform .3s ease}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{position:absolute;top:calc(100% + .5rem);right:0;min-width:140px;background:#fffffff2;border:1px solid rgba(255,255,255,.2);border-radius:12px;box-shadow:0 8px 32px #0000004d;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000;overflow:hidden}.language-option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;color:#1e293b;font-family:Poppins,sans-serif;font-weight:500;font-size:.875rem;cursor:pointer;transition:all .2s ease;text-align:left}.language-option:hover{background:#6366f11a;color:#6366f1}.language-option.active{background:#6366f126;color:#6366f1;font-weight:600}.language-name{flex:1}.divider{display:flex;align-items:center;margin:1.5rem 0;text-align:center;color:#ffffff80;font-size:.875rem}.auth-language-switcher{position:absolute;top:50px;right:50px;z-index:10}@media (max-width: 767px){.auth-language-switcher{top:30px;right:20px}.language-button{padding:.4rem .6rem;font-size:.8rem}.language-dropdown{min-width:120px}}.landing-page{min-height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);display:flex;flex-direction:column;position:relative;overflow:hidden}.landing-language-switcher{position:absolute;top:50px;right:50px;z-index:10}.landing-container{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:2rem;text-align:center;max-width:800px;margin:0 auto}.landing-logo{margin-bottom:3rem}.landing-logo img{width:80px;height:80px;object-fit:contain}.landing-title{color:#fff;font-size:3.5rem;font-weight:900;font-family:Poppins,sans-serif;line-height:1.2;margin-bottom:3rem;text-align:center}.landing-typing-container{margin-bottom:4rem;min-height:120px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem}.landing-fixed-text{color:#fff;font-size:2rem;font-weight:600;font-family:Poppins,sans-serif;line-height:1.3;text-align:center}.landing-typed-text{color:#6366f1;font-size:2rem;font-weight:600;font-family:Poppins,sans-serif;line-height:1.3;position:relative;text-align:center;min-height:2.6rem}.landing-cursor{display:inline-block;background:#6366f1;width:3px;margin-left:2px;animation:blink 1s infinite}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.landing-button{padding:1.5rem 3rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:16px;font-size:1.2rem;font-weight:700;font-family:Poppins,sans-serif;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #6366f14d;margin-bottom:4rem}.landing-button:hover{transform:translateY(-2px);box-shadow:0 12px 32px #6366f166}.landing-footer{color:#ffffffb3;font-size:1rem;font-weight:400;font-family:Poppins,sans-serif}.landing-footer p{margin:0}@media (max-width: 768px){.landing-language-switcher{top:30px;right:30px}.landing-container{padding:1rem}.landing-title{font-size:2.5rem;margin-bottom:2rem}.landing-fixed-text,.landing-typed-text{font-size:1.5rem}.landing-typing-container{margin-bottom:3rem;min-height:100px}.landing-typed-text{min-height:2rem}.landing-button{padding:1.25rem 2.5rem;font-size:1.1rem}.landing-logo img{width:60px;height:60px}}@media (max-width: 480px){.landing-title{font-size:2rem}.landing-fixed-text,.landing-typed-text{font-size:1.2rem}.landing-typing-container{min-height:80px}.landing-typed-text{min-height:1.6rem}.landing-button{padding:1rem 2rem;font-size:1rem;width:100%;max-width:300px}}.email-verification-actions{display:flex;flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:300px}.verification-message{padding:1rem;border-radius:8px;text-align:center;font-size:.9rem;font-weight:500;margin:.5rem 0}.verification-message.success{background-color:#22c55e1a;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.verification-message.error{background-color:#ef44441a;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.verification-help{text-align:center;margin-top:2rem}.help-text{color:#ffffffb3;font-size:.9rem;margin-bottom:1rem}.link-button{background:none;border:none;color:#6366f1;text-decoration:underline;cursor:pointer;font-size:.9rem;font-family:Poppins,sans-serif}.link-button:hover{color:#8b5cf6}.intro-language-switcher{position:absolute;top:50px;right:50px;z-index:10}.intro-logo{margin-bottom:4rem}.intro-logo img{width:60px;height:60px;object-fit:contain}.intro-title{color:#fff;font-size:2.5rem;font-weight:900;font-family:Poppins,sans-serif;line-height:1.2;margin-bottom:2rem;max-width:500px}.intro-subtitle{color:#fffc;font-size:1.1rem;font-weight:400;font-family:Poppins,sans-serif;line-height:1.5;margin-bottom:4rem;max-width:400px}.intro-indicators{display:flex;gap:.75rem;margin-bottom:4rem}.indicator{width:12px;height:12px;border-radius:50%;background:#ffffff4d;transition:all .3s ease}.indicator.active{width:24px;height:12px;border-radius:6px;background:#6366f1}.intro-button{width:100%;max-width:300px;padding:1.25rem 2rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:16px;font-size:1.1rem;font-weight:700;font-family:Poppins,sans-serif;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 24px #6366f14d}.intro-button:hover{transform:translateY(-2px);box-shadow:0 12px 32px #6366f166}@media (max-width: 767px){.intro-container{position:fixed;top:0;left:0;width:100vw;height:100vh;overflow-x:hidden}.intro-language-switcher{top:30px;right:20px}.intro-content{padding:2rem 1.5rem;width:100%;max-width:none}.intro-title{font-size:2rem}.intro-subtitle{font-size:1rem}.intro-logo{margin-bottom:3rem}.intro-logo img{width:50px;height:50px}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-logo{display:flex;justify-content:flex-start;margin-bottom:3rem}.auth-logo img{width:70px;height:70px;object-fit:contain}.auth-title{color:#fff;font-size:2.5rem;font-weight:900;font-family:Poppins,sans-serif;line-height:1.2;margin-bottom:1rem;text-align:left}.auth-subtitle{color:#ffffffb3;font-size:1rem;font-weight:400;font-family:Poppins,sans-serif;line-height:1.5;margin-bottom:3rem;text-align:left}.auth-toggle{text-align:center;color:#ffffffb3;font-size:1rem;font-weight:400;font-family:Poppins,sans-serif;margin-bottom:1rem}.error-message{background:#ef444426;color:#fca5a5;padding:1rem;border-radius:12px;margin-bottom:1rem;border:1px solid rgba(239,68,68,.3);font-size:.9rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.google-button{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;padding:.875rem 1.5rem;background:#fff;color:#333;border:2px solid #dadce0;border-radius:8px;font-size:.975rem;font-weight:500;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem}.google-button:hover{box-shadow:0 2px 10px #0000001a;border-color:#4285f4}.google-button:disabled{opacity:.6;cursor:not-allowed}.google-button svg{flex-shrink:0}.divider{display:flex;align-items:center;margin:1.5rem 0;text-align:center;color:#fff9;font-size:.875rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:#fff3}.divider span{padding:0 1rem}@media (min-width: 768px){.auth-container{background:linear-gradient(135deg,#2d1b69,#11082a);justify-content:center;align-items:center;display:flex;min-height:100vh;width:100%;position:relative;overflow-x:hidden}.auth-card{max-width:450px;padding:3rem 2rem;margin:0 auto}.auth-title{font-size:3rem;font-weight:900}.auth-subtitle{font-size:1.1rem;font-weight:400}}@media (max-width: 767px){.auth-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);display:flex;justify-content:center;align-items:center;padding:20px;overflow-x:hidden}.auth-card{padding:2rem 1.5rem;width:100%;max-width:none;margin:0}}.app{min-height:100vh}.app-header{background:#fff;border-bottom:2px solid #e2e8f0;padding:1rem 0;box-shadow:0 2px 4px #0000001a}.header-content{max-width:1200px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.header-content h1{font-size:1.8rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.5rem}.header-content .logo{text-decoration:none}.nav-menu{display:flex;align-items:center;gap:2rem;list-style:none}.nav-menu li{display:flex;align-items:center}.nav-link{color:#64748b;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.nav-link:hover{color:#1e293b;background:#f1f5f9}.nav-link.active{color:#6366f1;background:#e0e7ff}.user-info{display:flex;align-items:center;gap:1rem}.user-info span{color:#64748b;font-weight:500}.app-main{padding:2rem 0}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.page-title{font-family:Poppins,sans-serif;font-weight:900;font-size:2rem;color:#fff;text-align:center;margin-bottom:2rem;line-height:1.2}.page-title--light{color:#1e293b;font-weight:700;margin-bottom:.5rem}.page-subtitle{font-family:Poppins,sans-serif;font-weight:400;font-size:1.1rem;color:#fffc;text-align:center;margin-bottom:3rem;line-height:1.5}.page-subtitle--light{color:#64748b;margin-bottom:2rem}.section-title{font-family:Poppins,sans-serif;font-weight:600;font-size:1.25rem;color:#fff;margin-bottom:1rem}.section-title--danger{color:#ef4444;margin-bottom:.75rem}@media (max-width: 767px){.page-title{font-size:1.75rem;margin-bottom:1.5rem}.page-subtitle{font-size:1rem;margin-bottom:2.5rem}.section-title{font-size:1.1rem}}.dashboard{padding-top:1rem}.dashboard h1,.dashboard h2{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:#1e293b}.dashboard>p{color:#64748b;margin-bottom:2rem;font-size:1.1rem}.feature-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.card{background:#fff;padding:2rem;border-radius:12px;box-shadow:0 4px 6px #0000001a;border:1px solid #e2e8f0;transition:all .3s ease}.card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.card h3{font-size:1.3rem;font-weight:600;margin-bottom:.5rem;color:#1e293b;display:flex;align-items:center;gap:.5rem}.card p{color:#64748b;margin-bottom:1rem}.user-details{background:#f8fafc;padding:1rem;border-radius:8px;margin-top:1rem}.user-details p{margin-bottom:.5rem;font-size:.9rem}.user-details p:last-child{margin-bottom:0}.input-container{position:relative;width:100%;margin-bottom:1rem}.input-field{width:100%;padding:1rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;font-family:Poppins,sans-serif;font-size:1rem;color:#fff;transition:all .3s ease;box-sizing:border-box;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.input-field::placeholder{color:#fff9}.input-field:focus{outline:none;border-color:#6366f1;background:#ffffff26}.input-field--with-icon{padding-right:3.5rem}.input-field--textarea{min-height:120px;resize:vertical;padding:1rem 1.25rem}.input-field--password{font-family:monospace;letter-spacing:.1em}.modal .input-field{background:#0000000d;border:1px solid rgba(0,0,0,.2);color:#000000e6}.modal .input-field::placeholder{color:#00000080}.modal .input-field:focus{border-color:#6366f1;background:#00000014}.input-field--select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 1.25rem center;background-size:16px;padding-right:3.5rem;cursor:pointer}.input-field--select option{background:#2d1b69;color:#fff;padding:8px}.input-field[type=date],.input-field[type=time]{color-scheme:dark}.input-field[type=date]::-webkit-calendar-picker-indicator,.input-field[type=time]::-webkit-calendar-picker-indicator{background:none;cursor:pointer;filter:invert(1);opacity:.7}.input-icon{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:36px;height:36px;background:#6366f1;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease}.input-icon svg{width:20px;height:20px;fill:#fff}.input-icon:hover{background:#5855eb;transform:translateY(-50%) scale(1.05)}.input-placeholder{position:absolute;top:50%;left:1.25rem;transform:translateY(-50%);color:#fff9;pointer-events:none;font-family:Poppins,sans-serif;font-size:1rem;transition:opacity .2s ease}.input-field:focus+.input-icon+.input-placeholder,.input-field:valid+.input-icon+.input-placeholder{opacity:0;visibility:hidden}.input-field--light{background:#fff;border:2px solid #e1e5e9;color:#374151;-webkit-backdrop-filter:none;backdrop-filter:none}.input-field--light::placeholder{color:#9ca3af}.input-field--light:focus{border-color:#6366f1;background:#fff;box-shadow:0 0 0 3px #6366f11a}.input-field--light+.input-icon{background:#6366f1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1.25rem 2rem;border-radius:16px;font-family:Poppins,sans-serif;font-weight:700;font-size:1.1rem;text-decoration:none;cursor:pointer;transition:all .3s ease;border:none;box-sizing:border-box;min-height:56px}.btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 8px 24px #6366f14d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #6366f166}.btn-primary:disabled{opacity:.7;cursor:not-allowed;transform:none;background:#fff3}.btn-secondary{background:transparent;color:#6366f1;border:2px solid #6366F1}.btn-secondary:hover:not(:disabled){background:#6366f11a;transform:translateY(-1px)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 8px 24px #ef44444d}.btn-danger:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #ef444466}.btn-danger:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--full-width{width:100%}.btn--compact{padding:.75rem 1.5rem;min-height:44px;font-size:1rem;border-radius:12px}.btn-secondary--light{background:#ffffff1a;color:#ffffffe6;border:1px solid rgba(255,255,255,.3)}.btn-secondary--light:hover:not(:disabled){background:#fff3;border-color:#ffffff80}.btn-secondary--modal{background:#0000000d;color:#000000b3;border:1px solid rgba(0,0,0,.2)}.btn-secondary--modal:hover:not(:disabled){background:#0000001a;border-color:#0000004d;color:#000000e6}.form{max-width:500px;margin:0 auto}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1rem}.form-field{display:flex;flex-direction:column;gap:.5rem}.form-textarea{min-height:120px;resize:vertical}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}@media (max-width: 768px){.header-content{padding:0 1rem;flex-direction:column;gap:1rem;text-align:center}.nav-menu{gap:1rem;flex-wrap:wrap;justify-content:center}.container{padding:0 1rem}.feature-cards{grid-template-columns:1fr;gap:1.5rem}.card{padding:1.5rem}.user-info{flex-direction:column;gap:.5rem}.form-actions{flex-direction:column}.btn{justify-content:center}}@media (max-width: 480px){.auth-container{padding:10px}.auth-card{padding:1.5rem}.dashboard h1,.dashboard h2,.page-title,.header-content h1{font-size:1.5rem}.card{padding:1rem}.nav-menu{flex-direction:column;gap:.5rem}}.upn-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);display:flex;flex-direction:column;overflow:hidden}.upn-language-switcher{position:absolute;top:20px;right:20px;z-index:1000}.upn-content{flex:1;display:flex;flex-direction:column;padding:60px 20px 24px;align-items:center;justify-content:flex-start;height:100%;box-sizing:border-box;width:100%;max-width:100vw}.upn-logo{margin-bottom:40px;margin-top:20px}.upn-logo img{width:80px;height:auto}.upn-title{font-family:Poppins,sans-serif;font-weight:900;font-size:32px;color:#fff;text-align:center;margin:50px 0 40px;line-height:1.2}.upn-input-container{position:relative;width:100%;max-width:350px;margin:0 auto 24px}.upn-input{width:100%;height:56px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:0 56px 0 20px;font-family:Poppins,sans-serif;font-weight:400;font-size:16px;color:#fff;box-sizing:border-box}.upn-input::placeholder{color:#fff9}.upn-input:focus{outline:none;border-color:#6366f1;background:#ffffff26}.upn-map-container{width:100%;max-width:350px;height:200px;border-radius:12px;overflow:hidden;margin:0 auto 40px;border:1px solid rgba(255,255,255,.2)}@media (min-width: 769px){.upn-map-container{height:350px}}.upn-map{width:100%;height:100%}.pac-container{background:#2d1b69f2!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)!important;border-radius:12px!important;margin-top:4px!important}.pac-item{color:#fff!important;border-bottom:1px solid rgba(255,255,255,.1)!important;padding:12px 16px!important}.pac-item:hover{background:#ffffff1a!important}.pac-item-query{color:#fff!important}.pac-matched{color:#6366f1!important;font-weight:600!important}.upn-input-container,.check-invite-input-container{max-width:350px;margin:0 auto 20px}.upn-back-button{position:absolute;top:20px;left:20px;background:none;border:none;cursor:pointer;padding:8px;z-index:1000}.upn-form{width:100%;max-width:350px;display:flex;flex-direction:column;gap:20px;margin-top:50px;margin-bottom:40px}.upn-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 20px center;background-size:16px;padding-right:56px}.upn-select option{background:#2d1b69;color:#fff;padding:8px}.upn-input[type=date],.upn-input[type=time]{color-scheme:dark}.upn-input[type=date]::-webkit-input-placeholder,.upn-input[type=time]::-webkit-input-placeholder{color:transparent!important;opacity:0!important}.upn-input[type=date]::-moz-placeholder,.upn-input[type=time]::-moz-placeholder{color:transparent!important;opacity:0!important}.upn-input[type=date]::placeholder,.upn-input[type=time]::placeholder{color:transparent!important;opacity:0!important}.upn-input[type=date]:invalid,.upn-input[type=time]:invalid{color:transparent}.upn-input[type=date]:valid,.upn-input[type=time]:valid{color:#fff}.upn-input[type=date]::-webkit-datetime-edit-text,.upn-input[type=date]::-webkit-datetime-edit-month-field,.upn-input[type=date]::-webkit-datetime-edit-day-field,.upn-input[type=date]::-webkit-datetime-edit-year-field,.upn-input[type=time]::-webkit-datetime-edit-text,.upn-input[type=time]::-webkit-datetime-edit-hour-field,.upn-input[type=time]::-webkit-datetime-edit-minute-field{color:transparent}.upn-input[type=date]:focus::-webkit-datetime-edit-text,.upn-input[type=date]:focus::-webkit-datetime-edit-month-field,.upn-input[type=date]:focus::-webkit-datetime-edit-day-field,.upn-input[type=date]:focus::-webkit-datetime-edit-year-field,.upn-input[type=time]:focus::-webkit-datetime-edit-text,.upn-input[type=time]:focus::-webkit-datetime-edit-hour-field,.upn-input[type=time]:focus::-webkit-datetime-edit-minute-field,.upn-input[type=date]:valid::-webkit-datetime-edit-text,.upn-input[type=date]:valid::-webkit-datetime-edit-month-field,.upn-input[type=date]:valid::-webkit-datetime-edit-day-field,.upn-input[type=date]:valid::-webkit-datetime-edit-year-field,.upn-input[type=time]:valid::-webkit-datetime-edit-text,.upn-input[type=time]:valid::-webkit-datetime-edit-hour-field,.upn-input[type=time]:valid::-webkit-datetime-edit-minute-field{color:#fff}.upn-input[type=date]::-webkit-calendar-picker-indicator,.upn-input[type=time]::-webkit-calendar-picker-indicator{background:none;cursor:pointer;filter:invert(1);opacity:.7}.upn-input[type=time]::-webkit-datetime-edit-ampm-field{display:none!important}.upn-input[lang=fr][type=time]::-webkit-datetime-edit-ampm-field,.upn-input[lang=es][type=time]::-webkit-datetime-edit-ampm-field,.upn-input[lang=de][type=time]::-webkit-datetime-edit-ampm-field{display:none!important}.upn-input[lang=en][type=time]::-webkit-datetime-edit-ampm-field{display:inline-block!important;color:#fffc;margin-left:4px}.upn-input[lang=fr][type=time]{font-variant-numeric:tabular-nums}.upn-input-placeholder{position:absolute;top:50%;left:20px;transform:translateY(-50%);color:#fff9;pointer-events:none;font-family:Poppins,sans-serif;font-size:16px;z-index:1;transition:opacity .2s ease}.upn-input:focus+.input-icon+.upn-input-placeholder,.upn-input:valid+.input-icon+.upn-input-placeholder{opacity:0;visibility:hidden}.upn-input[data-format="24"][type=time]{-webkit-locale:"fr-FR"}.upn-input[data-format="24"][type=time]::-webkit-datetime-edit-ampm-field{display:none!important;visibility:hidden!important;width:0!important;opacity:0!important}.upn-input[lang=fr][type=time],.upn-input[data-format="24"][type=time]{direction:ltr;unicode-bidi:embed}html[lang=fr] .upn-input[type=time],html[lang=fr] .upn-input[type=date]{-webkit-locale:"fr-FR"}html[lang=fr] .upn-input[type=time]::-webkit-datetime-edit-ampm-field{display:none!important;visibility:hidden!important;width:0!important;height:0!important;margin:0!important;padding:0!important;opacity:0!important;position:absolute!important;left:-9999px!important}.upn-calculating{justify-content:center;text-align:center}.upn-loading-animation{display:flex;justify-content:center;align-items:center;margin:60px 0;position:relative;height:120px}.upn-dot{width:12px;height:12px;border-radius:50%;position:absolute;animation:upn-pulse 2s infinite ease-in-out}.upn-dot-1{background:#e879f9;top:20px;left:50%;transform:translate(-50%);animation-delay:0s}.upn-dot-2{background:#c084fc;top:40px;right:30px;animation-delay:.3s}.upn-dot-3{background:#a855f7;bottom:40px;right:20px;animation-delay:.6s}.upn-dot-4{background:#9333ea;bottom:20px;left:50%;transform:translate(-50%);animation-delay:.9s}.upn-dot-5{background:#7c3aed;bottom:40px;left:20px;animation-delay:1.2s}.upn-dot-6{background:#6366f1;top:40px;left:30px;animation-delay:1.5s}@keyframes upn-pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.5);opacity:1}}.upn-calculating-text{margin-top:40px}.upn-calculating-text p{font-family:Poppins,sans-serif;font-weight:400;font-size:16px;color:#fffc;margin:0}.upn-result{justify-content:flex-start;padding:20px;height:100vh;box-sizing:border-box}.upn-result-title{font-family:Poppins,sans-serif;font-weight:900;font-size:32px;color:#fff;text-align:center;margin:10px 0 20px;line-height:1.2}.upn-result-content{flex:1;width:100%;max-width:350px;display:flex;flex-direction:column;margin-bottom:20px;overflow:hidden}.upn-description-container{background:#fff;border-radius:20px;padding:25px 20px;margin:0 auto;width:100%;max-width:350px;box-shadow:0 10px 30px #0000001a;flex:1;display:flex;flex-direction:column;justify-content:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch}.upn-description-text{font-family:Poppins,sans-serif;font-weight:400;font-size:16px;line-height:1.6;color:#2d1b69;margin:0;text-align:left;white-space:pre-wrap;word-wrap:break-word}.upn-description-text strong{font-weight:600;color:#1f0f4d}.upn-error-message{text-align:center;margin:40px 0}.upn-error-message p{font-family:Poppins,sans-serif;font-weight:400;font-size:16px;color:#fffc;margin:0}@media (max-width: 768px){.upn-content{padding:80px 20px 20px}.upn-title{font-size:28px;margin-bottom:32px}.upn-logo img{width:60px}.upn-map-container{height:350px;margin-bottom:calc(3rem + 100px)}.upn-form{gap:12px;margin-bottom:32px}.upn-back-button{top:16px;left:16px}.upn-result-title{font-size:28px;margin:5px 0 15px}.upn-description-container{padding:20px 15px}.upn-result{padding:15px}.upn-description-text{font-size:15px}.upn-loading-animation{height:100px;margin:40px 0}}.desktop-header{display:block;background:#6366f1;padding:1rem 2rem;box-shadow:0 2px 10px #0000001a;position:fixed;top:0;left:0;right:0;z-index:1001}.desktop-header-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto}.desktop-header-left{display:flex;align-items:center}.credits-display{display:inline-flex;align-items:center;gap:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:20px;color:#fff;cursor:pointer;transition:all .3s ease}.credits-display:hover{background:#fff3;transform:translateY(-1px)}.credits-icon{width:24px;height:24px;background:#fff;color:#6366f1;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-weight:700;font-size:12px}.credits-count{font-weight:700;font-size:16px;margin:0}.credits-text{font-size:14px;font-weight:700;opacity:.9;margin:0}.desktop-nav{display:flex;gap:2rem}.desktop-nav-link{color:#fff;text-decoration:none;font-weight:500;padding:.5rem 1rem;border-radius:8px;transition:all .3s ease;opacity:.8}.desktop-nav-link:hover,.desktop-nav-link.active{opacity:1;background:#ffffff1a}.desktop-header-right{display:flex;align-items:center;gap:1rem}.desktop-logout-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);padding:.5rem 1rem;border-radius:8px;cursor:pointer;font-family:Poppins,sans-serif;font-weight:500;transition:all .3s ease}.desktop-logout-btn:hover{background:#fff3}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;background:#6366f1;padding:1rem;z-index:1002;box-shadow:0 2px 10px #0000001a}.mobile-header-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.mobile-credits-display{display:inline-flex;align-items:center;gap:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:20px;color:#fff;cursor:pointer;transition:all .3s ease;flex-shrink:0;white-space:nowrap}.mobile-credits-display:hover{background:#fff3;transform:translateY(-1px)}.hamburger-btn{background:none;border:none;cursor:pointer;padding:.25rem;display:flex;flex-direction:column;gap:4px;width:32px;height:32px;justify-content:center;align-items:center;flex-shrink:0}.hamburger-btn span{width:20px;height:2px;background:#fff;border-radius:1px;transition:all .3s ease}.hamburger-btn.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.mobile-menu-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,#2d1b69,#11082a);z-index:1003;display:flex;justify-content:center;align-items:center;animation:circleGrow .4s cubic-bezier(.25,.46,.45,.94) forwards;clip-path:circle(0% at 85% 15%);overflow:hidden}.mobile-menu{width:100%;height:100vh;display:flex;flex-direction:column;position:relative;opacity:0;animation:fadeInMenu .3s ease-out .2s forwards;overflow:hidden}@keyframes circleGrow{0%{clip-path:circle(0% at 85% 15%)}to{clip-path:circle(150% at 85% 15%)}}@keyframes fadeInMenu{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}70%{transform:translate(-50%,-50%) scale(.9)}to{transform:translate(-50%,-50%) scale(1)}}@keyframes confetti-fall{0%{transform:translateY(-100vh) rotate(0);opacity:1}to{transform:translateY(100vh) rotate(720deg);opacity:0}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #667eea66}50%{transform:scale(1.02);box-shadow:0 0 0 10px #667eea00}to{transform:scale(1);box-shadow:0 0 #667eea00}}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:2rem 3rem;position:absolute;top:0;left:0;right:0;z-index:10}.mobile-menu-logo{display:flex;align-items:center;justify-content:center}.mobile-menu-logo img{height:40px;width:auto}.mobile-menu-close{background:none;border:none;color:#fff;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.mobile-menu-close:hover{background:#ffffff1a;transform:scale(1.1)}.mobile-menu-nav{display:flex;flex-direction:column;gap:1.5rem;margin-top:8rem;margin-left:3rem;flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:2rem;scrollbar-width:none;-ms-overflow-style:none}.mobile-menu-nav::-webkit-scrollbar{display:none}.mobile-menu-link{display:block;color:#fff;text-decoration:none;font-size:1.5rem;font-weight:500;padding:.5rem 0;transition:all .3s ease;text-align:left;width:fit-content}.mobile-menu-link:hover{color:#fffc;transform:translate(10px)}.mobile-menu-link.active{color:#fff;font-weight:600}.mobile-menu-logout{background:none;border:none;color:#fff;font-size:1.5rem;font-weight:500;padding:.5rem 0;cursor:pointer;transition:all .3s ease;text-align:left;width:fit-content;margin-top:1rem}.mobile-menu-logout:hover{color:#fffc;transform:translate(10px)}@media (min-width: 768px){.carousel-arrow{display:flex!important}.carousel-arrow:hover{background:#fff!important;transform:translateY(-50%) scale(1.05)}}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:#2d1b69;padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom));justify-content:space-around;align-items:center;box-shadow:0 -2px 20px #0000004d;z-index:1000}.mobile-nav-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;text-decoration:none;color:#fff9;transition:all .3s ease;padding:.5rem;border-radius:12px;min-width:60px}.mobile-nav-item.active{color:orange;background:#ffa5001a}.mobile-nav-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center}.mobile-nav-label{font-size:.6rem;font-weight:500;text-align:center}@media (min-width: 768px){.desktop-header{display:block}.mobile-header,.mobile-nav{display:none!important}.app-main{padding-top:80px;padding-bottom:0}}@media (max-width: 767px){.desktop-header{display:none!important}.mobile-header{display:block!important}.mobile-nav{display:flex!important}.app-main{padding-top:70px;padding-bottom:90px}.page-container{padding-top:1rem;padding-bottom:2rem}.container{padding-bottom:1rem}.mobile-credits-display{flex-shrink:0;min-width:fit-content}.mobile-credits-display .credits-count{font-size:.9rem}.mobile-credits-display .credits-text{font-size:.8rem}}.page-container{padding:1rem}@media (min-width: 768px){.page-container{padding:2rem}}.profile-page{background:linear-gradient(180deg,#6366f1,#2d1b69);min-height:calc(100vh - 80px);color:#fff;padding:0;margin:0;width:100vw;margin-left:calc(-50vw + 50%)}.profile-page-content{max-width:600px;margin:0 auto;padding:2rem 1rem}@media (max-width: 767px){.profile-page{min-height:calc(100vh - 160px)}.profile-page-content{padding:1.5rem 1rem}}.back-button{position:absolute!important;left:1rem!important;top:1rem!important;z-index:10!important}@media (max-width: 767px){.back-button{left:.5rem!important;top:.5rem!important}}.profile-header{text-align:center;margin-bottom:2rem}.profile-image-container{padding-top:50px;margin-bottom:1.5rem}.profile-image{width:120px;height:120px;border:8px solid #2D1B69;border-radius:20px;object-fit:cover;box-shadow:0 8px 32px #0000004d}.profile-info{margin-bottom:2rem}.profile-name-container{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.5rem}.profile-name{font-size:1.5rem;font-weight:700;margin:0;color:#fff}.verified-badge{background:#1da1f2;color:#fff;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.profile-username{color:#ffffffb3;margin:0;font-size:1rem}.profile-language-selector{display:flex;justify-content:center;margin:1.5rem 0 2rem;z-index:1000}.profile-language-selector .language-switcher{scale:.9;z-index:1000}.profile-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.stat-item{text-align:center}.stat-number{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.25rem}.stat-label{font-size:.875rem;color:#ffffffb3}.profile-actions{display:flex;gap:0;justify-content:center;margin-bottom:2rem;max-width:300px;margin-left:auto;margin-right:auto}.profile-form-section{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:2rem;margin-top:2rem;max-width:500px;margin-left:auto;margin-right:auto}.profile-form{margin-bottom:2rem;display:flex;flex-direction:column;align-items:center}.form-label{display:block;color:#fff;font-weight:500;margin-bottom:.5rem;font-size:.875rem}.profile-form-section .input-field{background:#ffffff14!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;-webkit-backdrop-filter:blur(20px)!important;backdrop-filter:blur(20px)!important}.profile-form-section .input-field::placeholder{color:#ffffff80!important}.profile-form-section .input-field:focus{border-color:#6366f1!important;background:#ffffff1f!important}.earn-credits-section{border-top:1px solid rgba(255,255,255,.1);padding-top:2rem}.earn-credits-title{color:#fff;font-size:1.25rem;font-weight:600;margin-bottom:1rem}.earn-credits-text{color:#ffffffb3;line-height:1.5;margin-bottom:1.5rem}.invite-code-container{display:flex;gap:1rem;align-items:center}.invite-code{flex:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;padding:1rem;color:#fff;font-family:Courier New,monospace;font-weight:600;text-align:center;letter-spacing:2px}.copy-btn{background:#6366f1;color:#fff;border:none;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;font-size:1.2rem}.copy-btn svg{width:24px;height:24px;flex-shrink:0}.copy-btn:hover{background:#5855eb;transform:scale(1.05)}@keyframes particleExplode{0%{transform:translate(-50%,-50%) scale(0);opacity:1}20%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.3);opacity:0}}.celebration-particle{animation-timing-function:cubic-bezier(.25,.46,.45,.94)}.check-invite-container{min-height:100vh;width:100vw;background:linear-gradient(180deg,#2d1b69,#11082a);display:flex;flex-direction:column;position:relative;overflow-x:hidden}.check-invite-language-switcher{position:absolute;top:50px;right:50px;z-index:10}.check-invite-content{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;max-width:600px;margin:0 auto}.check-invite-logo{margin-bottom:3rem}.check-invite-logo img{height:60px;width:auto}.check-invite-title{color:#fff;font-size:32px;font-weight:900;line-height:1.2;margin-bottom:3rem;max-width:500px}.check-invite-content .upn-input-container{margin-bottom:4rem}.check-invite-content .upn-input{text-transform:uppercase;letter-spacing:1px}.check-invite-content .upn-input::placeholder{text-transform:none;letter-spacing:normal}@keyframes fireworkExplode{0%{transform:translate(-50%,-50%) scale(0);opacity:1}20%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2);opacity:0}}.firework-particle{animation-timing-function:cubic-bezier(.25,.46,.45,.94)}.congrats-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10000}.congrats-modal{background:linear-gradient(135deg,#2d1b69,#11082a);border:2px solid #6366F1;border-radius:20px;padding:2rem;max-width:400px;width:90%;text-align:center;animation:modalSlideIn .3s ease-out}.congrats-header h3{color:#fff;font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;margin:0 0 1rem}.congrats-body p{color:#ffffffe6;font-family:Poppins,sans-serif;font-size:1.1rem;line-height:1.5;margin:0 0 1.5rem}.congrats-body strong{color:#6366f1;font-weight:700}.congrats-close-btn{background:#6366f1;color:#fff;border:none;border-radius:25px;padding:.75rem 2rem;font-family:Poppins,sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.congrats-close-btn:hover{background:#5855eb;transform:translateY(-2px)}@media (max-width: 767px){.check-invite-language-switcher{top:30px;right:20px}.check-invite-content{padding:1rem}.check-invite-title{font-size:1.8rem;margin-bottom:2rem}.check-invite-logo{margin-bottom:2rem}.check-invite-logo img{height:50px}.check-invite-input-container{margin-bottom:2rem}.check-invite-language-switcher~.page-content .btn{position:absolute;bottom:100px;left:50%;transform:translate(-50%);width:calc(100% - 2rem);max-width:350px}}.profile-message{margin-top:1rem;padding:1rem;border-radius:8px;text-align:center}.profile-message.success{background:#22c55e33;border:1px solid rgba(34,197,94,.3);color:#22c55e}.profile-message.error{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:#ef4444}@media (max-width: 768px){.profile-page{padding:1rem}.profile-stats{gap:1rem}.stat-number{font-size:1.25rem}.profile-actions{flex-direction:row;gap:0}.invite-btn{border-radius:25px 0 0 25px;border-right:1px solid rgba(255,255,255,.2);flex:2}.credits-btn{border-radius:0 25px 25px 0;border-left:none;flex:1}.profile-form-section{padding:1.5rem}.invite-code-container{flex-direction:row;gap:.75rem}.copy-btn{width:48px;height:48px;flex-shrink:0}}.danger-zone-section{margin-top:3rem;padding:2rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px}.danger-zone-title{color:#ef4444;font-size:1.25rem;font-weight:600;margin-bottom:.75rem}.danger-zone-text{color:#fffc;font-size:.9rem;margin-bottom:1.5rem;line-height:1.5}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal{background:#fff;border-radius:16px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px #00000080;animation:modalSlideIn .3s ease-out}.modal--congratulations{background:linear-gradient(135deg,#2d1b69,#11082a);border:2px solid #6366F1;border-radius:20px;max-width:400px;padding:2rem;text-align:center}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-50px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid rgba(0,0,0,.1)}.modal-header h3{color:#ef4444;font-size:1.25rem;font-weight:600;margin:0}.modal-header--congratulations{border:none;padding:0 0 1rem;justify-content:center}.modal-header--congratulations h3{color:#fff;font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700}.modal-close{background:none;border:none;color:#0009;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease}.modal-close:hover{background:#0000001a;color:#000000e6}.modal-body{padding:1.5rem}.modal-body p{color:#000000e6;line-height:1.6;margin:0 0 1rem}.modal-body--congratulations{padding:0 0 1.5rem}.modal-body--congratulations p{color:#ffffffe6;font-family:Poppins,sans-serif;font-size:1.1rem;line-height:1.5;margin:0 0 1.5rem}.modal-body--congratulations strong{color:#6366f1;font-weight:700}.reauth-section{margin-top:1.5rem;padding:1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px}.modal-footer{display:flex;gap:1rem;padding:1.5rem;border-top:1px solid rgba(0,0,0,.1)}.modal-footer--congratulations{border:none;padding:0;justify-content:center}.modal-close{background:none;border:none;color:#fff9;cursor:pointer;padding:.5rem;border-radius:8px;transition:all .3s ease}.modal-close:hover{background:#ffffff1a;color:#ffffffe6}.modal-close--congratulations{background:#6366f1;color:#fff;border:none;border-radius:25px;padding:.75rem 2rem;font-family:Poppins,sans-serif;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease}.modal-close--congratulations:hover{background:#5855eb;transform:translateY(-2px)}@media (max-width: 767px){.modal-overlay{padding:.5rem}.modal{max-width:100%;border-radius:12px}.modal--congratulations{max-width:90%;padding:1.5rem}.modal-header,.modal-body,.modal-footer{padding:1rem}.modal-footer{flex-direction:column}.danger-zone-section{margin-top:2rem;padding:1.5rem}.danger-zone-title{font-size:1.1rem}}.modal--image-upload{background:#1e293b!important;color:#ffffffe6!important}.modal--image-upload .modal-header{border-bottom:1px solid rgba(255,255,255,.1)!important}.modal--image-upload .modal-body{color:#ffffffe6!important}.modal--image-upload .modal-close{color:#fff9!important}.modal--image-upload .modal-close:hover{background:#ffffff1a!important;color:#ffffffe6!important}.modal--image-upload .file-input-label{color:#fffc!important}.modal--image-upload .file-input-label small{color:#fff9!important}.modal--image-upload .error-message{background:#ef44441a!important;border:1px solid rgba(239,68,68,.3)!important;color:#ffffffe6!important}.page-container{min-height:100vh;width:100vw;background:linear-gradient(180deg,#2d1b69,#11082a);display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow-x:hidden;margin:0;padding:20px;box-sizing:border-box}.page-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;z-index:5;width:100%;max-width:600px;margin:0 auto}.page-content--compact{max-width:375px;padding:2rem 1.5rem;background:transparent;animation:fadeInUp .6s ease-out}.loading-container{display:flex;justify-content:center;align-items:center;min-height:200px;width:100%}.profile-container{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.profile-container--column{flex-direction:column;text-align:center}.profile-container--spaced{justify-content:space-between}.content-container{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:2rem;margin-bottom:2rem;width:100%;max-width:400px}.content-container--wide{max-width:600px}.content-container--transparent{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border:none;padding:0}@media (max-width: 767px){.page-container{position:fixed;top:0;left:0;width:100vw;height:100vh;padding:2rem 1.5rem}.page-content{width:100%;max-width:none;padding:0}.page-content--compact{padding:2rem 1.5rem;width:100%;max-width:none}.content-container{padding:1.5rem;max-width:none;width:100%}}@media (min-width: 768px){.page-container{background:linear-gradient(135deg,#2d1b69,#11082a)}.page-content--compact{max-width:450px;padding:3rem 2rem}}.modal--image-upload{max-width:500px;max-height:70vh;height:auto;margin:15vh auto;overflow:visible}.modal--image-upload .modal-body{padding:16px;max-height:calc(70vh - 100px);overflow-y:auto;display:flex;flex-direction:column;justify-content:center}.upload-step{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px}.upload-area{width:100%;max-width:400px}.file-input{display:none}.file-input-label{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 32px;border:2px dashed rgba(255,255,255,.3);border-radius:16px;background:#ffffff0d;color:#fffc;cursor:pointer;transition:all .3s ease;text-align:center}.file-input-label:hover{border-color:#8b5cf699;background:#8b5cf61a;color:#fff}.file-input-label svg{margin-bottom:16px;opacity:.7}.file-input-label span{font-size:18px;font-weight:500;margin-bottom:8px}.file-input-label small{font-size:14px;opacity:.7}.crop-step{display:flex;flex-direction:column;align-items:center;gap:16px}.crop-container{width:100%;max-width:350px;display:flex;justify-content:center;background:#0000004d;border-radius:12px;padding:12px}.crop-image{max-width:100%;max-height:200px;border-radius:8px}.ReactCrop{max-width:100%}.ReactCrop__crop-selection{border:2px solid #8b5cf6!important;background:#8b5cf61a!important}.ReactCrop__drag-handle{background:#8b5cf6!important;border:2px solid #ffffff!important;width:12px!important;height:12px!important}.ReactCrop__drag-handle:after{display:none!important}.preview-step{display:flex;flex-direction:column;align-items:center;gap:24px}.preview-container{display:flex;justify-content:center;align-items:center;padding:24px;background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.1)}.preview-image{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid rgba(255,255,255,.2);box-shadow:0 8px 32px #0000004d}.preview-info{text-align:center;color:#fffc}.preview-info p{margin:4px 0;font-size:14px}.uploading-step{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;min-height:300px}.upload-progress{display:flex;justify-content:center;align-items:center}.progress-circle{position:relative;display:flex;align-items:center;justify-content:center}.progress-text{position:absolute;font-size:16px;font-weight:600;color:#8b5cf6}.uploading-step p{color:#fffc;font-size:16px;text-align:center}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px;text-align:center}@media (max-width: 768px){.modal--image-upload{max-width:95vw;max-height:75vh;margin:12.5vh auto}.modal--image-upload .modal-body{padding:12px;max-height:calc(75vh - 80px)}.file-input-label{padding:20px 12px}.crop-container{max-width:100%;padding:8px}.crop-image{max-height:180px}}.profile-image-container{position:relative;cursor:pointer}@media (max-width: 768px){.profile-image-container{cursor:pointer}}.dashboard-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);color:#fff}.dashboard-loading .loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.dashboard-loading p{font-size:16px;color:#fffc;margin:0}.dashboard-home{min-height:100vh;color:#fff;padding:0 0 100px}.dashboard-header{padding:20px 16px}.dashboard-header-content{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.dashboard-welcome{flex:1}.dashboard-title{font-size:20px;font-weight:500;color:#fff;margin:0;line-height:1.2}.dashboard-user-info{margin-top:4px}.dashboard-nickname{font-size:14px;color:#ffffffb3;font-weight:400}.dashboard-credits{display:flex;align-items:center}.dashboard-section{padding:24px 0;max-width:1200px;margin:0 auto}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:0 16px}.section-title{font-size:18px;font-weight:600;color:#fff;margin:0}.section-action{background:none;border:none;color:#9333ea;font-size:14px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s ease}.section-action:hover{background:#9333ea1a}.relationships-container{display:flex;gap:12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:8px;padding-left:16px;padding-right:16px}.relationships-container::-webkit-scrollbar{display:none}.relationship-add-card{flex-shrink:0;width:80px;height:80px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:2px dashed rgba(255,255,255,.3);border-radius:12px;cursor:pointer;transition:all .2s ease}.relationship-add-card:hover{background:#ffffff26;border-color:#fff6}.add-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#9333ea;border-radius:50%;color:#fff;font-size:20px;font-weight:300}.add-icon{line-height:1}.relationship-card{flex-shrink:0;width:80px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:transform .2s ease}.relationship-card:hover{transform:translateY(-2px)}.relationship-image{width:80px;height:80px;border-radius:12px;overflow:hidden;background:#ffffff1a;border:2px solid rgba(255,255,255,.2)}.relationship-image img{width:100%;height:100%;object-fit:cover}.relationship-info{text-align:center;width:100%}.relationship-name{font-size:12px;color:#fff;font-weight:500;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-wrap:break-word}.dashboard-chat-container{display:flex;flex-direction:column;gap:12px;padding:0 16px}.chat-card{display:flex;align-items:center;gap:12px;padding:16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.chat-card:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.chat-card--add{border:2px dashed rgba(255,255,255,.3);background:#ffffff1a}.chat-card--add:hover{border-color:#fff6;background:#ffffff26}.chat-card-date{flex-shrink:0;width:60px;text-align:center}.chat-card-date-text{font-family:Poppins,sans-serif;font-size:.75rem;font-weight:500;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.chat-card-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.chat-card-title{font-family:Poppins,sans-serif;font-size:.95rem;font-weight:600;color:#fff;line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-card-message-count{font-family:Poppins,sans-serif;font-size:.8rem;color:#fff9;font-weight:400}.chat-card-actions{flex-shrink:0}.chat-card-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .2s ease;color:#fff}.chat-card-button:hover{background:#fff3;border-color:#ffffff4d;transform:scale(1.05)}.chat-card-button svg{width:16px;height:16px;stroke:currentColor}.empty-state{display:flex;align-items:center;justify-content:center;padding:40px 20px;text-align:center}.empty-state p{font-size:14px;color:#fff9;margin:0}@media (min-width: 768px){.dashboard-header{padding:24px 32px}.dashboard-title{font-size:24px}.dashboard-section{padding:32px 0}.section-header{padding:0 32px}.section-title{font-size:20px}.relationships-container{padding-left:32px;padding-right:32px}.relationships-container{display:flex;flex-wrap:wrap;gap:20px;overflow:visible;max-width:600px}.relationship-card{width:80px;height:auto;transition:all .3s ease;gap:12px}.relationship-card:hover{transform:translateY(-4px) scale(1.05)}.relationship-add-card{width:80px;height:80px;transition:all .3s ease}.relationship-add-card:hover{transform:translateY(-4px) scale(1.05)}.relationship-image{width:80px;height:80px}.dashboard-chat-container{padding:0 32px;display:flex;flex-direction:column;gap:16px}.chat-card{padding:20px;gap:16px}.chat-card-date{width:80px}.chat-card-date-text{font-size:.8rem}.chat-card-title{font-size:1rem}.chat-card-message-count{font-size:.85rem}.chat-card-button{width:40px;height:40px}.chat-card-button svg{width:18px;height:18px;stroke:currentColor}}@media (min-width: 1024px){.dashboard-section{padding:40px 0}.section-header{padding:0 48px}.relationships-container{padding-left:48px;padding-right:48px}.dashboard-chat-container{padding:0 48px}.relationships-container{max-width:800px;gap:24px}.relationship-card{gap:16px}}@media (min-width: 1400px){.dashboard-section{padding:48px 64px}}.personality-list{min-height:100vh;color:#fff;padding:0}.personality-search-section{position:sticky;top:70px;z-index:100;padding:1.5rem;background:#ffffff0d;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1)}.search-container{max-width:500px;margin:0 auto}.search-input-wrapper{position:relative;display:flex;align-items:center;background:#ffffff1a;border-radius:12px;padding:.75rem 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);transition:all .3s ease}.search-input-wrapper:hover{background:#ffffff26;border-color:#ffffff4d}.search-input-wrapper:focus-within{background:#ffffff26;border-color:#6c6fff;box-shadow:0 0 0 3px #6c6fff33}.search-icon{margin-right:.75rem;color:#fff9;font-size:1.1rem}.search-input{flex:1;background:none;border:none;color:#fff;font-family:Poppins,sans-serif;font-size:1rem;outline:none}.search-input::placeholder{color:#fff9}.personality-results-section{padding:1.5rem;flex:1}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.results-title{font-family:Poppins,sans-serif;font-weight:600;font-size:1.25rem;margin:0;color:#fff}.new-analysis-button{display:flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#6c6fff,#a855f7);border:none;border-radius:25px;padding:.75rem 1.5rem;color:#fff;font-family:Poppins,sans-serif;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease}.new-analysis-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6c6fff66}.new-analysis-button .add-icon{font-size:1.2rem;font-weight:700}.results-count{font-family:Poppins,sans-serif;font-size:.9rem;color:#ffffffb3;margin-bottom:1.5rem}.personality-cards-container{display:grid;grid-template-columns:1fr;gap:1.5rem}.dashboard-horizontal-container{position:relative}.dashboard-personality-container,.dashboard-timetravel-container{display:flex;gap:1rem;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:0 16px 16px;scroll-behavior:smooth}.dashboard-personality-container::-webkit-scrollbar,.dashboard-timetravel-container::-webkit-scrollbar{display:none}.dashboard-personality-container .personality-list-card,.dashboard-timetravel-container .personality-list-card{flex-shrink:0;width:280px}.scroll-indicators{display:flex;justify-content:center;gap:6px;padding:12px 0 8px}.scroll-dot{width:8px;height:8px;border-radius:50%;background:#ffffff4d;cursor:pointer;transition:all .3s ease}.scroll-dot.active{background:#9333ea;transform:scale(1.2)}.scroll-dot:hover{background:#ffffff80}@media (max-width: 767px){.dashboard-personality-container .personality-list-card,.dashboard-timetravel-container .personality-list-card{width:240px}.dashboard-personality-container,.dashboard-timetravel-container{padding:0 12px 12px}.scroll-indicators{padding:8px 0 6px}.scroll-dot{width:6px;height:6px}}@media (min-width: 768px){.dashboard-personality-container .personality-list-card,.dashboard-timetravel-container .personality-list-card{width:300px}.dashboard-personality-container,.dashboard-timetravel-container{padding:0 24px 16px}}@media (min-width: 1024px){.dashboard-personality-container .personality-list-card,.dashboard-timetravel-container .personality-list-card{width:320px}.dashboard-personality-container,.dashboard-timetravel-container{padding:0 32px 16px}}.personality-list-card{background:#ffffff0d;border-radius:16px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);overflow:hidden}.personality-list-card:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.personality-list-card-image{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden}.personality-list-card-image:not(:has(img)){background:linear-gradient(135deg,#6c6fff4d,#a855f74d);display:flex;align-items:center;justify-content:center}.personality-list-card-image:empty{background:linear-gradient(135deg,#6c6fff4d,#a855f74d);display:flex;align-items:center;justify-content:center}.personality-list-card-image img{width:100%;height:100%;object-fit:cover}.personality-list-card-overlay{position:absolute;top:1rem;right:1rem}.personality-delete-icon{position:absolute!important;top:1rem!important;left:1rem!important;right:auto!important;transform:none!important;background:#6c6fffe6;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;color:#fff;z-index:10}.personality-delete-icon:hover{background:#6c6fff;transform:scale(1.1)!important;box-shadow:0 4px 12px #6c6fff66}.personality-delete-icon svg{width:20px;height:20px}.relationship-delete-icon{position:absolute!important;top:1rem!important;right:1rem!important;left:auto!important;transform:none!important}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;max-width:400px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0006;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:1.5rem 1.5rem 0;border-bottom:1px solid #eee;margin-bottom:1rem}.modal-header h3{margin:0;font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;color:#333}.modal-body{padding:0 1.5rem 1rem;color:#333!important;line-height:1.5}.modal-body p{margin:0 0 .5rem;color:#333!important}.modal-footer{padding:1rem 1.5rem 1.5rem;display:flex;gap:.75rem;justify-content:flex-end}.btn-cancel,.btn-delete{padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:Poppins,sans-serif;font-weight:500;cursor:pointer;transition:all .3s ease;min-width:80px}.btn-cancel{background:#f1f3f4;color:#333}.btn-cancel:hover{background:#e8eaed}.btn-delete{background:#ff4757;color:#fff}.btn-delete:hover{background:#ff3742;transform:translateY(-1px);box-shadow:0 4px 12px #ff47574d}.personality-list-card-content{padding:1.5rem}.personality-list-card-title{font-family:Poppins,sans-serif;font-weight:600;font-size:1.1rem;color:#fff;margin:0 0 .75rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.personality-list-card-description{font-family:Poppins,sans-serif;font-size:.9rem;color:#ffffffb3;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0}.read-button{background:linear-gradient(135deg,#6c6fff,#a855f7);border:none;border-radius:25px;padding:.75rem 1.5rem;color:#fff;font-family:Poppins,sans-serif;font-weight:500;font-size:.9rem;cursor:pointer;transition:all .3s ease;min-width:80px}.read-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c6fff66}.personality-list-loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(180deg,#2d1b69,#11082a);color:#fff}.personality-list-loading .loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.personality-list-loading p{font-family:Poppins,sans-serif;font-size:1rem;color:#fffc}@media (max-width: 767px){.personality-search-section,.personality-results-section{padding:1rem}.results-header{flex-direction:column;gap:1rem;align-items:flex-start}.new-analysis-button{align-self:flex-end}.personality-list-card-content{padding:1rem}.personality-list-card-title{font-size:1rem}.personality-list-card-description{font-size:.85rem}.personality-list-card-overlay{top:.75rem;right:.75rem}.read-button{padding:.6rem 1.2rem;font-size:.85rem}}@media (min-width: 768px){.personality-search-section{padding:2rem;top:80px}.personality-results-section{padding:2rem;max-width:1200px;margin:0 auto}.personality-cards-container{grid-template-columns:repeat(2,1fr);gap:2rem}}@media (min-width: 1024px){.personality-cards-container{grid-template-columns:repeat(3,1fr)}}.personality-detail{min-height:100vh;background:linear-gradient(180deg,#2d3748,#1a202c);color:#fff}.personality-detail-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.1)}.personality-detail-back-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.personality-detail-back-btn:hover{background:#ffffff1a}.back-icon{font-size:1.5rem;font-weight:700}.personality-detail-title{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;margin:0;text-align:center;flex:1}.personality-detail-menu-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.personality-detail-menu-btn:hover{background:#ffffff1a}.menu-icon{font-size:1.5rem;font-weight:700;transform:rotate(90deg)}.personality-detail-content{padding:1.5rem;flex:1}.personality-detail-card{background:#fffffff2;border-radius:16px;padding:2rem;margin:0 auto;max-width:100%;box-shadow:0 4px 20px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.personality-detail-text{color:#2d3748;font-family:Poppins,sans-serif;font-size:1rem;line-height:1.6;text-align:justify}.personality-detail-text strong{font-weight:600;color:#1a202c}.personality-detail-text p{margin:0 0 1rem}.personality-detail-text p:last-child{margin-bottom:0}.personality-detail-text ul,.personality-detail-text ol{margin:1rem 0;padding-left:1.5rem}.personality-detail-text ul li,.personality-detail-text ol li{margin:.5rem 0;line-height:1.6}.personality-detail-text ul{list-style-type:disc}.personality-detail-text ol{list-style-type:decimal}.personality-detail-text br{line-height:1.2}.personality-detail-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(180deg,#2d3748,#1a202c);color:#fff}.personality-detail-loading .loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top:3px solid white;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}.personality-detail-loading p{font-family:Poppins,sans-serif;font-size:1rem;margin:0}.personality-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(180deg,#2d3748,#1a202c);color:#fff;padding:2rem;text-align:center}.personality-detail-error h2{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.personality-detail-error p{font-family:Poppins,sans-serif;font-size:1rem;margin:0 0 2rem;color:#fffc}@media (max-width: 767px){.personality-detail-header{padding:1rem}.personality-detail-title{font-size:1.1rem}.personality-detail-content{padding:1rem}.personality-detail-card{padding:1.5rem;border-radius:12px}.personality-detail-text{font-size:.95rem}}@media (min-width: 768px){.personality-detail-content{padding:2rem}.personality-detail-card{max-width:800px;padding:2.5rem}.personality-detail-text{font-size:1.1rem}}@media (min-width: 1024px){.personality-detail-card{max-width:900px;padding:3rem}}.new-analysis-page{min-height:100vh;background:linear-gradient(180deg,#2d3748,#1a202c);color:#fff;display:flex;flex-direction:column}.new-analysis-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.1);min-height:70px}.new-analysis-back-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.new-analysis-back-btn:hover:not(:disabled){background:#ffffff1a}.new-analysis-back-btn:disabled{opacity:.5;cursor:not-allowed}.new-analysis-title{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;margin:0;text-align:center;flex:1}.new-analysis-menu-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease}.new-analysis-menu-btn:hover{background:#ffffff1a}.new-analysis-content{flex:1;display:flex;flex-direction:column;justify-content:space-between;padding:2rem 1.5rem}.new-analysis-form{display:flex;flex-direction:column;height:100%}.topic-input-container{flex:1;display:flex;flex-direction:column;margin-bottom:2rem;position:relative}.topic-input{flex:1;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:1.5rem;font-family:Poppins,sans-serif;font-size:1rem;color:#fff;resize:none;outline:none;transition:all .3s ease;min-height:300px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.topic-input::placeholder{color:#fff9}.topic-input:focus{border-color:#6c6fff;background:#ffffff26;box-shadow:0 0 0 3px #6c6fff33}.topic-input:disabled{opacity:.7;cursor:not-allowed}.character-counter{position:absolute;bottom:1rem;right:1.5rem;font-family:Poppins,sans-serif;font-size:.875rem;color:#fff9;pointer-events:none}.character-counter .over-limit{color:#ef4444;font-weight:600}.analysis-type-section{margin:1.5rem 0}.analysis-type-label{display:block;font-family:Poppins,sans-serif;font-size:1rem;font-weight:500;color:#fff;margin-bottom:.75rem}.toggle-container{display:flex;background:#ffffff1a;border-radius:16px;padding:4px;gap:4px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.toggle-option{flex:1;background:none;border:none;color:#ffffffb3;font-family:Poppins,sans-serif;font-size:.9rem;font-weight:500;padding:.75rem 1rem;border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:center}.toggle-option:hover:not(:disabled){color:#fff;background:#ffffff1a}.toggle-option.active{background:linear-gradient(135deg,#6c6fff,#a855f7);color:#fff;font-weight:600;box-shadow:0 2px 8px #6c6fff4d}.toggle-option:disabled{opacity:.5;cursor:not-allowed}.submit-btn{background:linear-gradient(135deg,#6c6fff,#a855f7);border:none;border-radius:25px;padding:1rem 2rem;color:#fff;font-family:Poppins,sans-serif;font-weight:600;font-size:1.1rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:56px;margin-top:auto}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #6c6fff66}.submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.submit-btn .loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 767px){.new-analysis-content{padding:1.5rem 1rem;justify-content:flex-end}.new-analysis-form{display:flex;flex-direction:column;justify-content:flex-end;min-height:calc(100vh - 70px - 3rem)}.topic-input-container{flex:none;margin-bottom:1.5rem}.topic-input{min-height:300px;padding:1.25rem}.character-counter{bottom:.75rem;right:1.25rem}.submit-btn{font-size:1rem;padding:.875rem 1.5rem;margin-top:0;margin-bottom:80px}}@media (min-width: 768px){.new-analysis-content{max-width:none;margin:0;padding:3rem 4rem}.new-analysis-header{min-height:80px;padding:1.5rem}.new-analysis-title{font-size:1.5rem}.topic-input-container{width:100%;max-width:500px;margin:0 auto 50px}.new-analysis-form .input-container{width:100%;max-width:500px;margin-left:auto;margin-right:auto;margin-bottom:1rem}.topic-input{min-height:400px;font-size:1.1rem;width:100%}.submit-btn{width:100%;max-width:500px;margin:0 auto;font-size:1.2rem;padding:1.25rem 2.5rem}.analysis-type-section{width:100%;max-width:500px;margin:1.5rem auto}}.chat-list-card{background:#ffffff0d;border-radius:16px;padding:20px;margin-bottom:16px;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.chat-list-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0003;background:#ffffff14;border-color:#fff3}.chat-list-card-date{font-size:12px;color:#fff9;margin-bottom:16px;font-family:Poppins,sans-serif;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.chat-list-card-main{display:flex;align-items:flex-start;gap:16px}.chat-list-card-content{flex:1;display:flex;flex-direction:column;gap:8px}.chat-list-card-title{font-size:18px;font-weight:600;color:#fff;margin:0 0 12px;font-family:Poppins,sans-serif;line-height:1.3}.chat-list-card-meta{display:flex;align-items:center}.chat-list-card-count{font-size:11px;color:#fff9;background:#ffffff1a;padding:6px 12px;border-radius:20px;font-family:Poppins,sans-serif;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.chat-list-card-actions{display:flex;align-items:center}.chat-list-card-button{background:linear-gradient(135deg,#6c6fff,#a855f7);border:none;border-radius:12px;padding:12px;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 15px #6c6fff4d}.chat-list-card-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6c6fff66}.chat-list-card-button svg{width:20px;height:20px;stroke:currentColor}.chat-page{min-height:100vh;background:linear-gradient(180deg,#2d3748,#1a202c);color:#fff;display:flex;flex-direction:column}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;background:#0000004d;border-bottom:1px solid rgba(255,255,255,.1);position:fixed;top:0;left:0;right:0;z-index:1001;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.chat-back-btn{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .2s ease;min-width:40px;height:40px}.chat-back-btn:hover{background:#ffffff1a}.back-icon{font-size:2rem;font-weight:700;line-height:1}.chat-title{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;margin:0;text-align:center;flex:1}.chat-save-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-family:Poppins,sans-serif;font-weight:500;font-size:.9rem;cursor:pointer;padding:.5rem 1rem;border-radius:20px;transition:all .2s ease;min-width:70px;height:40px;display:flex;align-items:center;justify-content:center}.chat-save-btn:hover:not(:disabled){background:#fff3;border-color:#ffffff4d}.chat-save-btn:disabled{opacity:.5;cursor:not-allowed}.chat-save-btn.has-changes{background:linear-gradient(135deg,#6c6fff,#a855f7);border-color:transparent}.save-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin 1s linear infinite}.chat-save-btn--full-width{width:100%;margin-top:12px;justify-content:center}.chat-header-credit-info{text-align:center;margin-top:4px}.credit-cost-text-small{font-size:12px;color:#ffffffb3;font-weight:600}.chat-messages{flex:1;padding:1rem;padding-top:80px;padding-bottom:160px;overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.message{display:flex;flex-direction:column;margin-bottom:1rem;align-items:flex-start}.message.user-message{align-items:flex-end}.message-content{display:flex;flex-direction:column;max-width:80%}.user-message .message-content{align-items:flex-end}.message-sender{font-family:Poppins,sans-serif;font-size:.875rem;font-weight:600;color:#fff;margin-bottom:.25rem}.message-bubble{padding:1rem 1.25rem;border-radius:20px;font-family:Poppins,sans-serif;font-size:1rem;line-height:1.5;word-wrap:break-word;max-width:100%}.ai-bubble{background:#ffffff1a;color:#fff;border-bottom-left-radius:8px}.user-bubble{background:#ffffffe6;color:#2d3748;border-bottom-right-radius:8px}.error-bubble{background:#ef444433;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.typing-indicator{padding:1rem 1.25rem}.typing-dots{display:flex;gap:4px;align-items:center}.typing-dots span{width:8px;height:8px;background:#fff9;border-radius:50%;animation:typingDot 1.5s ease-in-out infinite}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,60%,to{opacity:.3;transform:scale(1)}30%{opacity:1;transform:scale(1.2)}}.chat-input-container{position:fixed;bottom:0;left:0;right:0;padding:1rem 1rem 50px;margin:0;background:#0000004d;border-top:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000}.chat-send-btn{background:none;border:none;color:#ffffffb3;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;padding:0;width:24px;height:24px}.chat-send-btn:hover:not(:disabled){color:#fff;transform:scale(1.1)}.chat-send-btn:disabled{opacity:.3;cursor:not-allowed;transform:none}.chat-send-btn svg{width:24px;height:24px;fill:currentColor}@media (max-width: 767px){.chat-page{min-height:100vh}.chat-header{padding:.75rem 1rem}.chat-title{font-size:1.125rem}.chat-save-btn{font-size:.8rem;padding:.4rem .8rem;min-width:60px;height:36px}.chat-messages{padding:.75rem;padding-top:70px;padding-bottom:240px}.message-content{max-width:90%}.message-bubble{padding:.875rem 1rem;font-size:.95rem}.chat-input-container{padding:.75rem .75rem 50px}}@media (min-width: 768px){.chat-messages{padding:1.5rem 2rem;padding-top:90px;padding-bottom:180px;max-width:800px;margin:0 auto;width:100%}.chat-input-container{padding:1.5rem 2rem 50px}.chat-input-container .input-container{max-width:800px;margin:0 auto}.message-content{max-width:70%}}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#1a1a1ae6;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}.loading-overlay .loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.3);border-top:3px solid #fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.loading-overlay p{color:#fff;font-size:16px;margin:0}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.relationship-picture-container{display:flex;flex-direction:column;align-items:center;gap:1rem;margin:1rem 0}.relationship-picture-preview{width:120px;height:120px;border-radius:12px;overflow:hidden;border:2px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;background:#ffffff0d}.relationship-picture-img{width:100%;height:100%;object-fit:cover}.relationship-picture-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;color:#ffffff80}.btn--small{font-size:.875rem;padding:.5rem 1rem;min-height:auto}@media (max-width: 767px){.relationship-picture-preview{width:100px;height:100px}.btn--small{font-size:.8rem;padding:.4rem .8rem}}.relationship-list-cards-container{display:grid;grid-template-columns:1fr;gap:1.5rem}.relationship-list-card{background:#ffffff0d;border-radius:16px;padding:1.5rem;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;display:flex;align-items:center;gap:1.5rem}.relationship-list-card:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px);box-shadow:0 8px 25px #0000004d}.relationship-list-card-image{flex-shrink:0;width:80px;height:80px;border-radius:12px;overflow:hidden;background:#ffffff1a;border:2px solid rgba(255,255,255,.2)}.relationship-list-card-image img{width:100%;height:100%;object-fit:cover}.relationship-list-card-content{flex:1;display:flex;flex-direction:column;gap:.5rem;min-width:0}.relationship-list-card-name{font-family:Poppins,sans-serif;font-weight:600;font-size:1.25rem;color:#fff;margin:0;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-list-card-type{font-family:Poppins,sans-serif;font-size:.95rem;color:#fffc;font-weight:500;text-transform:capitalize;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relationship-list-card-date{font-family:Poppins,sans-serif;font-size:.85rem;color:#fff9;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 767px){.relationship-list-card{padding:1rem;gap:1rem}.relationship-list-card-image{width:60px;height:60px}.relationship-list-card-name{font-size:1.1rem}.relationship-list-card-type{font-size:.9rem}.relationship-list-card-date{font-size:.8rem}}@media (min-width: 768px){.relationship-list-cards-container{grid-template-columns:repeat(2,1fr);gap:1.5rem}.relationship-list-card{padding:2rem;gap:2rem}.relationship-list-card-image{width:100px;height:100px}}@media (min-width: 1024px){.relationship-list-cards-container{grid-template-columns:repeat(2,1fr)}.relationship-list-card{padding:2.5rem}}.loading-spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;display:inline-block;margin-left:8px}.error-message{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:8px;padding:12px;margin-top:1rem;color:#ff6b6b;font-size:.9rem;text-align:center}.error-message p{margin:0}.toggle-option{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px;padding:12px 16px}.toggle-text{display:flex;flex-direction:column;align-items:center;gap:4px;line-height:1.2}.credit-cost{font-size:.8em;opacity:.8;font-weight:500}@media (max-width: 767px){.toggle-option{padding:10px 8px;min-height:44px}.toggle-text{font-size:.9rem}.credit-cost{font-size:.75em}}.payment-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;padding:80px 20px 20px}.payment-modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;position:relative;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.payment-modal-close{position:absolute;top:15px;right:15px;background:none;border:none;font-size:24px;cursor:pointer;color:#6b7280;z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s ease}.payment-modal-close:hover{background-color:#f3f4f6}.payment-modal-content{padding:30px}.payment-header{text-align:center;margin-bottom:30px}.payment-header h2{margin:0 0 8px;color:#1f2937;font-size:24px;font-weight:600}.payment-header p{margin:0;color:#6b7280;font-size:14px}.payment-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:#374151;font-size:14px}.form-group input,.form-group select{padding:12px;border:1px solid #d1d5db;border-radius:8px;font-size:16px;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.card-element-container{padding:12px;border:1px solid #d1d5db;border-radius:8px;transition:border-color .2s ease}.card-element-container:focus-within{border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.payment-summary{background:#f9fafb;border-radius:8px;padding:20px;margin-bottom:20px}.payment-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.payment-row:not(:last-child){border-bottom:1px solid #e5e7eb}.payment-total{font-weight:600;font-size:16px;color:#1f2937;border-top:2px solid #e5e7eb!important;border-bottom:none!important;padding-top:12px;margin-top:8px}.payment-actions{display:flex;gap:12px;margin-top:20px}.payment-actions .btn{flex:1;padding:12px 24px;border-radius:8px;font-weight:500;transition:all .2s ease;cursor:pointer;border:none;font-size:16px}.payment-actions .btn-secondary{background:#f3f4f6;color:#374151}.payment-actions .btn-secondary:hover:not(:disabled){background:#e5e7eb}.payment-actions .btn-primary{background:#6366f1;color:#fff}.payment-actions .btn-primary:hover:not(:disabled){background:#5855eb}.payment-actions .btn:disabled{opacity:.5;cursor:not-allowed}.payment-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:12px;margin:10px 0}.payment-error p{margin:0;color:#dc2626;font-size:14px}.payment-processing{text-align:center;padding:40px 20px}.payment-processing h3{margin:20px 0 10px;color:#1f2937}.payment-processing p{margin:0;color:#6b7280;font-size:14px}@media (max-width: 640px){.payment-modal{margin:10px;max-height:calc(100vh - 20px)}.payment-modal-content{padding:20px}.payment-header h2{font-size:20px}.payment-actions{flex-direction:column}.payment-actions .btn{flex:none}}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer}.checkbox-label input[type=checkbox]{margin:0}.purchase-history-section{margin-top:40px;padding:24px;background:#ffffff1a;border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.purchase-history-list{margin-top:16px;display:flex;flex-direction:column;gap:12px}.purchase-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.purchase-item:hover{background:#ffffff14;transform:translateY(-1px)}.purchase-info{flex:1;display:flex;flex-direction:column;gap:8px}.purchase-header{display:flex;justify-content:space-between;align-items:center}.purchase-pack-name{font-weight:600;color:#fff;font-size:16px}.purchase-amount{font-weight:600;color:#4ade80;font-size:16px}.purchase-details{display:flex;justify-content:space-between;align-items:center;font-size:14px}.purchase-credits{color:#60a5fa;font-weight:500}.purchase-date{color:#ffffffb3;font-size:13px}.purchase-tax{margin-top:4px}.tax-breakdown{font-size:12px;color:#fff9;font-style:italic}.purchase-status{margin-left:16px}.status-badge{padding:6px 12px;border-radius:20px;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-completed{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.status-pending{background:#fbbf2433;color:#fbbf24;border:1px solid rgba(251,191,36,.3)}.status-failed{background:#ef444433;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.no-purchases{text-align:center;padding:32px 16px;color:#fff9;font-style:italic}.no-purchases p{margin:0}@media (max-width: 768px){.purchase-item{flex-direction:column;align-items:flex-start;gap:12px}.purchase-status{margin-left:0;align-self:flex-end}.purchase-header,.purchase-details{width:100%}}.app-footer{background:#2d1b69cc;border-top:1px solid rgba(255,255,255,.1);padding:2rem 0;margin-top:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.footer-content{max-width:1200px;margin:0 auto;padding:0 2rem;text-align:center}.footer-links{margin-bottom:1rem;text-align:center}.footer-link{color:#ffffffe6;text-decoration:none;font-size:.875rem;margin:0 1rem;transition:color .3s ease}.footer-link:hover{color:#fff;text-decoration:underline}.footer-copyright p{color:#fffc;font-size:.875rem;margin:0}@media (max-width: 768px){.app-footer{display:none}}.terms-link{color:#6366f1;text-decoration:underline;font-weight:500;transition:color .2s ease}.terms-link:hover{color:#4f46e5;text-decoration:underline}.terms-checkbox-container{margin:1.5rem 0}.terms-checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.875rem;line-height:1.4}.terms-checkbox{margin:0;margin-top:.125rem;width:16px;height:16px;flex-shrink:0;cursor:pointer}.terms-text{color:#ffffffe6;flex:1}.terms-text .terms-link{color:#6366f1;text-decoration:underline;font-weight:500}.terms-text .terms-link:hover{color:#4f46e5}.mobile-menu-footer{position:absolute;bottom:1rem;left:0;right:0;padding:1rem 0;border-top:1px solid rgba(255,255,255,.1);text-align:center}.mobile-menu-footer-links{margin-bottom:.5rem;text-align:center}.mobile-menu-footer-link{color:#fffc;text-decoration:none;font-size:.75rem;margin:0 .5rem;transition:color .3s ease}.mobile-menu-footer-link:hover{color:#fff;text-decoration:underline}.mobile-menu-footer-copyright{text-align:center}.mobile-menu-footer-copyright p{color:#fff9;font-size:.75rem;margin:0}.email-verification-modal{max-width:500px;padding:2rem;text-align:center}.email-verification-icon{margin-bottom:1.5rem;display:flex;justify-content:center}.email-verification-icon svg{background:#6366f11a;border-radius:50%;padding:1rem;width:80px;height:80px}.modal-title{font-size:1.5rem;font-weight:600;color:#fff;margin-bottom:1rem}.modal-message{color:#fffc;font-size:1rem;line-height:1.5;margin-bottom:1.5rem}.email-address{color:#6366f1;font-weight:500;font-size:1rem;margin-bottom:1.5rem;padding:.75rem;background:#6366f11a;border-radius:8px;border:1px solid rgba(99,102,241,.2)}.resend-message{padding:.75rem;border-radius:8px;margin-bottom:1.5rem;font-size:.875rem;font-weight:500}.resend-message.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.2);color:#22c55e}.resend-message.error{background:#ef44441a;border:1px solid rgba(239,68,68,.2);color:#ef4444}.modal-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.modal-actions .btn{min-width:140px}@media (max-width: 480px){.email-verification-modal{padding:1.5rem;margin:1rem}.modal-actions{flex-direction:column}.modal-actions .btn{width:100%}}.intro-actions{display:flex;flex-direction:column;gap:1rem;align-items:center;margin-top:2rem}.intro-button--secondary{background:transparent;border:2px solid rgba(255,255,255,.3);color:#ffffffe6}.intro-button--secondary:hover{background:#ffffff1a;border-color:#ffffff80}@media (min-width: 768px){.intro-actions{flex-direction:row;justify-content:center}}.credits-granted-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.credits-granted-container{max-width:600px;margin:0 auto;padding:2rem 1rem;text-align:center}.credits-main-title{margin-bottom:3rem;opacity:0;transform:translateY(30px);transition:all .8s ease}.credits-main-title.animate-in{opacity:1;transform:translateY(0)}.credits-main-title .credits-icon{margin-bottom:1.5rem;animation:starPulse 2s ease-in-out infinite}.credits-main-title h1{font-size:2.5rem;font-weight:800;color:#fff;margin-bottom:.5rem;text-shadow:0 2px 20px rgba(0,0,0,.3)}.credits-subtitle{font-size:1.1rem;color:#ffffffe6;font-weight:400}.credits-card{background:#fffffff2;border-radius:20px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 10px 40px #00000026;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transform:translateY(40px) scale(.9);transition:all .8s ease}.credits-card.animate-in{opacity:1;transform:translateY(0) scale(1)}.credits-card-icon{margin-bottom:1rem}.credits-card h3{font-size:1.3rem;font-weight:600;color:#1a1a1a;margin-bottom:1rem}.credits-amount{display:flex;align-items:baseline;justify-content:center;gap:.5rem;margin-bottom:1rem}.credits-number{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:creditCount .5s ease-out}.signup-credits .credits-number{background:linear-gradient(135deg,#6366f1,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.referral-credits .credits-number{background:linear-gradient(135deg,#22c55e,#16a34a);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.credits-label{font-size:1.1rem;font-weight:500;color:#666}.credits-description{font-size:.95rem;color:#666;line-height:1.4}.credits-total{margin:2rem 0;opacity:0;transform:translateY(20px);transition:all .8s ease .3s}.credits-total.animate-in{opacity:1;transform:translateY(0)}.credits-total-line{height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);margin-bottom:1rem}.credits-total-amount{display:flex;align-items:center;justify-content:center;gap:1rem}.credits-total-label{font-size:1.1rem;color:#ffffffe6;font-weight:500}.credits-total-number{font-size:2rem;font-weight:800;color:gold;text-shadow:0 2px 10px rgba(255,215,0,.5)}.credits-continue{margin-top:3rem;opacity:0;transform:translateY(20px);transition:all .8s ease .5s}.credits-continue.animate-in{opacity:1;transform:translateY(0)}.credits-continue-btn{background:linear-gradient(135deg,gold,orange);color:#1a1a1a;font-weight:600;padding:1rem 3rem;font-size:1.1rem;border-radius:50px;box-shadow:0 8px 25px #ffd70066;transform:translateY(0);transition:all .3s ease}.credits-continue-btn:hover{transform:translateY(-2px);box-shadow:0 12px 35px #ffd70099}@keyframes starPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes creditCount{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fireworkExplode{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(0);opacity:0}}@media (max-width: 768px){.credits-granted-page{padding-top:80px}.credits-granted-container{padding:1rem}.credits-main-title h1{font-size:2rem}.credits-card{padding:1.5rem}.credits-number{font-size:2.5rem}.credits-total-number{font-size:1.5rem}}.cookie-consent{position:fixed;bottom:0;left:0;right:0;background:#1e293bfa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1);padding:1.5rem;z-index:10000;transform:translateY(100%);transition:transform .3s ease-in-out;box-shadow:0 -4px 20px #0000004d}.cookie-consent--visible{transform:translateY(0)}.cookie-consent__content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center}.cookie-consent__text h3{color:#fffffff2;font-size:1.1rem;font-weight:600;margin:0 0 .5rem}.cookie-consent__text p{color:#fffc;font-size:.9rem;line-height:1.5;margin:0 0 .5rem}.cookie-consent__details{font-size:.8rem!important;color:#fff9!important}.cookie-consent__link{background:none;border:none;color:#6366f1;text-decoration:underline;cursor:pointer;font-size:inherit;padding:0;margin-left:.25rem}.cookie-consent__link:hover{color:#818cf8}.cookie-consent__actions{display:flex;gap:.75rem;flex-shrink:0}.cookie-consent__actions .btn{padding:.5rem 1rem;font-size:.85rem;min-width:auto}@media (max-width: 768px){.cookie-consent{padding:1rem}.cookie-consent__content{grid-template-columns:1fr;gap:1.5rem;text-align:center}.cookie-consent__actions{justify-content:center}.cookie-consent__text h3{font-size:1rem}.cookie-consent__text p{font-size:.85rem}}@media (max-width: 480px){.cookie-consent__actions{flex-direction:column;gap:.75rem}.cookie-consent__actions .btn{width:100%}}.tutorial-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9990;pointer-events:none}.tutorial-backdrop{position:absolute;top:0;left:0;width:100%;height:100%;background:#000c;transition:all .3s ease;z-index:5000}.tutorial-spotlight{position:absolute;border:3px solid rgba(74,144,226,.9);border-radius:12px;box-shadow:0 0 0 4px #4a90e266,0 0 30px #4a90e2b3;transition:all .4s cubic-bezier(.4,0,.2,1);pointer-events:none;z-index:6000;animation:spotlight-glow 2s infinite}.tutorial-spotlight:before{content:"";position:absolute;top:-6px;left:-6px;right:-6px;bottom:-6px;background:transparent;border-radius:inherit;box-shadow:0 0 0 9999px #000c}@keyframes spotlight-glow{0%,to{box-shadow:0 0 0 4px #4a90e266,0 0 30px #4a90e2b3}50%{box-shadow:0 0 0 4px #4a90e299,0 0 40px #4a90e2e6}}.tutorial-tooltip{position:fixed;background:linear-gradient(135deg,#1a1a1a,#2d2d2d);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px;box-shadow:0 20px 40px #0006,0 8px 16px #0003,inset 0 1px #ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto;max-width:400px;z-index:99999!important;animation:tooltip-appear .4s cubic-bezier(.4,0,.2,1)}@keyframes tooltip-appear{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.tutorial-tooltip-content{color:#fff}.tutorial-tooltip-header{margin-bottom:16px;display:flex;flex-direction:column;gap:8px}.tutorial-tooltip-title{font-size:20px;font-weight:600;color:#fff;margin:0;line-height:1.3}.tutorial-progress{font-size:12px;color:#fff9;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.tutorial-tooltip-body{margin-bottom:24px}.tutorial-tooltip-text{font-size:16px;line-height:1.5;color:#ffffffe6;margin:0 0 12px}.tutorial-tooltip-duration{font-size:14px;color:#4a90e2;font-weight:500;margin:8px 0}.tutorial-tooltip-cta{font-size:14px;color:#ffffffb3;font-style:italic;margin:8px 0 0}.tutorial-tooltip-actions{display:flex;justify-content:space-between;align-items:center;gap:16px}.tutorial-navigation{display:flex;gap:12px}.tutorial-btn{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.tutorial-btn-skip{background:transparent;color:#fff9;border:1px solid rgba(255,255,255,.2)}.tutorial-btn-skip:hover{background:#ffffff1a;color:#fffc}.tutorial-btn-previous{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.tutorial-btn-previous:hover{background:#fff3}.tutorial-btn-primary{background:linear-gradient(135deg,#4a90e2,#357abd);color:#fff;border:none;box-shadow:0 4px 12px #4a90e24d}.tutorial-btn-primary:hover{background:linear-gradient(135deg,#357abd,#2c6aa0);transform:translateY(-1px);box-shadow:0 6px 16px #4a90e266}.tutorial-arrow{position:absolute;z-index:99999}.tutorial-arrow--top{bottom:100%;margin-bottom:8px}.tutorial-arrow--bottom{top:100%;margin-top:8px}.tutorial-arrow--left{right:100%;margin-right:8px}.tutorial-arrow--right{left:100%;margin-left:8px}.tutorial-arrow-svg{color:#1a1a1a;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}@media (max-width: 768px){.tutorial-tooltip{max-width:calc(100vw - 32px);padding:16px;margin:0;border-radius:12px;bottom:20px!important;top:auto!important;left:50%!important;transform:translate(-50%)!important}.tutorial-tooltip-title{font-size:16px;margin-bottom:8px}.tutorial-tooltip-text{font-size:14px;line-height:1.4}.tutorial-tooltip-header{margin-bottom:12px}.tutorial-tooltip-body{margin-bottom:16px}.tutorial-tooltip-duration{font-size:13px;margin:6px 0}.tutorial-tooltip-cta{font-size:13px;margin:6px 0 0}.tutorial-tooltip-actions{flex-direction:column;gap:8px}.tutorial-navigation{width:100%;justify-content:space-between;order:2}.tutorial-btn{padding:8px 12px;font-size:13px;font-weight:500;min-height:36px}.tutorial-btn-skip{order:1;width:100%;padding:6px 12px;font-size:12px;min-height:32px}.tutorial-btn-previous,.tutorial-btn-primary{flex:1;min-width:0}.tutorial-arrow-svg{width:12px;height:12px}}.relationships-section,.personality-section,.chat-section,.timetravel-section,.credits-display{position:relative}html{scroll-behavior:smooth}.tutorial-highlight{animation:tutorial-glow 1s ease-in-out}@keyframes tutorial-glow{0%,to{box-shadow:none}50%{box-shadow:0 0 20px #4a90e299}}
