:root{--gold: #2dd4bf;--gold-dark: #0f766e;--gold-rgb: 45,212,191;--gold-dark-rgb: 15,118,110}.px-header{display:flex;align-items:center;gap:10px;width:100%;max-width:360px;margin:2vh auto 12px;padding:0 8px}.round-badge-inline{padding:6px 12px;background:rgba(var(--gold-rgb),.12);border:1px solid rgba(var(--gold-rgb),.3);border-radius:999px;color:var(--gold);font-size:13px;font-weight:600;white-space:nowrap}.timer-bar-wrap{flex:1;height:10px;background:#ffffff14;border-radius:6px;overflow:hidden}.timer-bar{height:100%;background:linear-gradient(90deg,#4caf50,#f9d342,#e74c3c);width:100%;transition:width .2s linear}.timer-text{font-family:Bungee,cursive;font-size:16px;color:var(--gold);min-width:42px;text-align:right}.px-canvas-wrap{position:relative;width:100%;max-width:360px;margin:0 auto 12px;aspect-ratio:1 / 1;border-radius:16px;overflow:hidden;background:#111;border:1px solid rgba(255,255,255,.08);box-shadow:0 6px 24px #0006}.px-canvas-wrap canvas{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}.px-found-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1450288c;backdrop-filter:blur(2px);color:#fff;text-align:center;padding:16px}.px-countdown-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000008c;color:var(--gold);font-family:Bungee,cursive;font-size:96px;letter-spacing:2px;animation:pxCountdownPulse 1s ease-in-out infinite}@keyframes pxCountdownPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.12);opacity:.85}}.px-found-tick{font-size:56px;margin-bottom:6px}.px-found-msg{font-family:Bungee,cursive;font-size:24px;color:#b9f2c0;letter-spacing:1px}.px-found-pts{margin-top:6px;font-size:16px;color:var(--gold);font-weight:700}.px-guess-wrap{width:100%;max-width:360px;margin:0 auto 8px;display:flex;gap:8px}.px-guess-wrap .input-field{flex:1;text-align:left;font-size:16px}.px-feedback{width:100%;max-width:360px;margin:0 auto 6px;min-height:18px;text-align:center;font-size:13px;color:var(--text-dim);transition:color .2s}.px-feedback.warm{color:#f9d342}.px-feedback.wrong{color:#e07b6e}.px-found-list{width:100%;max-width:360px;margin:4px auto 0;display:flex;flex-direction:column;gap:4px}.px-found-row{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#4caf501a;border:1px solid rgba(76,175,80,.25);border-radius:8px;font-size:12px}.px-found-row .pf-name{flex:1;color:#b9f2c0;font-weight:600}.px-found-row .pf-time{color:var(--text-dim);font-variant-numeric:tabular-nums}.px-found-row .pf-pts{color:var(--gold);font-weight:700}.px-guess-feed{width:100%;max-width:360px;margin:8px auto 0;display:flex;flex-direction:column;gap:4px;max-height:160px;overflow-y:auto;padding-right:2px}.px-guess-feed::-webkit-scrollbar{width:3px}.px-guess-feed::-webkit-scrollbar-thumb{background:#ffffff1f;border-radius:2px}.px-guess-bubble{display:flex;align-items:center;gap:8px;padding:5px 10px;background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:8px;font-size:12px;animation:pxGuessIn .2s ease-out}@keyframes pxGuessIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.px-gb-avatar{font-size:14px}.px-gb-name{color:#ffffff8c;font-weight:700;flex-shrink:0}.px-gb-text{color:var(--text);word-break:break-word;flex:1}.reveal-answer{display:inline-block;padding:6px 16px;background:rgba(var(--gold-rgb),.12);border:1px solid rgba(var(--gold-rgb),.35);border-radius:999px;color:var(--gold);font-family:Bungee,cursive;font-size:18px;letter-spacing:1px;text-transform:uppercase}.score-row-px{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#ffffff08;margin-bottom:5px}.score-row-px:last-child{margin-bottom:0}.score-row-px.fast{background:rgba(var(--gold-rgb),.08);border:1px solid rgba(var(--gold-rgb),.25)}.score-row-px .sr-avatar{font-size:18px}.score-row-px .sr-name{flex:1;font-size:13px;font-weight:600}.score-row-px .sr-time{font-size:12px;color:var(--text-dim);font-variant-numeric:tabular-nums;min-width:50px;text-align:right}.score-row-px .sr-pts{font-weight:700;color:var(--gold);font-size:14px;min-width:50px;text-align:right}.reveal-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:#ffffff08;margin-bottom:5px}.reveal-row:last-child{margin-bottom:0}.reveal-rank{font-family:Bungee,cursive;font-size:14px;color:var(--gold);min-width:24px;text-align:center}.reveal-label{flex:1;font-weight:500;color:#fff;font-size:14px}.sr-pts{font-weight:700;color:var(--gold);font-size:14px;min-width:50px;text-align:right}
