.calendar-studio{padding-bottom:48px}.calendar-intro{margin-bottom:36px}.calendar-intro>p:last-child{font-size:14px;line-height:1.8}@keyframes calendar-enter{0%{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur()}}@media (prefers-reduced-motion:no-preference){.calendar-studio [data-animate]{animation:.55s cubic-bezier(.22,1,.36,1) both calendar-enter}}.calendar-stage{isolation:isolate;border-radius:3px;place-items:center;min-height:670px;padding:60px 28px 64px;display:grid;position:relative;overflow:hidden}.coupon-stage{background-color:#d3d0c5;background-image:radial-gradient(at 15% 0,#e9e6dd 0%,#0000 70%),repeating-linear-gradient(110deg,#0000 0 3px,#a6a09108 3px 4px);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box}.calendar-stage:after{content:"";pointer-events:none;z-index:4;opacity:.15;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23000' filter='url(%23n)' opacity='.3' d='M0 0h180v180H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.stage-caption{color:#666459;font:8px var(--font-geist-mono),monospace;letter-spacing:.12em;justify-content:space-between;display:flex;position:absolute;top:21px;left:23px;right:23px}.coupon-object{aspect-ratio:390/664;filter:drop-shadow(1px 2px 1px #40332445)drop-shadow(9px 17px 14px #40332438);width:min(100%,320px);position:relative;transform:none}.coupon-print{width:100%;height:100%;display:block;overflow:visible}.punch-target{background:0 0;border:0;border-radius:50%;width:11.28%;height:6.6265%;position:absolute}.punch-target:disabled{cursor:default}.punch-target.is-today{cursor:pointer}.punch-target:focus-visible{outline-offset:2px;outline:2px solid #5b3155}.is-punching{animation:.3s ease-out paper-punch}.calendar-preview-note{text-align:center;color:var(--text-subtle);margin:10px 0;font-size:10px;line-height:1.8}.calendar-preview-note button{cursor:pointer;color:var(--text-secondary);margin-left:5px}.edition-description{border-top:1px solid var(--border-subtle);grid-template-columns:130px 1fr;gap:20px;margin-top:40px;padding-top:23px;display:grid}.edition-description>span{padding-top:4px}.edition-description p{font-size:12px;line-height:1.85}@keyframes paper-punch{40%{transform:translateY(3px)scale(.992)}}@media (max-width:480px){.calendar-stage{min-height:590px;padding:57px 25px}.coupon-object{width:min(100%,285px)}.edition-description{grid-template-columns:1fr;gap:10px}.stage-caption{font-size:7px;left:16px;right:16px}.calendar-instruction{font-size:11px}}@media (prefers-reduced-motion:reduce){.calendar-studio *,.calendar-studio :after{transition:none!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.litter-disc{color:#454d40;clip-path:polygon(50% 0%,65% 3%,78% 8%,90% 20%,97% 35%,100% 50%,96% 65%,89% 80%,73% 94%,59% 97%,55% 92%,51% 99%,47% 94%,42% 98%,26% 94%,11% 80%,3% 64%,0% 48%,4% 30%,15% 15%,31% 4%);background-color:#dfcbdc;background-image:radial-gradient(#80577860 .5px,#0000 .7px),repeating-linear-gradient(0deg,#0000 0 2px,#91618b28 2px 2.5px);background-size:2px 2px,100% 100%;place-items:center;width:25px;height:25px;margin-left:-12.5px;font:700 16px Arial,sans-serif;display:grid}.reset-state{color:var(--text-secondary);cursor:pointer;border-radius:5px;place-items:center;width:28px;height:28px;display:grid}.reset-state:hover{color:var(--text-heading);border-color:var(--text-subtle)}.reset-state:focus-visible{outline:2px solid var(--text-muted);outline-offset:3px}.reset-state:disabled{opacity:.4;cursor:default}.coupon-loose-tabs{pointer-events:none;z-index:3;position:absolute;inset:0;overflow:hidden}.coupon-loose-tab{pointer-events:none;will-change:transform;margin:0;position:absolute;top:0;left:0}.calendar-stage,.calendar-stage *{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.punch-target.is-future{cursor:pointer}.tab-dent{pointer-events:none;animation:.26s ease-out tab-dent-press}@keyframes tab-dent-press{0%{transform:scaleY(1)}35%{transform:translateY(1px)scaleY(.94)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.tab-dent{animation:none}}.stage-caption{align-items:center}.stage-caption .reset-state{width:28px;height:28px;font-size:inherit;color:inherit;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stage-caption .reset-state svg{width:1em;height:1em}.stage-caption .reset-state:hover{color:#38372f}
