*{color:#000;font-family:Roboto,Open Sans,Helvitica Neue,sans-serif}body{margin:0;padding:0}.App{display:flex;height:100vh;width:100vw;font-family:Segoe UI,sans-serif;background-color:#fafafa;overflow:hidden}.loading-screen{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;width:100vw;background-color:#fff;color:#fff;font-family:Inter,sans-serif;position:fixed;top:0;left:0;z-index:9999}.loading-message{margin-top:20px;font-size:1.2em;font-weight:500;color:#fff}.dot-pulse-loader{display:flex;align-items:center;justify-content:center;height:40px}.dot-pulse-loader span{display:block;width:12px;height:12px;background-color:#ffd43b;border-radius:50%;margin:0 5px;opacity:0;animation:dotPulse 1.2s infinite ease-in-out}.dot-pulse-loader span:nth-child(1){animation-delay:0s}.dot-pulse-loader span:nth-child(2){animation-delay:.2s}.dot-pulse-loader span:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,to{opacity:0;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}.sidebar{width:280px;height:100vh;background-color:#f9f9f9;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;justify-content:space-between;padding:24px 16px;box-sizing:border-box;font-family:Segoe UI,sans-serif}.sidebar-header{margin-bottom:24px}.new-chat-button{background-color:#fff;border:1px solid #ddd;border-radius:12px;padding:12px 16px;font-size:16px;width:100%;display:flex;align-items:center;gap:12px;cursor:pointer;transition:background-color .2s ease;box-shadow:0 1px 3px #0000000d}.new-chat-button:hover{background-color:#f0f0f0}.edit-icon{margin-left:auto;color:#555}.chat-history{list-style:none;padding:0;margin:0;flex-grow:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.chat-history li{background-color:#fff;margin-bottom:12px;padding:10px 14px;border-radius:10px;font-size:15px;transition:background-color .2s ease;border:1px solid transparent;position:relative}.chat-history li:hover{background-color:#e8f0fe;border-color:#c2dbff}.thread-row{display:flex;justify-content:space-between;align-items:center}.thread-title{flex-grow:1;cursor:pointer;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.ellipsis-button{background:transparent;border:none;cursor:pointer;padding:4px;color:#555}.ellipsis-button:hover{color:#222}.dropdown-menu{position:absolute;right:10px;top:40px;background:#fff;border:1px solid #ccc;border-radius:8px;box-shadow:0 2px 6px #00000026;padding:6px 0;z-index:10;display:flex;flex-direction:column;min-width:100px}.dropdown-menu button{background:none;border:none;padding:8px 12px;text-align:left;font-size:14px;cursor:pointer}.dropdown-menu button:hover{background-color:#f5f5f5}.created-by{text-align:center;font-size:13px;color:#888;padding-top:20px;border-top:1px solid #ddd}.chat-history::-webkit-scrollbar{display:none}.chat{display:flex;flex-direction:column;gap:20px;width:70%;box-sizing:border-box;scroll-behavior:smooth;background-color:#fff;color:#000;scrollbar-width:thin;scrollbar-color:#ccc transparent;list-style:none;padding:0;margin:0;flex-grow:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.chat::-webkit-scrollbar{width:8px;display:none}.chat::-webkit-scrollbar-track{background:transparent}.chat::-webkit-scrollbar-thumb{background-color:#ccc;border-radius:4px;border:2px solid transparent;background-clip:content-box}.user-chat-box,.model-chat-box{display:flex;width:100%}.user-chat-box{justify-content:flex-end}.model-chat-box{justify-content:flex-start}.user-message,.model-message{max-width:80%;padding:14px 20px;border-radius:20px;font-size:16px;line-height:1.6;word-wrap:break-word;white-space:pre-wrap;overflow-wrap:break-word;box-shadow:0 2px 6px #0000001a;background-color:#fff;color:#000}.user-message{background-color:#ffd43b;color:#000;border-bottom-right-radius:4px;border-top-left-radius:20px}.model-message{background-color:#f1f0f0;color:#000;border-bottom-left-radius:4px;border-top-right-radius:20px}.model-message code{background-color:#eee;color:#d6336c;padding:2px 6px;border-radius:4px;font-family:Courier New,monospace;font-size:.9rem}.model-message pre{background-color:#f9f9f9;color:#000;padding:1rem;border-radius:8px;overflow-x:auto;font-family:Courier New,monospace;font-size:.95rem;margin:1rem 0;border:1px solid #ddd;white-space:pre-wrap;word-wrap:break-word}.model-message pre code{background:transparent;padding:0;color:#000}h1{text-align:center;font-size:1.5rem;margin-top:10px;color:#333}.message{padding:12px;border-radius:12px;max-width:90%;line-height:1.5;white-space:pre-wrap}.user{background-color:#e0f7fa;align-self:flex-end}.ai{background-color:#f1f1f1;align-self:flex-start}@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color: #ebebeb;--highlight-color: #f5f5f5;--animation-duration: 1.5s;--animation-direction: normal;--pseudo-element-display: block;background-color:var(--base-color);width:100%;border-radius:.25rem;display:inline-flex;line-height:1;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);position:absolute;top:0;left:0;right:0;height:100%;background-repeat:no-repeat;background-image:var( --custom-highlight-background, linear-gradient( 90deg, var(--base-color) 0%, var(--highlight-color) 50%, var(--base-color) 100% ) );transform:translate(-100%);animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite}@media (prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display: none}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}.chat-window{flex:1;display:flex;flex-direction:column;height:100vh;background-color:#fff;font-family:Segoe UI,sans-serif}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background-color:#f9f9f9;border-bottom:1px solid #e0e0e0;box-shadow:0 1px 3px #0000000d}.chat-title{font-size:20px;font-weight:600;color:#333}.user-auth-section{position:relative;font-family:Segoe UI,sans-serif;display:flex;align-items:center}.user-info{cursor:pointer;background-color:#fff;border:1px solid #ddd;border-radius:10px;padding:8px 12px;font-size:15px;font-weight:500;color:#333;display:flex;align-items:center;gap:8px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0000000d}.user-info:hover{background-color:#f0f0f0;border-color:silver}.user-info .fa-caret-down{font-size:.8em;color:#888}.auth-button{background-color:#ffd43b;color:#000;border:none;padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600;font-size:15px;transition:background-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 5px #0000001a}.auth-button:hover{background-color:#ffc800;box-shadow:0 3px 8px #00000026}.auth-button:active{background-color:#e6b800}.user-dropdown-menu{position:absolute;top:calc(100% + 10px);right:0;background-color:#fff;border:1px solid #e0e0e0;border-radius:10px;box-shadow:0 4px 10px #0000001a;padding:8px 0;z-index:10;min-width:150px;overflow:hidden}.user-dropdown-menu button{display:block;width:100%;padding:10px 15px;background:none;border:none;color:#333;text-align:left;cursor:pointer;font-size:15px;font-weight:400;transition:background-color .2s ease,color .2s ease}.user-dropdown-menu button:hover{background-color:#f0f0f0;color:#ffd43b}.welcome-message{text-align:center;color:#777;font-size:1.2rem;margin-top:80px;font-family:Segoe UI,sans-serif;line-height:1.5}.chat-content{flex-grow:1;overflow-y:auto;background-color:#fff;display:flex;flex-direction:column;align-items:center;scroll-behavior:smooth;padding:0;box-sizing:border-box}.chat-message-wrapper{width:100%;max-width:700px;padding:8px 16px;box-sizing:border-box}.chat-message-wrapper+.chat-message-wrapper{margin-top:8px}.chat-input-section{height:auto;min-height:80px;width:70%;max-width:700px;display:flex;align-items:center;padding:10px 16px;border-top:1px solid #e0e0e0;background-color:#fff;align-self:center;box-sizing:border-box;position:sticky;bottom:0;z-index:100}.chat-input{flex-grow:1;min-height:36px;max-height:120px;height:4rem;padding:10px 16px;font-size:16px;border-radius:20px;border:none;outline:none;resize:none;background-color:#e9e9e9;overflow-y:auto;line-height:1.4;align-self:center;color:#333;box-shadow:inset 0 1px 3px #0000000d;transition:box-shadow .2s ease}.chat-input:focus{border-color:transparent;box-shadow:0 0 0 2px #ffd43b,inset 0 1px 3px #0000000d}.send-button{position:relative;overflow:hidden;margin-left:12px;padding:12px 20px;font-size:16px;background-color:#ffd43b;color:#000;border:none;border-radius:3rem;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0000001a;-webkit-user-select:none;user-select:none;align-self:center}.send-button:hover{background-color:#ffc800;box-shadow:0 2px 6px #00000026}.send-button:active{background-color:#e6b800;box-shadow:inset 0 1px 3px #0003}.ripple{position:absolute;border-radius:50%;transform:scale(0);animation:ripple-animation .6s linear;opacity:.75;pointer-events:none}@keyframes ripple-animation{to{transform:scale(4);opacity:0}}.ai-response-skeleton-inline{width:95%;max-width:600px;margin:0 auto 10px;padding:8px 15px;border-radius:18px;background-color:#f1f0f0;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;align-self:flex-start;opacity:0;animation:fadeIn .3s forwards;box-shadow:0 2px 6px #0000000d}.ai-response-skeleton-inline .react-loading-skeleton{width:100%!important;line-height:1.2}.ai-response-skeleton-inline .skeleton-title{width:70%!important}.ai-response-skeleton-inline .skeleton-text-line{width:90%!important}.ai-response-skeleton-inline .skeleton-last-line{width:40%!important}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.start-new-chat-heading{text-align:center;font-size:1.8rem;margin-top:50px;color:#333;font-weight:600;opacity:.8;font-family:Segoe UI,sans-serif}.auth-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.auth-modal-content{background:#fff;padding:30px;border-radius:12px;box-shadow:0 5px 20px #00000026;width:90%;max-width:450px;position:relative;color:#333;font-family:Segoe UI,sans-serif;box-sizing:border-box}.auth-modal-close-btn{position:absolute;top:15px;right:15px;background:none;border:none;font-size:1.8rem;color:#888;cursor:pointer;transition:color .2s ease}.auth-modal-close-btn:hover{color:#555}.auth-modal-content h2{text-align:center;margin-bottom:25px;color:#333;font-size:1.8rem;font-weight:600}.auth-error{color:#e74c3c;text-align:center;margin-bottom:20px;font-weight:500;background-color:#ffebeb;border:1px solid #e74c3c;border-radius:8px;padding:10px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#555}.form-group input{width:100%;padding:12px 15px;border:1px solid #cccccc;border-radius:8px;background-color:#f8f8f8;color:#333;font-size:1rem;transition:border-color .2s ease,box-shadow .2s ease;box-sizing:border-box}.form-group input:focus{border-color:#ffd43b;box-shadow:0 0 0 3px #ffd43b66;outline:none}.auth-modal-content button[type=submit]{width:100%;padding:14px;background-color:#ffd43b;color:#000;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:background-color .2s ease,box-shadow .2s ease;box-shadow:0 2px 5px #0000001a}.auth-modal-content button[type=submit]:hover:not(:disabled){background-color:#ffc800;box-shadow:0 3px 8px #00000026}.auth-modal-content button[type=submit]:disabled{background-color:#ccc;cursor:not-allowed;box-shadow:none;color:#888}.toggle-mode{text-align:center;margin-top:25px;font-size:.95rem;color:#777}.toggle-mode span{color:#ffd43b;cursor:pointer;font-weight:600;transition:color .2s ease}.toggle-mode span:hover{color:#ffc800;text-decoration:underline}
