:root{--paper:#f7f3e9;--ink:#35483b;--muted:#818779;--red:#9c4d3e;--line:#dadbcb;--gold:#b48d4b;--green:#536b51}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23867957' opacity='.035' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button{border:0;background:none}svg{width:100%;height:100%}button svg{pointer-events:none}.masthead{max-width:1280px;padding:28px 42px 24px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{color:var(--ink);text-decoration:none;display:flex;gap:12px;align-items:center}.brand>svg{width:38px;height:43px;fill:none;stroke:var(--green);stroke-width:1.6;stroke-linecap:round}.brand>span{font:27px Georgia,serif;letter-spacing:.2px}.brand i{font-weight:normal;font-size:23px}.brand small{display:block;font:8px Arial,sans-serif;letter-spacing:1.9px;margin-top:8px}.edition{font:italic 16px Georgia,serif;color:var(--muted)}.quiet{display:flex;align-items:center;gap:8px;font-size:11px;min-height:44px}.quiet span:first-child{width:18px;height:18px}.tabs{display:flex;justify-content:center;gap:10px;margin:30px auto 0;width:max-content;max-width:100%;padding:5px;border:1px solid var(--line);border-radius:40px}.tabs button{display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 24px;border-radius:30px;font-size:13px;min-height:46px;white-space:nowrap;transition:background .2s}.tabs button.active{background:var(--green);color:#fff9ec}.tabs button:not(.active):hover{background:#e9ebdd}.tab-icon{width:20px;height:20px;display:block}.intro{text-align:center;padding:35px 16px 0}.eyebrow{font-size:9px;letter-spacing:2.4px;color:var(--gold);font-weight:600}h1{font:normal clamp(34px,4.6vw,55px)/1.1 Georgia,serif;margin:13px 0 14px;letter-spacing:-1.2px}h2{font:normal 25px Georgia,serif;margin:8px 0 12px}.intro p{color:#798071;font-size:14px;margin:0}.experience{max-width:1010px;margin:0 auto}.stage{position:relative;width:100%;aspect-ratio:3/2;isolation:isolate;overflow:hidden;user-select:none;-webkit-user-select:none}.stage>img{width:100%;height:100%;object-fit:contain;display:block;mix-blend-mode:multiply;pointer-events:none}#scene-layer{position:absolute;inset:0}.hotspot{position:absolute;transform:translate(-50%,-50%);min-width:44px;min-height:44px;border-radius:50%;z-index:2}.hotspot:focus-visible{outline-offset:0}.hotspot:after{content:'';position:absolute;inset:10%;border:1px solid transparent;border-radius:50%;transition:.25s}.hotspot:hover:after{border-color:#ae8b5870;background:#fff7d51a}.candle-hotspot{width:12%;height:42%}.candle-hotspot:after{inset:10% 4%;border-radius:30px}.flame-wrap{position:absolute;left:50%;top:5%;width:30%;height:22%;transform:translate(-50%,-100%);pointer-events:none;opacity:0;transition:opacity .4s}.lit .flame-wrap{opacity:1}.flame{position:absolute;inset:4% 24% 0;background:radial-gradient(ellipse at 50% 80%,#fffde2 0 15%,#fff3a6 30%,#f7b449 68%,#d78725 95%);border-radius:65% 35% 50% 50%;box-shadow:0 0 13px 7px #ffd37250;transform-origin:50% 100%;animation:flicker 2.8s ease-in-out infinite alternate}.flame-wrap:before{content:'';position:absolute;inset:-100% -200%;background:radial-gradient(ellipse,#ffd8793b,transparent 65%)}.candle-hotspot:nth-child(2n) .flame{animation-delay:-1.3s}.candle-hotspot:nth-child(3) .flame{animation-delay:-.7s}.candle-row{display:grid;grid-template-columns:repeat(4,1fr);max-width:650px;margin:-22px auto 0;position:relative;z-index:3;padding:0 16px;gap:7px}.candle-label{text-align:center;padding:10px 4px;border-top:1px solid var(--line);transition:.2s}.candle-label .number{font:italic 16px Georgia,serif;display:inline-flex;width:25px;height:25px;align-items:center;justify-content:center;border-radius:50%;color:var(--gold);margin-bottom:5px}.candle-label strong{display:block;font:18px Georgia,serif;font-weight:normal}.candle-label small{font-size:9px;color:var(--muted);display:block;margin-top:5px;letter-spacing:.4px}.candle-label[aria-pressed=true]{border-color:var(--gold)}.candle-label[aria-pressed=true] .number{background:#c4a56823}.hint{max-width:850px;margin:22px auto 30px;text-align:center;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 22px;color:#7b806e;font-size:12px}.tiny-spark{color:var(--gold);font-size:21px}.story{max-width:720px;margin:0 auto;padding:22px 28px 24px;border:1px solid var(--line);border-radius:5px;background:#fffcf43b}.story-heading{display:flex;align-items:center;gap:15px}.headphones{height:30px;width:30px;color:var(--gold)}.story-heading h2{font-size:24px;margin:4px 0 0}.story-heading .eyebrow{font-size:8px;letter-spacing:1.8px}.voice{margin-left:auto;color:var(--muted);font:italic 12px Georgia,serif}.player{display:flex;align-items:center;gap:17px;margin-top:21px}.play{border-radius:50%;width:46px;height:46px;background:var(--green);color:white;display:grid;place-items:center;flex-shrink:0}.play:hover{background:#405b41}.play span{width:19px;height:19px;display:block}.timeline{flex:1;min-width:0}.timeline-label{display:flex;justify-content:space-between;font-size:10px;gap:8px;margin-bottom:7px;color:#7e806e;font-variant-numeric:tabular-nums}.muted{padding:0 3px;opacity:.5}input[type=range]{width:100%;accent-color:var(--green);height:22px;margin:0;cursor:pointer}.icon-button{width:44px;height:44px;padding:12px;flex-shrink:0}.icon-button span{display:block;width:20px;height:20px}.closing{display:flex;align-items:center;justify-content:center;gap:22px;margin:42px 18px 46px;color:#93917b}.closing p{font:italic 15px Georgia,serif;text-align:center}.closing>span{font-size:22px;color:#bc9e61}footer{max-width:1196px;margin:auto;border-top:1px solid var(--line);padding:21px 0 30px;display:flex;justify-content:space-between;gap:15px;color:#8a8f7c;font-size:10px}footer span:first-child{font:16px Georgia,serif}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.betlem-actions,.tree-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;padding:0 16px;margin-top:-15px;position:relative;z-index:3}.pill{padding:10px 18px;border:1px solid var(--line);border-radius:30px;min-height:44px;font-size:12px;background:var(--paper)}.pill:hover{border-color:var(--green);background:#ebeddf}.pill[aria-pressed=true],.pill.primary{background:var(--green);color:#fff9ec;border-color:var(--green)}.pin{position:absolute;right:2px;bottom:0;width:20px;height:20px;border-radius:50%;background:#f7f3e9dc;border:1px solid #bda67d9c;display:grid;place-items:center;font-size:13px;color:#a1814d;pointer-events:none;box-shadow:0 2px 8px #55442710}.nativity-point{width:9%;height:17%}.lantern-light{position:absolute;left:66%;top:57%;width:24%;aspect-ratio:1;transform:translate(-50%,-50%);background:radial-gradient(ellipse,#ffe3a779,#ffd35c30 30%,transparent 68%);mix-blend-mode:soft-light;opacity:0;pointer-events:none;transition:opacity .6s}.lantern-on .lantern-light{opacity:1}.lantern-core{position:absolute;left:66%;top:57%;width:1.3%;aspect-ratio:.65;border-radius:40%;background:#fff0ad;box-shadow:0 0 15px 5px #ffd466;opacity:0;pointer-events:none}.lantern-on .lantern-core{opacity:.9}.comet{position:absolute;left:70%;top:17%;width:8%;aspect-ratio:1;filter:drop-shadow(0 0 6px #eac171);pointer-events:none;opacity:0;z-index:3}.comet svg{overflow:visible}.comet.shining{opacity:1;animation:shine 3s infinite alternate}.comet.flying{animation:fly 2.8s cubic-bezier(.18,.62,.28,1) both;opacity:1}.sheep-ring{position:absolute;left:24%;top:80%;width:12%;height:13%;transform:translate(-50%,-50%);pointer-events:none;border-radius:50%;opacity:0}.sheep-ring.bounce{animation:sheep-pet 1s ease-out}.baa{position:absolute;left:20%;top:65%;font:italic 17px Georgia,serif;opacity:0;pointer-events:none;color:#7c816a}.baa.show{animation:baa 1.8s ease-out}.ornament-tray{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin:-14px auto 17px;position:relative;z-index:3;padding:0 12px}.ornament-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:6px;min-width:82px;min-height:88px;padding:7px 10px;background:#fbf8ee;touch-action:none}.ornament-choice span{width:37px;height:40px;display:block}.ornament-choice small{font-size:10px;margin-top:4px;color:#7a7f6e}.ornament-choice.selected{border-color:var(--gold);background:#eee7d5;box-shadow:0 0 0 1px var(--gold)}.ornament{position:absolute;width:6.4%;aspect-ratio:1;transform:translate(-50%,-50%);padding:0;min-height:24px;min-width:24px;touch-action:none;z-index:4;filter:drop-shadow(0 2px 2px #35402326)}.ornament.selected{outline:1px dashed var(--gold);outline-offset:5px;border-radius:50%}.ornament svg{overflow:visible;pointer-events:none}.drag-preview{position:fixed;width:48px;height:48px;z-index:100;pointer-events:none;transform:translate(-50%,-50%);filter:drop-shadow(0 4px 3px #0003)}.tree-drop-hint{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:45%;text-align:center;font:italic 15px Georgia,serif;color:#fff8dc;text-shadow:0 1px 6px #23392a;background:#354c3540;border-radius:30px;padding:10px;pointer-events:none;opacity:0;transition:opacity .3s}.stromecek.choosing .tree-drop-hint{opacity:1}.bulb{position:absolute;width:1%;aspect-ratio:1;min-width:3px;border-radius:50%;background:#ffe8a5;box-shadow:0 0 8px 3px #ffd76e9c;opacity:0;pointer-events:none;transition:opacity .6s;z-index:3}.lights-on .bulb{opacity:1;animation:shine 3s ease-in-out infinite alternate}.topper{position:absolute;width:9%;height:auto;aspect-ratio:1;left:50%;top:10%;transform:translate(-50%,-50%);pointer-events:none;z-index:4;filter:drop-shadow(0 0 5px #e3b75e65)}.tree-summary{text-align:center;font-size:11px;color:var(--muted);margin:14px 0 0}.tool-status{min-height:22px;text-align:center;font-size:11px;color:var(--red);margin-top:10px}.error{color:var(--red);font-size:12px}dialog{background:var(--paper);color:var(--ink);border:1px solid #c3c5b3;border-radius:8px;max-width:490px;width:calc(100% - 36px);padding:35px;box-shadow:0 16px 80px #1826172b}dialog::backdrop{background:#283c3059;backdrop-filter:blur(5px)}dialog h2{font-size:30px}dialog p{font-size:14px;color:#6f7867;line-height:1.8}.close{position:absolute;right:10px;top:7px;width:44px;height:44px;font-size:27px;color:#8e927e}.dialog-actions{display:flex;gap:9px;flex-wrap:wrap}.gift-item{border-top:1px solid var(--line);padding:10px 0}.gift-item strong{font:20px Georgia,serif}.gift-item p{margin:4px 0;font-size:13px}.sound-off #sound-label{color:var(--muted)}@keyframes flicker{0%,100%{transform:rotate(-4deg) scale(1,.96)}45%{transform:rotate(3deg) scale(.92,1.05)}70%{transform:rotate(-1deg) scale(1.04,1)}}@keyframes shine{from{filter:drop-shadow(0 0 3px #eac171);opacity:.83}to{filter:drop-shadow(0 0 11px #eac171);opacity:1}}@keyframes fly{0%{left:-18%;top:5%;transform:rotate(-20deg);opacity:0}10%{opacity:1}65%{left:55%;top:10%;transform:rotate(5deg)}100%{left:70%;top:17%;transform:rotate(0);opacity:1}}@keyframes sheep-pet{0%{opacity:0;box-shadow:0 0 0 0 #d8bf87}30%{opacity:1}100%{opacity:0;box-shadow:0 0 0 20px #d8bf8700}}@keyframes baa{0%{opacity:0;transform:translateY(12px)}20%,65%{opacity:1}100%{opacity:0;transform:translateY(-12px)}}@media(min-width:1100px){.stage{margin-top:-20px}.intro{position:relative;z-index:1}.experience{max-width:950px}.stage.venec{margin-top:-65px}.stage.stromecek{max-width:850px;margin-left:auto;margin-right:auto;margin-top:10px}.stage.betlem{margin-top:-10px}}@media(max-width:700px){.masthead{padding:19px 19px 18px;gap:5px}.brand>span{font-size:23px}.brand small{font-size:6.5px;letter-spacing:1.5px}.brand>svg{width:30px;height:36px}.brand{gap:8px}.edition{display:none}.quiet{font-size:0;gap:0;padding:7px}.quiet span:first-child{width:21px;height:21px}.tabs{margin-top:23px;gap:2px;padding:4px}.tabs button{padding:10px 13px;font-size:11px;gap:6px}.tab-icon{width:16px;height:16px}.intro{padding-top:28px}.eyebrow{font-size:8px;letter-spacing:1.9px}h1{margin-top:10px;font-size:39px}.intro p{font-size:12px;max-width:300px;margin:auto;line-height:1.7}.stage{margin-top:8px}.candle-row{margin-top:-2px;padding:0 18px;gap:7px}.candle-label strong{font-size:16px}.candle-label small{font-size:8px}.candle-label{padding:9px 1px}.hint{font-size:11px;margin:19px auto 24px;align-items:flex-start;gap:8px;line-height:1.7}.tiny-spark{line-height:1.2}.story{margin:0 18px;padding:20px 18px}.story-heading{gap:10px}.headphones{height:24px;width:24px}.story-heading h2{font-size:21px}.voice{display:none}.story-heading .eyebrow{font-size:7px}.player{gap:10px}.play{width:42px;height:42px}.timeline-label{font-size:9px}.icon-button{width:35px;padding:9px}.closing{gap:10px;margin:29px 18px}.closing p{font-size:13px;max-width:240px;line-height:1.8}footer{margin:0 19px;padding-top:17px;display:block;text-align:center}footer span{display:block;margin-bottom:9px}.betlem-actions,.tree-actions{margin-top:7px;gap:7px}.pill{padding:9px 13px;font-size:11px}.ornament-tray{gap:5px;margin:6px auto 14px}.ornament-choice{min-width:59px;min-height:76px;padding:5px 7px}.ornament-choice span{width:30px;height:34px}.ornament-choice small{font-size:8px}.ornament{width:7%}.tree-drop-hint{font-size:10px;padding:7px;width:48%}.pin{width:16px;height:16px;font-size:11px;right:0;bottom:0}.baa{font-size:12px}.tree-summary{font-size:10px}.tool-status{font-size:10px;padding:0 15px}dialog{padding:30px 25px}.flame-wrap{width:32%;top:3%;height:21%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.comet.flying{left:70%;top:17%;opacity:1}}
/* The illustration coordinates follow the painted details, so flames meet the wicks. */
.lantern-light{left:56.5%;top:61.5%}.lantern-core{left:56.5%;top:61.5%;width:1%;height:2.5%;aspect-ratio:auto}.sheep-ring{left:23%;top:84%}.baa{left:18%;top:69%}.stage>img{mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}button:disabled{opacity:.4;cursor:default}.stage.venec{margin-top:-115px}.intro{position:relative;z-index:1;pointer-events:none}@media(max-width:700px){.stage.venec{margin-top:-30px}}
.flame-wrap{top:6.3%}.topper{top:3.8%}.stage>img{mask-image:radial-gradient(ellipse 80% 90% at 50% 50%,#000 55%,transparent 90%);-webkit-mask-image:radial-gradient(ellipse 80% 90% at 50% 50%,#000 55%,transparent 90%)}@media(max-width:700px){.flame-wrap{top:6.3%}.topper{width:10%}}
.stage>img{transition:opacity .25s}.flame-wrap{top:6.3%}
.footer-info{font-size:12px;min-height:44px;padding:8px 15px;border:1px solid var(--line);border-radius:25px;margin-top:-10px}.footer-info:hover{background:#e9ebdd}.project-credit{margin:24px 0;text-align:center;padding:18px 10px 0;border:1px solid var(--line);border-radius:5px;background:#fff}.project-logo{width:240px;height:180px;margin:5px auto 0;overflow:hidden;position:relative}.project-logo img{position:absolute;width:300px;height:300px;max-width:none;left:-30px;top:-66px}.about-tagline{font-style:italic}.about-note{font-size:11px!important;color:var(--muted)!important}#about-dialog{max-height:calc(100dvh - 36px);overflow:auto}#about-dialog h2{font-size:33px}#about-dialog>.pill{width:100%;margin-top:8px}@media(max-width:700px){.brand>span{font-size:23px;letter-spacing:-.4px}.brand small{letter-spacing:1.2px;font-size:6.5px}.footer-info{margin:3px auto 17px;display:block}#about-dialog{padding:30px 23px 24px}.project-logo{max-width:100%}}
.project-logo{width:250px;height:auto;aspect-ratio:25/18}.project-logo img{width:120%;height:auto;left:-10%;top:-36.6%}
.music-panel{max-width:720px;margin:0 auto 16px;display:flex;align-items:center;gap:15px;border-top:1px solid var(--line);padding:15px 4px 0}.music-toggle{display:flex;gap:9px;align-items:center;min-height:44px;font-size:11px;white-space:nowrap;padding:8px 12px;border:1px solid var(--line);border-radius:28px}.music-toggle>span:first-child{font-size:21px;color:var(--gold)}.music-toggle[aria-pressed=true]{background:#e9ecdf}.music-track{flex:1;min-width:0;font-size:10px;color:#7b806e}.music-track .eyebrow{font-size:7px;letter-spacing:1.3px;display:block;margin-bottom:4px}.music-track #music-status{display:block}.music-volume{font-size:9px;color:var(--muted);width:130px;flex-shrink:0}.music-volume span{display:block;margin-bottom:3px}.music-volume input{height:23px}.music-credits{border-top:1px solid var(--line);padding-top:14px;margin:12px 0 20px;font-size:12px}.music-credits summary{cursor:pointer;padding:7px 0}.music-credits p{font-size:11px;line-height:1.6}.music-credits a{color:var(--green)}@media(max-width:700px){.music-panel{margin:0 18px 16px;gap:8px;flex-wrap:wrap;padding-top:12px}.music-track{flex-basis:calc(100% - 145px);font-size:9px}.music-volume{display:flex;align-items:center;gap:10px;width:100%;flex-basis:100%;margin:0 4px}.music-volume span{white-space:nowrap;margin:0}.music-volume input{flex:1}.music-toggle{padding:7px 10px;font-size:10px}}
