:root{--ink: #e5e7eb;--accent: #22d3ee;--fart: #FF6524;--background: #0b1220}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}*{-webkit-tap-highlight-color:transparent}html,body,*{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important;-webkit-touch-callout:none}img,svg,a,button{-webkit-user-drag:none;user-drag:none}html,body{height:100%;background:var(--background);overflow:hidden;overscroll-behavior:none;padding-bottom:env(safe-area-inset-bottom)}body{line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}ul,ol{list-style:none}a{text-decoration:none;color:inherit}button,input,textarea,select{font:inherit;border:none;background:none;outline:none}img,picture,video,canvas,svg{display:block;max-width:100%}html,body{height:100%;margin:0;color:var(--ink);font:500 16px/1.5 Patrick Hand SC,Comic Sans MS,cursive,sans-serif}main,.menu,.score,.gameover{min-height:100dvh}.menu{background:url(/infart-play/assets/images/menu/infart-menu-background.png) center/cover no-repeat;display:flex;justify-content:center}.title{text-align:center;font-size:128px;font-weight:700;text-transform:uppercase}.title .in{color:#fff}.title .fart{color:var(--fart)}.menu-content{display:grid;grid-template-rows:auto 1fr;align-items:center}.menu-content img{width:100%;max-width:500px}.menu-actions{display:flex;flex-direction:column;justify-self:center;align-self:center;gap:16px;width:100%;max-width:300px}.button{appearance:none;border:2px solid #475569;background:var(--background);color:var(--ink);width:100%;max-width:300px;padding:12px 16px;border-radius:12px;cursor:pointer;text-decoration:none;font-weight:700;font-size:32px;display:inline-block;text-align:center;letter-spacing:.04em;box-shadow:0 4px 14px #00000080,inset 0 1px #ffffff0d;transition:transform .15s ease,box-shadow .15s ease}.button.primary{background:var(--accent);color:var(--background);border-color:var(--accent);box-shadow:0 4px 20px #22d3ee66,inset 0 1px #fff3}.button.fart{background-color:var(--fart);color:var(--background);border-color:var(--fart);box-shadow:0 4px 20px #ff652466,inset 0 1px #fff3}canvas{display:block;margin:0 auto}.gameover{background:url(/infart-play/assets/images/menu/infart-gameover-background.png) center/cover no-repeat;display:flex;justify-content:center}.score{background:url(/infart-play/assets/images/menu/infart-score-background.png) center/cover no-repeat;display:flex;justify-content:center}.menu,.score,.gameover{overflow:hidden}.score-content{display:grid;grid-template-rows:auto 1fr;align-items:center;width:100%;padding:0 16px}.score-second-row{display:flex;flex-direction:column;align-items:center;width:100%}.score-table{display:grid;gap:8px;max-width:600px;width:100%;margin-bottom:16px;border-radius:16px}.score-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid #334155;border-radius:8px;background:var(--background);gap:16px;flex-wrap:wrap}.score-label{font-size:28px;font-weight:500;color:var(--ink)}.score-value{font-size:28px;font-weight:700;color:var(--accent)}#game-wrapper{position:relative;width:100%;height:100svh;padding-bottom:env(safe-area-inset-bottom);box-sizing:border-box;display:flex;align-items:center;justify-content:center;overflow:hidden}@supports (height: 100dvh){#game-wrapper{height:min(100dvh,100svh)}}canvas{display:block}#game-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center}#orientation-overlay{display:none;position:fixed;inset:0;z-index:1000;background:#0b1220;align-items:center;justify-content:center;flex-direction:column;gap:16px;color:#fff;font:500 20px Patrick Hand SC,cursive,sans-serif}#orientation-overlay.visible{display:flex}.rotate-icon{width:4rem;height:4rem;animation:rotate-hint 1.5s linear infinite;transform-origin:center}@keyframes rotate-hint{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.button.disabled{opacity:.5;pointer-events:none;cursor:default}@keyframes slowPulseTitle{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes slowPulseBtn{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.title{animation:slowPulseTitle 3s ease-in-out infinite;transform-origin:center;will-change:transform}.button{animation:slowPulseBtn 3s ease-in-out infinite;transform-origin:center;will-change:transform}.menu-actions .button:nth-child(1){animation-delay:0s}.menu-actions .button:nth-child(2){animation-delay:.2s}.menu-actions .button:nth-child(3){animation-delay:.4s}.menu-actions .button:nth-child(4){animation-delay:.6s}.menu-actions .button:nth-child(5){animation-delay:.8s}.menu-actions .button:hover,.menu-actions .button:focus-visible{animation:none;transform:scale(1.12) rotate(-1.5deg);box-shadow:0 8px 28px #0009,inset 0 1px #ffffff14}.menu-actions .button.primary:hover,.menu-actions .button.primary:focus-visible{box-shadow:0 8px 32px #22d3ee99,inset 0 1px #ffffff40}.menu-actions .button.fart:hover,.menu-actions .button.fart:focus-visible{box-shadow:0 8px 32px #ff652499,inset 0 1px #ffffff40}.menu-actions .button:nth-child(2n):hover,.menu-actions .button:nth-child(2n):focus-visible{transform:scale(1.12) rotate(1.5deg)}.menu-actions .button:active{animation:none!important;transform:scale(.95)!important;box-shadow:0 2px 8px #0006!important;transition:transform .08s ease,box-shadow .08s ease}@media (max-width: 600px){.title{font-size:60px;margin-top:32px}.score-label,.score-value{font-size:22px}.button{font-size:24px;padding:10px 14px}}@media (max-width: 400px){.title{font-size:48px;margin-top:24px}.score-label,.score-value{font-size:18px}.button{font-size:20px;padding:8px 12px}}@media (max-height: 450px) and (orientation: landscape){.menu-content,.score-content{display:flex;flex-direction:row;justify-content:space-around;align-items:center;width:100%;padding:0 16px;height:100dvh}.title{font-size:42px;margin:0}.menu-actions,.score-second-row{margin-left:20px}.button{font-size:18px;padding:6px 10px;max-width:200px}.score-label,.score-value{font-size:16px}.score-row{padding:8px 12px}.score-table{margin-bottom:8px;gap:4px}}@media (hover: none) and (pointer: coarse){.button:hover{transform:none!important}}
