.landing-page{height:100%;display:flex;flex-direction:column;overflow-y:auto;position:relative}.landing-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(https://i.postimg.cc/Nfdm6FhP/background.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;background-attachment:fixed;z-index:-1}body.dark .landing-page:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0f172ade;z-index:-1}body.light .landing-page:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background-color:#f8fafcd9;z-index:-1}.landing-header{padding:1.5rem 2rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}body.dark .landing-header{background:#1a1d2ee6;border-bottom:1px solid var(--border-dark)}body.light .landing-header{background:#ffffffe6;border-bottom:1px solid var(--border-light)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));color:#fff}.logo-text{font-size:1.5rem;font-weight:700}body.dark .logo-text{color:var(--text-primary-dark)}body.light .logo-text{color:var(--text-primary-light)}.logo-accent{color:var(--accent-primary)}.header-actions{display:flex;align-items:center;gap:1rem}.theme-toggle-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(0,0,0,.1);background:transparent;color:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}body.dark .theme-toggle-btn{border-color:var(--border-dark);color:var(--text-primary-dark)}body.light .theme-toggle-btn{border-color:var(--border-light);color:var(--text-primary-light)}.theme-toggle-btn:hover{background:#0000000d;transform:rotate(15deg)}body.dark .theme-toggle-btn:hover{background:#ffffff1a}.user-menu{display:flex;align-items:center;gap:.75rem}.user-badge{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#8b5cf61a;color:var(--accent-primary);border-radius:20px;font-weight:500;font-size:.9rem}.logout-btn,.btn-icon-text{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:var(--text-secondary-dark);cursor:pointer;padding:.5rem;border-radius:8px;transition:all .2s}body.light .logout-btn,body.light .btn-icon-text{color:var(--text-secondary-light)}.logout-btn:hover,.btn-icon-text:hover{color:var(--accent-primary);background:#8b5cf60d}.auth-group{display:flex;align-items:center;gap:.75rem}.username{font-size:.95rem;font-weight:500;padding:.5rem 1rem;border-radius:8px}body.dark .username{background:var(--bg-secondary-dark);color:var(--text-primary-dark)}body.light .username{background:var(--bg-secondary-light);color:var(--text-primary-light)}.btn-text{padding:.6rem 1.2rem;border:none;background:transparent;font-size:.95rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s}body.dark .btn-text{color:var(--text-primary-dark)}body.light .btn-text{color:var(--text-primary-light)}.btn-text:hover{background:#8b5cf61a}.btn-primary-small{padding:.6rem 1.5rem;border:none;background:var(--accent-primary);color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;border-radius:8px;transition:all .2s}.btn-primary-small:hover{background:var(--accent-hover);transform:translateY(-1px)}.btn-primary-small:active{transform:translateY(0)}.landing-main{flex:1;display:flex;align-items:center;justify-content:center;padding:3rem 2rem}.hero-section{max-width:700px;width:100%;text-align:center;animation:fadeIn .6s ease-out}.trust-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:2rem}body.dark .trust-badge{background:#8b5cf61a;color:var(--accent-secondary);border:1px solid rgba(139,92,246,.2)}body.light .trust-badge{background:#8b5cf60d;color:var(--accent-primary);border:1px solid rgba(139,92,246,.1)}.trust-indicator{width:8px;height:8px;border-radius:50%;background:var(--accent-primary);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.hero-title{font-size:3rem;font-weight:800;line-height:1.2;margin-bottom:1.5rem}body.dark .hero-title{color:var(--text-primary-dark)}body.light .hero-title{color:var(--text-primary-light)}.hero-title-accent{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.1rem;line-height:1.7;margin-bottom:2.5rem}body.dark .hero-subtitle{color:var(--text-secondary-dark)}body.light .hero-subtitle{color:var(--text-secondary-light)}.features{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:3rem}.feature-pill{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:12px;font-size:.9rem;font-weight:500;transition:all .2s}body.dark .feature-pill{background:var(--bg-secondary-dark);color:var(--text-primary-dark);border:1px solid var(--border-dark)}body.light .feature-pill{background:var(--bg-primary-light);color:var(--text-primary-light);border:1px solid var(--border-light)}.feature-pill svg{color:var(--accent-primary)}.chat-form{width:100%;max-width:500px;margin:0 auto 3rem;padding:2rem;border-radius:24px;background:#ffffff0d;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1.5rem}.input-group{display:flex;gap:.75rem;width:100%}.form-label{font-size:1rem;font-weight:600;text-align:center}body.dark .form-label{color:var(--text-primary-dark)}body.light .form-label{color:var(--text-primary-light)}.name-input{width:100%;padding:1rem 1.5rem;border-radius:12px;border:2px solid transparent;font-size:1rem;outline:none;transition:all .2s}body.dark .name-input{background:var(--bg-secondary-dark);color:var(--text-primary-dark);border-color:var(--border-dark)}body.light .name-input{background:var(--bg-primary-light);color:var(--text-primary-light);border-color:var(--border-light)}.name-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.btn-start-chat{padding:0 1.5rem;height:54px;border:none;border-radius:12px;background:var(--accent-primary);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .3s;white-space:nowrap}.btn-start-chat:hover{background:var(--accent-hover);transform:translateY(-2px);box-shadow:0 10px 30px #8b5cf64d}.btn-start-chat:active{transform:translateY(0)}.terms-text{font-size:.85rem;text-align:center}body.dark .terms-text{color:var(--text-secondary-dark)}body.light .terms-text{color:var(--text-secondary-light)}.bottom-features{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap}.bottom-feature{display:flex;align-items:center;gap:.5rem;font-size:.95rem}body.dark .bottom-feature{color:var(--text-secondary-dark)}body.light .bottom-feature{color:var(--text-secondary-light)}.bottom-feature svg{color:#10b981}.landing-footer{padding:2rem;text-align:center}body.dark .landing-footer{background:#1a1d2e80;border-top:1px solid var(--border-dark);color:var(--text-secondary-dark)}body.light .landing-footer{background:#ffffff80;border-top:1px solid var(--border-light);color:var(--text-secondary-light)}.footer-content{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}.footer-links{display:flex;justify-content:center;gap:2rem}.footer-links a{text-decoration:none;font-size:.9rem;transition:color .2s}body.dark .footer-links a{color:var(--text-secondary-dark)}body.light .footer-links a{color:var(--text-secondary-light)}.footer-links a:hover{color:var(--accent-primary)}@media (max-width: 768px){.landing-header{padding:1rem 1.5rem}.logo-text{font-size:1.25rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.features{gap:.75rem}.feature-pill{font-size:.85rem;padding:.6rem 1rem}.bottom-features{flex-direction:column;gap:1rem}.footer-content{font-size:.85rem}.footer-links{flex-direction:column;gap:.75rem}.header-actions{gap:.5rem}.btn-text,.btn-primary-small{padding:.5rem 1rem;font-size:.85rem}}@media (max-width: 480px){.hero-title{font-size:1.75rem}.btn-start-chat{font-size:1rem;padding:1rem 1.5rem}}.chat-page{height:100%;display:flex;flex-direction:column;overflow:hidden}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:10}body.dark .chat-header{background:#1a1d2ef2;border-bottom:1px solid var(--border-dark)}body.light .chat-header{background:#fffffff2;border-bottom:1px solid var(--border-light)}.header-left{display:flex;align-items:center;gap:1rem}.back-btn{width:40px;height:40px;border:none;background:transparent;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}body.dark .back-btn{color:var(--text-primary-dark)}body.light .back-btn{color:var(--text-primary-light)}body.dark .back-btn:hover{background:var(--bg-secondary-dark)}body.light .back-btn:hover{background:var(--bg-secondary-light)}.partner-info{display:flex;align-items:center;gap:.75rem}.partner-avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.1rem}.partner-details{display:flex;flex-direction:column;gap:.25rem}body.dark .partner-name{color:var(--text-primary-dark)}body.light .partner-name{color:var(--text-primary-light)}.partner-status{display:flex;align-items:center;gap:.4rem;font-size:.85rem}body.dark .partner-status{color:var(--text-secondary-dark)}body.light .partner-status{color:var(--text-secondary-light)}.status-indicator{width:8px;height:8px;border-radius:50%}.status-indicator.online{background:#10b981;box-shadow:0 0 8px #10b98180}.status-indicator.offline{background:#6b7280}.header-actions{display:flex;gap:.5rem}.btn-rematch{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.2rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}body.dark .btn-rematch{background:var(--bg-secondary-dark);color:var(--text-primary-dark);border:1px solid var(--border-dark)}body.light .btn-rematch{background:var(--bg-primary-light);color:var(--text-primary-light);border:1px solid var(--border-light)}.btn-rematch:hover{background:var(--accent-primary);color:#fff;border-color:var(--accent-primary);transform:translateY(-1px)}.messages-container{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}body.dark .messages-container{background:var(--bg-tertiary-dark)}body.light .messages-container{background:var(--bg-secondary-light)}.empty-state{display:flex;align-items:center;justify-content:center;height:100%;font-size:1.1rem;text-align:center}body.dark .empty-state{color:var(--text-secondary-dark)}body.light .empty-state{color:var(--text-secondary-light)}.message{display:flex;animation:slideUp .3s ease-out}.message.sent{justify-content:flex-end}.message.received{justify-content:flex-start}.message-bubble{max-width:70%;padding:.85rem 1.2rem;border-radius:18px;font-size:.95rem;line-height:1.5;word-wrap:break-word}.message.sent .message-bubble{background:var(--accent-primary);color:#fff;border-bottom-right-radius:4px}body.dark .message.received .message-bubble{background:var(--message-received-dark);color:var(--text-primary-dark);border-bottom-left-radius:4px}body.light .message.received .message-bubble{background:var(--message-received-light);color:var(--text-primary-light);border-bottom-left-radius:4px;border:1px solid var(--border-light)}.typing-indicator{display:flex;align-items:center;gap:.75rem;padding:.5rem 1rem;max-width:fit-content}.typing-dots{display:flex;gap:.3rem;padding:.75rem;border-radius:18px}body.dark .typing-dots{background:var(--message-received-dark)}body.light .typing-dots{background:var(--message-received-light);border:1px solid var(--border-light)}.typing-dots span{width:8px;height:8px;border-radius:50%;background:var(--text-secondary-dark);animation:bounce 1.4s infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-8px)}}.typing-text{font-size:.85rem;font-style:italic}body.dark .typing-text{color:var(--text-secondary-dark)}body.light .typing-text{color:var(--text-secondary-light)}.disconnect-notice{text-align:center;padding:1rem;border-radius:12px;margin:1rem 0}body.dark .disconnect-notice{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}body.light .disconnect-notice{background:#ef44440d;color:#dc2626;border:1px solid rgba(239,68,68,.1)}.input-container{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.5rem;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}body.dark .input-container{background:#1a1d2ef2;border-top:1px solid var(--border-dark)}body.light .input-container{background:#fffffff2;border-top:1px solid var(--border-light)}.chat-input-row{display:flex;align-items:center;gap:1rem;width:100%}.connection-status{text-align:center;font-size:.85rem;padding:.5rem;border-radius:8px;font-style:italic}body.dark .connection-status{background:#8b5cf61a;color:var(--accent-secondary)}body.light .connection-status{background:#8b5cf60d;color:var(--accent-primary)}.input-wrapper{flex:1;display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:24px;transition:all .2s}body.dark .input-wrapper{background:var(--bg-secondary-dark);border:1px solid var(--border-dark)}body.light .input-wrapper{background:var(--bg-primary-light);border:1px solid var(--border-light)}.input-wrapper:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.attach-btn,.emoji-btn{width:36px;height:36px;border:none;background:transparent;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}body.dark .attach-btn,body.dark .emoji-btn{color:var(--text-secondary-dark)}body.light .attach-btn,body.light .emoji-btn{color:var(--text-secondary-light)}.attach-btn:hover,.emoji-btn:hover{color:var(--accent-primary);transform:scale(1.1)}.message-input{flex:1;border:none;background:transparent;font-size:.95rem;outline:none;padding:.5rem 0;min-width:0}body.dark .message-input{color:var(--text-primary-dark)}body.light .message-input{color:var(--text-primary-light)}.message-input::placeholder{color:var(--text-secondary-dark)}.message-input:disabled{opacity:.5;cursor:not-allowed}.send-btn{width:48px;height:48px;border:none;background:var(--accent-primary);color:#fff;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.send-btn:hover:not(:disabled){background:var(--accent-hover);transform:scale(1.05)}.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:scale(1)}@media (max-width: 768px){.chat-header{padding:1rem}.partner-name{font-size:.95rem}.partner-status{font-size:.8rem}.btn-rematch{padding:.5rem .8rem;font-size:.85rem}.btn-rematch span{display:none}.messages-container{padding:1rem}.message-bubble{max-width:85%;font-size:.9rem}.input-container{padding:.75rem 1rem}.send-btn{width:44px;height:44px}}@media (max-width: 480px){.partner-avatar{width:36px;height:36px;font-size:1rem}.header-left{gap:.5rem}.back-btn{width:36px;height:36px}}.chat-history-container{height:100%;display:flex;flex-direction:column;background:inherit}.history-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid rgba(0,0,0,.1)}body.dark .history-header{border-bottom-color:var(--border-dark)}body.light .history-header{border-bottom-color:var(--border-light)}.icon-btn{background:transparent;border:none;color:inherit;cursor:pointer;padding:.5rem;border-radius:50%;transition:background .2s}.icon-btn:hover{background:#0000000d}body.dark .icon-btn:hover{background:#ffffff1a}.history-content{flex:1;overflow-y:auto;padding:1rem}.chat-list{display:flex;flex-direction:column;gap:.75rem}.chat-item{display:flex;align-items:center;padding:1rem;border-radius:12px;background:#ffffff80;cursor:pointer;transition:all .2s;border:1px solid transparent}body.dark .chat-item{background:var(--bg-secondary-dark)}body.light .chat-item{background:var(--bg-primary-light);border-color:var(--border-light)}.chat-item:hover{border-color:var(--accent-primary);box-shadow:0 4px 12px #0000001a}.chat-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;margin-right:1rem}.chat-info{flex:1;min-width:0}.chat-meta{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.partner-name{font-weight:600;font-size:1rem}.chat-time{font-size:.75rem;color:var(--text-secondary-dark)}body.light .chat-time{color:var(--text-secondary-light)}.last-message{font-size:.85rem;color:var(--text-secondary-dark);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.light .last-message{color:var(--text-secondary-light)}.chevron{color:var(--text-secondary-dark);margin-left:.5rem}.loading-state{display:flex;flex-direction:column;gap:1rem}.skeleton-item{height:80px;border-radius:12px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);background-size:200% 100%;animation:shimmer 1.5s infinite}body.light .skeleton-item{background:linear-gradient(90deg,#f0f0f0,#e0e0e0,#f0f0f0)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.empty-history{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;opacity:.5;gap:1rem}.chat-detail{height:100%;display:flex;flex-direction:column}.messages-list{display:flex;flex-direction:column;gap:1rem;padding-bottom:2rem}.message-row{display:flex;width:100%}.message-row.sent{justify-content:flex-end}.message-row.received{justify-content:flex-start}.message-bubble{max-width:80%;padding:.75rem 1rem;border-radius:12px;font-size:.95rem;position:relative;display:flex;flex-direction:column}.message-row.sent .message-bubble{background:var(--accent-primary);color:#fff;border-bottom-right-radius:2px}.message-row.received .message-bubble{background:var(--message-received-dark);border-bottom-left-radius:2px}body.light .message-row.received .message-bubble{background:var(--message-received-light);border:1px solid var(--border-light)}.message-time{font-size:.7rem;opacity:.7;align-self:flex-end;margin-top:.25rem}.skeleton-bubble{height:60px;width:60%;border-radius:12px;background:#ffffff0d}.skeleton-bubble.right{align-self:flex-end}.skeleton-bubble.left{align-self:flex-start}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}body.dark .modal-overlay{background:#0f172ad9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}body.light .modal-overlay{background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.modal-content{border-radius:20px;padding:3rem 2rem;max-width:90%;width:450px;text-align:center;animation:slideUp .3s ease-out}body.dark .modal-content{background:var(--bg-primary-dark);border:1px solid var(--border-dark)}body.light .modal-content{background:var(--bg-primary-light);border:1px solid var(--border-light)}.waiting-modal{display:flex;flex-direction:column;align-items:center;gap:1.5rem}.waiting-animation{position:relative;width:80px;height:80px;margin-bottom:1rem}.spinner-ring{position:absolute;width:100%;height:100%;border:3px solid transparent;border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.spinner-ring:nth-child(2){width:70%;height:70%;top:15%;left:15%;border-top-color:var(--accent-secondary);animation-duration:1.2s;animation-delay:.2s}.spinner-ring:nth-child(3){width:40%;height:40%;top:30%;left:30%;border-top-color:var(--accent-primary);animation-duration:1s;animation-delay:.4s}.waiting-modal h2{font-size:1.5rem;font-weight:700;margin:0}body.dark .waiting-modal h2{color:var(--text-primary-dark)}body.light .waiting-modal h2{color:var(--text-primary-light)}.waiting-modal p{font-size:1rem;margin:0}body.dark .waiting-modal p{color:var(--text-secondary-dark)}body.light .waiting-modal p{color:var(--text-secondary-light)}@media (max-width: 480px){.modal-content{width:calc(100% - 2rem);padding:2rem 1.5rem}.waiting-modal h2{font-size:1.25rem}.waiting-modal p{font-size:.9rem}}.auth-modal{max-width:450px;padding:2.5rem;text-align:left}.modal-close{position:absolute;top:1.5rem;right:1.5rem;width:36px;height:36px;border:none;background:transparent;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}body.dark .modal-close{color:var(--text-secondary-dark)}body.light .modal-close{color:var(--text-secondary-light)}body.dark .modal-close:hover{background:var(--bg-secondary-dark);color:var(--text-primary-dark)}body.light .modal-close:hover{background:var(--bg-secondary-light);color:var(--text-primary-light)}.auth-modal h2{font-size:1.75rem;font-weight:700;margin-bottom:.5rem}body.dark .auth-modal h2{color:var(--text-primary-dark)}body.light .auth-modal h2{color:var(--text-primary-light)}.modal-subtitle{font-size:.95rem;margin-bottom:2rem}body.dark .modal-subtitle{color:var(--text-secondary-dark)}body.light .modal-subtitle{color:var(--text-secondary-light)}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:600}body.dark .form-group label{color:var(--text-primary-dark)}body.light .form-group label{color:var(--text-primary-light)}.form-group input{padding:.85rem 1rem;border-radius:10px;border:2px solid transparent;font-size:.95rem;outline:none;transition:all .2s}body.dark .form-group input{background:var(--bg-secondary-dark);color:var(--text-primary-dark);border-color:var(--border-dark)}body.light .form-group input{background:var(--bg-secondary-light);color:var(--text-primary-light);border-color:var(--border-light)}.form-group input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.validation-status{font-size:.85rem;font-weight:500;margin-top:-.25rem;min-height:1.2rem;display:block}.validation-status.success{color:#10b981}.validation-status.error{color:#ef4444}body.dark .validation-status.success{color:#34d399}body.dark .validation-status.error{color:#f87171}.btn-show-password{padding:.7rem 1rem;border:2px solid transparent;background:transparent;font-size:.9rem;font-weight:600;cursor:pointer;border-radius:8px;transition:all .2s;text-align:center}body.dark .btn-show-password{color:var(--text-secondary-dark);border-color:var(--border-dark)}body.light .btn-show-password{color:var(--text-secondary-light);border-color:var(--border-light)}body.dark .btn-show-password:hover{background:var(--bg-secondary-dark);color:var(--text-primary-dark);border-color:var(--accent-primary)}body.light .btn-show-password:hover{background:var(--bg-secondary-light);color:var(--text-primary-light);border-color:var(--accent-primary)}.error-message{padding:.75rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500}body.dark .error-message{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}body.light .error-message{background:#ef44440d;color:#dc2626;border:1px solid rgba(239,68,68,.1)}.btn-submit{padding:.9rem 1.5rem;border:none;background:var(--accent-primary);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;border-radius:10px;transition:all .2s;margin-top:.5rem}.btn-submit:hover:not(:disabled){background:var(--accent-hover);transform:translateY(-1px);box-shadow:0 8px 20px #8b5cf64d}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.form-footer{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;font-size:.9rem}.text-muted{color:var(--text-secondary-dark)}.link{color:var(--accent-primary);text-decoration:none;font-weight:600;transition:color .2s}.link:hover{color:var(--accent-hover)}.recovery-code-display{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.success-icon{margin-bottom:.5rem}.recovery-code-box{width:100%;padding:1.5rem;border-radius:12px;border:2px dashed var(--accent-primary)}body.dark .recovery-code-box{background:#8b5cf60d}body.light .recovery-code-box{background:#8b5cf605}.recovery-code-box code{font-size:1.25rem;font-weight:700;letter-spacing:2px;color:var(--accent-primary);font-family:Courier New,monospace;word-break:break-all}.recovery-note{font-size:.9rem;text-align:center;max-width:350px}body.dark .recovery-note{color:var(--text-secondary-dark)}body.light .recovery-note{color:var(--text-secondary-light)}@media (max-width: 480px){.auth-modal{width:calc(100% - 2rem);padding:2rem 1.5rem}.auth-modal h2{font-size:1.5rem}.modal-close{top:1rem;right:1rem}.recovery-code-box code{font-size:1.1rem;letter-spacing:1px}}.app{height:100%;width:100%;display:flex;flex-direction:column}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .3s ease-in-out}.slide-up{animation:slideUp .4s ease-out}:root{--bg-primary-light: #ffffff;--bg-secondary-light: #f5f5f7;--text-primary-light: #1d1d1f;--text-secondary-light: #86868b;--accent-primary: #8b5cf6;--accent-secondary: #a78bfa;--accent-hover: #7c3aed;--border-light: #d2d2d7;--message-sent-light: #8b5cf6;--message-received-light: #f5f5f7;--bg-primary-dark: #1a1d2e;--bg-secondary-dark: #16213e;--bg-tertiary-dark: #0f172a;--text-primary-dark: #ffffff;--text-secondary-dark: #94a3b8;--border-dark: #334155;--message-sent-dark: #8b5cf6;--message-received-dark: #1e293b}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;overflow-x:hidden;-webkit-overflow-scrolling:touch}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}body.light{background-color:var(--bg-secondary-light);color:var(--text-primary-light)}body.dark{background-color:var(--bg-tertiary-dark);color:var(--text-primary-dark)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}body.light ::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:4px}body.dark ::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary-light);-webkit-box-shadow:0 0 0px 1000px var(--bg-primary-light) inset;transition:background-color 5000s ease-in-out 0s}body.dark input:-webkit-autofill,body.dark input:-webkit-autofill:hover,body.dark input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary-dark);-webkit-box-shadow:0 0 0px 1000px var(--bg-secondary-dark) inset}
