:root{--color-bg:#f8f6f2;--color-surface:#fff;--color-surface-elevated:#f5f3ef;--color-primary:#6b9e7a;--color-primary-hover:#5a8a69;--color-primary-light:#e8f2eb;--color-primary-shadow:rgba(107,158,122,.25);--color-user-bubble:#c8bfe8;--color-user-text:#2d2640;--color-ai-bubble:#d4ece0;--color-ai-text:#1d2e24;--color-text:#2a2a2a;--color-text-secondary:#6b7a72;--color-text-muted:#9eada5;--color-crisis:#c0524a;--color-crisis-bg:#f9eeee;--color-crisis-border:#ddb8b5;--color-success:#6b9e7a;--color-warning:#c49a4a;--color-border:#e0ddd8;--color-border-subtle:#ede9e4;--font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-size-xs:12px;--font-size-sm:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:22px;--line-height:1.6;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:9999px;--safe-area-top:env(safe-area-inset-top,0px);--safe-area-bottom:env(safe-area-inset-bottom,0px);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.45s;--easing-out:cubic-bezier(0,0,.2,1);--easing-in-out:cubic-bezier(.4,0,.6,1);--easing-breath:cubic-bezier(.45,.05,.55,.95);--shadow-btn-primary:0 2px 8px var(--color-primary-shadow);--shadow-btn-primary-hover:0 4px 14px var(--color-primary-shadow);--glass-bg:hsla(0,0%,100%,.72);--glass-border:hsla(0,0%,100%,.2);--glass-blur:16px;--glass-shadow:0 4px 24px rgba(0,0,0,.06);--glass-shadow-elevated:0 8px 32px rgba(0,0,0,.1);--bottom-nav-height:56px;--bottom-nav-bg:hsla(0,0%,100%,.85);--glass-user-bubble:rgba(200,191,232,.55);--glass-user-border:rgba(200,191,232,.3);--glass-ai-bubble:rgba(212,236,224,.55);--glass-ai-border:rgba(212,236,224,.3)}[data-theme=dark]{--color-bg:#131a16;--color-surface:#1c2620;--color-surface-elevated:#243029;--color-primary:#8dbf9c;--color-primary-hover:#9ecaad;--color-primary-light:#1e2e23;--color-primary-shadow:rgba(141,191,156,.2);--color-user-bubble:#6b5ea8;--color-user-text:#e8e3f7;--color-ai-bubble:#2a4035;--color-ai-text:#c8e8d4;--color-text:#e4ede8;--color-text-secondary:#8aa897;--color-text-muted:#5a7a6a;--color-crisis:#e07b73;--color-crisis-bg:#1f1614;--color-crisis-border:#5c3030;--color-border:#2e3d35;--color-border-subtle:#243029;--glass-bg:rgba(28,38,32,.72);--glass-border:hsla(0,0%,100%,.08);--glass-shadow:0 4px 24px rgba(0,0,0,.2);--glass-shadow-elevated:0 8px 32px rgba(0,0,0,.3);--bottom-nav-bg:rgba(19,26,22,.88);--glass-user-bubble:rgba(107,94,168,.45);--glass-user-border:rgba(107,94,168,.25);--glass-ai-bubble:rgba(42,64,53,.5);--glass-ai-border:rgba(42,64,53,.3)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:var(--font-size-base);-webkit-text-size-adjust:100%}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family);line-height:var(--line-height);min-height:100vh;min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}*{transition-duration:var(--duration-fast);transition-property:background-color,border-color,color;transition-timing-function:var(--easing-out)}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:var(--radius-full)}.safe-area-top{padding-top:var(--safe-area-top)}.safe-area-bottom{padding-bottom:var(--safe-area-bottom)}.btn{align-items:center;border:none;border-radius:var(--radius-full);cursor:pointer;display:inline-flex;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);gap:var(--spacing-sm);justify-content:center;line-height:1;padding:var(--spacing-sm) var(--spacing-lg);transition:background-color var(--duration-fast) var(--easing-out),transform var(--duration-fast) var(--easing-out),box-shadow var(--duration-fast) var(--easing-out),opacity var(--duration-fast) var(--easing-out);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.btn:active{transform:scale(.97)}.btn:disabled{cursor:not-allowed;opacity:.45;transform:none}.btn-primary{background:var(--color-primary);box-shadow:var(--shadow-btn-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);box-shadow:var(--shadow-btn-primary-hover)}.btn-secondary{background:transparent;border:1.5px solid var(--color-primary);color:var(--color-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-primary-light)}.btn-danger{background:transparent;border:1.5px solid var(--color-crisis);color:var(--color-crisis)}.btn-danger:hover:not(:disabled){background:var(--color-crisis-bg)}@keyframes breathe{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.breathing-dots{align-items:center;display:flex;gap:6px;justify-content:center;padding:var(--spacing-md)}.breathing-dot{animation:breathe var(--duration-slow) var(--easing-breath) infinite;background:var(--color-primary);border-radius:var(--radius-full);height:8px;opacity:.4;width:8px}.breathing-dot:first-child{animation-delay:0s}.breathing-dot:nth-child(2){animation-delay:.15s}.breathing-dot:nth-child(3){animation-delay:.3s}@keyframes messageEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes modalEnter{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.mode-fade-enter-active,.mode-fade-leave-active{transition:opacity var(--duration-normal) var(--easing-out)}.mode-fade-enter-from,.mode-fade-leave-to{opacity:0}@keyframes slideUpFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes spin{to{transform:rotate(1turn)}}.icon-btn{align-items:center;background:transparent;border:none;border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:20px;height:40px;justify-content:center;padding:0;transition:background-color var(--duration-fast) var(--easing-out),color var(--duration-fast) var(--easing-out);width:40px;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none}.icon-btn:hover{background:var(--color-primary-light)}.icon-btn:disabled{cursor:not-allowed;opacity:.45}.icon-btn-sm{font-size:16px;height:32px;width:32px}.glass{box-shadow:var(--glass-shadow)}.glass,.glass-elevated{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--glass-bg);border:1px solid var(--glass-border)}.glass-elevated{box-shadow:var(--glass-shadow-elevated)}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.sr-only{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border-width:0;white-space:nowrap}.vue-recycle-scroller__resize-observer[data-v-08cc04ab]{inset:0;opacity:0;pointer-events:none;position:absolute;z-index:-1}.vue-recycle-scroller{position:relative}.vue-recycle-scroller.flow-mode{overflow-anchor:none}.vue-recycle-scroller.direction-vertical:not(.page-mode){overflow-y:auto}.vue-recycle-scroller.direction-horizontal:not(.page-mode){overflow-x:auto}.vue-recycle-scroller.grid-mode:not(.page-mode){overflow:auto}.vue-recycle-scroller.direction-horizontal{display:-webkit-box;display:-ms-flexbox;display:flex}.vue-recycle-scroller__slot{-webkit-box-flex:1;-ms-flex:auto 0 0px;flex:auto 0 0}.vue-recycle-scroller__item-wrapper{-webkit-box-flex:1;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-flex:1;flex:1;overflow:hidden;position:relative}.vue-recycle-scroller.flow-mode .vue-recycle-scroller__item-wrapper{overflow:visible;overflow-anchor:none}.vue-recycle-scroller.ready .vue-recycle-scroller__item-view{left:0;position:absolute;top:0;will-change:transform}.vue-recycle-scroller.ready.flow-mode .vue-recycle-scroller__item-view{left:auto;overflow-anchor:none;position:static;top:auto;will-change:auto}.vue-recycle-scroller.direction-vertical .vue-recycle-scroller__item-wrapper{width:100%}.vue-recycle-scroller.direction-horizontal .vue-recycle-scroller__item-wrapper{height:100%}.vue-recycle-scroller.ready.direction-vertical .vue-recycle-scroller__item-view{width:100%}.vue-recycle-scroller.ready.direction-horizontal .vue-recycle-scroller__item-view{height:100%}.vue-recycle-scroller__item-spacer{-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-box-flex:0;border:0;-ms-flex:0 0 auto;flex:0 0 auto;margin:0;overflow-anchor:none;padding:0;pointer-events:none;visibility:hidden}
