:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-user-select:none;user-select:none;background:#f3e2ac;width:100%;height:100%;font-family:Trebuchet MS,Verdana,sans-serif;overflow:hidden}body:after{content:"";z-index:100;pointer-events:none;mix-blend-mode:multiply;background:radial-gradient(circle,#0000 55%,#1e1a086b 100%);position:fixed;inset:0}#app{width:100vw;height:100vh;position:relative}canvas{display:block}.hud{pointer-events:none;z-index:10;background:#fffcf0e0;border:2px solid #2a2419;border-radius:14px;flex-direction:column;align-items:center;padding:10px 24px;display:flex;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 4px #2a241959}.hud__hole{letter-spacing:2px;color:#3d7a2c;font-size:13px;font-weight:700}.hud__strokes{letter-spacing:2px;color:#2a2419;font-size:30px;font-weight:700;line-height:1.15}.hud__total{letter-spacing:2px;color:#2a2419;opacity:.75;font-size:12px;font-weight:700}.hud__best:not(:empty){text-align:center;letter-spacing:2px;color:#b0492f;border-top:1px solid #2a241933;width:100%;margin-top:4px;padding-top:4px;font-size:11px;font-weight:700}.overlay{text-align:center;pointer-events:auto;z-index:20;background:radial-gradient(circle,#f3e2ac8c 0%,#343e1eeb 100%);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;transition:opacity .3s;display:flex;position:absolute;inset:0}.overlay.hidden{display:none}.overlay__title{letter-spacing:8px;color:#fffcf0;text-shadow:3px 3px #2a2419,-2px -2px #2a2419,2px -2px #2a2419,-2px 2px #2a2419,0 10px 18px #14281466;font-size:56px;font-weight:700}.overlay__subtitle{letter-spacing:3px;color:#fffcf0;text-shadow:1px 2px #2a2419b3;font-size:16px;font-weight:700}.overlay__score{letter-spacing:2px;color:#ffe28a;text-shadow:1px 2px #2a2419cc;font-size:20px;font-weight:700}.overlay__card:not(:empty){background:#fffcf0eb;border:2px solid #2a2419;border-radius:14px;flex-direction:column;gap:6px;min-width:260px;padding:12px 18px;display:flex;box-shadow:0 4px #2a241959}.overlay__card-row{letter-spacing:1px;color:#2a2419;justify-content:space-between;gap:24px;font-size:14px;font-weight:700;display:flex}.overlay__hint{letter-spacing:1px;color:#fffcf0;text-shadow:1px 1px #2a241999;opacity:.95;max-width:420px;margin-top:6px;font-size:13px;font-weight:700;line-height:1.5}.countdown{pointer-events:none;z-index:25;letter-spacing:6px;color:#fffcf0;text-shadow:4px 4px #2a2419,-3px -3px #2a2419,3px -3px #2a2419,-3px 3px #2a2419;opacity:0;justify-content:center;align-items:center;font-size:150px;font-weight:700;display:flex;position:absolute;inset:0}.countdown.is-shown{animation:.75s ease-out countdown-pop}@keyframes countdown-pop{0%{opacity:0;transform:scale(.4)}20%{opacity:1;transform:scale(1.12)}40%{transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.3)}}.banner{pointer-events:none;z-index:24;letter-spacing:5px;color:#ffe28a;text-shadow:3px 3px #2a2419,-2px -2px #2a2419,2px -2px #2a2419,-2px 2px #2a2419;opacity:0;font-size:46px;font-weight:700;position:absolute;top:24%;left:50%;transform:translate(-50%)scale(.6)}.banner.is-shown{animation:1.5s ease-out banner-flash}@keyframes banner-flash{0%{opacity:0;transform:translate(-50%)scale(.6)}15%{opacity:1;transform:translate(-50%)scale(1.1)}30%{transform:translate(-50%)scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%)scale(1.05)}}@media (width<=479px){.hud{top:52px}}
