*{margin:0;padding:0;box-sizing:border-box}body{background:#0a0a0a;color:#fff;font-family:Orbitron,-apple-system,sans-serif;overflow:hidden;height:100dvh;touch-action:none;user-select:none}#tap-app{position:fixed;inset:0;z-index:1}.screen{position:fixed;inset:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#000000eb;padding:24px}.screen.hidden{display:none!important}#title-screen .logo{font-size:clamp(52px,14vw,90px);font-weight:900;letter-spacing:2px;background:linear-gradient(135deg,#0f8,#0af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}#title-screen .logo span{font-size:clamp(18px,5vw,28px);display:block;-webkit-text-fill-color:#888;letter-spacing:4px;margin-top:4px}#title-screen .desc{font-family:Inter,sans-serif;font-size:clamp(14px,3.5vw,18px);color:#666;text-align:center;max-width:320px;line-height:1.5}.btn-start{padding:18px 48px;border-radius:999px;border:none;cursor:pointer;background:linear-gradient(135deg,#0f8,#0af);color:#000;font-family:Orbitron,sans-serif;font-size:clamp(16px,4vw,20px);font-weight:900;letter-spacing:2px;transition:box-shadow .2s,transform .1s}.btn-start:active{transform:scale(.96)}.btn-start:hover{box-shadow:0 0 32px #0f86}.topbar-links{position:fixed;top:0;left:0;right:0;height:56px;display:flex;justify-content:space-between;align-items:center;padding:0 14px;z-index:200;gap:10px}.topbar-links .brand-top{font-family:Orbitron,sans-serif;font-size:12px;font-weight:900;letter-spacing:2px;text-decoration:none;background:linear-gradient(135deg,#0f8,#0af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;flex-shrink:0}.topbar-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.lb-pill{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 13px;border-radius:999px;background:#0009;border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:gold;text-decoration:none;transition:background .2s}.lb-pill:hover{background:#ffd7001a;border-color:#ffd70059}.lb-pill svg{width:16px;height:16px;fill:currentColor;flex-shrink:0}.lb-pill span{font-family:Orbitron,sans-serif;font-size:10px;font-weight:700;letter-spacing:.08em}#auth-bar{display:flex;align-items:center}.btn-signin{padding:7px 14px;border-radius:999px;border:1px solid #333;background:transparent;color:#888;cursor:pointer;font-family:Inter,sans-serif;font-size:12px;font-weight:700;transition:border-color .2s,color .2s}.btn-signin:hover{border-color:#0f8;color:#0f8}.user-chip{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:#ffffff0f;border:1px solid #222}.user-chip img{width:22px;height:22px;border-radius:50%}.user-chip span{font-family:Inter,sans-serif;font-size:12px;color:#aaa;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-signout{background:none;border:none;color:#444;cursor:pointer;font-size:15px;line-height:1;padding:2px}.btn-signout:hover{color:#888}#countdown-screen .cd-text{font-size:clamp(80px,22vw,160px);font-weight:900;background:linear-gradient(135deg,#0f8,#0af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}#countdown-screen .cd-label{font-family:Inter,sans-serif;font-size:18px;color:#555;letter-spacing:2px}#results-screen .result-score{font-size:clamp(80px,22vw,140px);font-weight:900;line-height:1;background:linear-gradient(135deg,#0f8,#0af);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}#results-screen .result-label{font-family:Inter,sans-serif;font-size:16px;color:#555;letter-spacing:1px;margin-top:-8px}#results-screen .result-rank{font-family:Inter,sans-serif;font-size:22px;font-weight:700;color:#0f8;min-height:28px}.result-btns{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}.btn-action{display:flex;align-items:center;gap:8px;padding:14px 24px;border-radius:999px;border:1.5px solid #333;background:transparent;color:#ccc;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:700;transition:border-color .2s,color .2s,background .2s}.btn-action:hover{border-color:#0f8;color:#0f8}.btn-action:active{transform:scale(.96)}.btn-action svg{width:16px;height:16px}.btn-action-primary{background:linear-gradient(135deg,#0f8,#0af);border-color:transparent;color:#000}.btn-action-primary:hover{box-shadow:0 0 24px #00ff8859;color:#000}#rank-reveal{text-align:center;min-height:60px}.rank-teaser{font-family:Inter,sans-serif;font-size:14px;color:#555}.btn-watch-ad{margin-top:8px;padding:10px 20px;border-radius:999px;background:#ffaa001f;border:1px solid rgba(255,170,0,.3);color:#fa0;font-family:Inter,sans-serif;font-size:13px;font-weight:700;cursor:pointer;transition:background .2s}.btn-watch-ad:hover{background:#fa03}#share-modal{position:fixed;inset:0;z-index:300;background:#000000d9;display:flex;align-items:center;justify-content:center}#share-modal.hidden{display:none!important}.share-card{background:#111;border:1px solid #1a1a1a;border-radius:20px;padding:24px;width:min(380px,92vw);display:flex;flex-direction:column;gap:16px}.share-card h3{font-size:14px;letter-spacing:3px;color:#444;text-align:center}#share-canvas-wrap{width:100%;aspect-ratio:1200/630;position:relative;border-radius:10px;overflow:hidden;background:#0a0a0a}#share-canvas{width:100%;height:100%;display:block}.share-btns{display:grid;grid-template-columns:1fr 1fr;gap:8px}.share-btns button{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px;border-radius:10px;border:1px solid #222;background:#ffffff0a;color:#ccc;cursor:pointer;font-family:Inter,sans-serif;font-size:13px;font-weight:700;transition:background .2s,border-color .2s}.share-btns button:hover{background:#ffffff14;border-color:#333}.share-btns button:active{transform:scale(.97)}.share-btns button svg{width:16px;height:16px;fill:currentColor;flex-shrink:0}.btn-share-close{background:none;border:none;color:#444;cursor:pointer;font-family:Inter,sans-serif;font-size:13px;align-self:center}#save-toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%);background:#1a1a1a;border:1px solid #00ff88;border-radius:12px;padding:14px 24px;z-index:400;display:flex;flex-direction:column;align-items:center;gap:6px}#save-toast.hidden{display:none!important}#save-toast .toast-rank{font-family:Inter,sans-serif;font-size:18px;font-weight:700;color:#0f8}#save-toast .toast-msg{font-family:Inter,sans-serif;font-size:13px;color:#666}
