.login-container{width:321px;height:100%;min-width:260px;max-width:400px;background:#f5f5f5;padding:32px 18px 18px;box-sizing:border-box;border-right:1px solid #eee;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.login-container h2{margin-bottom:16px}.google-login{background:#f5f5f5;padding:10px 0;color:#222;border:1px solid #bbb;border-radius:8px;margin-bottom:8px;display:block;transition:background .2s,border .2s;width:100%;cursor:pointer}.google-login:hover{transform:scale(1.01);box-shadow:0 2px 12px #bbb8}.login-or{text-align:center;color:#888;margin:8px 0;font-size:1em}.login-form{width:100%;display:flex;flex-direction:column;gap:8px}.login-form input[type=email]{padding:10px 14px;border-radius:8px;border:1px solid #ddd;outline:none;background:#fff;font-size:1em}.login-form button[type=submit]{padding:10px 0;border-radius:8px;background:#bdd;color:#0a2a4a;border:none;font-size:1em;cursor:pointer}.login-form button[type=submit]:hover{transform:scale(1.01);box-shadow:0 2px 12px #bdd6}.login-message{min-height:32px;color:#000;font-size:1em}.doc-container{padding:24px;max-width:700px;margin:0 auto}.doc-close{margin-bottom:16px}.doc-scroll{background:#fff;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;word-break:break-word;overflow-wrap:anywhere;scrollbar-width:thin;scrollbar-color:#bbb #ffffff}.doc-scroll img,.doc-scroll video,.doc-scroll iframe{max-width:100%;height:auto}.doc-scroll pre{overflow-x:auto;background:#f8f8f8;padding:8px 10px;border-radius:6px}.doc-scroll code{word-break:normal;overflow-wrap:normal}.login-menu-btn{display:none;position:fixed;top:0;left:0;z-index:1;background:#fff;border:none;padding:12px;cursor:pointer;font-size:1.3em}@media screen and (max-width:768px){.login-menu-btn{display:block}.login-container{background:#fff;width:100%;min-width:unset;max-width:400px;margin:0 auto;border-right:none;height:100%;justify-content:center}.google-login{background:#fff}.doc-container{padding:0;margin-top:50px;box-sizing:border-box;width:100%;max-width:100%}.doc-close{position:absolute;top:0;right:0;z-index:1;padding:12px;background:#fff;border:none;display:flex;font-size:1.3em}.doc-scroll{padding:12px}}@media screen and (min-width:769px)and (max-width:1024px){.login-container{background:#fff;width:100%;min-width:unset;max-width:400px;margin:0 auto;border-right:none;height:100%;justify-content:center}.google-login{background:#fff}}body{font-family:OpenDyslexic,Inter,Segoe UI,Roboto,Arial,sans-serif;background:#fff;margin:0;display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.app-layout{display:flex;height:100vh;height:100dvh}.chat{flex:1;overflow-y:auto;width:50vw;margin:0 auto;padding:24px 16px 16px;display:flex;flex-direction:column;gap:12px;scrollbar-width:thin;scrollbar-color:#bbb #ffffff}.bubble{padding:12px 18px;border-radius:18px;font-size:1rem;line-height:1.5;word-break:break-word;margin-bottom:2px;position:relative;animation:fadein .2s}@keyframes fadein{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.user{background:#bdd;color:#0a2a4a;align-self:flex-end;border-bottom-right-radius:4px}.llm{color:#222;align-self:flex-start;border-bottom-left-radius:4px}.chat-form{display:flex;gap:8px;padding:16px;width:50vw;margin:0 auto}.chat-input{flex:1;font-size:1rem;padding:10px 14px;border-radius:100px;border:1px solid #ddd;outline:none;background:#fff;transition:border .2s;width:100%;box-sizing:border-box}.chat-input:focus{border:1.5px solid #555}.send-btn{background:none;color:#222;border:none;border-radius:50%;padding:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer;transition:background .2s}.send-btn:hover{background:#eee}.disclaimer{text-align:center;color:#888;font-size:.95em;margin:12px 0 8px}@media screen and (max-width:768px){.chat{box-sizing:border-box;width:100%;max-width:100%;padding:60px 16px 16px;margin:0}.chat-form{box-sizing:border-box;width:100%;max-width:100%;padding:0 16px;margin:0;gap:0}.disclaimer{font-size:.8em;margin:12px 0}.bubble{padding:10px 14px;font-size:.95rem;line-height:1.8}.llm.bubble{padding-left:0;padding-right:0}.chat-input{font-size:16px;padding:12px 14px}.send-btn{width:44px;height:44px;flex-shrink:0}}@media screen and (min-width:769px)and (max-width:1024px){.chat{box-sizing:border-box;width:100%;max-width:100%;padding:60px 32px 16px;margin:0}.chat-form{box-sizing:border-box;width:100%;max-width:100%;padding:0 32px;margin:0;gap:0}.disclaimer{font-size:1em;margin:24px 0}.bubble{padding:10px 14px;font-size:1.3rem;line-height:1.8}.llm.bubble{padding-left:0;padding-right:0}.chat-input{font-size:1.2rem;padding:12px 14px}.send-btn{width:44px;height:44px;flex-shrink:0}}@media screen and (min-width:1025px){.chat,.chat-form{width:50vw;max-width:800px}}@media screen and (min-width:1440px){.chat,.chat-form{width:45vw;max-width:900px}}@media(prefers-reduced-motion:reduce){.bubble{animation:none}}@media(prefers-contrast:high){.bubble,.chat-input{border:2px solid}}.sidebar-content-wrapper{width:300px;background:#f5f5f5;height:100%;padding:0;box-sizing:border-box;border-right:1px solid #eee;display:flex;flex-direction:column;justify-content:space-between}.sidebar-fixed-top{padding:24px 0;z-index:1}.sidebar-new-chat{display:flex;align-items:center;color:#222;text-decoration:none;font-size:1.1em;padding:8px 24px;border-radius:8px;margin-bottom:8px;transition:background .2s;gap:8px;cursor:pointer;background:none;border:none;width:100%}.sidebar-new-chat-icon{display:flex;align-items:center;justify-content:center}.sidebar-new-chat:hover{background:#d6d6d6}.sidebar-content{flex:1 1 auto;display:flex;flex-direction:column;gap:16px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#bbb #f5f5f5}.sidebar-chats-header{margin:16px 0 0;color:#444;padding-left:24px;font-size:1.05em}.sidebar-chat-link{display:block;color:#222;text-decoration:none;font-size:1em;padding:6px 24px;border-radius:6px;margin-top:4px;background:none;border:none;width:100%;text-align:left;cursor:pointer}.sidebar-chat-link:hover{background:#eee;color:#1565c0}.sidebar-user-account{padding:12px 24px 18px;color:#444;font-size:.98em;border-top:1px solid #eee;min-height:40px;transition:background .2s;cursor:pointer;display:flex;align-items:center;justify-content:center;text-align:center}.sidebar-user-account:hover{background:#e0e0e0}.sidebar-logout-btn{background:#f5f5f5;padding:12px 24px 18px;color:#444;border:none;border-top:1px solid #eee;margin-bottom:8px;display:block;transition:background .2s,border .2s;font-size:1em;cursor:pointer;z-index:1000}.sidebar-logout-btn:hover{background:#fff;transform:scale(1.01);box-shadow:0 2px 12px #d2d2d288}@media screen and (max-width:768px){.sidebar-content-wrapper{position:fixed;top:0;left:-300px;background:#fff;height:100%;z-index:1000;transition:left .3s ease;box-shadow:2px 0 10px #00000008}.sidebar-content-wrapper.sidebar-open{left:0}.sidebar-logout-btn{background:#fff}}@media screen and (min-width:769px)and (max-width:1024px){.sidebar-content-wrapper{position:fixed;top:0;left:-600px;background:#fff;width:450px;height:100%;z-index:1000;transition:left .3s ease;box-shadow:2px 0 10px #00000008}.sidebar-content-wrapper.sidebar-open{left:0}.sidebar-new-chat{font-size:1.5em}.sidebar-chats-header{font-size:1.35em}.sidebar-chat-link{font-size:1.4em}.sidebar-user-account{padding:24px;font-size:1.5em}.sidebar-logout-btn{background:#fff;padding:24px;font-size:1.5em}}@media screen and (min-width:1025px){.sidebar-content-wrapper{width:300px;position:relative}}@media(prefers-reduced-motion:reduce){.sidebar-content-wrapper{transition:none}}.main-content{flex:1;display:flex;flex-direction:column;min-width:0;height:100%;overflow:hidden}.mobile-menu-btn{display:none;position:fixed;top:0;left:0;z-index:1;background:#fff;border:none;cursor:pointer}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100vw;height:100%;background:#ffffff80;backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);z-index:999}.sidebar-overlay.active{display:block}.mobile-menu-content{padding:10px 14px;border:none;outline:none;background:#fff;font-size:1.4em}@media screen and (max-width:768px){.mobile-menu-btn{display:block}.mobile-menu-content{font-size:1.6em}}@media screen and (min-width:769px)and (max-width:1024px){.mobile-menu-btn{display:block}.mobile-menu-content{font-size:1.6em}}@media screen and (min-width:1025px){.mobile-menu-btn{display:none}}
