@import"https://fonts.googleapis.com/css2?family=Italiana&display=swap";.subscription-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1100;padding:15px}.subscription-modal{background:#fff;border-radius:12px;padding:32px;width:90%;max-width:1000px;max-height:90vh;overflow-y:auto;position:relative;z-index:1101;box-shadow:0 10px 25px #0003;margin:auto}.subscription-modal h2{text-align:center;margin-bottom:24px;color:#333;font-size:24px}.early-access{text-align:center;color:#6b8c99;font-size:16px;margin-bottom:24px}.plans-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;padding:16px}.plan-card{background:#f8f9fa;border-radius:12px;padding:24px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .2s;border:1px solid #e0e0e0}.plan-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001a}.plan-card .plan-name{color:#333;margin:0 0 16px;font-size:24px}.plan-card .price{font-size:32px;font-weight:700;color:#6b8c99;margin-bottom:8px}.plan-card .tokens{color:#666;font-size:16px;margin-bottom:16px;font-weight:500}.plan-card .description{color:#666;font-size:14px;margin-bottom:20px;font-style:italic;line-height:1.4}.plan-card .features-list{list-style:none;padding:0;margin:0 0 24px;text-align:left;width:100%}.plan-card .features-list li{margin:12px 0;padding:8px 0;color:#444;font-size:14px;border-bottom:1px solid #eee;display:flex;align-items:center;line-height:1.4}.plan-card .features-list li:last-child{border-bottom:none}.select-plan-button{background-color:#1a1a1a;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;width:100%;text-transform:uppercase;letter-spacing:.5px}.select-plan-button:hover{background-color:#6b8c99;transform:translateY(-2px)}@media (max-width: 768px){.subscription-modal{width:100%;padding:20px 16px;max-height:85vh;overflow-y:auto;-webkit-overflow-scrolling:touch}.plans-container{grid-template-columns:1fr;gap:16px;padding:8px 8px 20px}.plan-card{padding:16px;margin-bottom:0;height:auto;min-height:unset;display:flex;flex-direction:column}.plan-card .plan-name{font-size:20px;margin-bottom:12px}.plan-card .price{font-size:28px}.plan-card .features-list li{padding:6px 0;margin:8px 0}.subscription-modal h2{margin-top:0;margin-bottom:16px;font-size:22px}.close-button{top:10px;right:10px}.select-plan-button{margin-top:auto;padding:12px 0;font-size:14px}.subscription-modal:after{content:"";position:absolute;bottom:0;left:0;right:0;height:30px;background:linear-gradient(to top,#fff,#fff0);pointer-events:none;z-index:2;border-bottom-left-radius:12px;border-bottom-right-radius:12px}}@media (max-width: 320px){.subscription-modal{padding:16px 12px}.subscription-modal h2{font-size:20px}}.user-profile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:1000}.user-profile-panel{background:#fff;border-radius:12px;padding:32px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;position:relative}.close-button{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;cursor:pointer;color:#666;padding:4px 8px;border-radius:4px}.close-button:hover{background-color:#0000001a}.profile-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.profile-header h2{margin:0;color:#333;font-size:24px}.subscription-badge{background:#6b8c99;color:#fff;padding:4px 12px;border-radius:16px;font-size:14px;font-weight:500}.profile-section{margin-bottom:32px}.profile-section h3{color:#333;margin:0 0 16px;font-size:18px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:8px;color:#666;font-size:14px}.form-group input{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px}.form-group input:focus{outline:none;border-color:#6b8c99}.error-message{color:#dc3545;font-size:14px;margin-bottom:16px}.button-group{display:flex;gap:12px}.create-button,.cancel-button,.create-room-button{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.create-button{background:#1a1a1a;color:#fff;border:none}.create-button:hover{background:#333}.cancel-button{background:none;border:1px solid #ddd;color:#666}.cancel-button:hover{background:#f8f9fa}.create-room-button{background:#1a1a1a;color:#fff;border:none;width:100%}.create-room-button:hover{background:#333}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #eee}.detail-item:last-child{border-bottom:none}.detail-item .label{color:#666;font-size:14px}.detail-item .value{color:#333;font-size:14px;font-weight:500}.change-password-button{background:#28a745;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;margin-top:8px}.change-password-button:hover{background:#218838}.change-password-button:disabled{background:#6c757d;cursor:not-allowed}.logout-button{background:#dc3545;color:#fff;border:none;border-radius:6px;padding:10px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;margin-top:8px}.logout-button:hover{background:#c82333}.cancel-subscription-button{background:#dc3545;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;margin-top:8px}.cancel-subscription-button:hover{background:#c82333}.keep-subscription-button{background:#6c757d;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;width:100%;margin-top:8px}.keep-subscription-button:hover{background:#5a6268}.cancel-subscription-confirmation{background:#f8f9fa;border-radius:6px;padding:16px;margin-top:8px}.cancel-subscription-confirmation p{margin:0 0 12px;font-size:14px;color:#333}.subscription-panel{background:var(--rich-black);border-radius:6px;padding:0 12px;margin:0;color:var(--text-light);width:380px;height:24px;box-shadow:0 8px 32px #0003;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:nowrap;box-sizing:border-box}.user-info{display:flex;align-items:center;gap:8px;min-width:0;flex-shrink:1;overflow:hidden}.username{font-weight:500;font-size:.8em;font-family:Geneva,Verdana,sans-serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.tier-badge{background:#ffffff1a;padding:2px 8px;border-radius:4px;font-size:.7em;font-weight:500;min-width:40px;text-align:center;white-space:nowrap;flex-shrink:0}.token-display{font-size:.7em;font-weight:500;color:var(--text-light);opacity:.8;min-width:80px;text-align:center;white-space:nowrap;flex-shrink:0}.upgrade-button{height:18px;padding:0 12px;background:#ffffff1a;border:none;border-radius:4px;color:var(--text-light);font-weight:500;font-size:.7em;cursor:pointer;transition:all .2s;font-family:Geneva,Verdana,sans-serif;display:flex;align-items:center;justify-content:center;min-width:60px;white-space:nowrap;flex-shrink:0}@media (max-width: 480px){.subscription-panel{width:100%;max-width:380px;margin:0 auto;height:24px;z-index:10;padding:0 10px;gap:8px}.user-info{gap:6px}.username{font-size:.75em;max-width:80px}.tier-badge{font-size:.65em;padding:2px 6px;min-width:32px}.token-display{font-size:.65em;min-width:70px}.upgrade-button{font-size:.7em;padding:0 10px;min-width:60px;min-height:24px;height:24px;line-height:24px}}.upgrade-button:hover{background:var(--silver-lake)}.token-info,.early-access-badge,.pay-as-you-go{display:none}code[class*=language-],pre[class*=language-]{color:#ccc;background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#2d2d2d}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.comment,.token.block-comment,.token.prolog,.token.doctype,.token.cdata{color:#999}.token.punctuation{color:#ccc}.token.tag,.token.attr-name,.token.namespace,.token.deleted{color:#e2777a}.token.function-name{color:#6196cc}.token.boolean,.token.number,.token.function{color:#f08d49}.token.property,.token.class-name,.token.constant,.token.symbol{color:#f8c555}.token.selector,.token.important,.token.atrule,.token.keyword,.token.builtin{color:#cc99cd}.token.string,.token.char,.token.attr-value,.token.regex,.token.variable{color:#7ec699}.token.operator,.token.entity,.token.url{color:#67cdcc}.token.important,.token.bold{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}.token.inserted{color:green}.code-block-container{background-color:var(--rich-black);border-radius:8px;margin:12px 0;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.code-block-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background-color:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.code-language{font-size:12px;color:var(--silver-lake);text-transform:uppercase;letter-spacing:.5px}.code-actions{display:flex;gap:8px}.code-action-button{background:none;border:none;color:var(--text-light);cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s;font-size:14px}.code-action-button:hover{background-color:#ffffff1a}pre[class*=language-]{margin:0;padding:16px;background-color:var(--rich-black);font-family:Fira Code,monospace;font-size:14px;line-height:1.5;-moz-tab-size:2;tab-size:2}code[class*=language-]{font-family:Fira Code,monospace;font-size:14px;line-height:1.5;-moz-tab-size:2;tab-size:2}pre[class*=language-]::-webkit-scrollbar{height:8px;background-color:#ffffff0d}pre[class*=language-]::-webkit-scrollbar-thumb{background-color:#ffffff1a;border-radius:4px}pre[class*=language-]::-webkit-scrollbar-thumb:hover{background-color:#fff3}.message{padding:12px;border-radius:8px;margin-bottom:12px;background-color:var(--rich-black);align-self:flex-start;max-width:80%;box-shadow:0 2px 4px #0000001a;outline:1px solid rgba(255,255,255,.1);display:block;width:auto}.message.user{background-color:#4b626be6;align-self:flex-end}.message.thought-mode{background-color:#3e5159e6;border-left:3px solid #9b59b6}.message.user.thought-mode{background-color:#3e5159e6}.message.bot.thought-mode{background-color:#1e2632e6}.message.bot{background-color:#0f1218e6;align-self:flex-start;border-left:3px solid #3498db;max-width:85%}.message.system{background-color:#64646499;align-self:center;max-width:90%;font-style:italic;text-align:center;padding:8px 16px}.message.user .message-content,.message.bot .message-content{color:#fffffff2}.message.system .message-content{color:#ffffffe6}.message.user .message-time,.message.bot .message-time,.message.system .message-time{color:#ffffffb3}.message-header{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:8px}.message-sender{font-weight:500;color:#fff}.message-time{font-size:12px;color:#ffffff80}.thought-indicator{font-size:12px;color:#fffffff2;background-color:#9b59b64d;padding:3px 8px;border-radius:4px;margin-left:8px;white-space:nowrap;font-weight:500}.message-content{line-height:1.5;overflow-wrap:break-word;color:#fffffff2}.text-content{font-family:inherit;margin:0;padding:0;background:none;color:inherit;white-space:normal;overflow-wrap:break-word;font-size:inherit;line-height:1.6}.text-paragraph{font-family:inherit;margin:0 0 .8em;padding:0;background:none;color:inherit;white-space:normal;overflow-wrap:break-word;font-size:inherit;line-height:1.6}.text-paragraph:last-child{margin-bottom:0}.text-paragraph strong,.text-paragraph b{font-weight:700}.text-paragraph em,.text-paragraph i{font-style:italic}.text-paragraph ul,.text-paragraph ol{margin-left:1.5em;margin-top:.5em;margin-bottom:.5em}.text-paragraph li{margin-bottom:.25em}pre.text-content{white-space:pre-wrap}.message.streaming .message-content{opacity:1;position:relative}.message.streaming .cursor{color:#3498db;font-weight:700;position:relative;top:2px}@keyframes blink{0%{opacity:0}50%{opacity:1}to{opacity:0}}.cursor{display:inline-block;margin-left:2px;animation:blink 1s infinite;color:var(--silver-lake);font-weight:700}:root{--rich-black: #0F1218;--silver-lake: #6B8C99;--eggshell: #F0EAD6;--text-light: #FFFFFF;--text-dark: #333333;--input-bg: rgba(255, 255, 255, .1);--error-red: #ff4444}html,body{margin:0;padding:0;height:100%;overflow:hidden}body{font-family:Geneva,Verdana,sans-serif;color:#333;display:flex;flex-direction:column;position:relative;background-color:#fff;min-height:100vh}#root{height:100%}.app-container{display:flex;flex-direction:column;height:100%;max-width:1200px;width:100%;margin:0 auto;padding:20px;position:relative;z-index:1;box-sizing:border-box}.auth-container{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:1;width:100%;max-width:340px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:12px;padding:28px;box-shadow:0 8px 32px #00000014}.auth-info{margin-bottom:20px;padding:12px;background:#6b8c991a;border-radius:8px;border:1px solid rgba(107,140,153,.2)}.auth-info p{color:#666;font-size:14px;margin:0;line-height:1.5}.loading{color:#666;font-size:15px;margin-top:16px}.chat-container{flex:1;background-color:#fff;border-radius:12px;box-shadow:0 8px 32px #0000001a;display:flex;flex-direction:column;overflow:hidden;margin-bottom:20px;border:1px solid #e0e0e0}.messages-container{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:16px;position:relative;min-height:200px;background-color:#ffffff05}.messages-container>div{visibility:visible!important;opacity:1!important;display:block!important}.input-container{display:flex;gap:10px;padding:15px;background-color:#f5f5f5;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #e0e0e0;align-items:center;flex-wrap:nowrap}.input-group{display:flex;gap:10px;flex:1}.input-field{flex:1;background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:12px 16px;color:#000;font-size:16px;font-family:Geneva,Verdana,sans-serif}.input-field:focus{outline:none;border-color:#6b8c99;background-color:#fff;box-shadow:0 0 0 2px #6b8c9933}.input-field::placeholder{color:#3339}.send-button{background-color:#6b8c99;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px}.send-button:hover:not(:disabled){background-color:#6b8c99;transform:translateY(-1px)}.send-button:disabled{opacity:.5;cursor:not-allowed}.header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px;padding:0 20px;position:relative;min-height:60px}.user-controls{display:flex;align-items:center;z-index:5}.profile-button{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:8px 12px;border-radius:8px;transition:background-color .2s}.profile-button:hover{background-color:#0000000d}.profile-avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.profile-name{font-size:14px;font-weight:500;color:#333}.logo-container{width:100%;display:flex;justify-content:center;align-items:center;margin-bottom:15px}.app-logo{width:140px;height:auto;display:block}.logo{width:80px;height:80px;display:block}.username-display{color:#1a1a1a;font-size:16px;font-weight:500;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .2s;margin-left:auto;z-index:1}.username-display:hover{background-color:#6b8c991a}.top-controls{display:flex;justify-content:space-between;align-items:center;margin:12px 20px;gap:20px;height:40px;flex-wrap:wrap}.app-header{display:flex;justify-content:space-between;align-items:center;margin:8px 20px 16px;gap:20px;flex-wrap:wrap;min-height:24px}.header-left{display:flex;align-items:center;gap:15px}.user-count{font-size:14px;padding:5px 10px;border-radius:20px;background-color:#6b8c991a;color:var(--rich-black);font-weight:500;display:flex;align-items:center;gap:5px;border:1px solid rgba(107,140,153,.2)}.user-section{display:flex;align-items:center;gap:12px}.mode-controls{display:flex;gap:10px;align-items:center;height:24px;flex-wrap:wrap}.mode-toggle-button{padding:0 16px;margin:0 4px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:var(--rich-black);color:var(--text-light);cursor:pointer;transition:all .2s;position:relative;height:24px;line-height:24px;font-size:14px;min-width:120px;font-weight:500;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 8px 32px #0003;box-sizing:border-box}.mode-toggle-button:hover{background-color:#3c3c3c;transform:translateY(-1px)}.mode-toggle-button.chat-active{background:var(--rich-black);border:1px solid var(--silver-lake);box-shadow:0 0 0 1px var(--silver-lake)}.mode-toggle-button.thought-active{background:var(--rich-black);border:1px solid #8c6b99;box-shadow:0 0 0 1px #8c6b99;animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #8c6b9966}70%{box-shadow:0 0 0 5px #8c6b9900}to{box-shadow:0 0 #8c6b9900}}@media (max-width: 480px){.top-controls{flex-direction:column;align-items:center;justify-content:center;height:auto;padding:10px 0;margin:12px 0;gap:12px}.app-header{flex-direction:column;height:auto;margin-bottom:30px;gap:12px}.mode-controls{width:100%;justify-content:center;gap:6px}.mode-button{padding:0 8px;font-size:11px;gap:3px;height:24px;line-height:24px}.chat-container{max-height:calc(100vh - 240px);margin-top:10px}.app-container{padding:16px 10px}.subscription-panel{margin-top:8px;margin-bottom:5px;width:100%;height:24px}.input-container{padding:10px;gap:5px}.input-group{gap:5px}.input-field{padding:8px 10px;font-size:16px}.send-button{padding:8px 12px;font-size:14px;min-width:60px}.download-button{width:34px;height:34px;min-width:34px;font-size:18px;flex-shrink:0}.mode-toggle-button{width:100%;margin-bottom:5px}.header-left{width:100%;flex-direction:column;align-items:center;gap:10px}.user-count{margin-bottom:5px}}@media (max-width: 375px){.input-container{padding:6px 4px;gap:2px}.input-group{gap:2px}.input-field{padding:6px;font-size:16px}.send-button{padding:6px;font-size:12px;min-width:45px;letter-spacing:0;text-transform:none}.download-button{width:28px;height:28px;min-width:28px;font-size:14px}}@media (max-width: 360px){.input-container{padding:4px 3px;gap:2px}.input-field{padding:4px 5px}.send-button{padding:4px;min-width:40px}.download-button{width:26px;height:26px;min-width:26px;font-size:13px}}.subscription-modal-overlay{z-index:1000}.mode-button:hover:not(:disabled){background-color:#6b8c99;transform:translateY(-1px)}.mode-button.active{background-color:#6b8c99}.download-button{background-color:#1a1a1a;color:#fff;border:none;border-radius:8px;width:40px;height:40px;min-width:40px;font-size:20px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.download-button:hover:not(:disabled){background-color:#6b8c99;transform:translateY(-1px)}.error-message{color:#fff;font-size:13px;margin:6px 0;text-align:center;padding:10px;font-weight:600;background:#ff444426;border-radius:6px;border:1px solid rgba(255,68,68,.3)}.success-message{color:#333;font-size:13px;margin:6px 0;text-align:center;padding:10px;font-weight:600;background:#6b8c991a;border-radius:6px;border:1px solid rgba(107,140,153,.2)}.empty-chat-message{display:flex;justify-content:center;align-items:center;height:100%;width:100%;color:#777;font-size:16px;text-align:center;padding:2rem}.empty-chat-message p{max-width:400px;padding:1.5rem;border-radius:8px;background-color:#6b8c990d;border:1px dashed rgba(107,140,153,.2)}.scroll-to-bottom{position:absolute;bottom:20px;right:20px;background-color:#1a1a1a;color:#fff;border:none;border-radius:24px;padding:10px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #0003;z-index:10;display:flex;align-items:center;animation:fadeIn .3s ease-in-out}.scroll-to-bottom:hover{background-color:#333;transform:translateY(-2px);box-shadow:0 6px 16px #00000040}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-choice{display:flex;flex-direction:column;gap:16px;width:100%;position:relative;padding-top:200px;padding-bottom:20px}.auth-choice .logo{width:180px;height:auto;position:absolute;left:50%;transform:translate(-50%);top:0}.auth-choice h1{font-family:Italiana,serif;color:#1a1a1a;margin:0 0 24px;font-size:24px;font-weight:400;text-align:center}.choice-button{background:#1a1a1a;color:#fff;border:none;border-radius:8px;padding:14px;font-size:15px;font-weight:700;cursor:pointer;transition:all .2s;text-transform:uppercase;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;gap:8px}.choice-button:hover{background:#6b8c99;transform:translateY(-1px)}.choice-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.choice-divider{position:relative;text-align:center;margin:8px 0}.choice-divider span{background:#fff;padding:0 12px;color:#666;font-size:14px;font-weight:500;position:relative;z-index:1}.choice-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#e0e0e0;z-index:0}.google-button{background:#fff;color:#1a1a1a;border:1.5px solid #dadce0}.google-button:hover{background:#f8f8f8;border-color:silver}.reset-password-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000;animation:fadeIn .2s ease-out}.reset-password-modal{background-color:#fff;border-radius:12px;padding:24px;width:90%;max-width:420px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 30px #0003;position:relative;animation:slideIn .3s ease-out}.close-button{position:absolute;top:12px;right:12px;background:none;border:none;font-size:24px;line-height:1;cursor:pointer;color:#555;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.close-button:hover{background-color:#0000000d}.reset-password-modal h2{margin-top:0;margin-bottom:16px;font-size:24px;text-align:center;color:#333}.modal-description{margin-bottom:24px;color:#555;text-align:center;font-size:14px;line-height:1.5}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.form-group input{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#6b8c99;box-shadow:0 0 0 2px #6b8c9933}.message{padding:10px;border-radius:6px;margin-bottom:20px;font-size:14px}.message.error{background-color:#ff44441a;border:1px solid rgba(255,68,68,.3);color:#d32f2f}.message.success{background-color:#4caf501a;border:1px solid rgba(76,175,80,.3);color:#388e3c}.password-requirements{margin-bottom:24px;font-size:13px;background-color:#f8f8f8;border-radius:6px;padding:12px;border:1px solid #eee}.password-requirements p{margin-top:0;margin-bottom:8px;font-weight:500;color:#555}.password-requirements ul{margin:0;padding-left:20px}.password-requirements li{margin-bottom:4px;color:#777;list-style-type:"❌ "}.password-requirements li.met{color:#388e3c;list-style-type:"✅ "}.action-button{width:100%;padding:12px;border:none;border-radius:6px;background-color:#6b8c99;color:#fff;font-weight:500;cursor:pointer;font-size:14px;transition:background-color .2s,transform .1s;display:flex;align-items:center;justify-content:center}.action-button:hover:not(:disabled){background-color:#5a7a86;transform:translateY(-1px)}.action-button:disabled{opacity:.7;cursor:not-allowed}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite;margin-right:8px}.success-container{display:flex;flex-direction:column;align-items:center;gap:20px;padding:16px 0}.success-message{text-align:center;padding:16px;background-color:#4caf501a;border-radius:6px;font-size:14px;color:#388e3c;line-height:1.5}.back-to-login{max-width:200px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 480px){.reset-password-modal{width:95%;padding:20px;max-height:85vh}.reset-password-modal h2{font-size:22px}.close-button{top:10px;right:10px}.password-requirements{font-size:12px;padding:10px}}:root{font-family:Geneva,Verdana,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;display:flex;min-width:320px;min-height:100vh;background-color:#fff}#root{width:100%;height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0000001a;border-radius:4px}::-webkit-scrollbar-thumb{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0000004d}::selection{background:#0000001a;color:#333}::placeholder{color:#00000080;opacity:1}:focus{outline:none}:focus-visible{outline:2px solid rgba(0,0,0,.2);outline-offset:2px}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:0;color:inherit}input{font-family:inherit;border:none;background:none;color:inherit}a{color:inherit;text-decoration:none}
