@font-face{font-family:Heebo;src:url('./assets/heebo-hebrew-wght-normal.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap;unicode-range:U+0590-05FF,U+200C-2010,U+20AA,U+25CC,U+FB1D-FB4F}
@font-face{font-family:Heebo;src:url('./assets/heebo-latin-wght-normal.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{color-scheme:dark;--bg:#071e29;--surface:#0d2935;--line:#385660;--ink:#f1f5f2;--muted:#bacdd1;--mint:#b5ddd3;--gold:#f0d5a2;--header:88px;--nav:88px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:400 16px/1.65 Heebo,Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0}button:disabled{cursor:default;opacity:.55}a{color:var(--mint)}button:hover{filter:brightness(1.1)}[hidden]{display:none!important}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:4px}input{accent-color:var(--mint)}.app{width:min(1200px,92%);margin:auto}.topbar{height:var(--header);display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);background:var(--bg)}.playing .topbar{position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;text-align:right;background:transparent;padding:4px 0;font-size:22px;line-height:1.25;font-weight:500}.brand-mark{font:48px/1 Georgia,serif;color:var(--mint)}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:1px;color:var(--muted);margin-top:5px}.toolbar{display:flex;align-items:center;gap:8px}.utility,.icon-button{background:transparent;border:1px solid var(--line);border-radius:24px;min-height:44px;padding:8px 16px;font-size:14px}.utility[aria-pressed=true]{background:#23443f;border-color:#719e90;color:var(--mint)}.icon-button{min-width:44px;padding:4px;font-size:24px;flex-shrink:0}.welcome-header{font-size:14px;color:var(--muted)}
.welcome{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:56px;padding:36px 0}.welcome-copy{max-width:470px}.eyebrow{color:var(--mint);font-size:14px}h1{font-size:clamp(34px,3.5vw,48px);font-weight:400;line-height:1.25;letter-spacing:-.6px;margin:12px 0 18px}.welcome-lead{font-size:17px;color:var(--muted);margin:0 0 22px;line-height:1.8}.welcome-sound{display:flex;align-items:center;gap:12px;min-height:48px;margin-bottom:16px;cursor:pointer}.welcome-sound input,.preference input{width:22px;height:22px;margin:0;flex-shrink:0;cursor:pointer}.welcome-sound span{display:flex;gap:12px;align-items:baseline}.welcome-sound small{font-size:14px;color:var(--muted)}.primary{min-height:48px;padding:11px 24px;border-radius:28px;background:var(--mint);color:#103331;font-size:16px;font-weight:500}.start-button{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;font-size:18px;min-height:56px}.welcome-links{display:flex;justify-content:space-between;gap:12px;margin-top:6px}.text-button{background:transparent;min-height:44px;padding:8px;color:var(--mint);font-size:15px}.welcome-links .text-button{font-size:14px}.welcome-art{height:440px;overflow:hidden;border-radius:22px;border:1px solid var(--line)}.welcome-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:55% 55%}
.modes{height:var(--nav);position:sticky;top:var(--header);z-index:19;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;background:var(--bg);padding:12px 0}.mode{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;border:1px solid var(--line);border-radius:12px;background:#0d2935;font-size:16px;min-height:48px}.mode>span{font:28px/1 Georgia,serif;color:var(--mint)}.mode[aria-pressed=true]{background:#24453f;border-color:#96c4b5;color:#edfff7}.mode[aria-pressed=true]::after{content:'';width:5px;height:5px;background:var(--mint);border-radius:50%}#game{padding:8px 0 28px}.stage{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:570px;border:1px solid #49616a;border-radius:18px;overflow:hidden;background:#082533;scroll-margin-top:calc(var(--header) + var(--nav) + 12px)}.scene,.scene-shade{position:absolute;inset:0;z-index:-2}.scene{background:url('./assets/island.webp') 54% 63%/cover no-repeat}.scene-shade{z-index:-1;background:linear-gradient(180deg,#03141dc9,#03141d24 45%,#03141d11 70%,#03141df5)}.stage-header{min-height:58px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;color:#e0eceb;font-size:14px}.progress{color:var(--muted);font-size:14px}.stage-caption{text-align:center;padding:6px 24px 10px}.stage-caption h2{font-size:29px;font-weight:400;line-height:1.4;margin:0 0 8px}.stage-caption p{font-size:15px;color:#d9e6e8;margin:0}.light-field{position:relative;height:320px;margin:8px 40px 14px;direction:ltr;flex-shrink:0}.light{position:absolute;width:64px;height:64px;padding:0;border-radius:50%;background:transparent;transform:translate(-50%,-50%);transition:opacity .8s,scale .8s}.light::before{content:'';position:absolute;inset:24px;border-radius:50%;background:#fff7cc;box-shadow:0 0 10px 3px #f8da96,0 0 27px 7px #f6ce7959;animation:glow 4s ease-in-out infinite;animation-delay:var(--delay)}.light::after{content:'';position:absolute;inset:8px;border:1px solid #efdea775;border-radius:50%}.light:hover::after,.light:focus-visible::after{border-color:var(--gold)}.light:focus-visible{outline-offset:1px}.light.collected{opacity:0;scale:.25;pointer-events:none}.stage-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding:12px 24px 18px;min-height:76px}.stage-bottom p{font-size:14px;margin:0;color:#e0eceb}.stage-bottom p:empty{display:none}.stage-tools{display:flex;gap:12px;align-items:center;margin-inline-start:auto;flex-shrink:0}.stage-tools .text-button{font-size:14px}.pause-button{min-height:44px;padding:8px 20px;border-radius:24px;background:#092532c9;border:1px solid #7e9596;font-size:14px}
.breathing{display:flex;flex-direction:column;align-items:center;padding:8px 20px 12px}.breath-orbit{position:relative;width:230px;height:230px;display:grid;place-items:center}.breath-orbit::before,.breath-orbit::after{content:'';position:absolute;inset:0;border-radius:50%;border:1px solid #b5ddd34f}.breath-orbit::after{inset:24px}.breath-orb{position:absolute;width:146px;height:146px;border-radius:50%;background:radial-gradient(circle at 40% 32%,#c9efdf,#578e88);box-shadow:0 0 50px #abdac43b;transform:scale(1);transition:transform var(--breath-duration,4s) linear}.breath-orb.inhale{transform:scale(1.46)}.breath-copy{position:relative;z-index:1;text-align:center;color:#08262c}.breath-copy strong{display:block;font-size:22px;font-weight:600}.breath-copy span{font-size:16px}.breath-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:14px}.breath-actions label{font-size:14px}.breath-actions select{min-height:44px;background:#0d2d39;border:1px solid #86a29c;color:var(--ink);border-radius:8px;padding:6px}.breath-note{font-size:14px;text-align:center;background:#071e29d9;border-radius:8px;padding:8px 12px;margin:16px 0 0;color:#deebeb;max-width:470px}
.grounding,.completion{width:min(460px,90%);margin:18px auto 24px;text-align:center;background:#08232ef2;border:1px solid #6e988970;border-radius:18px;padding:24px}.sense-icon{font-size:30px;color:var(--gold)}.grounding h3,.completion h3{font-size:26px;line-height:1.45;font-weight:400;margin:8px 0 12px}.grounding>p,.completion p{font-size:16px;color:#d9e6e8;margin:0 0 20px}.sense-tokens{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;direction:ltr;margin-bottom:12px}.sense-token{width:48px;height:48px;border:1px solid #96b6ac;border-radius:50%;background:#1b3c46;font-size:18px}.sense-token[aria-pressed=true]{background:var(--mint);color:#103331}.grounding .sense-hint{font-size:14px;margin:8px 0 14px}.ground-actions{display:flex;flex-direction:column;align-items:center;gap:6px}.completion-symbol{font:44px/1 Georgia,serif;color:var(--mint)}.completion .text-button{display:block;margin:8px auto 0}.completion{margin-top:36px}.resting .stage-caption{padding-top:56px}.resting .scene-shade{background:linear-gradient(180deg,#03141d99,transparent 70%,#03141ddd)}
.pause-overlay{position:absolute;inset:0;z-index:5;background:#08232ff5;backdrop-filter:blur(10px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}.pause-overlay>span{font-size:48px;color:var(--gold)}.pause-overlay h3{font-size:30px;font-weight:400;margin:16px 0 8px}.pause-overlay p{margin:0 0 24px;color:var(--muted)}footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:16px 0;font-size:13px;color:var(--muted)}footer>span:first-child{white-space:nowrap}.inline-button{background:transparent;text-decoration:underline;text-underline-offset:4px;padding:8px;min-height:44px;font-size:inherit;color:var(--mint)}
dialog{width:min(560px,calc(100% - 28px));max-height:85dvh;overflow:auto;margin:auto;background:var(--surface);border:1px solid #719e90;border-radius:20px;padding:24px;color:var(--ink)}dialog::backdrop{background:#020f19cd;backdrop-filter:blur(6px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.dialog-top h2,dialog h2{font-size:28px;line-height:1.4;font-weight:400;margin:0 0 10px}.dialog-top h2{margin:0}dialog h3{font-size:19px;font-weight:500;margin:22px 0 6px}dialog p{font-size:15px;color:#d1e0e2;line-height:1.8}.dialog-intro{margin:12px 0 16px}.preference{display:flex;align-items:flex-start;gap:14px;padding:16px 0;border-top:1px solid var(--line);cursor:pointer}.preference input{margin-top:4px}.preference strong{display:block;font-size:16px;font-weight:500}.preference small{display:block;font-size:14px;line-height:1.7;color:var(--muted);margin-top:4px}.preference-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;border-top:1px solid var(--line);padding-top:18px}.tiny{font-size:14px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;right:16px;padding:12px;background:var(--mint);color:var(--bg);z-index:100}.skip-link:focus{top:8px}.noscript{padding:16px;background:var(--surface);text-align:center}
@keyframes glow{0%,100%{opacity:.75}50%{opacity:1;box-shadow:0 0 12px 5px #f8da96,0 0 30px 9px #f6ce7960}}
.reduced-motion *,.reduced-motion *::before,.reduced-motion *::after{animation:none!important;transition:none!important}.reduced-motion .breath-orb{transform:none!important}.is-paused *,.is-paused *::before{animation-play-state:paused!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.breath-orb{transform:none!important}}
@media(max-width:800px){:root{--header:72px;--nav:80px}.welcome{gap:28px}.welcome-art{height:400px}.welcome-links{flex-direction:column;gap:0}.stage{min-height:550px}.stage-caption h2{font-size:27px}.light-field{height:295px}.stage-bottom{padding-inline:18px}footer{align-items:flex-start;flex-direction:column;gap:0}}
@media(max-width:600px){:root{--header:68px;--nav:78px}.app{width:calc(100% - 32px)}.brand{font-size:18px;gap:7px}.brand-mark{font-size:34px}.brand small{font-size:8px}.toolbar{gap:6px}.utility{font-size:13px;padding:8px 11px}.welcome{display:flex;flex-direction:column;gap:22px;padding:18px 0 24px}.welcome-art{order:-1;width:100%;height:132px;border-radius:14px}.welcome-art img{object-position:52% 57%}.welcome-copy{width:100%;max-width:none}.eyebrow{font-size:13px}h1{font-size:34px;margin:10px 0 14px}.welcome-lead{font-size:15px;line-height:1.7;margin-bottom:12px}.welcome-sound{margin-bottom:10px;font-size:15px}.welcome-sound small{font-size:13px}.welcome-links{flex-direction:row;gap:6px}.welcome-links .text-button{font-size:13px;padding-inline:3px}.welcome-header{font-size:13px}.modes{gap:8px;padding:10px 0}.mode{flex-direction:column;gap:4px;font-size:14px;line-height:1.2;border-radius:10px;padding:6px 0}.mode>span{font-size:23px}.mode[aria-pressed=true]::after{display:none}.mode[aria-pressed=true]{box-shadow:inset 0 -3px 0 var(--mint)}#game{padding-top:6px;padding-bottom:18px}.stage{min-height:555px;border-radius:14px}.stage-header{min-height:48px;padding:12px 16px;font-size:13px}.progress{font-size:12px}.stage-caption{padding:10px 16px}.stage-caption h2{font-size:25px}.stage-caption p{font-size:14px}.light-field{height:290px;margin:10px 28px 14px}.stage-bottom{gap:10px;min-height:70px;padding:10px 14px 14px}.stage-bottom p{font-size:13px}.stage-tools{gap:6px}.stage-tools .text-button{font-size:13px;padding-inline:5px}.pause-button{padding-inline:14px;font-size:13px}.breathing{padding:4px 12px 8px}.breath-orbit{width:202px;height:202px}.breath-orb{width:132px;height:132px}.breath-copy strong{font-size:20px}.breath-actions{gap:8px}.breath-actions label{font-size:13px}.breath-actions .primary{font-size:15px;padding-inline:20px}.breath-note{font-size:13px;padding:8px;margin-top:12px}.grounding,.completion{padding:20px 16px;margin-top:16px}.grounding h3,.completion h3{font-size:24px}.grounding>p,.completion p{font-size:15px}.grounding .sense-hint{font-size:13px}.sense-tokens{gap:6px}.primary{font-size:15px}.start-button{font-size:18px}.completion .text-button{font-size:14px}.resting .stage-caption{padding-top:42px}dialog{padding:20px}dialog h2,.dialog-top h2{font-size:26px}.preference-footer{align-items:stretch;flex-direction:column}footer{font-size:12px;padding-block:12px}}
@media(max-width:360px){.app{width:calc(100% - 24px)}.brand{font-size:16px}.brand-mark{font-size:29px}.brand small{font-size:8px}.utility{padding-inline:9px;font-size:12px}.toolbar{gap:4px}.welcome-art{height:104px}.welcome{gap:16px;padding-top:14px}h1{font-size:30px;margin-bottom:12px}.welcome-sound span{gap:8px}.welcome-sound small{font-size:12px}.stage-caption h2{font-size:23px}.stage-bottom{flex-wrap:wrap;gap:2px}.stage-bottom p{flex-basis:100%}.stage-tools{margin-inline-start:auto}.breath-actions label{flex-basis:100%;text-align:center}.grounding{padding-inline:12px}.sense-tokens{gap:6px}}
