:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff8f0;--ink:#5c4033;--shadow:0 4px 14px #5c40332e;font-family:Fredoka,system-ui,sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0}html,body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:var(--bg);position:fixed;inset:0;overflow:hidden}#app{position:fixed;inset:0}#paint{touch-action:none;cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}#logo{top:max(10px, env(safe-area-inset-top));letter-spacing:.02em;background:linear-gradient(90deg,#ff4d6d,#ff9f1c,#ffd60a,#06d6a0,#4cc9f0,#9b5de5);color:#0000;pointer-events:none;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.6rem,6vw,2.4rem);font-weight:600;transition:opacity .6s;position:absolute;left:50%;transform:translate(-50%)}#logo.faded{opacity:0}#intro{pointer-events:none;width:0;height:0;position:absolute;top:50%;left:50%}#intro .star{filter:drop-shadow(0 2px 6px #ff9f1c80);width:64px;height:64px;animation:1.4s ease-in-out infinite star-pulse;position:absolute;transform:translate(-50%,-50%)}#intro .ripple{opacity:0;border:4px solid #ff9f1c;border-radius:50%;width:90px;height:90px;animation:2s ease-out infinite ripple;position:absolute;transform:translate(-50%,-50%)}#intro .ripple.r2{border-color:#4cc9f0;animation-delay:1s}@keyframes star-pulse{0%,to{transform:translate(-50%,-50%)scale(1)rotate(-8deg)}50%{transform:translate(-50%,-50%)scale(1.25)rotate(8deg)}}@keyframes ripple{0%{opacity:.8;transform:translate(-50%,-50%)scale(.5)}to{opacity:0;transform:translate(-50%,-50%)scale(2.2)}}.corner{top:max(10px, env(safe-area-inset-top));gap:10px;display:flex;position:absolute}.corner-left{left:max(10px, env(safe-area-inset-left))}.corner-right{right:max(10px, env(safe-area-inset-right))}.round-btn{width:64px;height:64px;color:var(--ink);box-shadow:var(--shadow);cursor:pointer;background:#fff;border:none;border-radius:50%;place-items:center;transition:transform .12s cubic-bezier(.34,1.56,.64,1);display:grid;position:relative}.round-btn svg{pointer-events:none;width:32px;height:32px}.round-btn:active{transform:scale(.86)}.round-btn.parent{opacity:.85;background:#f3ece4;width:52px;height:52px}.round-btn.parent svg{width:24px;height:24px}.round-btn.saved{color:#fff;background:#06d6a0;transform:scale(1.1)}#btn-clear{--hold:0deg}#btn-clear .hold-ring{background:conic-gradient(#ff4d6d var(--hold), transparent var(--hold));pointer-events:none;border-radius:50%;position:absolute;inset:-6px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 7px),#000 calc(100% - 6px));mask:radial-gradient(farthest-side,#0000 calc(100% - 7px),#000 calc(100% - 6px))}#btn-clear.holding{transform:scale(.92)}#btn-clear.poof{animation:.35s poof}@keyframes poof{0%{transform:scale(1.25)rotate(-6deg)}to{transform:scale(1)rotate(0)}}#toolbar{left:50%;bottom:max(12px, env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:var(--shadow);background:#ffffffeb;border-radius:28px;flex-direction:column;align-items:center;gap:10px;max-width:calc(100vw - 16px);padding:12px 14px;display:flex;position:absolute;transform:translate(-50%)}#colors,#brushes{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.color-dot{background:var(--c);cursor:pointer;border:4px solid #fff;border-radius:50%;flex:none;width:44px;height:44px;transition:transform .12s cubic-bezier(.34,1.56,.64,1);box-shadow:0 2px 6px #5c403340}.color-dot:active{transform:scale(.85)}.color-dot.selected{border-color:var(--ink);transform:scale(1.18)}.brush-btn{cursor:pointer;background:#fdf3e7;border:none;border-radius:20px;flex:none;place-items:center;width:64px;height:64px;transition:transform .12s cubic-bezier(.34,1.56,.64,1),background .12s;display:grid}.brush-btn svg{pointer-events:none;width:40px;height:40px}.brush-btn:active{transform:scale(.86)}.brush-btn.selected{background:#ffe8c7;transform:scale(1.1);box-shadow:inset 0 0 0 3px #ff9f1c}.no-gpu .brush-btn.fancy{display:none}.brush-btn.tool{background:#fff;box-shadow:inset 0 0 0 2px #f0e4d4}#btn-wiggle{margin-left:10px}.brush-btn.tool.active{background:#e8dcff;animation:.9s ease-in-out infinite tool-wobble;box-shadow:inset 0 0 0 3px #9b5de5}@keyframes tool-wobble{0%,to{transform:rotate(-3deg)scale(1.05)}50%{transform:rotate(3deg)scale(1.08)}}#template{object-fit:contain;pointer-events:none;mix-blend-mode:multiply;width:100%;height:100%;position:absolute;inset:0}#tpl-picker[hidden]{display:none}#tpl-picker{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:pan-y;background:#fff8f0f7;flex-direction:column;gap:14px;padding:14px;display:flex;position:fixed;inset:0;overflow-y:auto}.tpl-card{aspect-ratio:1;background:#fff;place-items:center;padding:10px;display:grid}.tpl-card img,.tpl-card svg{object-fit:contain;pointer-events:none;width:100%;height:100%}.tpl-blank svg{opacity:.5;width:55%;height:55%}@media (width<=430px){.color-dot{border-width:3px;width:36px;height:36px}.brush-btn{border-radius:17px;width:56px;height:56px}.brush-btn svg{width:34px;height:34px}#toolbar{gap:8px;padding:10px}#colors,#brushes{gap:6px}.round-btn{width:56px;height:56px}.round-btn.parent{width:44px;height:44px}.corner{gap:8px}}@media (orientation:landscape){#toolbar{left:auto;right:max(12px, env(safe-area-inset-right));flex-direction:row;max-height:calc(100vh - 24px);top:50%;bottom:auto;transform:translateY(-50%)}#colors,#brushes{flex-direction:column}}@media (orientation:landscape) and (height<=560px){.color-dot{border-width:3px;width:34px;height:34px}.brush-btn{border-radius:15px;width:48px;height:48px}.brush-btn svg{width:30px;height:30px}#toolbar{gap:8px;padding:8px}#colors,#brushes{gap:5px}}.color-dot,.brush-btn{position:relative}.badge{pointer-events:none;color:#fff;place-items:center;display:none;position:absolute}.color-dot .badge{filter:drop-shadow(0 1px 2px #00000073);inset:0}.color-dot .badge svg{width:55%;height:55%}.brush-btn .badge{background:#06d6a0;border-radius:50%;width:20px;height:20px;top:-4px;right:-4px;box-shadow:0 1px 3px #5c403359}.brush-btn .badge svg{width:12px;height:12px}.selected .badge{display:grid}.round-btn.parent.is-muted{opacity:.55}.nudge{pointer-events:none;filter:drop-shadow(0 2px 5px #ff9f1c80);width:44px;height:44px;animation:1.6s forwards nudge-pop;position:absolute}@keyframes nudge-pop{0%{opacity:0;transform:scale(0)rotate(-20deg)}30%{opacity:1;transform:scale(1.15)rotate(6deg)}60%{opacity:1;transform:scale(.95)rotate(-4deg)}to{opacity:0;transform:scale(.4)rotate(10deg)}}#replay-shield{z-index:40;background:0 0;position:fixed;inset:0}#gallery[hidden]{display:none}#gallery{z-index:50;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:pan-y;background:#fff8f0f7;flex-direction:column;gap:14px;padding:14px;display:flex;position:fixed;inset:0;overflow-y:auto}.gallery-head{justify-content:space-between;display:flex;position:sticky;top:0}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.gal-card{box-shadow:var(--shadow);cursor:pointer;aspect-ratio:3/4;background:#fff;border:3px solid #fff;border-radius:18px;position:relative;overflow:hidden}.gal-card.current{border-color:#06d6a0}.gal-card img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.gal-btn{width:44px;height:44px;color:var(--ink);cursor:pointer;background:#ffffffeb;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:8px;box-shadow:0 2px 6px #5c40334d}.gal-btn svg{pointer-events:none;width:22px;height:22px}.gal-play{color:#06d6a0;left:8px}.gal-del{color:#ff4d6d;right:8px}.gal-film{color:#9b5de5;top:8px;bottom:auto;left:8px}.shield-dl{color:#fff;background:#06d6a0;width:88px;height:88px;animation:1s ease-in-out infinite dl-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.shield-dl svg{width:44px;height:44px}@keyframes dl-pulse{0%,to{transform:translate(-50%,-50%)scale(1)}50%{transform:translate(-50%,-50%)scale(1.12)}}.gal-confirm{background:#ffffffd9;grid-auto-flow:column;place-items:center;gap:14px;display:none;position:absolute;inset:0}.gal-card.confirming .gal-confirm{display:grid}.gal-confirm .gal-btn{width:56px;height:56px;position:static}.confirm-yes{color:#06d6a0}.confirm-no{color:#ff4d6d}#grownups-link{margin:6px auto max(6px, env(safe-area-inset-bottom));color:#5c403380;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:10px 16px;font-family:system-ui,sans-serif;font-size:.8rem;position:relative;overflow:hidden}#grownups-link .hold-bar{background:#5c403366;width:0;height:3px;position:absolute;bottom:0;left:0}#grownups-link.holding .hold-bar{width:100%;transition:width 2s linear}
