:root{--primary:#afb8d0;--secondary:#64ffda;--purple:#871bf5;--dark-blue:#0a192f;--gray-light:#f5f5f5;--gray-border:#e0e0e0;--gray-dark:#666;--gray-text:#333;--radius-lg:12px;--radius-pill:18px;--gap-sm:.5rem;--gap-md:1rem;--gap-lg:1.5rem;--font-system:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif}@font-face{font-family:Microstyle;src:url(../microstyle.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}body{color:var(--primary);font-family:var(--font-system), sans-serif;background:#000;min-height:800px;font-size:100%}#bg-video,#bg-poster{object-fit:cover;opacity:.55;z-index:-1;pointer-events:none;width:100%;height:1250px;position:fixed;top:0;left:0}#bg-poster{display:none}@media (prefers-reduced-motion:reduce){#bg-video{display:none}#bg-poster{display:block}}h1{text-align:center;text-transform:uppercase;font-family:Microstyle,sans-serif}p a{color:var(--secondary);transition:all .3s}p a:hover{text-decoration-color:#0000}button{cursor:pointer;font-size:inherit;border:none}.landing-divider{align-items:center;gap:var(--gap-md);margin-block:var(--gap-md) var(--gap-lg);color:var(--secondary);display:flex}.landing-divider:before,.landing-divider:after{content:"";background:linear-gradient(to right, transparent, var(--secondary) 40%, var(--secondary) 60%, transparent);flex:1;height:1px}.landing-divider:after{animation-delay:.1s}.divider-star{filter:drop-shadow(0 0 5px var(--secondary));font-size:1rem;display:inline-block;position:relative}.divider-star:before,.divider-star:after{content:"✦";opacity:0;color:var(--secondary);font-size:.4em;position:absolute}.divider-star:before{animation-delay:.9s;top:-1.4em;left:-1.1em}.divider-star:after{animation-delay:1.8s;bottom:-1.4em;right:-1.1em}@keyframes messageEnter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}mental-health-app{--chat-max-h:775px;background:rgba(from var(--dark-blue) r g b / .65);border-radius:1rem;max-width:800px;margin:0 auto;display:block}@media (width<=600px){mental-health-app{--chat-max-h:675px}}#container:has(scenario-select){margin-top:5rem}#container{flex-direction:column;transition:all .25s;display:flex}#container.fading{opacity:0;pointer-events:none}chat-screen,scenario-select{flex-direction:column;flex:1;display:flex;overflow:hidden}#landing{padding:var(--gap-lg);justify-content:center;align-items:center;transition:opacity .25s;animation:.4s fadeIn;display:flex}@media (width<600px){#landing{padding:var(--gap-sm)}}#landing.fading{opacity:0;pointer-events:none}.load-error{text-align:center;color:var(--primary);opacity:.7;font-size:.95rem}.landing-content{background:rgba(from var(--dark-blue) r g b / .65);max-width:65ch;padding:var(--gap-lg) calc(var(--gap-lg) * 2);border-radius:1rem}@media (width<600px){.landing-content{padding:var(--gap-lg)}}.landing-content h1{color:var(--secondary);margin-block:0 var(--gap-sm);letter-spacing:.1rem;font-size:2rem}.landing-content h2{letter-spacing:.1rem;margin-block:0 var(--gap-md);text-align:center;max-width:35rem;font-family:Microstyle}.landing-content h3{color:var(--secondary);margin-block:var(--gap-lg) var(--gap-md);font-size:1.25rem}.landing-content p{color:var(--primary);margin-top:0;font-size:1.2rem;line-height:1.6}.landing-content>div{margin:var(--gap-md) auto;max-width:35rem}.landing-content button{border:1px solid var(--secondary);color:var(--secondary);cursor:pointer;font-family:var(--font-system);margin-inline:auto;margin-top:var(--gap-lg);background:0 0;padding:.875rem 2rem;font-size:1rem;font-weight:500;transition:background .2s,color .2s;display:block;position:relative}.landing-content button:hover{background:var(--secondary);color:var(--dark-blue)}.scenario-screen{padding:var(--gap-lg);flex-direction:column;flex:1;animation:.3s fadeIn;display:flex}.scenario-header h1{margin-block:0 var(--gap-md);font-size:3rem}.scenario-header p{margin-bottom:var(--gap-lg);max-width:50ch;margin-inline:auto;font-size:1.2rem;line-height:1.6}.scenario-boxes{gap:var(--gap-md);flex-direction:column;max-width:600px;margin-inline:auto;display:flex}.scenario-box{border:1px solid var(--primary);color:var(--primary);cursor:pointer;padding:var(--gap-lg);background:0 0;transition:all .2s;position:relative}.scenario-box:hover{background:var(--secondary);border-color:var(--secondary);color:var(--dark-blue)}.scenario-box:active{transform:scale(.98)}.scenario-box h3{margin-block:var(--gap-sm);text-transform:uppercase;letter-spacing:.09rem;font-family:Microstyle,sans-serif;font-size:1.3rem}.scenario-box p{font-size:.95rem}.scenario-footer{padding:var(--gap-lg) 0 var(--gap-md);text-align:center;margin-top:auto}.how-made-content figure{margin-inline:0}.how-made-content img{width:100%}.how-made-btn{border:1px solid var(--primary);color:var(--primary);font-family:var(--font-system);cursor:pointer;background:0 0;padding:.5rem 1.25rem;font-size:.85rem;font-weight:500;transition:background .2s,color .2s,border-color .2s}.how-made-btn:hover{border-color:var(--secondary);color:var(--secondary);background:color-mix(in srgb, var(--secondary) 8%, transparent);animation:2s ease-in-out infinite divider-breathe}.how-made-dialog{border-radius:var(--radius-lg);max-width:36rem;width:calc(100% - 2 * var(--gap-lg));max-height:80vh;padding:var(--gap-lg);color:var(--primary);background:#0f2235;border:1px solid #1e3050;animation:.25s messageEnter;overflow-y:auto}@media (width<600px){.how-made-dialog{width:auto;margin-inline:var(--gap-lg)}}.how-made-dialog::backdrop{background:#0a192fd9;animation:.2s fadeIn}.how-made-dialog h2{text-transform:uppercase;margin:0 0 var(--gap-lg);color:var(--secondary);font-family:Microstyle,sans-serif;font-size:1.4rem}.how-made-dialog p,.how-made-dialog li{margin:0 0 var(--gap-md);font-size:.95rem;line-height:1.6}.how-made-dialog ul{padding-left:1.25rem}.how-made-close{top:var(--gap-md);right:var(--gap-md);color:var(--primary);opacity:.5;cursor:pointer;background:0 0;border:none;padding:.25rem .5rem;font-size:1.4rem;line-height:1;transition:opacity .2s;position:absolute}.how-made-close:hover{opacity:1}.chat-screen{flex-direction:column;flex:1;animation:.3s fadeIn;display:flex;overflow:hidden}.chat-header{padding:var(--gap-md);border-bottom:1px solid var(--secondary);align-items:center;gap:var(--gap-md);display:flex;position:relative}.chat-header>span{min-width:70px}.chat-header h2{text-transform:uppercase;color:var(--primary);text-align:center;flex-grow:1;margin:0;font-family:Microstyle;font-size:1.2rem}.back-btn{cursor:pointer;color:var(--primary);font-size:1rem;font-family:var(--font-system);opacity:.7;background:0 0;border:none;padding:.5rem}.back-btn:hover{opacity:1}.exit-fullscreen-btn{color:var(--primary);cursor:pointer;opacity:.7;background:0 0;border:none;margin-left:auto;padding:.5rem;font-size:1.1rem;display:none}.exit-fullscreen-btn:hover{opacity:1}.is-expanded .exit-fullscreen-btn{display:block}.chat-content{flex-direction:column;flex:1;display:flex;overflow:hidden}.chat-intro{padding:var(--gap-lg);flex-direction:column;flex:1;justify-content:start;align-items:center;display:flex}.chat-intro.hidden{display:none}.chat-intro-card{width:100%;max-width:32rem;padding:0 0 var(--gap-lg);color:var(--primary)}.chat-intro-card p{margin:0 0 var(--gap-md);color:var(--primary);font-size:1.1rem;line-height:1.6}p.chat-intro-eyebrow{margin:0 0 var(--gap-sm);color:var(--secondary);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.start-chat-btn{text-transform:uppercase;letter-spacing:.08rem;padding:.75rem var(--gap-lg);color:var(--secondary);border:1px solid var(--secondary);cursor:pointer;background:0 0;border-radius:0;font-family:Microstyle;font-weight:500;transition:background .2s,color .2s;position:relative}.start-chat-btn:hover{background:var(--secondary);color:var(--dark-blue)}.chat-conversation{flex-direction:column;flex:1;display:none;overflow:hidden}.chat-conversation.visible{display:flex}.chat-messages{min-height:0;max-height:var(--chat-max-h);padding:var(--gap-md);gap:var(--gap-md);scrollbar-width:none;flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{display:none}.message{animation:.3s forwards messageEnter;display:flex}.message.message-user{justify-content:flex-end}.message.message-user .message-bubble{background:color-mix(in srgb, var(--purple) 15%, var(--dark-blue));color:var(--primary);border:1px solid var(--purple)}.message.message-ai{justify-content:flex-start}.message.message-ai .message-bubble{width:80%;color:var(--primary);border:1px solid var(--secondary);background:#112035}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) p,:is(.message.message-ai .message-text,.message.message-ai .message-more-content) li{margin:0 0 .5rem;line-height:1.5}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) p:last-child{margin-bottom:0}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) ul,:is(.message.message-ai .message-text,.message.message-ai .message-more-content) ol{margin:0 0 .5rem;padding-left:1.25rem}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) strong{color:#fff;font-weight:600}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) em{opacity:.85}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) hr{margin-block:1.5rem}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) table{border-collapse:collapse;width:100%;margin:.5rem 0;font-size:.9rem;display:block;overflow-x:auto}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) th,:is(.message.message-ai .message-text,.message.message-ai .message-more-content) td{text-align:left;border:1px solid #ffffff1a;padding:.5rem .75rem}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) th{color:#fff;background:#ffffff0d;font-weight:600}:is(.message.message-ai .message-text,.message.message-ai .message-more-content) tr:nth-child(2n) td{background:#ffffff05}.message.message-therapist{align-items:flex-start;gap:var(--gap-sm)}.message.message-therapist.therapist-right{flex-direction:row-reverse;justify-content:flex-end}.message.message-therapist .message-bubble{color:var(--primary)}.message.message-therapist .message-text p,.message.message-therapist .message-text li{margin:0 0 .5rem;line-height:1.5}.message.message-therapist .message-text p:last-child{margin-bottom:0}.message.message-therapist .message-text ul,.message.message-therapist .message-text ol{margin:0 0 .5rem;padding-left:1.25rem}.message.message-therapist .message-text strong{color:#fff;font-weight:600}.message.message-therapist .message-text em{opacity:.85}.message.message-therapist.therapist-color-0 .message-bubble{background:#1a2f4a;border:1px solid #2a4a6a}.message.message-therapist.therapist-color-1 .message-bubble{background:#1f1535;border:1px solid #3d2a6a}.message.message-therapist.therapist-color-2 .message-bubble{background:#0d2630;border:1px solid #1a4a52}.therapist-avatar{background:color-mix(in srgb, var(--primary) 25%, var(--dark-blue));width:38px;height:38px;color:var(--dark-blue);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.7rem;font-weight:600;display:flex;position:relative;overflow:hidden}.therapist-avatar:before{content:attr(data-initials)}.therapist-avatar img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.message-bubble{max-width:80%;padding:.75rem var(--gap-md);border-radius:var(--radius-pill);word-wrap:break-word;font-size:.95rem;line-height:1.4}.message-bubble p{margin:0}.ai-label{opacity:.5;margin-top:.5rem;font-size:.7rem;font-weight:500;display:block}.typing-bubble{justify-content:center;align-items:center;gap:5px;min-width:40px;display:flex;padding:.875rem var(--gap-md)!important;border-radius:var(--radius-pill)!important;width:auto!important}.dot{background:var(--primary);opacity:.4;border-radius:50%;width:7px;height:7px;animation:1.3s ease-in-out infinite dotBounce}.dot:nth-child(2){animation-delay:.15s}.dot:nth-child(3){animation-delay:.3s}@keyframes dotBounce{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:.9;transform:translateY(-5px)}}.message-system{text-align:center;color:var(--secondary);padding:var(--gap-sm) 0;letter-spacing:.04em;font-size:.8rem;animation:.5s fadeIn}.break-actions{gap:var(--gap-md);align-items:center;display:flex}.break-continue-wrap{padding:var(--gap-sm) 0;justify-content:center;transition:opacity .4s;animation:.3s messageEnter;display:flex}.break-continue-wrap.fading-out{opacity:0;pointer-events:none}.therapist-prompt-btn,.break-read-btn{padding:.75rem var(--gap-lg);color:var(--secondary);border:1px solid var(--secondary);font-family:var(--font-system);cursor:pointer;background:0 0;font-size:.95rem;font-weight:500;transition:background .2s,color .2s;position:relative}:is(.therapist-prompt-btn,.break-read-btn):hover{background:var(--secondary);color:var(--dark-blue)}.message-more{margin-top:var(--gap-lg);border-top:1px solid var(--secondary);padding-top:var(--gap-sm)}.message-more-content{margin-top:var(--gap-sm);display:none}.message-more-content p,.message-more-content li{margin:0 0 .5rem;line-height:1.5}.message-more-content p:last-child{margin-bottom:0}.message-more.expanded .message-more-content{display:block}.therapist-prompt{padding:var(--gap-md) 0;justify-content:center;animation:.4s fadeIn;display:flex}.scenario-nav{padding:var(--gap-md) 0;animation:.4s fadeIn}.scenario-nav-label{color:var(--secondary);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--gap-md);font-size:.8rem;font-weight:600}.scenario-nav-boxes{gap:var(--gap-md);flex-direction:row;display:flex}.scenario-nav-boxes .scenario-box{padding:var(--gap-md);flex:1}.scenario-nav-boxes .scenario-box h3{margin:0;font-size:1rem}.chat-input-area{padding:var(--gap-md);padding-top:calc(var(--gap-md) + 2.5rem);gap:var(--gap-md);background:linear-gradient(to bottom, transparent, rgba(from var(--dark-blue) r g b / .55) 2.5rem);z-index:1;max-height:240px;margin-top:-2.5rem;transition:max-height .4s,padding .4s,margin-top .4s,opacity .3s;display:flex;position:relative;overflow:hidden}.chat-input-area.swapping{opacity:0}.chat-input-area.therapist-mode{padding-top:calc(var(--gap-lg) + 2.5rem);padding-bottom:var(--gap-lg);justify-content:center;align-items:center}.chat-input-area.hidden{opacity:0;pointer-events:none;max-height:0;margin-top:0;padding-top:0;padding-bottom:0}.user-input{padding:var(--gap-md);font-family:var(--font-system);resize:none;min-height:54px;max-height:140px;color:var(--primary);background:#111d2e;border:1px solid #1e3050;border-radius:8px;flex:1;font-size:1rem;overflow-y:auto}.user-input:disabled{opacity:.8;cursor:default}.send-btn{padding:var(--gap-md) var(--gap-lg);color:var(--dark-blue);border:1px solid var(--secondary);font-family:var(--font-system);cursor:pointer;background-image:linear-gradient(to right, var(--dark-blue) 50%, var(--secondary) 50%);background-position:100%;background-size:200% 100%;border-radius:8px;align-self:flex-end;font-size:.95rem;font-weight:600;transition:background-position .35s,color .2s}.send-btn:hover:not(:disabled){color:var(--secondary);background-position:0}.send-btn:disabled{background:color-mix(in srgb, var(--secondary) 30%, var(--dark-blue));border-color:color-mix(in srgb, var(--secondary) 30%, var(--dark-blue));color:color-mix(in srgb, var(--dark-blue) 50%, var(--secondary));cursor:default}#chat-skip{margin-top:var(--gap-sm);color:var(--secondary);font-family:var(--font-system);opacity:.6;cursor:pointer;background:0 0;border:none;align-self:center;padding-bottom:2rem;font-size:.85rem;transition:opacity .2s}#chat-skip.hidden{display:none}#chat-skip:hover{opacity:1}@keyframes ripple-outline{0%{opacity:0;inset:-12px}40%{opacity:1}to{opacity:0;inset:0}}@keyframes star-spin{0%,to{filter:drop-shadow(0 0 4px var(--secondary));transform:rotate(0)scale(1)}50%{filter:drop-shadow(0 0 10px var(--secondary)) drop-shadow(0 0 20px var(--secondary));transform:rotate(22.5deg)scale(1.25)}}@keyframes mini-sparkle{0%,to{opacity:0;transform:scale(.4)rotate(0)}45%,55%{opacity:.8;transform:scale(1)rotate(22.5deg)}}@keyframes divider-breathe{0%,to{opacity:.65}50%{opacity:1}}#begin-btn{letter-spacing:.09rem;text-transform:uppercase;font-family:Microstyle}:is(#begin-btn,.scenario-box):hover{animation:2s ease-in-out infinite divider-breathe}:is(#begin-btn,.start-chat-btn,.scenario-box):after{content:"";border:1px solid var(--secondary);border-radius:inherit;pointer-events:none;opacity:0;position:absolute;inset:0}:is(#begin-btn,.start-chat-btn,.scenario-box):hover:after{animation:.6s ease-out ripple-outline}
