@font-face{font-family:DM Sans;src:url(/assets/dm-sans-regular.ttf) format("truetype");font-display:swap}
@font-face{font-family:DM Sans;src:url(/assets/dm-sans-semibold.ttf) format("truetype");font-weight:600;font-display:swap}
@font-face{font-family:DM Serif;src:url(/assets/dm-serif-regular.ttf) format("truetype");font-display:swap}
@font-face{font-family:DM Serif;src:url(/assets/dm-serif-italic.ttf) format("truetype");font-style:italic;font-display:swap}
.canvas-surface{
  position:relative;aspect-ratio:9 / 16;overflow:hidden;container-type:inline-size;
  background:#f8efe5;isolation:isolate;
}
.canvas-layer{position:absolute;overflow:hidden;min-width:0}
.canvas-layer-text{
  font-family:"DM Serif",Georgia,serif;font-size:calc(var(--canvas-font-size) * 1cqw);
  line-height:1.12;white-space:pre-wrap;overflow-wrap:anywhere;
}
.canvas-layer-text[data-font="sans"]{font-family:"DM Sans",Arial,sans-serif}
.canvas-layer-text[data-font="book"]{font-family:Georgia,"Times New Roman",serif}
.canvas-layer-text[data-font="mono"]{font-family:"Courier New",monospace}
.canvas-layer-text.is-bold{font-weight:700}
.canvas-layer-text.is-italic{font-style:italic}
.canvas-layer img,.canvas-layer video{display:block;width:100%;height:100%}
.canvas-shape-art{display:block;width:100%;height:100%;fill:currentColor;pointer-events:none}
.canvas-layer-content{box-sizing:border-box;width:100%;height:100%;opacity:var(--layer-opacity,1)}
.canvas-layer-content[data-plate="light"]{background:#fff8ef;border-radius:.3em;padding:.18em .25em}
.canvas-layer-content[data-plate="dark"]{background:#211921;border-radius:.3em;padding:.18em .25em}
.canvas-layer-content[data-frame="rounded"]{border-radius:14%;overflow:hidden}
.canvas-layer-content[data-frame="instant"]{box-sizing:border-box;background:#fff9ef;padding:3.5cqw 3.5cqw 6cqw;box-shadow:inset 0 0 0 1px #39252c22}
.canvas-layer-content[data-frame="reveal"] img{filter:blur(12px) brightness(.65)}
.canvas-layer [data-filter="warm"]{filter:sepia(.27) saturate(1.2) contrast(.97)}
.canvas-layer [data-filter="mono"]{filter:grayscale(1) contrast(1.08)}
.canvas-layer [data-filter="vivid"]{filter:saturate(1.45) contrast(1.08)}
.canvas-layer [data-filter="fade"]{filter:contrast(.83) saturate(.82) brightness(1.08)}
.canvas-ink{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;fill:none;stroke-linecap:round;stroke-linejoin:round}
.canvas-widget-face,.canvas-reveal{
  background:#fff7ee;color:#38252f;box-shadow:0 3px 14px #20162426;border:0;
  font:600 max(12px,4cqw)/1.22 "DM Sans",Arial,sans-serif;text-align:center;
}
.canvas-widget-face{width:100%;height:100%;display:grid;align-content:center;justify-items:center;gap:.35em;border-radius:12px;padding:6px;overflow-wrap:anywhere}
.canvas-widget-face span{font-variant-numeric:tabular-nums;font-weight:400}
.canvas-reveal{position:absolute;z-index:1;left:50%;top:50%;translate:-50% -50%;min-height:44px;padding:8px 14px;border-radius:100px;cursor:pointer;white-space:nowrap}
@media(prefers-reduced-motion:no-preference){
  html:not(.motion-paused) .canvas-scene.is-visible [data-motion="fade"]{animation:canvas-layer-fade .6s ease-out}
  html:not(.motion-paused) .canvas-scene.is-visible [data-motion="rise"]{animation:canvas-layer-rise .68s cubic-bezier(.2,.72,.25,1)}
  html:not(.motion-paused) .canvas-scene.is-visible [data-motion="pop"]{animation:canvas-layer-pop .62s cubic-bezier(.2,.78,.28,1)}
}
@keyframes canvas-layer-fade{from{opacity:0}}
@keyframes canvas-layer-rise{from{opacity:0;transform:translateY(14px)}}
@keyframes canvas-layer-pop{from{opacity:0;transform:scale(.75)}}
.canvas-celebration .canvas-scene{
  box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:10px;padding:64px 0 78px;min-height:100%;scroll-snap-align:start;
}
.canvas-celebration .canvas-surface{width:min(100%,540px,calc((100dvh - 145px) * .5625));flex:none;background:transparent}
.canvas-celebration .canvas-scene:has(audio) .canvas-surface{width:min(100%,500px,calc((100dvh - 210px) * .5625))}
.canvas-celebration audio{width:min(90%,360px);height:42px;flex:none}
.canvas-youtube{
  width:min(calc(100% - 32px),640px);padding:16px 0;text-align:center;color:#2d1723;
}
.canvas-youtube h2,.canvas-youtube a{
  display:table;margin:0 auto;padding:8px 13px;background:#fffaf3;border-radius:6px;color:#2d1723;
}
.canvas-youtube h2{font:400 clamp(24px,5vw,40px)/1.12 "DM Serif",Georgia,serif}
.canvas-youtube a{font-size:14px;margin-top:16px}
.canvas-youtube iframe,.canvas-youtube-load{
  display:block;width:100%;aspect-ratio:16 / 9;min-height:200px;border:0;margin-top:16px;
}
.canvas-youtube-load{background:#2d1723;color:#fffaf3;cursor:pointer;font:600 16px "DM Sans",Arial,sans-serif}
.canvas-youtube-load[hidden]{display:none}
@media(max-width:232px){
  .canvas-youtube{width:100%}
  .canvas-youtube-load{display:none}
}
