:root{color-scheme:dark;--lime:#d1ff38;--pink:#ff54b6;--cyan:#68e9ff}*{box-sizing:border-box}body{margin:0;background:#100b1c;color:#f4f1fa;font-family:'DM Sans',sans-serif;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{font:700 13px 'DM Sans',sans-serif;cursor:pointer;border:1px solid #ffffff29;border-radius:6px;color:inherit;background:#20172d;padding:12px 16px}button:hover{border-color:var(--lime)}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}header{height:86px;padding:14px 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff15}.wordmark{text-decoration:none;display:flex;flex-direction:column;align-items:center;color:#fff;width:max-content}.brand-name{display:flex;align-items:center;font:900 28px/.85 'Barlow Condensed',sans-serif;letter-spacing:-.4px}.brand-ball{height:.74em;width:.74em;margin:0 .02em}.brand-golf{font:700 12px 'Barlow Condensed';letter-spacing:7px;padding-left:7px;margin-top:4px;color:var(--lime)}a{color:inherit}.home{font-size:11px;font-weight:700;letter-spacing:1px;text-decoration:none}main{height:calc(100dvh - 117px);position:relative;min-height:380px;isolation:isolate}#view{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.hole-card,.score-card,.view-tools{position:absolute;z-index:2}.hole-card{top:27px;left:4vw;pointer-events:none;text-shadow:0 2px 10px #100b1c}.eyebrow{font-size:10px;letter-spacing:2.1px;font-weight:700;color:var(--cyan)}h1{font:800 clamp(24px,3.4vw,43px)/1 'Barlow Condensed',sans-serif;margin:8px 0}p{margin:8px 0}.hole-card p{font-size:10px;letter-spacing:1.7px;color:#c5bdd5}.hole-card p span{margin-left:14px}.tag{color:var(--lime)!important}.score-card{right:4vw;top:26px;text-align:center;background:#130d21b8;border:1px solid #ffffff26;border-radius:8px;padding:12px 20px;backdrop-filter:blur(8px)}.score-card span{display:block;font-size:9px;letter-spacing:1.8px;color:#b9aec9}.score-card strong{font:700 43px 'Barlow Condensed';color:var(--lime)}.view-tools{right:4vw;top:130px;display:flex;gap:8px}.view-tools button{font-size:10px;padding:9px 11px;background:#160e24b8}.view-tools button[aria-pressed=true]{color:var(--lime);border-color:var(--lime)}.bottom{position:absolute;bottom:18px;left:50%;transform:translateX(-50%);width:min(690px,92%);background:#130d21ee;border:1px solid #ffffff24;border-radius:12px;box-shadow:0 10px 40px #0006;padding:15px 20px 17px;backdrop-filter:blur(12px)}.instruction{margin-bottom:13px;text-align:center}.instruction b{display:block;font-size:12px;font-weight:500}.instruction span{display:block;font-size:10px;color:#ac9ebf;margin-top:5px}.controls{display:flex;gap:18px;align-items:center}.controls label{flex:1;font-size:10px;font-weight:700;letter-spacing:1.5px;min-width:0}.controls output{float:right;letter-spacing:0;color:var(--lime)}input[type=range]{display:block;width:100%;accent-color:var(--lime);height:25px;margin:5px 0 0;cursor:pointer}#putt,#replay{background:var(--lime);color:#161121;border-color:var(--lime);min-width:97px}.quiet{background:transparent;color:#b9aec9;border-color:transparent;padding:10px 2px}.charge{height:3px;position:absolute;bottom:0;left:12px;right:12px;overflow:hidden;border-radius:5px}.charge i{height:100%;width:45%;display:block;background:var(--lime);box-shadow:0 0 10px var(--lime)}footer{height:31px;display:flex;align-items:center;justify-content:space-between;padding:0 4vw;font-size:8px;letter-spacing:1px;color:#8f819e}footer a{font-size:10px;letter-spacing:0}.notice,.win{position:absolute;z-index:5;top:43%;left:50%;transform:translate(-50%,-50%);padding:28px;background:#160e24f5;border:1px solid #68e9ff66;border-radius:12px;text-align:center;width:min(410px,90%)}.notice p{font-size:12px;color:#b9aec9;line-height:1.6}.win h2{font:800 68px/.95 'Barlow Condensed';margin:14px 0;color:var(--lime)}.win p{font-size:14px;margin-bottom:24px}.win a{display:block;font-size:12px;margin-top:16px}.win[hidden],.notice[hidden]{display:none}@media(max-width:600px){header{height:65px}.brand-name{font-size:23px}.brand-golf{font-size:10px}.home{font-size:9px}main{height:calc(100dvh - 96px)}.hole-card{top:18px}.score-card{top:18px;padding:8px 14px}.score-card strong{font-size:34px}.score-card span{font-size:8px}.view-tools{top:111px}.view-tools button{font-size:9px;padding:8px}.bottom{padding:12px 14px 14px;bottom:12px}.controls{gap:12px;flex-wrap:wrap}.controls label{flex-basis:calc(50% - 12px)}#putt{flex:1;padding:11px}.quiet{width:70px}.instruction b{font-size:11px;line-height:1.45}.instruction span{font-size:9px}.hole-card p{font-size:9px}.hole-card p span{margin-left:9px}footer span{font-size:6px;letter-spacing:.3px}footer a{font-size:9px}}@media(max-height:600px) and (min-width:601px){header{height:60px}main{height:calc(100dvh - 91px)}.hole-card{top:15px}h1{font-size:28px}.bottom{bottom:10px;padding:10px 18px}.instruction{margin-bottom:5px}.instruction span{display:none}.view-tools{top:112px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}

.render-unavailable .bottom,.render-unavailable .view-tools{display:none}.render-unavailable #view{cursor:default}.render-unavailable .notice a{display:inline-block;color:var(--lime);font-weight:700;padding:10px 2px}.render-unavailable .notice{border-color:#68e9ff88}

/* Consistent neon Afterglow Mini Golf identity. */
.brand-name{color:#ddff72;text-shadow:0 0 3px #d1ff3880,0 0 13px #b6ff3b66,0 0 26px #b6ff3b26}.brand-ball{filter:drop-shadow(0 0 5px #d1ff3866)}.brand-golf{color:#ff9cd5;letter-spacing:3px;padding-left:3px;text-shadow:0 0 7px #ff54b677,0 0 18px #ff54b633}
