@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;600;700;800&display=swap");:root{--primary:hsl(262,83%,58%);--primary-light:hsl(262,83%,72%);--primary-dark:hsl(262,83%,45%);--primary-bg:hsl(262,40%,96%);--secondary:hsl(45,100%,51%);--secondary-light:hsl(45,100%,65%);--success:hsl(142,71%,45%);--success-light:hsl(142,71%,90%);--success-bg:hsl(142,40%,95%);--error:hsl(0,72%,63%);--error-light:hsl(0,72%,90%);--external:hsl(210,70%,55%);--external-light:hsl(210,70%,90%);--warning:hsl(38,92%,50%);--warning-light:hsl(38,92%,90%);--text:hsl(262,30%,15%);--text-muted:hsl(262,15%,50%);--text-light:hsl(0,0%,100%);--bg:hsl(262,30%,97%);--bg-card:hsl(0,0%,100%);--bg-card-hover:hsl(262,20%,98%);--border:hsl(262,15%,88%);--border-light:hsl(262,15%,93%);--shadow-sm:0 2px 8px hsla(262,50%,30%,0.08);--shadow-md:0 4px 16px hsla(262,50%,30%,0.12);--shadow-lg:0 8px 32px hsla(262,50%,30%,0.16);--shadow-glow:0 0 20px hsla(262,83%,58%,0.3);--michi-color:hsl(262,83%,58%);--michi-bg:hsl(262,60%,95%);--alex-color:hsl(175,84%,32%);--alex-bg:hsl(175,60%,95%);--max-width:480px;--radius-sm:12px;--radius-md:16px;--radius-lg:24px;--radius-full:9999px;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--font-family:"Outfit",-apple-system,BlinkMacSystemFont,sans-serif}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-family);background:var(--bg);color:var(--text);min-height:100dvh;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app-container{max-width:var(--max-width);margin:0 auto;min-height:100dvh;position:relative}h1,h2,h3{font-weight:800;line-height:1.2;letter-spacing:-.02em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.2rem}button{font-family:var(--font-family);cursor:pointer;border:none;outline:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:active{transform:scale(.96)}.card{background:var(--bg-card);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-lg);transition:transform .2s ease,box-shadow .2s ease}.card:hover{box-shadow:var(--shadow-md)}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes shake{0%,to{transform:translateX(0)}20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-4px)}80%{transform:translateX(4px)}}@keyframes starCollect{0%{transform:scale(0) rotate(0deg);opacity:0}50%{transform:scale(1.3) rotate(180deg);opacity:1}to{transform:scale(1) rotate(1turn);opacity:1}}@keyframes shimmer{0%{background-position:-200px 0}to{background-position:200px 0}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{transform:scale(0);opacity:0}70%{transform:scale(1.15)}to{transform:scale(1);opacity:1}}@keyframes flame{0%,to{transform:scaleY(1) scaleX(1)}25%{transform:scaleY(1.1) scaleX(.95)}50%{transform:scaleY(.95) scaleX(1.05)}75%{transform:scaleY(1.05) scaleX(.98)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-slideUp{animation:slideUp .4s ease-out}.animate-shake{animation:shake .5s ease-in-out}.animate-popIn{animation:popIn .4s cubic-bezier(.175,.885,.32,1.275)}.animate-fadeIn{animation:fadeIn .3s ease-out}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:var(--radius-full)}::selection{background:var(--primary-light);color:white}:focus-visible{outline:3px solid var(--primary-light);outline-offset:2px;border-radius:var(--radius-sm)}@supports (padding:max(0px)){.app-container{padding-left:max(var(--space-md),env(safe-area-inset-left));padding-right:max(var(--space-md),env(safe-area-inset-right));padding-bottom:max(var(--space-md),env(safe-area-inset-bottom))}}