*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}ul[role=list],ol[role=list]{list-style:none}html:focus-within{scroll-behavior:smooth}a:not([class]){-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto}img,picture,svg,video,canvas{vertical-align:middle;background-repeat:no-repeat;background-size:cover;max-width:100%;height:auto;font-style:italic}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{transition:none;scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body,html{scroll-behavior:smooth;height:100%}.chat-index,.chat-index .chat-listing{gap:var(--spacing-md);flex-direction:column;display:flex}.chat-index .chat-listing .item{border:1px solid var(--text-color);background-color:var(--slate-background-color);box-shadow:var(--box-shadow);border-radius:5px;justify-content:space-between;align-items:center;display:flex}.chat-index .chat-listing .item .text{padding:var(--spacing-md);color:var(--text-color);flex:1;align-self:stretch;align-items:center;display:flex}.chat-index .chat-listing .item .wait-delete-button-container{padding:var(--spacing-md)}.chat-thread-container{gap:var(--spacing-md);flex-direction:column;height:calc(100dvh - 225px);display:flex;overflow-y:auto}.chat-thread-container .suggest-container{margin:var(--spacing-lg) 0;flex-flow:column wrap;gap:10px;display:flex}.chat-thread-container button.apply-suggestion{text-align:left;color:var(--text-color);border-color:var(--text-secondary-color);opacity:.8;background:0 0;font-weight:400}.chat-thread-container .initial-upload{align-items:center;gap:var(--spacing-md);margin:var(--spacing-lg) 0;text-align:center;color:var(--text-color);flex-direction:column;display:flex}.chat-thread-container .send-message-container{bottom:calc(var(--spacing-md) + 20px);padding:0 var(--spacing-md);gap:var(--spacing-sm);align-items:center;display:flex;position:fixed;left:0;right:0}.chat-thread-container .send-message-container.with-messages textarea{height:40px}.chat-thread-container .send-message-container.with-messages button.send{padding:var(--spacing-sm)}.chat-thread-container .send-message-container.with-messages button.upload{padding:var(--spacing-sm);display:block}.chat-thread-container .send-message-container button.upload{display:none}.chat-thread-container .send-message-container textarea{width:100%;height:74px;padding:var(--spacing-sm);border:1px solid var(--button-border-color);resize:vertical;border-radius:5px}.chat-thread-container .send-message-container button.send{background-color:var(--primary-color);color:var(--button-text-color);padding:var(--spacing-md) var(--spacing-lg);border:none}.chat-thread-container .send-message-container button.send:disabled{background-color:var(--button-border-color);cursor:not-allowed}.chat-thread-container #file-upload,.chat-thread-container #file-upload2{display:none}.chat-thread-container .messages-wrapper{gap:var(--spacing-sm);flex-direction:column;display:flex}.chat-thread-container .messages-wrapper .message{color:var(--text-color);padding:var(--spacing-sm);background-color:var(--slate-background-color);border-radius:5px}.chat-thread-container .messages-wrapper .message p{white-space:pre-wrap;line-height:1.3em}.chat-thread-container .messages-wrapper .message.sender-user{border-right:1px solid var(--success-color);align-self:flex-end;max-width:90%}.chat-thread-container .messages-wrapper .message.sender-assistant{border-left:1px solid var(--success-color);align-self:flex-start;max-width:90%}.chat-thread-container .messages-wrapper .message.type-tool{text-align:center;color:var(--secondary-color);background:0 0;border:0}.chat-thread-container .messages-wrapper .message.type-tool p.last{animation:2.5s ease-in-out infinite softGlow}.chat-thread-container .messages-wrapper .options{gap:var(--spacing-sm);flex-direction:column;display:flex}.chat-thread-container .messages-wrapper .options button{max-width:90%;padding:var(--spacing-sm) var(--spacing-md);align-self:flex-end;font-weight:400;position:relative}.chat-thread-container .messages-wrapper .options button svg{color:var(--primary-color);position:absolute;top:50%;left:0;transform:translateY(-50%)translate(-150%)}@keyframes softGlow{0%,to{opacity:.65}50%{opacity:1;filter:brightness(1.2)}}.initial-splash p{color:var(--text-secondary-color);text-align:center;font-size:1.2em}.initial-splash ul{max-width:34rem;color:var(--text-color);margin:0 auto;padding-left:1.25rem}.initial-splash p.note{max-width:34rem;margin:var(--spacing-md) auto;font-size:.9em}.card{padding:var(--spacing-md);border:1px solid var(--link-color);align-items:center;gap:var(--spacing-sm);border-radius:5px;display:flex}.chat-thread-title-form{align-items:center;gap:var(--spacing-sm);display:flex}.chat-thread-title-form textarea{padding:var(--spacing-sm);flex:1;align-self:stretch}body.light-mode,body{--primary-color:#007bff;--secondary-color:#6c757d;--background-color:#fff;--input-background-color:#fff;--slate-background-color:#f8f9fa;--danger-color:#dc3545;--primary-color-hover:#0056b3;--secondary-color-hover:#5a6268;--primary-color-disabled:#b3d7ff;--text-color:#333;--button-text-color:#fff;--button-border-color:var(--primary-color);--success-color:#28a745;--link-color:#007bff;--link-hover-color:#0056b3;--font-family:"Roboto", sans-serif;--box-shadow:#3c40434d 0px 1px 2px 0px, #3c404326 0px 2px 6px 2px;--border-rotate-color:#141d1f}body.dark-mode{--primary-color:#007bff;--secondary-color:#6c757d;--background-color:#333;--input-background-color:#c7c7c7;--slate-background-color:#494949;--danger-color:#fa7374;--primary-color-hover:#0056b3;--secondary-color-hover:#5a6268;--primary-color-disabled:#b3d7ff;--text-color:#c7c7c7;--button-text-color:#fff;--button-border-color:black;--success-color:#64e681;--link-color:#007bff;--link-hover-color:#0056b3;--font-family:"Roboto", sans-serif;--box-shadow:#3c40434d 0px 1px 2px 0px, #3c404326 0px 2px 6px 2px;--border-rotate-color:#141d1f}@media (prefers-color-scheme:dark){body{--primary-color:#007bff;--secondary-color:#6c757d;--background-color:#333;--input-background-color:#c7c7c7;--slate-background-color:#494949;--danger-color:#fa7374;--primary-color-hover:#0056b3;--secondary-color-hover:#5a6268;--primary-color-disabled:#b3d7ff;--text-color:#c7c7c7;--button-text-color:#fff;--button-border-color:black;--success-color:#64e681;--link-color:#007bff;--link-hover-color:#0056b3;--font-family:"Roboto", sans-serif;--box-shadow:#3c40434d 0px 1px 2px 0px, #3c404326 0px 2px 6px 2px;--border-rotate-color:#141d1f}}html,body{height:100%}body{font-family:var(--font-family);color:var(--text-color);background-color:var(--background-color)}#root{flex-direction:column;min-height:100%;display:flex}#root .App{flex:1}:root{--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--transition-speed:.3s}h1{border-bottom:3px solid var(--secondary-color);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md)}h2{margin:var(--spacing-md)}h2.thinking{gap:var(--spacing-xs);display:flex}h2.thinking:after{content:"🧠";text-align:center;transition:all .35s;animation:2s ease-in-out infinite fade}.animate-fade{transition:opacity var(--transition-speed) ease-in-out}a{color:var(--link-color);text-decoration:none}a:hover{color:var(--link-hover-color)}a:visited{color:var(--link-color)}p.nlbr{padding-bottom:var(--spacing-md);line-height:120%}nav{padding-bottom:10px;overflow:hidden}nav .nav-wrapped{gap:var(--spacing-md);padding:0 var(--spacing-md);background-color:var(--background-color);align-items:center;display:flex;box-shadow:0 -5px 14px #0006}nav .nav-wrapped .main{color:var(--text-color);font-size:3rem;font-weight:700}nav .nav-wrapped .main.connected{color:var(--success-color)}nav .nav-wrapped .main.disconnected{color:#737373}nav .nav-wrapped .items-holder{gap:var(--spacing-md);flex:1;justify-content:space-around;display:flex}nav .nav-wrapped .items-holder .menu-item{color:var(--text-color);padding:var(--spacing-sm) var(--spacing-md)}nav .nav-wrapped .items-holder .menu-item.active{color:var(--primary-color);border-bottom:3px solid var(--primary-color)}.app-route{padding:var(--spacing-md)}.form-group{margin:var(--spacing-sm) 0;flex-direction:column;display:flex}.form-group.slate{background-color:var(--slate-background-color);padding:var(--spacing-md);box-shadow:var(--box-shadow);border-radius:5px}.form-group label{margin:var(--spacing-xs) 0}.form-group label input[type=file],.form-group label textarea{width:100%}.form-group .row-items{gap:var(--spacing-sm);align-items:center;display:flex}.form-group .row-items.reverse{flex-direction:row-reverse;justify-content:flex-end}.form-group .checkbox-label{gap:var(--spacing-xs);display:flex}.form-group textarea,.form-group select,.form-group input[type=text],.form-group input[type=number],.form-group input[type=time]{padding:var(--spacing-sm);margin-top:var(--spacing-xs);background-color:var(--input-background-color);border:1px solid #ccc;border-radius:5px;font-size:1rem}.form-group textarea:focus,.form-group select:focus,.form-group input[type=text]:focus,.form-group input[type=number]:focus,.form-group input[type=time]:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 .2rem #007bff40}.form-group input[type=checkbox]{width:1rem;height:1rem}.day-goals-hider{max-height:0;transition:all var(--transition-speed);overflow:hidden}.day-goals-hider.use-custom-goals{max-height:500px;transition:all var(--transition-speed)}input[type=file],.btn,button{border:1px solid var(--button-border-color);padding:var(--spacing-md) var(--spacing-lg);cursor:pointer;transition:background-color var(--transition-speed);border-radius:5px;font-weight:700}input[type=file].primary,.btn.primary,button.primary{background-color:var(--primary-color);color:var(--button-text-color)}input[type=file].primary:hover,.btn.primary:hover,button.primary:hover,input[type=file].primary:active,.btn.primary:active,button.primary:active{background-color:var(--primary-color-hover)}input[type=file].primary:disabled,.btn.primary:disabled,button.primary:disabled{background-color:var(--primary-color-disabled);cursor:not-allowed}input[type=file].primary.thinking,.btn.primary.thinking,button.primary.thinking{gap:var(--spacing-xs);display:flex}input[type=file].primary.thinking:after,.btn.primary.thinking:after,button.primary.thinking:after{content:"🧠";text-align:center;transition:all .35s;animation:2s ease-in-out infinite fade}input[type=file].primary.success,.btn.primary.success,button.primary.success{gap:var(--spacing-xs);display:flex}input[type=file].primary.success:after,.btn.primary.success:after,button.primary.success:after{content:"✅";text-align:center}input[type=file].danger,.btn.danger,button.danger{background-color:var(--danger-color);color:var(--button-text-color)}input[type=file].icon,.btn.icon,button.icon{justify-content:center;align-items:center;display:flex}.ReactModal__Overlay--after-open{z-index:1001}.ReactModal__Overlay--after-open .ReactModal__Content{box-shadow:var(--box-shadow);background-color:var(--background-color);padding:var(--spacing-md);min-width:90vw;max-height:90vh;position:fixed;inset:50% auto auto 50%;overflow:auto;transform:translate(-50%,-50%)}.ReactModal__Overlay--after-open .ReactModal__Content .actions{margin-top:var(--spacing-md);justify-content:space-between;display:flex}.calendar-today{margin:1rem auto;display:block}.react-calendar{margin:0 auto}.offline{background:var(--danger-color);color:#fff;width:100%;text-shadow:1px 1px 1px var(--text-color);text-align:center;padding:.5em;position:fixed;top:0;left:0}.upload-previews{margin-top:var(--spacing-md);gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.upload-previews .img-container{border:1px solid var(--button-border-color);border-radius:5px;width:150px;height:150px;position:relative;overflow:hidden}.upload-previews .img-container img{object-fit:cover;width:100%;height:100%}.upload-previews .img-container button.delete{opacity:.8;position:absolute;top:5px;right:5px}
