*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;background:#fff8f0;color:#4a2040;line-height:1.5;overflow-x:hidden;min-height:100dvh;width:100%}#root{min-height:100dvh;width:100%}button,input,textarea,select{font-family:inherit;font-size:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}input,textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}::-webkit-scrollbar{width:0;background:transparent}::selection{background:#c4a8e04d;color:#4a2040}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes cardReveal{0%{opacity:0;transform:translateY(24px) scale(.94) rotate(-1deg)}60%{opacity:1;transform:translateY(-4px) scale(1.01) rotate(.3deg)}to{opacity:1;transform:translateY(0) scale(1) rotate(0)}}.card-reveal{animation:cardReveal .7s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes heartBeat{0%{transform:scale(1)}25%{transform:scale(1.35)}50%{transform:scale(.95)}to{transform:scale(1)}}.heart-pop{animation:heartBeat .4s cubic-bezier(.34,1.56,.64,1)}@keyframes shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}.shimmer{animation:shimmer 1.5s ease-in-out infinite}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.slide-up{opacity:0;animation:slideUp .4s ease-out forwards}@keyframes weekCardIn{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.week-card-in{animation:weekCardIn .45s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes tabPulse{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.tab-pulse{animation:tabPulse .3s cubic-bezier(.34,1.56,.64,1)}@keyframes floatMascot{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.float{animation:floatMascot 3s ease-in-out infinite}.theme-crossfade{transition:opacity .25s ease,transform .25s ease}.theme-selector::-webkit-scrollbar{display:none}.print-cut-instruction{display:none}.print-card-container{position:fixed;top:-9999px;left:-9999px}@media print{*{print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}@page{size:letter portrait;margin:.5in}@page weekPage{size:letter landscape;margin:.5in}body.print-week-mode .print-week-container{page:weekPage}body.print-week-mode .print-week-page{page:weekPage;break-before:auto}body.print-week-mode .print-week-page+.print-week-page{break-before:page}.print-cut-instruction{display:block!important;visibility:visible!important}body:not(.print-week-mode){height:100vh!important;overflow:hidden!important}body *{visibility:hidden!important}.print-card-container,.print-card-container *{visibility:visible!important}.print-card-container{position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;background:#fff!important}.print-card{box-shadow:none!important;border-radius:0!important}.print-card-container .affirmation-card-root{width:4in!important;height:3in!important}.affirmation-card-root *{backdrop-filter:none!important;-webkit-backdrop-filter:none!important}body.print-week-mode .print-card-container,body.print-week-mode .print-card-container *{visibility:hidden!important}body.print-week-mode .print-week-container,body.print-week-mode .print-week-container *{visibility:visible!important}body.print-week-mode .print-week-container{position:absolute!important;top:0!important;left:0!important;width:100%!important;display:block!important;background:#fff!important}body.print-week-mode .print-week-page{display:block!important;min-height:100vh;box-sizing:border-box}body.print-week-mode .print-week-card{page-break-inside:avoid;flex-shrink:0}body.print-week-mode .print-week-card .affirmation-card-root{width:4in!important;height:3in!important}}
