*{margin:0;padding:0;box-sizing:border-box}:root{--ink: #16222e;--ink-soft: #45586a;--accent: #3f7cad;--accent-dark: #2d5f89;--card: rgba(255, 255, 255, .68)}html,body{height:100%;overflow:hidden;font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink)}#bg{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.brand{position:fixed;top:22px;left:26px;display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.14em;font-size:14px;color:var(--ink);-webkit-user-select:none;user-select:none}.hero{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding:24px min(7vw,96px);pointer-events:none}.card{pointer-events:auto;max-width:440px;background:var(--card);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.65);border-radius:22px;padding:34px 32px 28px;box-shadow:0 24px 60px #16222e2e}.kicker{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:10px}h1{font-size:clamp(30px,4.4vw,44px);line-height:1.06;font-weight:900;letter-spacing:-.01em;margin-bottom:14px}.sub{font-size:15px;line-height:1.55;color:var(--ink-soft);margin-bottom:22px}.field{display:block;width:100%;padding:13px 16px;border-radius:12px;border:1.5px solid rgba(22,34,46,.18);background:#fff;font:inherit;font-size:15px;outline:none;transition:border-color .15s}.field+.field{margin-top:8px}.field:focus{border-color:var(--accent)}.join{display:block;width:100%;margin-top:8px;padding:13px 20px;border:0;border-radius:12px;background:var(--ink);color:#fff;font:inherit;font-size:15px;font-weight:800;cursor:pointer;white-space:nowrap;transition:transform .12s,background .15s}.join:hover{background:var(--accent-dark);transform:translateY(-1px)}.join:active{transform:translateY(0)}.fine{margin-top:12px;font-size:12.5px;color:var(--ink-soft);opacity:.85}.count[hidden]{display:none}.count{display:inline-flex;align-items:center;gap:6px;margin-bottom:14px;padding:5px 12px;border-radius:999px;background:#3f7cad1f;color:var(--accent-dark);font-size:13px;font-weight:700}.count b{font-weight:900}.done[hidden]{display:none}.done{display:flex;flex-direction:column;gap:4px;padding:18px;border-radius:14px;background:#eaf6ee;border:1.5px solid #bfe3c9;font-size:16px}.done span{font-size:14px;color:var(--ink-soft)}.hp{position:absolute;left:-9999px}.rotate-hint{position:fixed;right:22px;bottom:22px;z-index:20;display:flex;align-items:center;gap:7px;padding:8px 12px 8px 10px;border-radius:999px;background:#16222e80;color:#eef4f8;font-size:12.5px;font-weight:600;-webkit-user-select:none;user-select:none;pointer-events:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:rot-bob 2.6s ease-in-out infinite;transition:opacity .5s}.rotate-hint svg{animation:rot-spin 2.6s ease-in-out infinite}.rotate-hint.gone{opacity:0}@keyframes rot-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes rot-spin{0%,60%,to{transform:rotate(0)}30%{transform:rotate(-40deg)}}.hint{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#16222e9e;-webkit-user-select:none;user-select:none;pointer-events:none}.key{display:inline-block;min-width:22px;text-align:center;padding:3px 5px;border-radius:6px;background:#ffffffbf;border:1px solid rgba(22,34,46,.18);box-shadow:0 2px #16222e1f;font-size:11px;font-weight:800}@media (max-width: 640px){.hero{align-items:flex-end;padding:14px 14px 40px}.card{max-width:none;width:100%;padding:18px 16px 14px;border-radius:18px;background:#ffffff9e;backdrop-filter:none;-webkit-backdrop-filter:none}.kicker{font-size:10.5px;margin-bottom:6px}h1{font-size:24px;margin-bottom:8px}.sub{font-size:13px;line-height:1.45;margin-bottom:14px}.field,.join{padding:11px 14px;font-size:14px;border-radius:10px}.field+.field,.join{margin-top:6px}.fine{margin-top:8px;font-size:11.5px}.hint{display:none}.brand{font-size:12px;letter-spacing:.1em}.rotate-hint{top:14px;bottom:auto;right:14px;padding:8px;gap:0}.rotate-hint span{display:none}}
