html,body,#root{height:100%}body{overscroll-behavior:none;overflow:hidden}.app{width:100%;max-width:44rem;height:var(--vvh,100dvh);padding:env(safe-area-inset-top) 1rem 0;flex-direction:column;margin:0 auto;display:flex}.app-landing{overflow-y:auto}.app-header{flex:none;justify-content:space-between;align-items:baseline;padding:1rem 0 .75rem;display:flex}.app-chat .app-header{border-bottom:2px solid var(--plum)}.header-link{font-size:1rem}.landing{flex:1 0 auto}.landing .bubble{margin:.5rem 0 3.25rem}.landing .bubble h1{font-size:clamp(2.5rem,12vw,5rem)}.app-landing footer{padding-bottom:calc(1rem + env(safe-area-inset-bottom));flex:none;margin-top:2rem}.thread-area{flex:1 1 0;min-height:0;position:relative}.thread{overscroll-behavior:contain;flex-direction:column;gap:.5rem;height:100%;padding:.75rem 0 1rem;display:flex;overflow-y:auto}.thread-legal{color:var(--plum-soft);margin-bottom:.75rem;font-size:.8125rem;line-height:1.4}.thread-legal p{overflow-wrap:anywhere;margin:0}.bubble-row{flex-direction:column;max-width:min(85%,32rem);display:flex}.bubble-row-bea{align-self:flex-start;align-items:flex-start}.bubble-row-lead{align-self:flex-end;align-items:flex-end}.chat-bubble{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:1.25rem;margin:0;padding:.625rem .875rem;font-size:1.0625rem;line-height:1.4;animation:.18s ease-out arrive}.chat-bubble-bea{background:var(--plum);color:var(--white);transform-origin:0 100%;border-bottom-left-radius:0}.chat-bubble-lead{background:var(--white);color:var(--plum);transform-origin:100% 100%;border-bottom-right-radius:0}@keyframes arrive{0%{opacity:0;transform:scale(.92)}}.privacy-notice p{margin:0}.privacy-notice a{color:inherit;margin-top:.5rem;font-weight:700;display:inline-block}.privacy-notice-button{border:2px solid var(--plum);background:var(--white);min-height:2.75rem;color:var(--plum);font:inherit;cursor:pointer;border-radius:999px;margin-top:.5rem;padding:0 1.25rem;font-weight:700}.bubble-status{margin-top:.25rem;font-size:.875rem}.bubble-status button{min-height:2.75rem;color:inherit;font:inherit;text-underline-offset:.18em;cursor:pointer;background:0 0;border:0;margin-left:.5rem;padding:0;font-weight:700;text-decoration:underline}.typing{align-items:center;gap:.3rem;height:2.6875rem;display:flex}.typing span{background:var(--sun);border-radius:50%;width:.5rem;height:.5rem;animation:1.1s ease-in-out infinite dot}.typing span:nth-child(2){animation-delay:.15s}.typing span:nth-child(3){animation-delay:.3s}@keyframes dot{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-.3rem)}}.unseen{background:var(--plum);min-height:2.75rem;color:var(--white);font:inherit;cursor:pointer;border:0;border-radius:999px;padding:0 1rem;font-size:1rem;font-weight:700;position:absolute;bottom:.75rem;left:50%;transform:translate(-50%)}.system{border:2px solid var(--plum);overflow-wrap:anywhere;border-radius:.75rem;margin-top:.5rem;padding:.75rem .875rem;font-size:1rem;line-height:1.4}.system p{white-space:pre-wrap;margin:0}.offline{text-align:center;flex:none;margin:0;padding:.25rem 0;font-size:.875rem;font-weight:700}.composer{padding:.5rem 0 calc(.75rem + env(safe-area-inset-bottom));flex:none}.composer-row{border:2px solid var(--plum);background:var(--white);border-radius:1.75rem;align-items:flex-end;gap:.5rem;padding:.3125rem;display:flex}.composer-row:focus-within{box-shadow:0 0 0 2px var(--plum)}.composer textarea{min-width:0;max-height:7.5rem;color:var(--plum);font:inherit;resize:none;background:0 0;border:0;outline:0;flex:1;padding:.5625rem .25rem .5625rem .75rem;font-size:1.0625rem;line-height:1.4}.access-hint{margin:0 0 .5rem .75rem}.access-error{margin:0 0 .5rem .75rem;font-weight:700}.composer input{min-width:0;color:inherit;font:inherit;background:0 0;border:0;outline:none;flex:1;padding:.5rem .75rem}.composer input::placeholder,.composer textarea::placeholder{color:var(--plum-soft);opacity:1}.composer textarea:disabled{cursor:not-allowed}.composer button{background:var(--plum);width:2.75rem;height:2.75rem;color:var(--sun);cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.composer button:disabled{opacity:.35;cursor:default}.composer button:focus-visible{outline:3px solid var(--plum);outline-offset:2px}.counter{margin:0 0 .25rem .75rem;font-size:.875rem}.counter-over{font-weight:700}@media (prefers-reduced-motion:reduce){.chat-bubble{animation:none}.typing span{opacity:.7;animation:none}}
