:root{color-scheme:light;--navy:#073269;--gold:#a97820;--blue:#dae8ef}
#picture.loading{visibility:hidden}#picture-error{font-size:14px;color:var(--gold)}
*{box-sizing:border-box}[hidden]{display:none!important}
body{margin:0;background:#fffdf7;color:var(--navy);font:18px/1.5 Arial,sans-serif}main{max-width:720px;margin:auto;padding:16px}nav{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}a{color:var(--navy);font-weight:700}header{text-align:center}h1{font:clamp(28px,5vw,40px)/1.15 Georgia,serif;margin:24px 0 10px}header p{font-size:16px;margin:12px 0 24px}
button{min-height:48px;padding:10px 20px;border:1px solid #b2c5ce;border-radius:12px;background:#fff;color:var(--navy);font:700 17px/1.3 Arial,sans-serif;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.4;cursor:default}button:hover:not(:disabled){background:#edf3f7}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.page{padding:38px 42px 42px;background:#fffdf8 url('/assets/seder/background.png') center/100% 100% no-repeat;text-align:center;min-width:0}.step-count{margin:0 0 20px;color:var(--gold);font-size:14px;font-weight:700}.hebrew{font-size:30px;font-weight:700;margin:0}h2{font:32px/1.2 Georgia,serif;margin:8px 0 2px}#picture{display:block;width:min(100%,320px);height:auto;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply;margin:0 auto}.description{max-width:440px;min-height:3em;margin:8px auto 20px;font-size:clamp(18px,3.6vw,22px)}.hear{min-width:166px;background:#fffaf0;border-color:#cfb472}.navigation{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0}.next{background:var(--navy);color:#fff;border-color:var(--navy)}.next:hover:not(:disabled){background:#12497c}
.step-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;max-width:410px;margin:20px auto 14px}.step-picker button{padding:5px;min-width:0;min-height:44px;font-size:15px;border-radius:50%}.step-picker button[aria-current="step"]{background:var(--navy);color:#fff;border-color:var(--navy)}.restart{display:block;margin:auto;font-size:15px;background:transparent}.credit{text-align:center;font-size:11px;line-height:1.6;margin:24px 0 10px}.gate{padding:24px;border:1px solid #cfb472;border-radius:16px;background:#fff;margin:24px auto}.gate h2{font-size:26px}.gate p{font-size:16px}#loading{text-align:center;padding:24px}
@media(max-width:420px){main{padding:12px}.page{padding:34px 28px 38px}.step-count{margin-bottom:16px}.hebrew{font-size:27px}h2{font-size:29px}header p{font-size:15px}.description{min-height:4.5em}.step-picker{gap:3px}.step-picker button{min-height:44px}}
