*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{background:#2d1b4e;-webkit-tap-highlight-color:transparent;overscroll-behavior:none}input,select,button,textarea{font-family:inherit}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}@keyframes pulse-red{0%{box-shadow:0 0 #ef4444b3}70%{box-shadow:0 0 0 14px #ef444400}to{box-shadow:0 0 #ef444400}}.recording-btn{animation:pulse-red 1.4s ease-out infinite}.colibri-fly-root{position:fixed;pointer-events:none;z-index:200;width:0;height:0}.colibri-fly-bird{position:absolute;left:-14px;top:-14px;font-size:1.7rem;line-height:1;animation:colibri-fly 2.5s cubic-bezier(.2,.6,.4,1) forwards;filter:drop-shadow(0 0 6px rgba(240,196,106,.55))}.colibri-confetti{position:absolute;left:-6px;top:-6px;font-size:.9rem;line-height:1;color:#f0c040;text-shadow:0 0 4px rgba(240,196,106,.7);animation:confetti-burst 2.5s ease-out forwards}@keyframes colibri-fly{0%{transform:translate(0) scale(.6) rotate(0);opacity:0}12%{transform:translate(12px) scale(1) rotate(-4deg);opacity:1}to{transform:translate(240px) scale(.45) rotate(-8deg);opacity:0}}@keyframes confetti-burst{0%{transform:translate(0) scale(0);opacity:1}to{transform:translate(var(--cx),var(--cy)) scale(1.2);opacity:0}}@keyframes colibri-sway-slow{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}@keyframes colibri-sway{0%,to{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}@keyframes colibri-shake{0%,to{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(7deg) translateY(-2px)}}@keyframes colibri-shake-fast{0%,to{transform:rotate(-12deg) translate(-2px)}50%{transform:rotate(12deg) translate(2px,-3px)}}@keyframes colibri-panic{0%{transform:rotate(-18deg) translate(-3px) scale(1)}25%{transform:rotate(18deg) translate(3px,-4px) scale(1.06)}50%{transform:rotate(-12deg) translate(-3px,1px) scale(.96)}75%{transform:rotate(15deg) translate(2px,-2px) scale(1.04)}to{transform:rotate(-18deg) translate(-3px) scale(1)}}@keyframes colibri-pop{0%{opacity:0;transform:scale(.85) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}
