.advent-animation{--night:#0f1420;--snow:#f6f2e9;--gold:#d4a65a;--red:#c9341f;--ink:#1a1e33;--paper:#f6f2e9;--mono:monospace;--display:Arial, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);isolation:isolate;aspect-ratio:1/1.2;width:100%;min-width:0;min-height:400px;color:var(--snow);background:radial-gradient(at 28% 25%,#283255 0,#0000 60%),#0f1420;position:relative;overflow:hidden}.cal-host,.cal-stage{position:absolute;inset:0}.cal-canvas{touch-action:pan-y;cursor:grab;outline:none;width:100%;height:100%;display:block}.cal-canvas:active{cursor:grabbing}.cal-host{opacity:0;transition:opacity .9s var(--ease) .15s}.cal-stage.is-ready .cal-host{opacity:1}.cal-ui{opacity:0;transition:opacity .8s var(--ease) .7s}.cal-stage.is-ready .cal-ui{opacity:1}.cal-pre{z-index:2;pointer-events:none;animation:cal-pre-in .5s var(--ease) .2s both;place-content:center;justify-items:center;gap:26px;display:grid;position:absolute;inset:0}.cal-pre.is-leaving{animation:cal-pre-out .6s var(--ease) both}@keyframes cal-pre-in{0%{opacity:0;transform:translateY(10px)}}@keyframes cal-pre-out{to{opacity:0;filter:blur(6px);transform:scale(1.12)}}.cal-pre__cal{perspective:600px;width:156px;height:156px;position:relative}.cal-pre__board{background:#161b38;border-radius:6px;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #d4a65a8c,inset 0 0 0 5px #161b38,inset 0 0 0 6px #d4a65a59,0 30px 50px -24px #000c}.cal-pre__bind{z-index:3;background:var(--red);border-radius:2px;height:16px;position:absolute;top:30px;left:26px;right:26px;box-shadow:0 2px 4px #0000004d}.cal-pre__bind:after,.cal-pre__bind:before{content:"";background:#d9dbe2;border-radius:2px;width:16px;height:3px;position:absolute;top:6px}.cal-pre__bind:before{left:22%}.cal-pre__bind:after{right:22%}.cal-pre__stack{background:#e7dcc6;border-radius:0 0 3px 3px;position:absolute;inset:44px 30px 18px;box-shadow:0 3px 0 -1px #d9ccb2,0 6px 0 -2px #cdbfa3}.cal-pre__sheet{z-index:2;color:var(--ink);transform-origin:50% 0;backface-visibility:hidden;background:#f6f0e4;border-radius:0 0 3px 3px;place-content:center;justify-items:center;display:grid;position:absolute;inset:44px 30px 22px}.cal-pre__sheet small{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#1a1e3380;font-size:8px}.cal-pre__sheet b{font-family:var(--display);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:50px;font-weight:800;line-height:1}.cal-pre__sheet b.is-red{color:var(--red)}.cal-pre__sheet--flip{animation:.5s cubic-bezier(.4,0,.6,1) forwards cal-pre-flip;box-shadow:0 8px 18px -10px #00000080}@keyframes cal-pre-flip{0%{transform:rotateX(0)}55%{opacity:1}to{opacity:0;transform:rotateX(-160deg)translateY(-8px)}}.cal-pre__bar{background:#f6f2e91f;border-radius:2px;width:220px;height:2px;overflow:hidden}.cal-pre__bar i{background:linear-gradient(90deg, var(--red), var(--gold));transform-origin:0;height:100%;display:block}.cal-pre__bar.is-idle i{width:40%;animation:1.3s ease-in-out infinite cal-pre-idle}@keyframes cal-pre-idle{0%{transform:translate(-100%)}to{transform:translate(250%)}}.cal-pre__cap{width:220px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#f6f2e98c;justify-content:space-between;gap:16px;margin-top:-14px;font-size:10px;display:flex}.cal-pre__cap span:last-child{color:var(--gold);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion:reduce){.cal-pre__sheet--flip{display:none}.cal-pre,.cal-pre.is-leaving{animation-duration:10ms}}.cal-ui{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 14px;width:max-content;max-width:100%;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.cal-date{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;background:#f6f2e914;border:1px solid #f6f2e91f;border-radius:999px;padding:8px 14px;font-size:12px}.cal-date span{font-family:var(--display);color:var(--snow);font-size:14px;font-weight:800}.cal-date span.is-red{color:#ff7a63}.cal-tear{font:600 12px var(--display);letter-spacing:.02em;color:var(--night);background:var(--paper);cursor:pointer;transition:transform .25s var(--ease), background .2s;border:0;border-radius:999px;padding:9px 16px}.cal-tear:hover{background:#fff;transform:translateY(-1px)}.cal-tear:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.cal-hint{text-align:center;color:#f6f2e973;flex-basis:100%;font-size:12px}.advent-animation .cal-ui{width:calc(100% - 28px);bottom:18px}.advent-animation .cal-date{margin:0;font-size:10px}.advent-animation .cal-hint{margin:0;font-size:11px;line-height:1.5}.advent-animation .cal-pre__cap{font-size:10px}.advent-scene-loading{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;display:flex;position:absolute;inset:0}.advent-calendar-fallback{color:#1a1e33;background:#f6f0e4;border-top:18px solid #c9341f;flex-direction:column;gap:15px;max-width:85%;padding:20px;display:flex;box-shadow:0 3px #ded5c4,0 6px #c7bda9}.advent-calendar-fallback>span{letter-spacing:.08em;font-size:10px}.advent-calendar-fallback strong{color:#c9341f;font-size:100px;line-height:1}@media (max-width:767px){.advent-animation{aspect-ratio:1/1.3;min-height:360px;max-height:580px}}
