.guide-welcome{background:hsl(var(--secondary) / .55)}.guide-primary{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;min-height:48px;padding:.8rem 1.3rem;border-radius:.6rem;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:.9rem;font-weight:600;transition:background .2s,transform .2s}.guide-primary:hover{background:hsl(var(--primary) / .9);transform:translateY(-2px)}.guide-text-link{display:inline-flex;align-items:center;gap:.4rem;min-height:36px;font-weight:600;color:hsl(var(--primary))}.guide-welcome .guide-text-link{min-height:44px}.guide-text-link:hover{text-decoration:underline;text-underline-offset:3px}.guide-welcome-card{display:flex;align-items:center;gap:.75rem;position:relative;text-align:left;padding:.75rem;border:1px solid hsl(var(--border));background:hsl(var(--card));border-radius:.8rem;isolation:isolate}.guide-welcome-note{position:relative;z-index:1;flex:1;transition:transform .3s}.guide-welcome-card .guide-portrait--large{width:72px;height:86px}.guide-welcome-card:hover .guide-welcome-note{transform:translateY(-4px)}.guide-portrait{display:block;flex-shrink:0;overflow:hidden;border-radius:50%;background:#f4f0e8;transform:translateZ(0)}.guide-portrait--small{width:52px;height:52px}.guide-portrait--large{width:clamp(150px,17vw,235px);height:clamp(175px,20vw,265px);border-radius:48% 48% 42% 42%}.guide-portrait img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;transform-origin:50% 85%;animation:guide-breathe 6s ease-in-out infinite}.guide-portrait--small img{width:160%;height:160%;max-width:none;margin-left:-30%;-o-object-fit:cover;object-fit:cover}button:hover>.guide-portrait img,button:focus-visible>.guide-portrait img{animation:guide-hello .7s ease-in-out}.guide-greeting:active .guide-portrait img{transform:rotate(-7deg) scale(1.04)}.guide-launcher{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));z-index:45}body.bg-consent-open .guide-launcher{display:none}.guide-launch-button{display:flex;align-items:center;gap:.65rem;padding:.35rem .75rem .35rem .35rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:999px;box-shadow:0 5px 24px hsl(var(--foreground) / .12);transition:transform .2s,box-shadow .2s}.guide-launch-button:hover{transform:translateY(-3px);box-shadow:0 8px 28px hsl(var(--foreground) / .16)}.guide-invitation{position:absolute;right:0;bottom:calc(100% + .7rem);width:min(270px,calc(100vw - 2rem));margin:0;padding:1rem;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:1rem 1rem .25rem;box-shadow:0 5px 24px hsl(var(--foreground) / .1);animation:guide-arrive .3s ease-out}.guide-dismiss{position:absolute;top:.35rem;right:.35rem;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:hsl(var(--muted-foreground))}.guide-dismiss:hover{background:hsl(var(--secondary))}.guide-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;background:#1f181466;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:guide-fade .2s ease-out}.guide-panel{position:fixed;z-index:301;top:50%;left:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;width:min(560px,calc(100vw - 32px));max-height:min(840px,calc(100dvh - 40px));background:hsl(var(--background));color:hsl(var(--foreground));border:1px solid hsl(var(--border));border-radius:1.25rem;box-shadow:0 20px 90px #1f181433;overflow:hidden}.guide-panel-header{display:flex;align-items:center;gap:.8rem;flex-shrink:0;padding:1rem 1.25rem;border-bottom:1px solid hsl(var(--border));background:hsl(var(--secondary) / .6)}.guide-greeting{flex-shrink:0;border-radius:50%}.guide-icon-button{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;color:hsl(var(--muted-foreground))}.guide-icon-button:hover{background:hsl(var(--border));color:hsl(var(--foreground))}.guide-panel-body{overflow-y:auto;overscroll-behavior:contain;padding:1.5rem}.guide-question{font-family:"DM Serif Display",serif;font-size:1.75rem;line-height:1.18;font-weight:400;outline:none}.guide-step-dot{width:7px;height:7px;background:hsl(var(--primary));border-radius:50%}.guide-step-content{animation:guide-arrive .25s ease-out}.guide-option{display:flex;align-items:center;gap:.8rem;width:100%;min-height:64px;padding:.95rem 1rem;text-align:left;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:.8rem;font-size:.9rem;transition:border-color .18s,background .18s,transform .18s}.guide-option:hover{border-color:hsl(var(--primary) / .45);background:hsl(var(--secondary) / .5);transform:translate(3px)}.guide-option-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:.65rem;background:hsl(var(--secondary));color:hsl(var(--primary))}.guide-result{display:flex;align-items:flex-start;gap:.9rem;padding:1.2rem;border:1px solid hsl(var(--border));border-radius:.85rem;background:hsl(var(--card));transition:border-color .2s,transform .2s}.guide-result:hover{border-color:hsl(var(--primary));transform:translateY(-2px)}.guide-result-number{display:grid;place-items:center;margin-top:1.2rem;flex-shrink:0;width:25px;height:25px;border-radius:50%;font-size:.75rem;font-weight:600;color:hsl(var(--primary));background:hsl(var(--primary) / .07)}.guide-jorn-tip{background:hsl(var(--forest) / .06);border:1px solid hsl(var(--forest) / .13);border-radius:.9rem;padding:1rem}.guide-jorn-tip .guide-portrait img{animation:guide-nod .7s ease-out,guide-breathe 7s 1s ease-in-out infinite}.guide-welcome button:focus-visible,.guide-welcome a:focus-visible,.guide-launcher button:focus-visible,.guide-panel button:focus-visible,.guide-panel a:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:4px}.guide-still *,.guide-still *:before,.guide-still *:after{animation:none!important;transition:none!important}@keyframes guide-breathe{0%,to{transform:translateY(1px) rotate(-.5deg) scale(1.015)}50%{transform:translateY(-2px) rotate(.6deg) scale(1.03)}}@keyframes guide-hello{0%,to{transform:rotate(0) scale(1.02)}30%{transform:rotate(-3deg) scale(1.05)}65%{transform:rotate(2deg) scale(1.03)}}@keyframes guide-nod{0%,to{transform:translateY(0)}40%{transform:translateY(4px) rotate(2deg)}}@keyframes guide-arrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes guide-fade{0%{opacity:0}to{opacity:1}}@media (max-width: 1023px){.guide-welcome-card{display:none}}@media (max-width: 767px){.guide-portrait--large{width:145px;height:168px}}@media (max-width: 480px){.guide-panel{width:100%;max-height:calc(100dvh - 12px);top:auto;bottom:0;left:0;transform:none;border-radius:1.25rem 1.25rem 0 0}.guide-panel-body{padding:1.2rem 1rem max(1.2rem,env(safe-area-inset-bottom))}.guide-panel-header{padding:.8rem 1rem;gap:.6rem}.guide-launch-button{padding:.25rem .6rem .25rem .25rem}.guide-launch-button .guide-portrait{width:42px;height:42px}.guide-question{font-size:1.6rem}}@media (prefers-reduced-motion: reduce){[class*=guide-] *,[class*=guide-]{animation:none!important;transition:none!important}}
