.zazen-world-container{border-radius:var(--radius-lg);view-transition-name:zazen-world;background:radial-gradient(ellipse at 30% 20%, color-mix(in oklch, var(--primary-color) 4%, transparent) 0%, transparent 55%), radial-gradient(ellipse at 70% 85%, color-mix(in oklch, var(--primary-color) 5%, transparent) 0%, transparent 60%);flex-direction:column;justify-content:flex-start;align-items:center;padding:1rem 1.5rem 3rem;display:flex;position:relative;overflow-x:hidden}@media (width<=768px){.zazen-world-container{gap:.25rem;min-height:100dvh;padding:.5rem .5rem 1.5rem}}.zazen-world__header.path-stones__header{text-align:center;opacity:0;width:100%;max-width:640px;animation:zazen-header-fade-in .8s var(--zen-ease-elegant) forwards;flex-direction:column;justify-content:center;align-items:center;padding:0 1rem;display:flex}@media (width<=768px){.zazen-world__header.path-stones__header{order:1;gap:.15rem;padding:0 .5rem}}.path-stones__intro{letter-spacing:.01em;color:color-mix(in oklch, var(--heading-color) 82%, transparent);margin:0;font-family:Georgia,serif;font-size:clamp(1.02rem,1.6vw,1.15rem);font-style:italic}.path-stones__progress{letter-spacing:.2em;color:color-mix(in oklch, var(--primary-color) 70%, var(--heading-color));opacity:.78;margin:.35rem 0 0;font-family:Georgia,serif;font-size:.8rem}@media (width<=768px){.path-stones__progress{letter-spacing:.16em;margin:.15rem 0 0;font-size:.68rem}}.zazen-world__map-wrapper{touch-action:none;opacity:0;max-width:100%;animation:zazen-map-fade-in 1s var(--zen-ease-elegant) .4s forwards;margin:1.25rem auto;position:relative}@media (width<=768px){.zazen-world__map-wrapper{order:2;margin:.5rem auto}}.zazen-world__map{position:absolute;top:0;left:0}@keyframes zazen-map-fade-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes zazen-header-fade-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes zazen-compass-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.zazen-world__compass{opacity:0;animation:zazen-compass-fade-in .8s var(--zen-ease-elegant) .2s forwards;margin:1rem 0 .5rem}@media (width<=768px){.zazen-world__compass{order:3;margin:.5rem 0 .25rem}}.zazen-world__compass-container{justify-content:center;align-items:center;width:132px;height:132px;display:flex;position:relative}.zazen-world__compass-container:before{content:"";border:1.5px solid color-mix(in oklch, var(--primary-color) 30%, transparent);pointer-events:none;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@media (width<=768px){.zazen-world__compass-container{width:128px;height:128px}}@media (width<=380px){.zazen-world__compass-container{width:116px;height:116px}}.zazen-world__compass-btn{background:color-mix(in oklch, var(--surface-glass) 90%, transparent);border:1px solid color-mix(in oklch, var(--primary-color) 28%, transparent);width:44px;height:44px;color:var(--heading-color);cursor:pointer;box-shadow:0 1px 3px oklch(0% 0 0/.1), 0 6px 16px -4px color-mix(in oklch, var(--primary-color) 18%, transparent);transition:transform .26s var(--zen-ease-elegant), background .26s var(--zen-ease-out), border-color .26s var(--zen-ease-out), box-shadow .26s var(--zen-ease-elegant), color .26s ease;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-size:8px;font-weight:500;display:flex;position:absolute}@media (width<=768px){.zazen-world__compass-btn{width:48px;height:48px;font-size:9px}}@media (width<=380px){.zazen-world__compass-btn{width:42px;height:42px;font-size:8px}}.zazen-world__compass-btn span{opacity:.6;letter-spacing:.06em;margin-top:2px;font-family:Georgia,serif;font-style:italic}.zazen-world__compass-btn:focus-visible{outline:2px solid color-mix(in oklch, var(--primary-color) 55%, transparent);outline-offset:3px}.zazen-world__compass-btn:hover{background:color-mix(in oklch, var(--surface-glass) 96%, var(--primary-color));color:var(--primary-color);border-color:color-mix(in oklch, var(--primary-color) 50%, transparent);box-shadow:0 2px 6px oklch(0% 0 0/.14), 0 10px 24px -6px color-mix(in oklch, var(--primary-color) 30%, transparent)}.zazen-world__compass-btn:active{box-shadow:0 1px 3px oklch(0% 0 0/.14)}.zazen-world__compass-btn--north{top:0;left:50%;transform:translate(-50%)}.zazen-world__compass-btn--north:hover{transform:translate(-50%)translateY(-2px)}.zazen-world__compass-btn--north:active{transform:translate(-50%)scale(.97)}.zazen-world__compass-btn--west{top:50%;left:0;transform:translateY(-50%)}.zazen-world__compass-btn--west:hover{transform:translate(-2px,-50%)}.zazen-world__compass-btn--west:active{transform:translateY(-50%)scale(.97)}.zazen-world__compass-btn--east{top:50%;right:0;transform:translateY(-50%)}.zazen-world__compass-btn--east:hover{transform:translate(2px,-50%)}.zazen-world__compass-btn--east:active{transform:translateY(-50%)scale(.97)}.zazen-world__compass-btn--south{bottom:0;left:50%;transform:translate(-50%)}.zazen-world__compass-btn--south:hover{transform:translate(-50%)translateY(2px)}.zazen-world__compass-btn--south:active{transform:translate(-50%)scale(.97)}.zazen-world__tile{position:absolute}.zazen-world__tile--step{cursor:pointer}.zazen-world__tile--step:after{content:"";border:1px dashed color-mix(in oklch, var(--primary-color) 42%, transparent);opacity:0;pointer-events:none;width:48px;height:24px;transition:opacity .26s var(--zen-ease-elegant), transform .26s var(--zen-ease-elegant);border-radius:50%;position:absolute;top:44px;left:8px;transform:translateY(2px)}.zazen-world__tile--step:hover:after,.zazen-world__tile--step:focus-visible:after{opacity:.85;transform:translateY(0)}.zazen-world__tile--step:focus-visible{outline:none}@media (hover:none) and (pointer:coarse){.zazen-world__tile--step:after{opacity:.5;transform:translateY(0)}}.zazen-world__tile-image{text-align:center;width:64px;height:90px;transition:filter .6s var(--zen-ease-elegant), opacity .6s var(--zen-ease-elegant);background-position:bottom;background-repeat:no-repeat;position:absolute;top:0;left:0}.zazen-world__tile-image img{filter:drop-shadow(1px 1px 2px oklch(0% 0 0/.3))}.zazen-world__tile-image--stone .zazen-world__decor{animation:path-stones-stone-breathe var(--zen-duration-breath,4s) var(--zen-ease-in-out,ease-in-out) infinite;filter:drop-shadow(0 0 6px color-mix(in oklch, var(--primary-color) 40%, transparent)) drop-shadow(1px 1px 2px oklch(0% 0 0/.25))}.zazen-world__tile-image--shrine-locked{filter:grayscale(.7)brightness(.85);opacity:.72}.zazen-world__tile-image--shrine-active{filter:none;opacity:1;animation:path-stones-shrine-pulse 3.2s var(--zen-ease-in-out,ease-in-out) infinite}@keyframes path-stones-stone-breathe{0%,to{opacity:.88;transform:translateY(0)}50%{opacity:1;transform:translateY(-1.5px)}}@keyframes path-stones-shrine-pulse{0%,to{box-shadow:0 0 0 0 color-mix(in oklch, var(--primary-color) 0%, transparent), 0 0 20px color-mix(in oklch, var(--primary-color) 18%, transparent)}50%{box-shadow:0 0 0 8px color-mix(in oklch, var(--primary-color) 12%, transparent), 0 0 36px color-mix(in oklch, var(--primary-color) 35%, transparent)}}.zazen-world__decor{filter:drop-shadow(1px 1px 2px oklch(0% 0 0/.2))}.path-stones__scroll{width:260px;max-width:calc(100vw - 2rem);color:var(--heading-color);background:radial-gradient(circle at 20% 25%, color-mix(in oklch, var(--primary-color) 3%, transparent) 0%, transparent 55%), radial-gradient(circle at 80% 80%, color-mix(in oklch, var(--primary-color) 5%, transparent) 0%, transparent 60%), linear-gradient(180deg, color-mix(in oklch, var(--surface-warm,var(--surface-glass)) 94%, transparent) 0%, color-mix(in oklch, var(--surface-warm,var(--surface-glass)) 88%, transparent) 100%);border:1px solid color-mix(in oklch, var(--primary-color) 18%, transparent);box-shadow:0 1px 0 color-mix(in oklch, var(--primary-color) 12%, transparent) inset, 0 24px 48px -20px oklch(0% 0 0/.22), 0 6px 14px -6px oklch(0% 0 0/.14);opacity:0;animation:zazen-header-fade-in .9s var(--zen-ease-elegant) .6s forwards;z-index:5;border-radius:8px;padding:1.25rem 1.35rem;font-family:Georgia,serif;position:fixed;top:50%;right:2rem;transform:translateY(-50%)}.path-stones__scroll:before,.path-stones__scroll:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in oklch, var(--primary-color) 25%, transparent), transparent);height:1px;position:absolute;left:1.5rem;right:1.5rem}.path-stones__scroll:before{top:.6rem}.path-stones__scroll:after{bottom:.6rem}@media (width<=1024px){.path-stones__scroll{width:min(420px,92vw);margin:1rem auto 0;position:relative;top:auto;right:auto;transform:none}}@media (width<=768px){.path-stones__scroll{order:4;width:min(360px,94vw);max-height:40dvh;margin:.5rem auto 0;padding:.9rem 1rem;overflow-y:auto}}.path-stones__scroll-title{letter-spacing:.32em;text-transform:uppercase;color:color-mix(in oklch, var(--primary-color) 72%, var(--heading-color));text-align:center;margin:0 0 .75rem;font-family:Georgia,serif;font-size:.82rem;font-weight:400}.path-stones__scroll-placeholder{color:color-mix(in oklch, var(--heading-color) 55%, transparent);text-align:center;margin:.5rem 0;font-size:.88rem;font-style:italic}.path-stones__scroll-lines{flex-direction:column;gap:.45rem;margin:.25rem 0 .75rem;display:flex}.path-stones__haiku-line{color:color-mix(in oklch, var(--heading-color) 92%, transparent);text-align:left;letter-spacing:.005em;margin:0;font-family:Georgia,serif;font-size:.95rem;font-style:italic;line-height:1.6}.path-stones__scroll-progress{letter-spacing:.28em;text-transform:uppercase;text-align:center;color:color-mix(in oklch, var(--primary-color) 60%, var(--heading-color));opacity:.68;border-top:1px solid color-mix(in oklch, var(--primary-color) 15%, transparent);margin:.35rem 0 0;padding-top:.6rem;font-family:Georgia,serif;font-size:.72rem}.path-stones__finale{z-index:10050;backdrop-filter:blur(8px);background:radial-gradient(ellipse at center, color-mix(in oklch, var(--heading-color) 88%, transparent) 0%, color-mix(in oklch, var(--heading-color) 96%, transparent) 60%, color-mix(in oklch, var(--heading-color) 99%, transparent) 100%);animation:path-stones-finale-fade 1.4s var(--zen-ease-elegant) forwards;opacity:0;flex-direction:column;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}@media (width<=640px){.path-stones__finale{padding:1.25rem}}@keyframes path-stones-finale-fade{0%{opacity:0}to{opacity:1}}.path-stones__finale-poem{text-align:center;max-width:560px;color:color-mix(in oklch, var(--primary-bg-color) 94%, white);flex-direction:column;gap:.9rem;margin:0 0 2.5rem;display:flex}@media (width<=640px){.path-stones__finale-poem{gap:.7rem;margin:0 0 1.75rem}}.path-stones__finale-line{letter-spacing:.01em;color:color-mix(in oklch, var(--primary-bg-color) 96%, white);text-shadow:0 1px 2px oklch(0% 0 0/.4);margin:0;font-family:Georgia,serif;font-size:1.35rem;font-style:italic;line-height:1.7}@media (width<=640px){.path-stones__finale-line{font-size:1.1rem}}.path-stones__finale-return{letter-spacing:.24em;text-transform:uppercase;min-height:44px;color:color-mix(in oklch, var(--primary-bg-color) 94%, white);border:1px solid color-mix(in oklch, var(--primary-bg-color) 55%, transparent);cursor:pointer;opacity:0;animation:path-stones-finale-fade 1s var(--zen-ease-elegant) .2s forwards;transition:background .32s var(--zen-ease-out), border-color .32s var(--zen-ease-out), transform .32s var(--zen-ease-elegant);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:.7rem 2.4rem;font-family:Georgia,serif;font-size:.95rem;font-style:italic;text-decoration:none;display:inline-flex}.path-stones__finale-return:hover,.path-stones__finale-return:focus-visible{background:color-mix(in oklch, var(--primary-bg-color) 14%, transparent);border-color:color-mix(in oklch, var(--primary-bg-color) 80%, transparent);transform:translateY(-1px)}.path-stones__finale-return:focus-visible{outline:2px solid color-mix(in oklch, var(--primary-bg-color) 70%, transparent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.zazen-world__header,.zazen-world__compass,.zazen-world__map-wrapper,.path-stones__scroll,.path-stones__finale,.path-stones__finale-return{opacity:1!important;animation:none!important}.zazen-world__tile-image--stone .zazen-world__decor,.zazen-world__tile-image--shrine-active{animation:none!important}}
