:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--bg-color: #f0f4f9;--chat-container-bg: #ffffff;--text-color: #000000;--text-color-light: #525252;--border-color: #e5e7eb;--user-message-bg: #f3f4f6;--model-message-bg: #f3f4f6;--suggestion-bg: #f3f4f6;--suggestion-border: #e5e7eb;--suggestion-hover-bg: #e5e7eb;--button-bg: #1f2937;--button-text-color: #ffffff;--input-bg: #ffffff;--input-focus-border: #a0a0a0;--gradient-start: #d2f7c4;--gradient-end: #a4f5a5;--shadow: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .05);--tooltip-bg: #1f2937;--tooltip-text-color: #ffffff;--accent-color: #3b82f6;--star-color: #f59e0b;--surface-ground-color: #f9fafb;--surface-color: #ffffff;--surface-border-color: #e5e7eb;--subtle-text-color: #6b7280}html.dark-mode{--bg-color: #171717;--chat-container-bg: #000000;--text-color: #e5e5e5;--text-color-light: #a0a0a0;--border-color: #333333;--user-message-bg: #262626;--model-message-bg: #262626;--suggestion-bg: #262626;--suggestion-border: #333333;--suggestion-hover-bg: #404040;--button-bg: #f9f9f9;--button-text-color: #000000;--input-bg: transparent;--input-focus-border: #6b7280;--gradient-start: #1a1a1a;--gradient-end: #101010;--shadow: none;--tooltip-bg: #f9f9f9;--tooltip-text-color: #1f2937;--accent-color: #60a5fa;--star-color: #facc15;--surface-ground-color: #111111;--surface-color: #171717;--surface-border-color: #262626;--subtle-text-color: #a0a0a0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--bg-color);color:var(--text-color);transition:background-color .3s ease,color .3s ease}body{font-family:var(--font-family);line-height:1.6;display:flex;flex-direction:column;align-items:center;min-height:100vh}#app-container{width:100%;max-width:768px;padding:5vh 1rem 1rem 1rem;position:relative}#chat-container{position:relative;background-color:var(--chat-container-bg);border-radius:1.5rem;box-shadow:var(--shadow);width:100%;height:85vh;display:flex;flex-direction:column;overflow:hidden;transition:background-color .3s ease;border:1px solid var(--border-color)}.scroll-down-indicator{position:absolute;bottom:-.5rem;left:50%;transform:translate(-50%);width:2rem;height:2rem;color:var(--text-color-light);animation:bounce 2s infinite;z-index:5;opacity:.7}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%)}40%{transform:translate(-50%,-10px)}60%{transform:translate(-50%,-5px)}}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;flex-shrink:0;border-bottom:1px solid var(--border-color);background-color:var(--chat-container-bg)}.logo{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:1rem;color:var(--text-color-light)}#welcome-screen{flex-grow:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:1.5rem 2rem;position:relative;overflow-y:auto}.gradient-orb{position:absolute;top:15%;left:50%;transform:translate(-50%);width:150px;height:150px;background:radial-gradient(circle,var(--gradient-start),var(--gradient-end));filter:blur(80px);border-radius:50%;z-index:1}html.dark-mode .gradient-orb{display:none}#welcome-screen h1{font-size:2.5rem;font-weight:700;margin-bottom:.5rem;z-index:2}#welcome-screen h2{font-size:2.5rem;font-weight:500;color:var(--text-color-light);margin-bottom:1rem;z-index:2}#daily-tip-card{background-color:var(--suggestion-bg);border:1px solid var(--border-color);padding:1rem;border-radius:.75rem;font-size:.875rem;color:var(--text-color);margin-bottom:2rem;width:100%;max-width:600px;z-index:2;text-align:left;line-height:1.5}#chat-messages{flex-grow:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.hidden{display:none!important}.message{max-width:80%;word-wrap:break-word;line-height:1.5}.user-message{background-color:var(--user-message-bg);align-self:flex-end;border-bottom-right-radius:.25rem;padding:.75rem 1rem;border-radius:1rem}.model-message{align-self:flex-start;display:flex;align-items:flex-start;gap:1rem}.message-and-feedback{display:flex;flex-direction:column;align-items:flex-start}.model-message .message-content{background-color:var(--model-message-bg);padding:.75rem 1rem;border-radius:1rem 1rem 1rem .25rem;line-height:1.5;word-wrap:break-word}.avatar{width:30px;height:30px;border-radius:50%;background-color:var(--suggestion-bg);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-color);border:1px solid var(--border-color)}.avatar svg{width:18px;height:18px}.error-message{color:#ef4444;text-align:center;background-color:color-mix(in srgb,#ef4444 10%,transparent);border:1px solid color-mix(in srgb,#ef4444 20%,transparent);padding:1rem;border-radius:.75rem;font-size:.875rem;line-height:1.5}.suggestion-chips{display:flex;gap:.5rem;padding:.5rem 1.5rem .75rem;overflow-x:auto;flex-shrink:0;scrollbar-width:none;-ms-overflow-style:none}.suggestion-chips::-webkit-scrollbar{display:none}.suggestion-chips button{padding:.5rem .875rem;border-radius:1rem;background-color:var(--suggestion-bg);color:var(--text-color);border:1px solid var(--suggestion-border);font-size:.8rem;font-family:inherit;font-weight:500;cursor:pointer;white-space:nowrap;transition:background-color .2s ease;flex-shrink:0}.suggestion-chips button:hover{background-color:var(--suggestion-hover-bg)}#chat-form{padding:0 1.5rem 1.5rem;background-color:var(--chat-container-bg);flex-shrink:0}.input-wrapper{position:relative;background-color:var(--input-bg);border:1px solid var(--border-color);border-radius:1.25rem;display:flex;align-items:flex-end;padding:.5rem .5rem .5rem 1rem;transition:border-color .2s ease,box-shadow .2s ease}.input-wrapper:focus-within{border-color:var(--input-focus-border)}#chat-input{flex-grow:1;background:transparent;border:none;color:var(--text-color);font-size:1rem;font-family:inherit;resize:none;line-height:1.5;max-height:200px;overflow-y:auto;padding:.25rem 0}#chat-input:focus{outline:none}html.dark-mode #chat-input::placeholder{color:var(--text-color-light)}#chat-form button[type=submit]{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.75rem;border:none;background-color:var(--button-bg);color:var(--button-text-color);cursor:pointer;transition:background-color .2s ease,transform .1s ease;flex-shrink:0}#chat-form button[type=submit]:disabled{background-color:#9ca3af;cursor:not-allowed}.input-hint{text-align:center;font-size:.75rem;color:var(--text-color-light);margin-top:.75rem}.input-hint button{background:none;border:none;color:var(--text-color-light);text-decoration:underline;cursor:pointer;padding:0;font-size:inherit;font-family:inherit}.feedback-actions{display:flex;gap:.25rem;margin-top:.5rem}.action-item{position:relative;display:flex;flex-direction:column;align-items:center}.feedback-btn{background:none;border:none;padding:.375rem;border-radius:.375rem;cursor:pointer;color:var(--text-color-light);transition:color .2s ease,background-color .2s ease;display:flex;align-items:center;justify-content:center}.feedback-btn:hover:not(:disabled){background-color:var(--suggestion-hover-bg);color:var(--text-color)}.feedback-btn:disabled{cursor:not-allowed;color:var(--text-color-light);opacity:.6}.feedback-btn.selected-up{color:#3b82f6}.feedback-btn.selected-down{color:#ef4444}.tooltip-text{position:absolute;bottom:calc(-100% - 12px);background-color:var(--tooltip-bg);color:var(--tooltip-text-color);padding:.25rem .6rem;border-radius:.375rem;font-size:.75rem;font-weight:500;white-space:nowrap;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease;pointer-events:none;z-index:10}.action-item:hover .tooltip-text{visibility:visible;opacity:1}#content-section{width:100%;background-color:var(--surface-ground-color);padding:6rem 1rem;color:var(--text-color)}.content-wrapper{max-width:900px;margin:0 auto}.content-header{text-align:center;margin-bottom:5rem}.content-header h1{font-size:2.5rem;font-weight:700;margin-bottom:.75rem}.content-header h2{font-size:1.25rem;font-weight:500;color:var(--subtle-text-color);margin-bottom:1.5rem;max-width:600px;margin-left:auto;margin-right:auto}.content-header p{font-size:1rem;color:var(--subtle-text-color);max-width:600px;margin-left:auto;margin-right:auto}.info-section{margin-bottom:6rem}.info-section h3{font-size:2rem;font-weight:600;margin-bottom:2.5rem;text-align:center}.info-section p{color:var(--subtle-text-color);font-size:1rem;line-height:1.7}.info-section a{color:var(--accent-color);text-decoration:none;font-weight:500}.info-section a:hover{text-decoration:underline}.cta-link{display:inline-block;margin-top:1.5rem;padding:.75rem 1.5rem;border-radius:.5rem;background-color:var(--button-bg);color:var(--button-text-color);font-weight:500;text-decoration:none;transition:background-color .2s ease,transform .2s ease}.cta-link:hover{transform:translateY(-2px);text-decoration:none}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.feature-card{background-color:var(--surface-color);border:1px solid var(--surface-border-color);padding:2rem;border-radius:1rem;text-align:left;transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000000a}html.dark-mode .feature-card:hover{box-shadow:0 10px 20px #0000001a}.feature-icon{width:48px;height:48px;border-radius:.75rem;background-color:var(--suggestion-bg);color:var(--accent-color);display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.feature-icon svg{width:24px;height:24px}.feature-card h4{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-color)}.feature-card p{font-size:.9rem;color:var(--subtle-text-color);text-align:left}.dual-layout{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.dual-layout.reverse{grid-template-columns:1fr 1fr}.dual-layout.reverse .dual-layout-text{order:2}.dual-layout.reverse .dual-layout-image{order:1}.dual-layout h3{text-align:left;font-size:1.75rem;margin-bottom:1rem}.dual-layout p{text-align:left;max-width:450px}.dual-layout-image img{width:100%;height:auto;border-radius:1rem;object-fit:cover;aspect-ratio:4/3}.testimonial-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.testimonial-card{background-color:var(--surface-color);border:1px solid var(--surface-border-color);padding:2rem;border-radius:1rem;transition:transform .2s ease,box-shadow .2s ease}.testimonial-card:hover{transform:translateY(-5px);box-shadow:0 10px 20px #0000000a}.stars{display:flex;gap:.25rem;color:var(--star-color);margin-bottom:1rem}.stars svg{width:16px;height:16px}.testimonial-card p{font-style:italic;color:var(--text-color);margin-bottom:1.5rem}.author{display:flex;align-items:center;gap:.75rem}.author img{width:40px;height:40px;border-radius:50%}.author span{font-weight:500;font-size:.875rem;color:var(--subtle-text-color)}.faq-container{max-width:768px;margin:0 auto}.faq-container details{background-color:var(--surface-color);border-bottom:1px solid var(--surface-border-color);margin-bottom:.5rem;padding:.5rem 0}.faq-container summary{font-weight:500;cursor:pointer;padding:1rem 2rem 1rem 0;list-style:none;position:relative;color:var(--text-color)}.faq-container summary::-webkit-details-marker{display:none}.faq-container summary:after{content:"+";position:absolute;right:.5rem;top:50%;transform:translateY(-50%);font-size:1.5rem;color:var(--subtle-text-color);transition:transform .2s ease}.faq-container details[open] summary:after{transform:translateY(-50%) rotate(45deg)}.faq-container details p{padding:0 0 1rem;color:var(--subtle-text-color);text-align:left}footer{width:100%;background-color:var(--surface-ground-color);border-top:1px solid var(--surface-border-color);padding:2rem 1rem;color:var(--subtle-text-color);font-size:.8rem}.footer-content{max-width:900px;margin:0 auto;text-align:center}.footer-links{margin-top:.5rem}.footer-links a{color:var(--subtle-text-color);text-decoration:underline;margin:0 .5rem;transition:color .2s}.footer-links a:hover{color:var(--text-color)}#disclaimer-modal,#feedback-modal{position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#0009;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;padding:1rem}.modal-content{background-color:var(--chat-container-bg);color:var(--text-color);padding:2rem;border:1px solid var(--border-color);border-radius:1rem;width:100%;max-width:500px;position:relative;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.close-btn{position:absolute;top:.75rem;right:.75rem;color:var(--text-color-light);background:none;border:none;cursor:pointer;padding:.25rem;border-radius:50%;display:flex;align-items:center;justify-content:center}.close-btn:hover{background-color:var(--suggestion-hover-bg)}.modal-content h3{margin-top:0;margin-bottom:1rem;font-size:1.25rem}.modal-content ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1rem}.modal-content li{font-size:.875rem;line-height:1.6;color:var(--text-color-light)}.modal-content li strong{color:var(--text-color)}#feedback-modal .modal-content{max-width:400px;padding:1.5rem;gap:.75rem}#feedback-modal h3{font-size:1.125rem;font-weight:600}#feedback-modal p{font-size:.875rem;color:var(--text-color-light)}.textarea-wrapper{position:relative;width:100%;margin-top:.5rem}#feedback-reason{width:100%;padding:.75rem .75rem 1.75rem;border-radius:.5rem;border:1px solid var(--border-color);background-color:var(--input-bg);color:var(--text-color);font-family:inherit;font-size:1rem;resize:vertical;min-height:80px}#feedback-reason:focus{outline:none;border-color:var(--input-focus-border)}.char-counter{position:absolute;bottom:.5rem;right:.75rem;font-size:.75rem;color:var(--text-color-light);pointer-events:none}.char-counter.error{color:#ef4444;font-weight:500}.modal-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.5rem}.modal-actions button{padding:.5rem 1rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:background-color .2s ease,transform .1s ease}.modal-actions button:active{transform:scale(.98)}.modal-actions .primary-btn{background-color:var(--button-bg);color:var(--button-text-color)}.modal-actions .primary-btn:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}html.dark-mode .modal-actions .primary-btn:disabled{background-color:#404040;color:#a0a0a0}.modal-actions .primary-btn.loading{pointer-events:none;color:transparent;display:flex;align-items:center;justify-content:center}.modal-actions .primary-btn.loading .spinner{width:1rem;height:1rem;border:2px solid color-mix(in srgb,var(--button-text-color) 30%,transparent);border-top-color:var(--button-text-color)}.modal-actions .secondary-btn{background-color:var(--suggestion-bg);color:var(--text-color);border:1px solid var(--suggestion-border)}.modal-actions .secondary-btn:hover{background-color:var(--suggestion-hover-bg)}.spinner{width:20px;height:20px;border:3px solid color-mix(in srgb,var(--text-color) 20%,transparent);border-top-color:var(--text-color);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-actions .primary-btn.loading .spinner{width:1rem;height:1rem;border-width:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.theme-switcher{position:relative}.theme-toggle-label{position:relative;cursor:pointer;display:flex;align-items:center;justify-content:center;width:44px;height:24px;background-color:var(--user-message-bg);border-radius:24px;transition:background-color .3s ease;border:1px solid var(--border-color);overflow:hidden}.theme-switcher input{display:none}.theme-toggle-label svg{color:var(--text-color-light);transition:opacity .3s ease,transform .3s ease;position:absolute;top:50%;left:50%}html:not(.dark-mode) .theme-toggle-label .sun{opacity:1;transform:translate(-50%,-50%) rotate(0)}html:not(.dark-mode) .theme-toggle-label .moon{opacity:0;transform:translate(-50%,-50%) rotate(-90deg)}html.dark-mode .theme-toggle-label .sun{opacity:0;transform:translate(-50%,-50%) rotate(90deg)}html.dark-mode .theme-toggle-label .moon{opacity:1;transform:translate(-50%,-50%) rotate(0)}.fade-in{opacity:0;transform:translateY(20px);animation:fadeInAnimation .6s ease-out forwards}@keyframes fadeInAnimation{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){body{padding-top:0}#app-container{padding:0;width:100%;height:100vh}#chat-container{height:100%;width:100%;max-width:100%;border-radius:0;border:none}#welcome-screen h1,#welcome-screen h2{font-size:1.75rem}.chat-header,#chat-form,.suggestion-chips{padding-left:1rem;padding-right:1rem}.scroll-down-indicator{bottom:1rem}#content-section{padding:4rem 1rem}.content-header h1{font-size:2rem}.content-header h2{font-size:1.125rem}.dual-layout,.dual-layout.reverse{grid-template-columns:1fr;gap:2rem}.dual-layout.reverse .dual-layout-text,.dual-layout.reverse .dual-layout-image{order:initial}.dual-layout-text,.dual-layout h3{text-align:center}.dual-layout p{text-align:center;margin:0 auto}}
