@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");:root{--bg-primary:#ffffff;--bg-secondary:#f8fafc;--text-primary:#111111;--text-secondary:#666666;--text-muted:#999999;--border-color:#e0e0e0;--card-bg:#ffffff;--input-bg:#ffffff;--space-xs:6px;--space-sm:12px;--space-md:16px;--space-lg:20px;--space-xl:24px;--space-2xl:32px;--space-3xl:40px;--space-4xl:48px;--space-5xl:64px;--card-padding:var(--space-xl);--section-gap:var(--space-3xl);--card-gap:var(--space-4xl)}@media (min-width:768px){:root{--space-xs:8px;--space-sm:16px;--space-md:20px;--space-lg:24px;--space-xl:32px;--space-2xl:40px;--space-3xl:48px;--space-4xl:64px;--space-5xl:80px;--card-padding:var(--space-2xl);--section-gap:var(--space-4xl);--card-gap:var(--space-5xl)}}@media (min-width:1024px){:root{--space-xs:12px;--space-sm:20px;--space-md:24px;--space-lg:32px;--space-xl:40px;--space-2xl:48px;--space-3xl:64px;--space-4xl:80px;--space-5xl:96px;--card-padding:var(--space-3xl);--section-gap:var(--space-5xl);--card-gap:var(--space-5xl)}}*{box-sizing:border-box;padding:0;margin:0}body,html{max-width:100vw;overflow-x:hidden;font-family:Inter,Arial,Helvetica,sans-serif}body{color:var(--text-primary);background:var(--bg-primary);transition:background-color .3s ease,color .3s ease}a{color:inherit;text-decoration:none}input{font-family:inherit}.dark-input,.dark-input:active,.dark-input:focus,.dark-input:hover,input.dark-input,input.dark-input:active,input.dark-input:focus,input.dark-input:hover,input[type=text].dark-input,input[type=text].dark-input:active,input[type=text].dark-input:focus,input[type=text].dark-input:hover{background-color:#2d3748!important;background:#2d3748!important;color:#e2e8f0!important;box-shadow:none!important}.dark-input::placeholder,input.dark-input::placeholder,input[type=text].dark-input::placeholder{color:#a0aec0!important}input[type=email],input[type=password],input[type=search],input[type=text],textarea{border-radius:9999px!important;padding:12px 20px;transition:box-shadow .2s,border-color .2s,background .2s}input[type=email]:focus,input[type=password]:focus,input[type=search]:focus,input[type=text]:focus,textarea:focus{box-shadow:0 0 8px rgba(0,0,0,.1);background-color:#fff!important;border-color:var(--accent-primary)!important}input:-webkit-autofill,input:-webkit-autofill:active,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-box-shadow:inset 0 0 0 30px white!important;-webkit-text-fill-color:#111!important;background-color:#fff!important;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.container{position:relative;min-height:100vh;font-family:Inter,Arial,Helvetica,sans-serif}.container,.header{align-items:center;justify-content:flex-start;width:100%}.header{height:72px;display:flex;padding:0 24px;background-color:var(--bg-primary);color:var(--text-primary);position:fixed;top:0;left:0;z-index:1000;transition:background-color .3s ease,color .3s ease}.logoContainer{height:48px;display:flex;justify-content:flex-start;align-items:flex-start}.logoImage{width:160px;height:48px;object-fit:contain}.main{align-items:flex-start;padding-top:72px;padding-bottom:48px;min-height:calc(100vh - 120px)}.formWrapper,.main{display:flex;justify-content:center;width:100%}.formWrapper{max-width:400px;background-color:#fff;color:#111;border-radius:16px;padding:32px;flex-direction:column;align-items:center;margin-top:0}.headline{font-size:28px;font-weight:700;color:#111;margin:0 0 8px}.headline,.subheadline{text-align:center;font-family:Inter,Arial,Helvetica,sans-serif}.subheadline{font-size:16px;color:#555;margin:0 0 64px}.sidebar-icon-btn{padding:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:none;border:none;transition:all .2s ease;cursor:pointer;margin-bottom:8px;position:relative;overflow:visible;min-width:48px}.sidebar-icon-btn.selected,.sidebar-icon-btn:focus,.sidebar-icon-btn:hover{background:var(--accent-primary-light)}.sidebar-icon-btn img{transition:filter .2s;flex-shrink:0;margin-right:0}.sidebar-label{color:var(--text-secondary);font-size:14px;font-weight:500;white-space:nowrap;opacity:0;animation:fadeInLabel .2s ease forwards;margin-left:8px}.sidebar-icon-btn.selected .sidebar-label{color:var(--accent-primary)}@keyframes fadeInLabel{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.sidebar-fixed{position:fixed;top:72px;left:24px;height:calc(100vh - 72px);width:100px;background:var(--bg-primary);display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;z-index:20;overflow:visible;transition:background-color .3s ease}.main-with-sidebar{margin-left:124px;transition:margin-left .3s ease;padding-top:72px}@media (max-width:768px){.sidebar-fixed{display:none!important}.main-with-sidebar{margin-left:0!important;padding:80px 16px 16px!important}input[type=email],input[type=password],input[type=search],input[type=text],textarea{font-size:16px!important;padding:16px 20px!important;border-radius:12px!important}button{min-height:44px;min-width:44px;padding:12px 20px}.header{padding:0 16px!important;height:64px!important;justify-content:flex-end!important}.logoImage{width:120px!important;height:36px!important}.journal-container{padding-top:64px!important;padding-left:0!important;padding-right:0!important}}@media (max-width:480px){.formWrapper{padding:24px;margin:0 16px;border-radius:16px}.header{padding:0 12px!important}body{font-size:14px}h1,h2{font-size:24px}h3{font-size:18px}}.mobile-only{display:none}.desktop-only{display:block}@media (max-width:768px){.mobile-only{display:block}.desktop-only{display:none}}@media (hover:none) and (pointer:coarse){.sidebar-icon-btn:hover,button:hover{background-color:initial!important;transform:none!important}.sidebar-icon-btn:active,button:active{background-color:var(--accent-primary-light)!important;transform:scale(.98)}}@media (max-width:768px){.voice-recording-button{min-width:56px!important;min-height:56px!important;border-width:2px!important}.action-buttons{gap:16px!important}.action-buttons button{min-width:56px!important}.action-buttons button,.text-input-field textarea{min-height:56px!important;border-radius:16px!important}.text-input-field textarea{font-size:16px!important;padding:16px 20px!important;line-height:24px!important}.action-buttons button[aria-label*=Send]{width:56px!important;height:56px!important;padding:16px!important;justify-content:center!important}.action-buttons button[aria-label*=recording],.action-buttons button[aria-label*=voice]{width:56px!important;height:56px!important;border-width:2px!important}.action-buttons svg{stroke-width:2.5!important}.chat-container{height:calc(100vh - 200px)!important;border-radius:24px!important;max-width:100%!important;min-height:300px!important}.messages-area{padding:16px!important;gap:12px!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior:contain!important}.message-bubble{max-width:85%!important;padding:16px 20px!important;border-radius:24px!important;font-size:16px!important;line-height:1.5!important}.message-bubble-container{margin-bottom:12px!important;padding:0 4px!important}.generating-bubble{max-width:85%!important;padding:16px 20px!important;border-radius:24px!important;font-size:16px!important;line-height:1.5!important}.chat-container button[style*="Scroll to top"]{border-radius:24px!important;padding:12px 20px!important;font-size:14px!important;min-height:44px!important}.bottom-navigation{position:fixed!important;bottom:0!important;left:0!important;right:0!important;height:64px!important;background-color:var(--bg-primary)!important;border-top:1px solid var(--border-color)!important;z-index:1000!important;display:flex!important;align-items:center!important;justify-content:space-between!important;padding:4px 8px env(safe-area-inset-bottom,8px)!important;box-shadow:0 -2px 20px rgba(0,0,0,.1)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important}.mobile-layout{min-height:100vh!important;padding-bottom:64px!important}.mobile-layout>div{padding-bottom:calc(64px + env(safe-area-inset-bottom, 0px))!important}.hamburger-button,.mobile-navigation-panel{display:none!important}.voice-recording-button{width:64px!important;height:64px!important;min-width:64px!important;min-height:64px!important;padding:18px!important;border-radius:50%!important;border:3px solid var(--border-color)!important;box-shadow:0 6px 16px rgba(0,0,0,.3)!important;font-size:18px!important;font-weight:600!important}.toggle-switch{width:40px!important;height:24px!important;border-radius:10px!important;padding:2px!important}.toggle-switch .toggle-handle{width:16px!important;height:16px!important;border-radius:50%!important}.hands-free-toggle{gap:8px!important;font-size:12px!important}.hands-free-toggle>div:first-child{gap:4px!important;font-size:12px!important}.hands-free-toggle>div:last-child{gap:4px!important;font-size:10px!important}.hands-free-toggle-knob{background-color:#9aa0a6!important;background:#9aa0a6!important;opacity:1!important;top:50%!important;transform:translateY(-50%)!important}.action-buttons{gap:24px!important;padding:24px!important}.action-buttons button{min-width:64px!important;min-height:64px!important;padding:18px!important;font-weight:600!important}.action-buttons button,.text-input-field textarea{border-radius:24px!important;font-size:18px!important}.text-input-field textarea{min-height:80px!important;padding:24px!important;line-height:28px!important}#mobile-navigation{left:0!important;right:auto!important;transform:translateX(-100%)!important;transition:transform .3s ease!important;border-right:1px solid var(--border-color)!important;box-shadow:4px 0 20px rgba(0,0,0,.1)!important}#mobile-navigation.open{transform:translateX(0)!important}.mobile-backdrop{opacity:0!important;visibility:hidden!important;transition:all .3s ease!important}.mobile-backdrop.open{opacity:1!important;visibility:visible!important}body{-webkit-overflow-scrolling:touch;overflow-x:hidden}*{max-width:100%;box-sizing:border-box}}.action-buttons-container .custom-circle-button,.action-buttons-container button.custom-circle-button,button.custom-circle-button{width:36px!important;height:36px!important;min-width:36px!important;min-height:36px!important;max-width:36px!important;max-height:36px!important;border-radius:50%!important;padding:0!important;aspect-ratio:1/1!important;box-sizing:border-box!important}.action-buttons-container .custom-circle-button.highlighted-send,.action-buttons-container button.custom-circle-button.highlighted-send,.btn-secondary.custom-circle-button.highlighted-send,button.btn-secondary.custom-circle-button.highlighted-send,button.custom-circle-button.highlighted-send{background:var(--accent-primary)!important;background-color:var(--accent-primary)!important;background-image:none!important;color:white!important;border:1px solid var(--accent-primary)!important;border-color:var(--accent-primary)!important;position:relative!important;overflow:hidden!important;box-shadow:0 4px 8px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.1),inset 0 2px 4px rgba(255,255,255,.6),inset 0 -2px 4px rgba(0,0,0,.2)!important}.action-buttons-container .custom-circle-button.highlighted-send:before,.action-buttons-container button.custom-circle-button.highlighted-send:before,.btn-secondary.custom-circle-button.highlighted-send:before,button.btn-secondary.custom-circle-button.highlighted-send:before,button.custom-circle-button.highlighted-send:before{content:""!important;position:absolute!important;top:0!important;left:0!important;right:0!important;height:50%!important;background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,.2),rgba(255,255,255,0))!important;border-radius:50% 50% 0 0!important;z-index:1!important;pointer-events:none!important}.action-buttons-container .custom-circle-button.highlighted-send:hover,.action-buttons-container button.custom-circle-button.highlighted-send:hover,.btn-secondary.custom-circle-button.highlighted-send:hover,button.btn-secondary.custom-circle-button.highlighted-send:hover,button.custom-circle-button.highlighted-send:hover{background:var(--accent-primary-hover)!important;background-color:var(--accent-primary-hover)!important;background-image:none!important;border:1px solid var(--accent-primary-hover)!important;border-color:var(--accent-primary-hover)!important;transform:translateY(-1px)!important;box-shadow:0 6px 12px rgba(0,0,0,.25),0 3px 6px rgba(0,0,0,.15),inset 0 3px 6px rgba(255,255,255,.7),inset 0 -3px 6px rgba(0,0,0,.3)!important;transition:all .2s ease!important}.action-buttons-container .custom-circle-button.highlighted-send:hover:before,.action-buttons-container button.custom-circle-button.highlighted-send:hover:before,.btn-secondary.custom-circle-button.highlighted-send:hover:before,button.btn-secondary.custom-circle-button.highlighted-send:hover:before,button.custom-circle-button.highlighted-send:hover:before{background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,255,255,.4),rgba(255,255,255,.1))!important}.theme-input,input[type=text]{height:48px!important;font-size:.875rem!important;padding:6px 8px!important;line-height:1.4!important}[data-theme=dark] .text-input-area .theme-input,[data-theme=dark] .text-input-area input,[data-theme=dark] .text-input-area input[type=text],[data-theme=dark] .theme-input,[data-theme=dark] input[type=text]{background-color:var(--bg-secondary)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border-primary)!important}@media (max-width:768px){.theme-input,input[type=text]{height:44px!important;font-size:1rem!important;padding:5px 7px!important}[data-theme=dark] .text-input-area .theme-input,[data-theme=dark] .text-input-area input,[data-theme=dark] .text-input-area input[type=text],[data-theme=dark] .theme-input,[data-theme=dark] input[type=text]{background-color:var(--bg-secondary)!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border-primary)!important}}.text-input-area{padding:18px 8px!important;display:grid;grid-template-columns:1fr 72px;grid-column-gap:8px;column-gap:8px;align-items:center;width:100%;max-width:800px;background-color:var(--bg-primary);margin:0 auto}.text-input-area.with-end-session{grid-template-columns:36px 1fr 80px;margin:0 auto}.action-buttons-container{display:grid;grid-template-columns:36px 36px;grid-column-gap:4px;column-gap:4px;align-items:center;justify-self:center;padding:0 4px}@media (max-width:768px){.action-buttons-container{column-gap:4px;padding:0 3px}.text-input-area{padding:16px 7px!important;column-gap:6px}}