@import url('https://fonts.googleapis.com/css2?family=Bangers&family=DM+Sans:wght@500;700;900&display=swap');
:root{--ink:#17151d;--paper:#fff9e9;--yellow:#ffd633;--pink:#ff5d8f;--blue:#61d8ff;--green:#53df88;--red:#ff554d}
*{box-sizing:border-box}body{margin:0;background:var(--blue);color:var(--ink);font-family:'DM Sans',sans-serif;background-image:radial-gradient(#ffffff88 1px,transparent 1px);background-size:16px 16px}main{max-width:760px;min-height:100vh;margin:auto;background:var(--paper);border-inline:5px solid var(--ink);box-shadow:12px 0 0 #0002,-12px 0 0 #0002;padding:18px 28px 26px;overflow:hidden}header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.logo{font-family:Bangers,cursive;font-size:clamp(38px,8vw,68px);line-height:.8;letter-spacing:2px;text-shadow:3px 3px 0 #fff,6px 6px 0 var(--pink)}.logo span{color:#fff;-webkit-text-stroke:2px var(--ink)}.model{font-size:11px;font-weight:900;background:var(--ink);color:white;padding:8px 10px;transform:rotate(2deg);max-width:190px}.hero{height:190px;position:relative;margin-top:12px}.burst{position:absolute;left:-8px;top:16px;background:var(--yellow);width:140px;height:140px;display:grid;place-content:center;text-align:center;font:25px/1 Bangers;clip-path:polygon(50% 0,61% 26%,82% 10%,78% 37%,100% 41%,78% 54%,96% 73%,69% 70%,68% 100%,51% 76%,35% 97%,33% 71%,5% 79%,23% 57%,0 45%,27% 39%,13% 16%,40% 28%)}.bubble{position:absolute;right:0;top:15px;width:72%;min-height:125px;background:white;border:4px solid var(--ink);border-radius:50%;padding:31px 40px;text-align:center;font-weight:900;font-size:clamp(18px,4vw,29px);box-shadow:7px 7px 0 var(--ink)}.bubble:after{content:'';position:absolute;bottom:-27px;left:28%;border:17px solid transparent;border-top:28px solid var(--ink);transform:rotate(12deg)}.bubble small{font-size:13px;color:#65606f}.machine{border:5px solid var(--ink);border-radius:24px 24px 8px 8px;padding:16px 22px 18px;background:#fff;box-shadow:8px 8px 0 var(--ink)}.labels{display:flex;justify-content:space-between;font:22px Bangers}.labels b:first-child{color:var(--red)}.labels b:last-child{color:#13aa50}.gauge{height:155px;position:relative;overflow:hidden;margin-top:-5px;background:conic-gradient(from 270deg at 50% 100%,var(--red) 0 45deg,var(--yellow) 45deg 90deg,var(--green) 90deg 135deg,transparent 135deg);border-radius:160px 160px 0 0;border:4px solid var(--ink);border-bottom:0}.gauge:after{content:'';position:absolute;inset:28px 28px 0;background:white;border-radius:140px 140px 0 0;border:3px solid var(--ink);border-bottom:0}.needle{position:absolute;z-index:3;bottom:4px;left:50%;width:42%;height:8px;background:var(--ink);border-radius:8px;transform-origin:0 50%;transform:rotate(-90deg);transition:transform .8s cubic-bezier(.2,1.7,.4,1)}.pin{position:absolute;z-index:4;width:28px;height:28px;border-radius:50%;background:var(--pink);border:5px solid var(--ink);left:calc(50% - 14px);bottom:-9px}.score{text-align:center;font:38px Bangers;margin-top:6px}.confidence{text-align:center;font-size:12px;font-weight:900;color:#676271}.controls{text-align:center;padding:25px 0 15px}button{border:4px solid var(--ink);background:var(--pink);color:var(--ink);font:24px Bangers;padding:14px 25px;box-shadow:6px 6px 0 var(--ink);cursor:pointer;letter-spacing:1px}button:active{transform:translate(4px,4px);box-shadow:2px 2px 0 var(--ink)}#stop{background:var(--yellow)}.timer,.status{margin-top:13px;font-size:12px;font-weight:900}.status{color:#5f5969}.tape{background:var(--yellow);border-block:3px solid var(--ink);margin:8px -40px;padding:12px 45px;transform:rotate(-1deg);font-size:13px;text-align:center}footer{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;padding-top:18px;font-size:10px;font-weight:700}footer a{color:inherit}.feeling{background:#e6d6ff!important}.limited{background:#ddd!important}@media(max-width:560px){main{border:0;padding:15px 16px}.model{max-width:130px}.hero{height:180px}.burst{width:110px;height:110px;font-size:20px}.bubble{width:76%;padding:28px 24px;min-height:118px}.gauge{height:130px}.machine{padding-inline:14px}.labels{font-size:18px}.score{font-size:32px}}
